Argon2-Hash-Überprüfung | Passwort mit codiertem Hash vergleichen
Prüfen Sie, ob ein Passwort zu einem Argon2-Hash ($argon2id$...) passt. Die Berechnung erfolgt vollständig im Browser, ohne Serverübertragung.
Einen Argon2-Hash prüfen
Argon2 gewann 2015 den Password Hashing Competition und gilt heute als **der am meisten empfohlene Passwort-Hash für neue Arbeiten.** Sein wesentlicher Unterschied zu bcrypt liegt darin, dass sich **neben der Rechenzeit auch der Speicherbedarf einstellen lässt.** GPUs und Spezialhardware glänzen in paralleler Arithmetik, tun sich aber schwer damit, jedem Kern viel Speicher zuzuweisen; Speicher zu verlangen hebt die Kosten eines Angriffs mit roher Gewalt daher erheblich an.
Ein Argon2-Hash hat die Form `$argon2id$v=19$m=19456,t=2,p=1$Salz$Prüfwert`, wobei **Parameter und Salz in der Zeichenkette selbst stecken.** Die Prüfung braucht daher keine gesonderte Parameterliste: Hash und Passwort genügen. Dieses Werkzeug führt genau diese Prüfung durch. **Alles wird in Ihrem Browser berechnet, und weder das eingegebene Passwort noch der Hash werden je an einen Server gesendet.**
So prüfen Sie
- Fügen Sie den Argon2-Hash ein Tragen Sie die mit `$argon2id$` beginnende kodierte Zeichenkette unverändert ein.
- Geben Sie das Passwort ein Tippen Sie das Klartextpasswort ein, das Sie dagegen prüfen wollen.
- Führen Sie die Prüfung aus **Da der Algorithmus bewusst viel Speicher beansprucht, kann dies einige Sekunden dauern.** Das ist beabsichtigtes Verhalten.
- Lesen Sie das Ergebnis ab Sie erfahren, ob beide übereinstimmen.
Tipps für die Nutzung
- Fügen Sie für die Überprüfung den mit dem Tool Argon2-Hash-Rechner erzeugten codierten Hash (eine Zeichenkette, die mit $argon2id$ beginnt) unverändert ein.
- Der codierte Hash enthält bereits alle Angaben zu Variante, Speicherkosten, Iterationen und Salt, sodass Sie diese Parameter bei der Überprüfung nicht separat angeben müssen.
- Bei einem ungültigen Hash-Format (z. B. durch fehlende Zeichen oder eingefügte Zeilenumbrüche beim Kopieren) wird eine Fehlermeldung angezeigt. Prüfen Sie, ob Sie den gesamten Text korrekt kopiert haben.
- Erhalten Sie das Ergebnis „keine Übereinstimmung", prüfen Sie, ob sich unbeabsichtigt Groß-/Kleinschreibung oder führende bzw. nachgestellte Leerzeichen in das Passwort eingeschlichen haben.
Wofür sich das eignet
Eine Anmeldelogik überprüfen
Bestätigen Sie mit einem bekannten Paar aus Hash und Passwort, dass Ihr eigener Anmeldecode richtig prüft.
Eine Migration bestätigen
Klären Sie vorab, ob aus einem anderen System übernommene Hashes unverändert prüfbar sind.
Die gewählten Parameter ansehen
Lesen Sie die in der Zeichenkette steckenden Werte `m`, `t` und `p`, um den eingestellten Aufwand zu erkennen.
Den Kreis zum Generator schließen
Bestätigen Sie, dass ein vom Argon2-Hashgenerator erzeugter Wert hier richtig geprüft wird.
Begriffe zu Argon2
- Argon2id
- Die Variante, die Widerstand gegen Seitenkanalangriffe mit Widerstand gegen GPU-Angriffe verbindet. **Für neue Arbeiten ist sie die Standardwahl.**
- m (Speicheraufwand)
- Die genutzte Speichermenge in Kibibyte. **Es ist der zentrale Parameter, der Argon2 gegen GPU-Angriffe härtet.**
- t (Zeitaufwand)
- Die Zahl der Durchläufe. Sie zu erhöhen verlängert die Rechnung und damit die Kosten der angreifenden Seite.
- p (Parallelität)
- Die Zahl parallel verarbeiteter Bahnen, passend zur Kernzahl des Servers gesetzt.
- Salz
- Für jeden Hash neu gewählte Zufallsdaten. **Dasselbe Passwort ergibt jedes Mal einen anderen Hash, was Regenbogentabellen wirkungslos macht.**
- Kodierter Hash
- Das Format, das Algorithmusname, Parameter, Salz und Prüfwert in einer Zeichenkette bündelt. Es trägt alles, was die Prüfung braucht.
Häufig gestellte Fragen
Übrigens – warum sich Passwörter allein durch den Vergleich von Hashes überprüfen lassen
Die Passwortüberprüfung wirkt auf den ersten Blick wie ein direkter Vergleich zwischen dem gespeicherten und dem eingegebenen Passwort – tatsächlich funktioniert sie jedoch nach einem ganz anderen Prinzip. Der Server (oder, wie bei diesem Tool, eine clientseitige Verarbeitung) hasht das eingegebene Passwort erneut mit demselben Algorithmus und demselben Salt, das auch bei der Speicherung verwendet wurde, und vergleicht anschließend nur, ob das Ergebnis mit dem gespeicherten Hash-Wert übereinstimmt. Das ursprüngliche Passwort selbst wird dabei kein einziges Mal direkt verglichen – der Vorteil dieses Verfahrens liegt darin, dass ausschließlich zwei Hash-Werte auf Übereinstimmung geprüft werden müssen.
Dieses Prinzip funktioniert, weil Hash-Funktionen wie Argon2 „deterministisch" sind: Bei gleicher Eingabe, gleichem Salt und gleichen Parametern entsteht immer dieselbe Ausgabe. Da der codierte Hash-String (im Format $argon2id$v=19$m=...$salt$hash) bereits das bei der Berechnung verwendete Salt sowie alle Parameter enthält, müssen diese bei der Überprüfung nicht erneut angegeben werden – die vollständige Neuberechnung lässt sich allein anhand des Hash-Strings durchführen.
Erst durch diese beiden Eigenschaften – „Einwegfunktion" (aus dem Hash lässt sich das ursprüngliche Passwort nicht zurückrechnen) und „Determinismus" (gleiche Eingabe ergibt immer gleiche Ausgabe) – können Diensteanbieter die Anmeldung sicher überprüfen, ohne jemals das Klartext-Passwort der Nutzer zu speichern. Selbst wenn eine Datenbank kompromittiert wird, erhalten Angreifer lediglich die Hash-Werte, und bei einem rechenintensiven Algorithmus wie Argon2 würde ein Brute-Force-Angriff zur Wiederherstellung der ursprünglichen Passwörter extrem lange dauern.