Alle Artikel

PBKDF2: der älteste Standard zur Schlüsselstreckung

Die BSI-Richtlinie TR-02102-1 nennt PBKDF2 ausdrücklich als geeignetes Verfahren zur Passwort-basierten Schlüsselableitung und empfiehlt eine Mindestanzahl an Iterationen, die sich an der verfügbaren Rechenleistung orientiert und regelmäßig nach oben angepasst wird — eine der wenigen nationalen Richtlinien, die konkrete Iterationszahlen statt vager Empfehlungen veröffentlicht.

Das Prinzip der Schlüsselstreckung

Statt ein Passwort einmal zu hashen, wendet PBKDF2 eine Basis-Hash-Funktion (meist HMAC-SHA256) viele tausend Mal hintereinander an, wobei das Ergebnis jeder Iteration als Eingabe für die nächste dient. Das verlangsamt absichtlich die Berechnung eines einzelnen Hashes und macht massenhaftes Brute-Forcing für einen Angreifer deutlich teurer.

PBKDF2 im WLAN: WPA2

Eine der am weitesten verbreiteten Anwendungen von PBKDF2 weltweit ist die Ableitung des WLAN-Verschlüsselungsschlüssels aus dem Netzwerkpasswort bei WPA2-PSK: Das Passwort durchläuft PBKDF2-HMAC-SHA1 mit 4096 Iterationen, wobei der Netzwerkname (SSID) als Salt dient, und erzeugt so einen 256-Bit-Schlüssel. Das erklärt, warum ein kurzes WLAN-Passwort nach dem Abfangen eines einzigen "Handshakes" so anfällig für Offline-Brute-Force ist.

Warum dieses Tool HTTPS benötigt

Dieses Tool berechnet PBKDF2 über die im Browser eingebaute Web Crypto API statt über eine selbstgeschriebene JavaScript-Implementierung. Browser stellen crypto.subtle nur in einem "sicheren Kontext" bereit — HTTPS, oder localhost während der Entwicklung — daher funktioniert dieses und jedes andere kryptografische Tool auf dieser Seite ohne verschlüsselte Verbindung schlicht nicht, unabhängig von der Rechenleistung des Geräts.

Wofür man das braucht

  • Kryptografische Schlüssel aus Passwörtern für die Verschlüsselung ableiten (z. B. bei WPA2/WPA3 für WLAN).
  • Kompatibilität mit älteren Systemen wahren, die PBKDF2 zur Passwortspeicherung verwenden.
  • Verstehen, warum die empfohlene Iterationsanzahl in neueren Standardversionen immer weiter steigt.

Die Wahl der Basis-Hash-Funktion spielt eine Rolle

Ältere PBKDF2-Implementierungen verwendeten oft standardmäßig HMAC-SHA1 — SHA-1 selbst gilt für direktes Hashing als kryptografisch geschwächt, aber innerhalb der HMAC-Konstruktion ist diese Schwäche keine kritische Verwundbarkeit. Moderne Empfehlungen raten dennoch eindeutig zu HMAC-SHA256 oder HMAC-SHA512 — nicht wegen einer direkten Bedrohung durch SHA-1, sondern weil die längere Ausgabe und die modernere Funktion einen größeren Sicherheitsspielraum bieten, ohne spürbaren Geschwindigkeitsverlust.

Tool ausprobieren