Glossar

Was ist Key Wrapping?

Key Wrapping ist eine kryptografische Operation, die einen Schlüssel (den Nutzlastschlüssel) mit einem anderen Schlüssel (dem Wrapping-Schlüssel oder Schlüsselverschlüsselungsschlüssel) verschlüsselt und so dem Schlüsselmaterial bei der Speicherung oder beim Transport Vertraulichkeit und Integrität bietet.

Auch bekannt als: key wrap, AES-KW, key encryption key

Key Wrapping löst ein praktisches Problem in kryptografischen Systemen: Wie schützt man die Verschlüsselungsschlüssel selbst? Wenn ein Datenverschlüsselungsschlüssel im Klartext gespeichert wird, kann ihn jede Person mit Zugriff auf den Speicher verwenden. Key Wrapping löst das, indem der Datenschlüssel mit einem separaten Wrapping-Schlüssel verschlüsselt wird – es entsteht eine Schlüsselhierarchie, bei der der Zugriff auf verschlüsselte Daten sowohl den gekapselten Schlüssel als auch die Mittel zum Entpacken erfordert.

AES-KW (AES Key Wrap, definiert in RFC 3394) ist der am weitesten verbreitete Key-Wrapping-Algorithmus. Anders als Allzweck-Verschlüsselungsmodi ist AES-KW speziell für das Wrapping von Schlüsselmaterial konzipiert. Er bietet sowohl Vertraulichkeit als auch Integrität: Ist der Wrapping-Schlüssel falsch oder wurden die gekapselten Daten manipuliert, schlägt der Entpack-Vorgang fehl, statt falsches Schlüsselmaterial zu produzieren. Diese Integritätsprüfung ist entscheidend, weil ein stillschweigend falscher Schlüssel dazu führen würde, dass Daten ohne jede Fehlermeldung als Datenmüll entschlüsselt werden.

Key Wrapping ist grundlegend für Schlüsselverwaltungssysteme, HSMs (Hardware-Sicherheitsmodule) und Envelope-Encryption-Schemata, die Cloud-Anbieter verwenden. Bei der Envelope Encryption werden Daten mit einem Datenschlüssel verschlüsselt, und der Datenschlüssel wird mit einem Hauptschlüssel gewrappt. Dieses Muster ermöglicht eine effiziente Schlüsselrotation: Wenn sich der Hauptschlüssel ändert, müssen nur die kleinen gekapselten Schlüssel neu verschlüsselt werden – nicht der gesamte Datensatz.

Wrap a data key with a passphrase

A random AES-256 data key gets encrypted by a wrapping key derived from your passphrase via PBKDF2. Change the unwrap passphrase to see AES-KW reject the wrong key cleanly.

Data key (AES-256, what actually encrypts your secret)
 
Wrapped key (what gets stored / shared)
 
Salt (random per wrap, fed to PBKDF2)
 
Try matching and mismatching the unwrap passphrase to compare outcomes.

This is exactly the flow Vaulted runs when you set a passphrase. The wrapping key never leaves your browser; only the wrapped key and salt travel — in the URL fragment, so the server sees neither.

Wie Vaulted Key Wrapping verwendet

Vaulted verwendet AES-KW Key Wrapping, wenn für ein Geheimnis eine Passphrase gesetzt wird. Der Ablauf funktioniert so: Der Browser generiert einen zufälligen AES-256-GCM-Schlüssel zur Verschlüsselung des Geheimnisses und leitet dann mit PBKDF2 einen Wrapping-Schlüssel aus der Passphrase ab. Der AES-256-GCM-Schlüssel wird mit AES-KW und dem abgeleiteten Wrapping-Schlüssel gewrappt. Der gewrappte Schlüssel, das Salt und der IV werden im URL-Fragment eingebettet. Die empfangende Person gibt die Passphrase ein, leitet den Wrapping-Schlüssel erneut via PBKDF2 ab, entpackt den AES-256-GCM-Schlüssel und entschlüsselt das Geheimnis.