Synthetic Initialization Vector

Das BSI hat seine technische Richtlinie zu Schlüssellängen aktualisiert (Dokument vom Stand 31.01.2025). Wie erwartet ist ML-KEM (Kyber) auch mit zwei Schlüssellängen in die Richtlinie aufgenommen worden. Es wäre interessant zu wissen, weshalb die kleinste Variante hier nicht erwähnt wird.

Noch interessanter ist jedoch, dass der AES-GCM-SIV als Chiffre bzw. Betriebsmodus-Empfehlung aufgenommen wurde. Um SIV besser verstehen zu können, ist es vielleicht sinnvoll zuerst ein paar Schritte zurück zu gehen.

AES, grundsätzlich eine Blockchiffre, arbeitet allerdings durch ein CCM oder GCM Betriebsmodus äquivalent zu einer Stromchiffre. Das bedeutet, dass die Funktion genutzt wird um einen Schlüsselstrom zu erzeugen, der bitweise auf den Klartext appliziert wird (xor).

Der gleiche Schlüssel erzeugt hierbei den gleichen Schlüsselstrom. Damit sich der Schlüsselstrom bei gleichem Schlüssel ändert, wird eine sogenannte Nonce als Initialisierungsvektor verwendet. Eine Nonce ist Zahl, die dem Namen nach nur einmal verwendet werden darf. Wird dieselbe Nonce mehrfach verwendet, wird auch der gleiche Schlüsselstrom erzeugt. Ein solcher Fehler macht AES-GCM leicht angreifbar.

Somit wäre die doppelte Verwendung einer Nonce eine Katastrophe. In Umgebungen, in denen eine solche doppelte Verwendung nicht ganz ausgeschlossen werden kann, kann nun AES-GCM-SIV zum Einsatz kommen.

Die Idee hinter SIV ist, dass diese zur Verschlüsselung verwendete Initialisierungsvektor zusätzlich zu weiteren Daten auch vom Klartext abhängig ist. Somit wird die Gefahr der doppelten Verwendung reduziert. Wird zufälligerweise die gleiche Nonce verwendet, müsste auch der Klartext gleich sein, damit derselbe IV und somit derselbe Schlüsselstrom erzeugt wird. Das Ganze natürlich nicht mit absoluter, aber nunmal mit praktischer Sicherheit.

Es handelt sich deshalb um einen generierten „synthetischen“ Initialisierungsvektor, was AES-GCM-SIV seinen Namen gibt.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert