Попытка создать таблицу паролей Mysql, которая может быть зашифрована для безопасности, а затем сброшена, если пользователю нужно сбросить забытый пароль - PullRequest
1 голос
/ 03 января 2012

Я хочу создать таблицу для паролей, которые могут вызываться внешним ключом пользователя таблицы, чтобы они могли вводить свой пароль, и он будет помещен в таблицу и надежно зашифрован.Я слышал о шифровании с помощью хэша;и я искал все вокруг, но понятия не имею, как использовать его, кроме того, что я видел в этом видео http://www.sqlshare.com/Player.aspx?vid=626&plid=&searchid=177388

Любая помощь будет принята с благодарностью

Ответы [ 2 ]

3 голосов
/ 03 января 2012

Короче говоря, вы используете односторонний хеш, такой как sha1 или md5, чтобы превратить пароль в фрагмент текста.Это не может быть отменено.Вы сохраняете хеш в своей базе данных.

Когда пользователь вводит свой пароль, вы таким же образом хешируете его пароль, затем проверьте, находится ли он в вашей базе данных.

Если он хочет сброситьпароль, вы делаете довольно длинную произвольную строку, а затем отправляете их по электронной почте на учетную запись, с которой вы их зарегистрировали.Они идут по ссылке с этой строкой в ​​качестве параметра GET.Вы проверяете, правильная ли это строка, и, если это так, запрашиваете новый пароль, хешируете его и сохраняете в базе данных.

Чтобы это работало безопасно, вы должны прочитать о хешах md5, sha1 и salting.

0 голосов
/ 03 января 2012

То, о чем говорит Рик, очевидно, что существует больше способов аутентификации пользователя, чтобы изменить пароль, кроме «какой-то случайной строки, которая довольно длинная».

Если вы хотите узнать больше об одномхэши и есть пример для работы, я бы посоветовал взглянуть на эту книгу: WickedCoolPHP

Это помогло бесчисленное количество раз как с быстрыми сценариями работать, так и случшее понимание PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...