2015-06-03 6 views
0

В настоящее время я кодирую с использованием шаблона mvc 5. Пароль в настоящее время хеширован. Я хочу восстановить этот пароль, чтобы я мог отправить его по электронной почте, если человек забыл свой пароль. Любые советы по хэшированию восстановления пароля?Хэширование восстановления пароля

+10

*** НЕТ НЕТ НЕТ ***. Вы *** не можете *** восстановить хешированный пароль - вот и все! И вы должны *** НИКОГДА не посылать пароль по электронной почте в любом случае! Дайте пользователю ссылку на сброс пароля. Вздох, это 2015 год - есть много ресурсов, которые объясняют, как правильно делать такие вещи, когда люди собираются это получить? –

+0

Возможный дубликат [Восстановление пароля без отправки пароля по электронной почте] (http://stackoverflow.com/questions/1041181/password-recovery-without-sending-password-via-email) –

+1

Вы видели [это] (http: //www.asp.net/identity/overview/features-api/account-confirmation-and-password-recovery-with-aspnet-identity)? –

ответ

4

Ваш подход в корне неверен!

Хешированный пароль не может быть легко «разобщен», так как это целая точка хэша. Возьмем, к примеру, сумму цифры в математике: 435 -> 4+3+5 = 12

Здесь 435 бы пароль и 12 будет хэш. Хеширование одного и того же номера будет давать одинаковый результат каждый раз. Тем не менее, вы не можете вернуться назад, так как 12 из них были составлены из других комбинаций (9+3, 2+2+2+2+2+2, ...).

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

+1

Сброс должен быть лучшим вариантом. Спасибо mate – Ravz

+0

Ravz, рассмотрите вопрос о маркировке этого ответа как * принято * (отметьте отметку). В качестве альтернативы вы также можете предоставить свой собственный ответ, а затем отметьте это как принятое. В худшем случае вы даже можете удалить свой вопрос. Точка, ваш вопрос в настоящее время еще * открыт *; было бы неплохо, если бы мы отметили это как * resolved * или иначе вытащили его из конвейера Stack Overflow. – domsson

Смежные вопросы