Рассмотрим следующее взаимодействие:
Пользователь сохраняет свое имя пользователя и пароль на веб-сервере.В целях безопасности сервер записывает хэш пароля и некоторую уникальную соль.
Когда пользователь использует клиентское приложение, он отправляет серверу запрос на отправку своего имени пользователя и хэша пароля.плюс некоторая другая уникальная соль.
Таким образом, у вас есть следующая информация на сервере, и вам нужно знать, является ли запрос аутентичным:
- Соль сервера
- Хешированный пароль сервера
- Соль клиента
- Хешированный пароль клиента
Еще раз ... клиент отправляет: clientSalt
+ MD5(clientSalt + password)
.Сервер имеет serverSalt
+ MD5(serverSalt + password)
.Я не хочу знать пароль, я просто хочу знать, были ли хэши рассчитаны по тому же паролю.
Не зная пароль, который был хеширован, есть ли способпроверить, что оба хэша имеют один и тот же пароль?
Моя цель - разрешить некоторую форму безопасной аутентификации в среде клиент-сервер без обмена действительным паролем по проводам.У меня есть только одна идея, но я даже не знаю, возможно ли это.