Как я могу хешировать пароль и сохранить его для последующей проверки с помощью другого дайджеста? - PullRequest
1 голос
/ 03 июня 2010

Я использую плагин gsoap wsseapi и хотел бы хранить хэшированные пароли sha1, а не обычный текст. Я потратил смехотворное количество времени, экспериментируя с различными методами хеширования простого текстового пароля для хранения.

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

Кажется, я не могу получить пароль клиента для аутентификации по моему сохраненному хешу.

Ответы [ 3 ]

1 голос
/ 03 июня 2010

Не раскручивай свой собственный крипто; используйте схему, которая хорошо известна и принята сообществом, например PBES2 (как указано в PKCS # 5 v2.1 ). Если вам повезет, вы найдете готовую реализацию этого (подсказка: OpenSSL , вероятно, делает).

0 голосов
/ 11 июня 2010

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

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

0 голосов
/ 03 июня 2010

не хранить обычные текстовые пароли - это хорошо. выбор хеша, который был разработан для очень быстрого вычисления, не очень умен. читайте больше о «получении ключа» на http://www.tarsnap.com/scrypt.html., в основном это замедляет «вычисление хешированного пароля» A LOT , так что злоумышленник замедляется в своих попытках использовать грубую силу.

...