Heim > Datenbank > MySQL-Tutorial > Welchen Datentyp und welche Länge sollte ich zum Speichern gehashter Passwörter in meiner Datenbank verwenden?

Welchen Datentyp und welche Länge sollte ich zum Speichern gehashter Passwörter in meiner Datenbank verwenden?

Linda Hamilton
Freigeben: 2024-12-18 14:31:11
Original
182 Leute haben es durchsucht

What Data Type and Length Should I Use for Storing Hashed Passwords in My Database?

Überlegungen zu Datentyp und Länge für die Speicherung gehashter Passwörter

Beim Einrichten eines Datenbankschemas für die Passwortverwaltung ist die Entscheidung über den geeigneten Datentyp und die Länge für gehashte Passwörter von entscheidender Bedeutung. Diese Entscheidung hängt vom gewählten Hashing-Algorithmus ab.

Hash-Algorithmus und -Länge

Hash-Funktionen erzeugen Ergebnisse fester Länge, unabhängig von der Größe der Eingabe. Hash-Werte werden häufig als hexadezimale Zeichenfolgen dargestellt, deren Länge je nach verwendetem Algorithmus variiert:

  • MD5: 32 hexadezimale Ziffern
  • SHA-1: 40 hexadezimale Ziffern
  • SHA-256: 64 hexadezimal Ziffern
  • SHA-512: 128 hexadezimale Ziffern

Überlegungen zum Datentyp

Der geeignete Datentyp zum Speichern gehashter Passwörter hängt von der jeweiligen Anwendung ab Hash Algorithmus:

  • CHAR(x): Zeichenfolge fester Länge, empfohlen zum Speichern gehashter Passwörter als Hexadezimalzeichenfolgen.
  • BINARY(x) : Binärzeichenfolge fester Länge, kann verwendet werden, wenn die Ausgabe des Hashing-Algorithmus als Binärdatei dargestellt werden kann string.

Spezifische Empfehlungen

Für das Passwort-Hashing wird nicht empfohlen, direkte Hash-Funktionen zu verwenden, sondern eher schlüsselstärkende Algorithmen wie Bcrypt oder Argon2i. Diese Algorithmen generieren gehashte Passwörter unterschiedlicher Länge, die normalerweise mit CHAR(60) dargestellt werden.

Zusätzliche Überlegungen

Es ist zwar möglich, gehashte Passwörter als Zeichenfolgen aus hexadezimalen Ziffern zu speichern, aber das ist der Fall nicht empfohlen, da es das Enthexen erleichtert. Darüber hinaus wird betont, dass die Verwendung einfacher Hash-Funktionen für eine sichere Passwortspeicherung nicht ausreicht. NIST empfiehlt SHA-256 oder höher für die meisten Anwendungen, rät jedoch von deren Verwendung für Passwort-Hashing ab.

Das obige ist der detaillierte Inhalt vonWelchen Datentyp und welche Länge sollte ich zum Speichern gehashter Passwörter in meiner Datenbank verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage