Шифрование паролей в MySQL и PHP через HTTPS - PullRequest
0 голосов
/ 29 января 2011

Действительно ли необходимо шифровать пароли, используя md5() или sha1() СОЛЬ (или даже вообще), если соединение происходит по HTTPS?

Заранее спасибо

Ответы [ 3 ]

3 голосов
/ 29 января 2011

Если кто-то взломает ваш сервер или получит резервную копию, а пароли не будут хешированы, то они получат доступ ко всем паролям ваших пользователей. Очень нужно засолить и хэшировать ваши пароли. Вероятно, важнее, чем использование HTTPS для аутентификации.

На самом деле их следует использовать, поскольку они решают совершенно разные проблемы. HTTPS используется для защиты пароля при его передаче через Интернет на ваши серверы. Хеширование и засоление используются для защиты пароля, когда он хранится на ваших серверах.

1 голос
/ 29 января 2011

Считайте HTTPS эквивалентом бронированного автомобиля, передающего данные между сервером и браузером клиента. Вы можете сделать этот броневик настолько прочным и безопасным, насколько захотите, но если сервер и / или клиент - это палатка посреди армии воров, вы добились нулевого уровня безопасности - воры будут игнорировать броневик и просто прорежьте стенку палатки и уйдите со своими драгоценными ценностями.

0 голосов
/ 29 января 2011

Шифрование паролей - это очень хорошая идея, даже если вы передаете по HTTPS-соединению. Причина в том, что злоумышленник может получить доступ к базе данных и, таким образом, просмотреть ее содержимое, не перехватывая соединение.

...