PBKDF2
PBKDF2 (Password-Based Key Derivation Function 2) ist die in PKCS#5 standardisierte KDF, die über iteriertes HMAC Schlüssel aus Passwörtern ableitet; weit verbreitet für Passwort-Hashing und Schlüsselableitung.
Zweck
Leitet einen Schlüssel hoher Entropie aus einem Passwort niedriger Entropie ab, wobei die Iterationszahl die Kosten von Brute-Force vervielfacht.
Mechanismus
DK = T1 || T2 || ..., wobei Ti = U1 ⊕ ... ⊕ Uc, U1 = HMAC(P, salt || i), Uj = HMAC(P, U_{j-1}). Die Iterationszahl c liegt üblicherweise bei ≥ 100000. Nur CPU-hard, ohne Widerstand gegen GPU/ASIC-Parallelismus.
Anwendungsfälle
- Wi-Fi-WPA2/3-Schlüsselableitung
- iOS/Android-Passwort-Backups
- 1Password-Schlüsselableitung
- PKCS#12-Schlüsselspeicherung
Beispiele
- Eingabe
password, salt, c=600000Output256-bit derived keyOWASP 2023 recommends ≥ 600000
Häufige Fehler
- Iteration count too low (e.g., 1000)
- Use at least 600000 (OWASP 2023)
Verwandte Begriffe
scrypt
scrypt ist eine von Colin Percival entworfene speicherintensive Schlüsselableitungsfunktion (KDF): Sie widersteht paralleler Brute-Force auf GPU/ASIC durch große Speicheranforderungen und wird für Passwort-Hashing und Schlüsselableitung eingesetzt. GLOSSAR
Key Derivation
Key Derivation ist der Prozess, aus Passwörtern niedriger Entropie oder Master-Schlüsseln hoher Entropie Verschlüsselungsschlüssel zu erzeugen, mittels KDFs (z. B. PBKDF2, scrypt, Argon2), um Brute-Force zu verteuern. GLOSSAR
Salt
Ein Salt ist ein Zufallswert, der beim Passwort-Hashing hinzugefügt wird, damit identische Passwörter unterschiedliche Hashes erzeugen; dadurch werden Rainbow-Tabellen und die Erkennung gleicher Passwörter unwirksam. GLOSSAR
HMAC
HMAC (hashbasierter Nachrichtenauthentifizierungscode) ist ein MAC, der eine Hashfunktion mit einem geheimen Schlüssel kombiniert und Integrität und Authentizität liefert. GLOSSAR