Wikipedia · einfach zusammengefasst · Stand
Schlüsselableitung
Die gebräuchlichste Verwendung von Schlüsselableitungsfunktionen ist der Passwort-Hash bei der Passwortverifizierung. Schlüsselableitungsfunktionen weisen …
Inhalt3 Abschnitte
Grundidee der Schlüsselableitung
Eine Schlüsselableitung (englisch Key Derivation Function, KDF) ist eine kryptographische Operation. Sie erzeugt aus einem kryptographischen Schlüssel einen oder mehrere andere Schlüssel. Eine wichtige Teilklasse sind Schlüsselstreckungsverfahren. PBKDF2 ist eine Schlüsselableitungsfunktion und Bestandteil der Public-Key Cryptography Standards der RSA-Laboratorien (PKCS #5).
Schutz und Eigenschaften abgeleiteter Schlüssel
KDFs werden häufig zusammen mit nicht geheimen Parametern verwendet, um aus einem geheimen Wert einen oder mehrere Schlüssel abzuleiten. Dadurch kann verhindert werden, dass ein Angreifer aus einem erlangten abgeleiteten Schlüssel nützliche Informationen über den ursprünglichen geheimen Schlüsselwert oder andere abgeleitete Schlüssel gewinnt.
Außerdem können KDFs dafür sorgen, dass die erzeugten Schlüssel gewünschte Eigenschaften besitzen. Dazu gehört beispielsweise, schwache Schlüssel zu vermeiden, die in manchen Verschlüsselungssystemen problematisch sind.
Passwörter und Schlüsselstreckung
Die gebräuchlichste Anwendung ist der Passwort-Hash bei der Passwortverifizierung. Schlüsselableitungsfunktionen besitzen die gewünschten Eigenschaften einer Passwort-Hash-Funktion, obwohl sie ursprünglich nicht dafür vorgesehen waren.
KDFs können auch kryptografische Schlüssel aus geheimen Passwörtern oder Passphrasen erzeugen. Passwörter und Passphrasen haben typischerweise nicht die gewünschten Eigenschaften kryptografischer Schlüssel. Diese Anwendung heißt Schlüsselstreckung.
Für die Schlüsselstreckung sollte das Verfahren absichtlich rechenintensiv und damit langsam sein. Das erschwert Wörterbuchangriffe und Brute-Force-Angriffe auf das Passwort oder die Passphrase. Zusätzlich wird der Einsatz von Salt empfohlen.