Сценарий:
У производителя веб-сервиса есть только хеш SHA-1 паролей, сохраненных в базе данных. Мы должны аутентифицировать пользователей Веб-сервиса, использующих Имя пользователя / комбинация Пароля.
Безопасность веб-сервисов Профиль UsernameToken позволяет нам добавлять заголовки мыла с этой целью:
Элемент представлен в WSS: сообщение SOAP Обеспечительные документы как способ ввести имя пользователя.
В элементе может быть указан элемент. Пароли типа, PasswordText и PasswordDigest не ограничены фактическими паролями, хотя это - общий падеж. (146-151)
Тип пароля PasswordText означает, что пароль отправляется по проводу как простой текст, который является проблемой безопасности, если мы не используем Механизмы защиты Транспортного уровня. PasswordDigest старается не отправлять незашифрованные пароли и отправляет хеш. Но избегать атаки с повторением пакетов (i-e взломщик, использующий, перехватывают, чтобы получить хешированный пароль и снова послать его с другим запросом) PasswordDigest добавляет метку времени и случайное число к паролю прежде, чем вычислить хеш. Это дополнение приводит к следующему ограничению:
Обратите внимание, что PasswordDigest может только использоваться, если незашифрованный пароль (или эквивалентный пароль) доступен и просителю и получателю. (196-197)
Но в нашем случае у нас нет незашифрованного пароля. Мой вопрос: какие альтернативы у нас есть другой что сделать незашифрованные пароли доступными на сервере?
SHA-1 можно прекрасно использовать в качестве "обычного" пароля.