1997·http·RFC 2617 / 7616
Historical
HTTP Digest Auth
Challenge-response c MD5. Пароль не передаётся, но MD5 устарел.
Плюсы
- +Пароль не уходит в чистом виде
- +Защита от replay через nonce
Минусы
- −Только MD5/SHA-256
- −Сложная клиентская логика
- −Не защищает тело
Digest Auth (RFC 7616)
- 1.Client → ServerGET /protected
- 2.Server → Client401 + nonce, realm, qop=auth
- 3.Client ↺ ClientHA1=MD5(user:realm:pwd)
- 4.Client ↺ ClientHA2=MD5(method:uri)
- 5.Client ↺ Clientresp=MD5(HA1:nonce:nc:cnonce:qop:HA2)
- 6.Client → ServerGET + Authorization: Digest …
- 7.Server ↺ Serverrecompute & burn nonce
- 8.Server → Client200 OK
Digest Auth
Полный цикл: 401-challenge с nonce → клиент считает MD5 цепочку → повтор запроса.
Network · DevTools