Хэширование логина и почты для хранения в БД
Стоит ли для хранения в БД хэшировать помимо пароля ещё и имя пользователя, его почту? Или не заморачиваться и хэшировать только пароль?
Ответы (2 шт):
Если хэшировать только пароль, то видно будет где одинаковые пароли. Хэшировать стоит пароль+что-нибудь, а это что-нибудь можно хранить рядом открыто.
Пароли хешируют для того, чтобы злоумышленник не мог воспользоваться ими, даже если получит доступ к БД с этими паролями.
А если захешировать имя пользователя, то как к нему обращаться? Обычно же имя выводится где-то на сайте. А из хеша его восстановить невозможно. И тогда будет вместо имени строка хеша. Некрасиво.
Аналогично с почтой. Если захешировать её, то станет невозможно посылать письма пользователям. Например, если юзер забудет свой пароль, то новый временный высылается ему на почту. С хешем это невозможно.