Heim >Datenbank >MySQL-Tutorial >Welchen Spaltentyp und welche Spaltenlänge sollte ich zum Speichern von Bcrypt-Hash-Passwörtern verwenden?

Welchen Spaltentyp und welche Spaltenlänge sollte ich zum Speichern von Bcrypt-Hash-Passwörtern verwenden?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-13 09:38:10391Durchsuche

What Column Type and Length Should I Use for Storing Bcrypt Hashed Passwords?

Bcrypt-Hash-Passwortspeicherung: Überlegungen zu Spaltentyp und -länge

Beim Speichern von Bcrypt-Hash-Passwörtern in einer Datenbank ist es wichtig, eine geeignete Spalte auszuwählen Typ und Länge, um Datenintegrität und -sicherheit zu gewährleisten.

Spalte Typ

Für bcrypt-gehashte Passwörter wird der Spaltentyp BINARY(60) oder CHAR(60) BINARY empfohlen, um eine ordnungsgemäße Speicherung des Hashs sicherzustellen Werte. Dies liegt daran, dass Bcrypt Hashes mit fester Länge erzeugt, die typischerweise 60 Bytes umfassen.

Hash-Länge

Bcrypt-Hashes sind „gestreckt“, was einen erheblichen Rechenaufwand für die Generierung erfordert. Dadurch sind Bcrypt-Hashes immer gleich lang. Die Salt- und Hash-Ausgabe bilden zusammen einen 53-stelligen Base-64-codierten Wert, was zu einer Hash-Länge von 60 Bytes führt.

Begründung

Der Bcrypt-Algorithmus verwendet einen 128-Bit-Salt und einen 186-Bit-Hash, die Base-64-kodiert sind Erstellen Sie eine Gesamtlänge von 53 Zeichen. Das Hinzufügen der Anfangskennung („$2a$“), des Kostenparameters (normalerweise zweistellig) und des abschließenden Trennzeichens („$“) ergibt eine Gesamtlänge von 60 Bytes.

Daher Beim Speichern von Bcrypt-Hash-Passwörtern in einer Datenbank ist es unbedingt erforderlich, einen Spaltentyp zu verwenden, der die feste Länge von 60 Bytes aufnehmen kann. Dies gewährleistet eine genaue Speicherung und Verarbeitung der gehashten Passwörter und gewährleistet so die Datenintegrität und -sicherheit.

Das obige ist der detaillierte Inhalt vonWelchen Spaltentyp und welche Spaltenlänge sollte ich zum Speichern von Bcrypt-Hash-Passwörtern verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn