Bcrypt-Generator

Der Bcrypt-Generator ist ein kostenloses Tool, das aus einer beliebigen Zeichenfolge einen bcrypt-Passwort-Hash zur sicheren Speicherung von Passwörtern erzeugt.
Was ist bcrypt, und ist es noch sicher?
Bcrypt ist ein Algorithmus zum Hashen von Passwörtern. Bei einem angemessen gewählten Kostenfaktor gilt er weiterhin als geeignet für die Passwortspeicherung, auch wenn neuere Systeme häufig Argon2id bevorzugen. Niels Provos und David Mazières entwickelten bcrypt 1999. Sie nutzten die Schlüsselaufbereitung der Blowfish-Chiffre, um jeden Versuch, ein Passwort zu erraten, gezielt rechenaufwendig zu machen.
Hashing funktioniert nur in eine Richtung. Eine Anwendung prüft ein Passwort deshalb, indem sie einen eingegebenen Kandidaten mit den gespeicherten Parametern hasht, statt das ursprüngliche Passwort wiederherzustellen. Anders als universell einsetzbare Algorithmen wie SHA-3 erzeugt bcrypt einen eigenständigen codierten Datensatz fester Länge, der Version, Kostenfaktor, Salt und Prüfsumme enthält.
Ein standardmäßiger bcrypt-Datensatz besteht aus 60 ASCII-Zeichen. Seine Prüfsumme repräsentiert 184 Bit und wird in bcrypts eigener Base64-ähnlicher Codierung mit 31 Zeichen dargestellt. Bcrypt gilt nicht als kryptografisch gebrochen, hat aufgrund seines Alters jedoch eine Einschränkung: Herkömmliche Implementierungen verarbeiten höchstens 72 Eingabebytes. Argon2id bietet außerdem einen speicherharten Schutz, über den bcrypt nicht verfügt.

Wie verwende ich den Bcrypt-Generator?
Gib die zu hashende Zeichenfolge ein, starte den Generator und kopiere den Wert aus dem Ergebnisfeld Bcrypt-Hash. Speichere das vollständige Ergebnis, nicht nur die abschließende Prüfsumme.
- Verwende das Passwort oder die Testzeichenfolge exakt wie vorgesehen, einschließlich Groß- und Kleinschreibung, Leerzeichen und Satzzeichen.
- Erzeuge das bcrypt-Ergebnis.
- Kopiere alle 60 Zeichen, einschließlich der Versionskennung und des Kostenfaktors am Anfang.
- Speichere das Ergebnis in der Passwort-Hash-Spalte deiner Datenbank.
- Nutze bei der Anmeldung die bcrypt-Prüffunktion deiner Plattform. Erzeuge nicht einfach einen neuen Hash, um beide Werte direkt als Text zu vergleichen.

Bcrypt verwendet normalerweise für jeden Hash ein neues zufälliges Salt. Wird dieselbe Eingabe zweimal gehasht, können deshalb zwei unterschiedliche Datensätze entstehen, die sich beide erfolgreich mit dieser Eingabe verifizieren lassen. Das ist beabsichtigt und verhindert, dass identische Passwörter als identische Werte gespeichert werden.
Die Verarbeitung erfolgt auf dem Server. Deine Eingabe wird über HTTPS an den Server übertragen und nicht gespeichert. Bevor du ein echtes Produktivpasswort bei einem externen Onlinedienst eingibst, solltest du prüfen, ob dies mit den Sicherheitsrichtlinien deiner Organisation vereinbar ist.
Kann man einen bcrypt-Hash entschlüsseln oder umkehren?
Nein, ein bcrypt-Hash lässt sich nicht entschlüsseln, da er keine verschlüsselten Daten und keinen Schlüssel zur Entschlüsselung enthält. In der Praxis lässt er sich nur angreifen, indem mögliche Passwörter durchprobiert und jeweils mit dem gespeicherten Hash verifiziert werden.
Bcrypt verlangsamt solche Versuche durch seinen konfigurierbaren Kostenfaktor. Ein kurzes, häufig verwendetes oder bereits durch ein Datenleck offengelegtes Passwort wird dadurch jedoch nicht sicher. Ein entschlossener Angreifer kann schwache Eingaben unter Umständen weiterhin ermitteln. Das Salt verhindert, dass Angreifer eine einzige vorberechnete Tabelle für viele Konten wiederverwenden. Es ist jedoch nicht geheim und Bestandteil des gespeicherten Datensatzes.

So liest du ein bcrypt-Ergebnis
Ein bcrypt-Ergebnis folgt normalerweise dem Modular-Crypt-Format. Ein typischer Aufbau ist $2y$12$[22-character salt][31-character checksum]. Dies veranschaulicht lediglich das Format und ist nicht der Hash eines angegebenen Passworts.
| Bestandteil | Typische Länge | Funktion |
|---|---|---|
| Versionskennung | 4 Zeichen | Kennzeichnet eine bcrypt-Variante, zum Beispiel $2y$ oder $2b$. |
| Kostenfaktor | 3 Zeichen | Enthält den zweistelligen Kostenfaktor, gefolgt von einem Trennzeichen. |
| Salt | 22 Zeichen | Codiert ein zufälliges Salt mit 128 Bit. |
| Prüfsumme | 31 Zeichen | Codiert die bcrypt-Prüfsumme mit 184 Bit. |
Bewahre diese Bestandteile immer zusammen auf. Wird ein Zeichen verändert, der Wert gekürzt oder in einer zu kurzen Spalte gespeichert, schlägt die Prüfung normalerweise fehl. Die Versionskennung kann sich zwischen kompatiblen Bibliotheken unterscheiden. Anwendungen sollten daher etablierte Passwort-APIs verwenden, statt den Datensatz selbst zu zerlegen und neu zusammenzusetzen.
Wann sollte bcrypt verwendet werden?
Bcrypt eignet sich zum Hashen von Passwörtern in Systemen, die den Algorithmus bereits unterstützen. Das gilt besonders, wenn die Kompatibilität mit einer bestehenden Datenbank oder einem vorhandenen Framework wichtig ist. Bcrypt arbeitet absichtlich langsam und verwendet ein Salt. Daher eignet es sich weder als allgemeine Datei-Prüfsumme noch als Kennung zur Deduplizierung.
- Geeignete Einsatzbereiche sind Anwendungspasswörter, Migrationstests, die Überprüfung der Größe von Datenbankfeldern und das Nachbilden einer bcrypt-kompatiblen Entwicklungsumgebung.
- Verwende stattdessen Argon2id, wenn du ein neues Passwortsystem entwickelst, die Plattform Argon2id unterstützt und sich die Speichereinstellungen korrekt verwalten lassen.
- Verwende stattdessen SHA-3 für die Prüfung der Dateiintegrität, Inhaltsfingerabdrücke oder die Deduplizierung. Der SHA-3/384-Generator und der SHA-3/512-Generator erzeugen universell einsetzbare Hashwerte, keine Passwortdatensätze.
- Verwende bcrypt nicht für digitale Signaturen, Nachrichtenauthentifizierung, Verschlüsselung oder die Speicherung von Daten, die später wiederhergestellt werden müssen.
Leerzeichen, Satzzeichen und Zahlen werden als Eingabedaten verarbeitet und nicht ignoriert. Zeichen mit Akzenten sowie Zeichen aus nichtlateinischen Schriften werden vor der Verarbeitung durch bcrypt in Bytes codiert. Beide Systeme müssen daher dieselben Bytes erzeugen, unter anderem durch eine einheitliche Zeichencodierung und Unicode-Normalisierung. Die Grenze von 72 Bytes ist hier besonders relevant, weil ein Unicode-Zeichen mehr als ein Byte belegen kann. Eine leere Eingabe lässt sich technisch zwar hashen, ein leeres Passwort bietet jedoch keinen nennenswerten Schutz vor Versuchen, es zu erraten.
Häufig gestellte Fragen
Wie viel Speicherplatz braucht ein bcrypt-Hash in der Datenbank?
Plane für einen herkömmlichen bcrypt-Datensatz mindestens 60 ASCII-Zeichen ein. Ein etwas breiteres Feld kann spätere Migrationen auf andere Passwortalgorithmen erleichtern. Für die standardmäßig codierte Form ist keine Binärspalte erforderlich.
Kann ich vorhandene SHA-Passwort-Hashes zu bcrypt migrieren?
Ein vorhandener SHA-Hash lässt sich ohne Kenntnis des ursprünglichen Passworts nicht in dessen bcrypt-Hash umwandeln. Eine gängige Migrationsmethode prüft bei der nächsten Anmeldung des Nutzers zunächst den alten Hash. Anschließend wird das eingegebene Passwort mit bcrypt oder Argon2id gehasht und der alte Datensatz ersetzt.
Prüfe vor dem Speichern, ob der vollständige Wert mit 60 Zeichen kopiert wurde, das Datenbankfeld ihn nicht abschneidet und die Zielanwendung die Versionskennung des Datensatzes unterstützt.
Beliebte Werkzeuge
Erstellen Sie Ihre eigene benutzerdefinierte Signatur und laden Sie sie einfach mit unserem Signaturgenerator-Tool für personalisierte E-Signaturen herunter.
Berechnen Sie die Größe eines beliebigen Textes in Bytes (B), Kilobytes (KB) oder Megabytes (MB) mit unserem Textgrößenrechner.
Verwenden Sie das Reverse-IP-Lookup-Tool, um die Domain oder den Host zu finden, der mit einer IP-Adresse verknüpft ist, schnell und einfach.
Verwenden Sie unser Ping-Tool, um den Status und die Antwortzeit einer beliebigen Website, eines Servers oder Ports schnell und effizient zu überprüfen.
Das IP-Lookup-Tool von Digily Link bietet detaillierte Informationen zu jeder IP-Adresse. Nutzen Sie diesen kostenlosen Online-Dienst, um umfassende IP-Daten zu erhalten.
Erstellen Sie mit unserem WhatsApp-Link-Generator sofort Ihren kostenlosen WhatsApp-Link. Fügen Sie eine benutzerdefinierte Nachricht hinzu und starten Sie Chats mit einem Klick, ganz ohne Anmeldung oder Programmierung.