Ich habe MD5-Hashes von Kennwörtern in einer Datenbank, die ich für HTTP AUTH DIGEST verwenden möchte. Beim Lesen der Dokumente sieht es jedoch so aus, als ob der Digest-Hash einen Hash des Benutzernamens, des Realms und des Klartext-Passworts enthält. Gibt es eine Möglichkeit, den MD5-Hash des Passworts in dieser Situation zu verwenden?Kann ich ein bereits MD5-verschlüsseltes Passwort in Digest-Authentifizierung verwenden
Antwort
Nein, wenn der Hash sie benötigen, erzeugt wird, wie so:
MD5 (Benutzername + Reich + Passwort)
Sie sind kein Glück.
Wenn sie das Kennwort-Hashing wie so:
MD5 (MD5 (Passwort) + Benutzername + Bereich)
Sie wäre in der Lage, dass nur mit dem Hash-Passwort zu tun. Aber es hört sich nicht danach an.
Nein, Sie müssen in den Tabellen den HA1-Hash von Digest speichern und diesen für andere Auth-Typen (Formulare und Basic) verwenden. Siehe hier: Storing password in tables and Digest authentication
Nein, das ist nicht möglich. Der eigentliche Sinn der Digest-Authentifizierung besteht darin, Replay-Attacken zu vermeiden, d. H. Wenn jemand nur eine Hash-Version (einiger Authentifizierungsdaten) anstelle der echten Daten hat.
Nicht nur ist es ein Hash von Benutzername, Real und Klartext Passwort, sondern auch eine Nonce, die jedes Mal ändert. Sie brauchen also das Klartext-Passwort.
Nein. Bei der Digest-Authentifizierung wird das Kennwort mit einer Abfrage verknüpft, es gibt keine Möglichkeit, es mit einem anderen Hash zu arbeiten.
Basic Auth über HTTPS ist sicherer und es sollte mit Ihrem Hash-Passwort arbeiten.
Dies sollte als die beste Antwort akzeptiert werden. Sie können und müssen eine Hash-Version des Passworts speichern (im Gegensatz zu Nur-Text). Aber Sie müssen es zusammen mit dem Benutzernamen und dem Realm hashen, wie in dieser Antwort erwähnt. – ricovox