Что альтернатива к PasswordDigest, когда пароль в виде открытого текста не хранится на производителе веб-сервиса?

Сценарий:

У производителя веб-сервиса есть только хеш SHA-1 паролей, сохраненных в базе данных. Мы должны аутентифицировать пользователей Веб-сервиса, использующих Имя пользователя / комбинация Пароля.


Безопасность веб-сервисов Профиль UsernameToken позволяет нам добавлять заголовки мыла с этой целью:

Элемент представлен в WSS: сообщение SOAP Обеспечительные документы как способ ввести имя пользователя.

В элементе может быть указан элемент. Пароли типа, PasswordText и PasswordDigest не ограничены фактическими паролями, хотя это - общий падеж. (146-151)

Тип пароля PasswordText означает, что пароль отправляется по проводу как простой текст, который является проблемой безопасности, если мы не используем Механизмы защиты Транспортного уровня. PasswordDigest старается не отправлять незашифрованные пароли и отправляет хеш. Но избегать атаки с повторением пакетов (i-e взломщик, использующий, перехватывают, чтобы получить хешированный пароль и снова послать его с другим запросом) PasswordDigest добавляет метку времени и случайное число к паролю прежде, чем вычислить хеш. Это дополнение приводит к следующему ограничению:

Обратите внимание, что PasswordDigest может только использоваться, если незашифрованный пароль (или эквивалентный пароль) доступен и просителю и получателю. (196-197)


Но в нашем случае у нас нет незашифрованного пароля. Мой вопрос: какие альтернативы у нас есть другой что сделать незашифрованные пароли доступными на сервере?

1
задан Tahir Akhtar 24 June 2010 в 10:46
поделиться

1 ответ

SHA-1 можно прекрасно использовать в качестве "обычного" пароля.

  • Спросите у пользователя пароль
  • преобразуйте его в SHA-1
  • пропустите его через PasswordDigest
  • сервер сделает то же самое с SHA-1 в базе данных
  • сервер обнаружит, что они совпадают и разрешит доступ
2
ответ дан 2 September 2019 в 23:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: