Erstelle Apache/nginx-.htpasswd-Zeilen mit gesalzenen APR1-MD5- oder SHA-1-Hashes, vollständig offline in deinem Browser.
— Ausgabe erscheint hier —
Bcrypt ist nicht enthalten. APR1-MD5 ist gesalzen und empfohlen; SHA-1 ist ungesalzen, nur für Legacy.
Über dieses Tool
Erzeuge eine einfügefertige .htpasswd-Anmeldezeile (Benutzername:Hash) für die HTTP-Basic-Authentifizierung von Apache oder nginx. Der Benutzername, das Passwort und das Hashing geschehen alle lokal in deinem Browser — nichts wird hochgeladen, und es gibt kein eval und keine externe Bibliothek.
Zwei Algorithmen werden unterstützt. APR1-MD5 (das Apache-$apr1$-Format) ist in reinem JavaScript implementiert, einschließlich eines eigenständigen MD5 und der vollständigen gesalzenen crypt-Schleife über 1000 Runden, mit einem zufälligen 8-Zeichen-Salt aus crypto.getRandomValues. SHA-1 verwendet das im Browser eingebaute crypto.subtle.digest, base64-kodiert und mit {SHA} vorangestellt, passend zur Ausgabe von htpasswd -s. Bcrypt ist absichtlich nicht enthalten, weil ein korrektes, schnelles pures-JS-Bcrypt clientseitig nicht praktikabel ist.
Gib einen Benutzernamen und ein Passwort ein, wähle einen Algorithmus und kopiere die resultierende Zeile in deine .htpasswd-Datei. Verwende Neuer Salt, um den APR1-Salt neu zu würfeln (jedes Speichern erzeugt für dasselbe Passwort einen anderen Hash, was erwartet und korrekt ist).
Häufig gestellte Fragen
Wird mein Passwort irgendwohin gesendet?
Nein. Das gesamte Hashing läuft vollständig in deinem Browser, mit einem eingebauten MD5 für APR1 und dem nativen crypto.subtle für SHA-1. Nichts wird übertragen und es gibt kein eval.
Welchen Algorithmus soll ich wählen?
APR1-MD5 ($apr1$) ist der empfohlene Apache-Standard und ist gesalzen, also der sicherere der beiden hier. SHA-1 ({SHA}) ist ungesalzen und hauptsächlich für Legacy-Setups oder nginx-Kompatibilität nützlich.
Warum ändert sich der APR1-Hash jedes Mal?
APR1 verwendet einen zufälligen 8-Zeichen-Salt, sodass dasselbe Passwort jedes Mal einen anderen Hash erzeugt. Das ist so beabsichtigt; Apache liest den Salt beim Prüfen einer Anmeldung aus dem gespeicherten Hash zurück.
Warum wird Bcrypt nicht angeboten?
Bcrypt ist bewusst ausgeschlossen. Ein korrektes pures-JavaScript-Bcrypt wäre im Browser groß und langsam, daher liefert dieses Tool stattdessen die zuverlässigen, offline funktionierenden Modi APR1-MD5 und SHA-1.