| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > Расшифровка md5 |
| Автор: abalich 18.6.2007, 11:47 | ||
У меня в базе данных в таблице хранится пароль зашифрованный в MD5;
ВОт!!! У меня на сайте есть система восстановление забытого пароля: Вводишь свой e-mail и на него приходит пароль!! НО КАК МНЕ ЕГО РАСШИФРОВАТЬ ЕСЛи ОН В MD5!!!??? |
| Автор: GZep 18.6.2007, 11:53 |
| Ничего не надо расшифровывать! Для этих целей отсылай новый рандомно сгенерированный пароль. |
| Автор: abalich 18.6.2007, 11:57 |
| НУ понимаешь!! Ведь любой юзер может ввести логин и e-mail другого юзера!!!!!! |
| Автор: GZep 18.6.2007, 11:59 |
| правильно, поэтому надо email'ы прятать. Добавлено через 1 минуту и 43 секунды или при востановлении пароля прислать юзеры ссылку, ведущую на страницу где пользователь сможет сам ввести новый пароль. Естественно ссылка эта будет защищена сесиями или любым другим подобным механизмом. |
| Автор: abalich 18.6.2007, 12:04 | ||||
Ну впринципе ты ПРАВ:
КАК ЭТО???? А все же можно как-то обратно расшифровать? |
| Автор: vasac 18.6.2007, 12:11 | ||
http://ru.wikipedia.org/wiki/Md5, это хеш, он не расшифровывается. Сходив в поиск по запросу "расшифровка md5" вы могли бы это узнать.
Да, но пароль уйдет на мыло того самого другого юзера к которому злоумышленник не имеет доступа. |
| Автор: abalich 18.6.2007, 12:14 | ||
Да, но ведь речь шла о том, что пароль генерируется новый и высылается на мыло!!! Т.е любой может поменять пароль другому!!!!!! |
| Автор: sTa1kEr 18.6.2007, 12:18 |
Генерируешь уникальный ключ и сохраняешь где-нибудь связку логин - email - этот ключ. Затем высылаешь на email письмо ссылкой, в которой в качестве параметра будет передаваться этот уникальный ключ. Если это сам пользователь запросил смену пароля, то он кликает и на сервер приходит запрос с ключом. Сравниваешь ключ который сохранил ранее и присланный пользователем, если они совпадают, то генерируешь пароль и высылаешь его на email. В принципе не возможно. MD5 - это одностороннее шифрование, по сути всего лишь хэш пароля. Максимум что возможно - это найти коллизию методом перебора или другими словами найти строчку, MD5 хэш которой будет совпадать с хэшом старого пароля. Но я думаю, что это вам не надо |
| Автор: abalich 18.6.2007, 12:23 | ||
ГДЕ его лучше сохранить!!!!!????? И кстати как его генить!!!!!Можно пример!!! ПЛИЗЗ!!! |
| Автор: Serkys 18.6.2007, 12:32 | ||
Можно в отдельной таблице.
|
| Автор: abalich 18.6.2007, 12:36 |
| А если с БУКВАМИ!!! |
| Автор: Serkys 18.6.2007, 12:40 | ||
Хватит кричать.
|
| Автор: abalich 18.6.2007, 12:44 | ||
Спасибо!!!!! |
| Автор: sTa1kEr 18.6.2007, 12:53 | ||||
Да где угодно, БД, файл... Вот вам простейший пример. Скрипт где запрашиваем восстановление пароля:
Скрипт, где проверяем ключ:
Добавлено через 5 минут и 46 секунд Да и не забудьте, если был запрос на восстановление пароля, но по ссылке с ключом так никто и не пришел, нужно спустя некоторое время удалит сгенерированный ключ. Ну и после смены пароля, естественно, так же надо его удалить |
| Автор: GZep 18.6.2007, 22:44 |
| я бы посоветовал использовать сессии... |
| Автор: abalich 19.6.2007, 20:12 | ||
ПРИМЕР можешь показать!!!??? |