CoderTools

HKDF Schlüsselableitung

RFC 5869 HMAC-basierte Extract-and-Expand Schlüsselableitung

🔒 100% Lokale VerarbeitungIhre eingegebenen Daten werden vollständig in Ihrem Browser verarbeitet. Es werden keine Daten auf einen Server hochgeladen.
Ausgabeformat

HKDF Dokumentation

HKDF (HMAC-basierte Extract-and-Expand Schlüsselableitungsfunktion) ist in RFC 5869 definiert. Sie bietet eine robuste Methode zur Ableitung kryptographischer Schlüssel aus Eingabe-Schlüsselmaterial mittels eines zweistufigen Prozesses: Extraktion und Expansion.

HKDF wird in modernen Sicherheitsprotokollen wie TLS 1.3, Signal Protocol, Noise Protocol Framework und SSH breit eingesetzt. Die klare Trennung von Extraktions- und Expansionsphasen macht es besonders geeignet für die Ableitung von Schlüsselhierarchien.

Extraktionsphase: HKDF-Extract(salt, IKM) → PRK

Die Extraktionsphase konzentriert die möglicherweise verteilte Entropie des Eingabe-Schlüsselmaterials (IKM) in einen pseudozufälligen Schlüssel (PRK) fester Länge:

  • Nimmt Salt (optional, Standard: HashLen Nullen) und IKM als Eingabe
  • Berechnet PRK = HMAC-Hash(salt, IKM)
  • PRK-Länge entspricht der Hash-Ausgabelänge (32 Bytes für SHA-256)
  • Salt fungiert als Schlüssel für HMAC und verstärkt die Extraktion

Expansionsphase: HKDF-Expand(PRK, info, L) → OKM

Die Expansionsphase dehnt den PRK auf Ausgabe-Schlüsselmaterial (OKM) der gewünschten Länge aus:

  • Nimmt PRK, info (Kontext/Label) und gewünschte Ausgabelänge L
  • Berechnet iterativ T(i) = HMAC-Hash(PRK, T(i-1) | info | Zähler)
  • Verkettet Ergebnisse: OKM = T(1) | T(2) | ... | T(N)
  • Maximale Ausgabelänge ist 255 × HashLen Bytes

Häufige Anwendungsfälle

  • TLS 1.3 Schlüsselplanung: Ableitung von Traffic Secrets, Handshake-Schlüsseln und Anwendungsschlüsseln
  • Signal Protocol: Ableitung von Chain Keys und Message Keys aus Shared Secrets
  • SSH Schlüsselaustausch: Ableitung von Verschlüsselungs- und Integritätsschlüsseln nach ECDH
  • Schlüsselhierarchie: Ableitung mehrerer zweckspezifischer Schlüssel aus einem Master Secret

HKDF vs PBKDF2

Eigenschaft HKDF PBKDF2
Standard RFC 5869 RFC 8018
Eingabetyp Shared Secrets, DH-Ausgaben Benutzerpasswörter
Iterationen Einzeldurchlauf Viele (10K-1M)
Geschwindigkeit Schnell Absichtlich langsam
Info-Parameter Ja (Kontextbindung) Nein
Primärer Anwendungsfall Hochentropie-Eingabe Niedrigentropie-Passwörter

Sicherheitshinweise

  • HKDF setzt voraus, dass das IKM bereits ausreichend Entropie enthält; nicht mit schwachen Passwörtern verwenden
  • Der info-Parameter sollte den beabsichtigten Verwendungszweck des Schlüssels eindeutig identifizieren (Kontexttrennung)
  • Salt ist optional, aber empfohlen beim Extrahieren mehrerer Schlüssel aus demselben IKM
  • PRK sollte niemals direkt verwendet werden; immer die Expansionsphase zur Ableitung der endgültigen Schlüssel nutzen

Technische Referenzen

Verwandte Tools

Schnellmenü

Keine aktuellen Tools