CyberGlossary

Kryptografie

Salt

Auch bekannt als: Kryptografisches Salt, Passwort-Salt

Definition

Ein einzigartiger Zufallswert, der einem Passwort vor dem Hashen beigemischt wird, um Rainbow Tables zu verhindern und jeden Benutzer-Hash einzigartig zu machen.

Ein kryptografischer Salt ist ein nicht geheimer Zufallswert, der einem Passwort vor der Eingabe in eine Hashfunktion oder KDF wie Argon2, scrypt, bcrypt oder PBKDF2 hinzugefügt wird. Salts sorgen dafür, dass zwei Benutzer mit identischem Passwort unterschiedliche gespeicherte Hashes erhalten, was vorgerechnete Rainbow Tables entwertet und Massenangriffe linear pro Konto macht. Empfohlen sind mindestens 16 Byte, erzeugt durch einen kryptografisch sicheren RNG, eindeutig pro Anmeldedaten und neben dem Hash gespeichert; der Salt muss nicht geheim sein. Moderne Formate (PHC-String, $argon2id$..., $2b$..., $scrypt$...) betten den Salt direkt ein. Auch HKDF und randomisierte Public-Key-Verfahren nutzen Salts zur Diversifikation.

Beispiele

  • Ein Argon2id-Hash der Form $argon2id$v=19$m=65536,t=3,p=1$<Base64-Salt>$<Base64-Hash>.
  • Ein eindeutiger 16-Byte-Zufalls-Salt, der pro Benutzer bei der Kontoanlage erzeugt wird.

Verwandte Begriffe