Kategorie: Entwicklung
htpasswd-Generator
Erstelle Basic-Auth-Passworteinträge lokal
Erzeuge eine Apache-htpasswd-Zeile im Browser. Lege bcrypt-Zugangsdaten für Basic Auth an und kopiere oder lade einen .htpasswd-Eintrag herunter, ohne das Passwort je an einen Server zu senden.
Jede Stufe verdoppelt die Arbeit für einen Angreifer – und die Zeit, die diese Seite zum Erzeugen der Zeile braucht. 10 bis 12 passt für die meisten Server.
Hier erscheint das Ergebnis.
bcrypt liest höchstens 72 Byte eines Passworts; alles danach wird ignoriert – auf dieser Seite wie auf deinem Server.
Speichere die Datei außerhalb des Web-Roots und lass AuthUserFile darauf zeigen. Eine .htpasswd in einem ausgelieferten Verzeichnis lässt sich herunterladen.
Das Passwort wird in diesem Tab gehasht. Es wird nirgendwohin gesendet, nie gespeichert – und die entstehende Zeile ebenso wenig.
Alles auf dieser Seite wird in Ihrem Browser verarbeitet. Nichts wird hochgeladen.
Wozu dieses Werkzeug dient
Eine .htpasswd-Datei ist eine schlichte Liste von `benutzer:hash`-Einträgen, gegen die Apaches Basic Auth eine Anmeldung prüft; nginx liest dasselbe Format in auth_basic_user_file. Diese Seite baut die Einträge auf deinem Gerät: Die bcrypt-Implementierung läuft im Tab, das Passwort geht also nie auf die Reise. bcrypt ist die Voreinstellung, weil es absichtlich langsam ist und pro Eintrag gesalzen wird – das macht eine gestohlene Datei teuer zu knacken; der Kostenregler bestimmt, wie viel langsamer du es machst. SHA-1 gibt es nur für einen Server, der für bcrypt zu alt ist – es ist ungesalzen und schnell, und die Seite sagt das dort, wo du wählst.
So funktioniert es
- Gib Benutzernamen und Passwort ein oder erzeuge ein zufälliges Passwort.
- Bleib bei bcrypt und wähle einen Kostenfaktor – 10 bis 12 passt für die meisten Server.
- Kopiere die Zeile oder lade die .htpasswd-Datei herunter und lege sie außerhalb deines Web-Roots ab.
Datenschutz
Dieses Werkzeug läuft vollständig in Ihrem Browser. Ihre Eingabe wird nie hochgeladen, gespeichert oder weitergegeben – beim Schließen des Tabs ist sie weg.
Häufig gestellte Fragen
- Wird mein Passwort hochgeladen?
- Nein. Der Hash wird im Browser-Tab berechnet. Passwort, Salt und die fertige Zeile werden nirgends übertragen, protokolliert oder gespeichert.
- Welchen Hash soll ich wählen?
- bcrypt, sofern dein Server ihn nicht wirklich ablehnt. Er ist pro Eintrag gesalzen und absichtlich langsam, sodass ein Angreifer, der die Datei stiehlt, für jeden Versuch echte Zeit aufwenden muss. Die SHA-1-Option ist ungesalzen und schnell zu knacken und existiert nur zur Kompatibilität.
- Was bewirkt der bcrypt-Kostenfaktor?
- Er ist der Zweierlogarithmus der Anzahl an Schlüsselaufbau-Runden, jede Stufe verdoppelt also den Aufwand – für einen Angreifer wie für deinen Server beim Anmelden. Kosten 10 bis 12 sind der übliche Kompromiss; höhere Werte machen auch diese Seite spürbar langsamer.
- Kann ich die Ausgabe mit nginx verwenden?
- Ja. nginx liest dasselbe Dateiformat in auth_basic_user_file und unterstützt bcrypt-Einträge, eine hier erzeugte Zeile funktioniert also für Apache und nginx.
- Wo soll die Datei liegen?
- Außerhalb des Verzeichnisses, das dein Server ausliefert, mit AuthUserFile auf ihrem Pfad. Liegt .htpasswd in einem ausgelieferten Ordner, kann jede Person die Hashes herunterladen und offline knacken.