Betriebsmodus (Kryptographie)Ein Betriebsmodus oder eine Betriebsart ist ein Verfahren, das beschreibt, wie mit einer Blockchiffre Nachrichten verschlüsselt werden. Erst die Kombination von Blockchiffre und Betriebsmodus erlaubt es, Nachrichten zu verschlüsseln, die länger sind als die Blocklänge. Üblicherweise wird dazu die Nachricht in mehrere Blöcke aufgeteilt und durch Padding auf eine passende Länge gebracht. Ein Initialisierungsvektor (IV) kann das Verfahren zusätzlich unabhängig vom verwendeten Schlüssel randomisieren. Klassische BetriebsartenElectronic Code Book ModeDie einfachste Betriebsart ist, jeden Block unabhängig von den anderen zu verschlüsseln. Dieses Verfahren heißt Electronic Code Book Mode (ECB) und hat folgende Eigenschaften.
Von der Verwendung des ECB-Modus wird daher abgeraten, es sei denn, es soll nur einmal ein einziger Nachrichtenblock verschlüsselt werden.[1] Cipher Block Chaining ModeDie Probleme des ECB können durch Cipher Block Chaining (CBC) behoben werden. Dabei wird ein Nachrichtenblock vor dem Verschlüsseln mit dem vorhergehenden Chiffratblock verknüpft. Für den ersten Block nimmt man hierzu einen Initialisierungsvektor. Da ein Chiffratblock nun von allen vorhergehenden Blöcken abhängt, ist eine Umordnung der Blöcke nicht mehr möglich, ohne die Entschlüsselung zu beeinträchtigen. Da die Verschlüsselung auch vom Initialisierungsvektor (IV) abhängt, werden zwei gleiche Nachrichten mit unterschiedlichen IVs auch unterschiedlich verschlüsselt. Dieser Modus hat außerdem folgende Eigenschaften.
Propagating Cipher Block Chaining ModeDieser Modus (PCBC) unterscheidet sich von CBC dadurch, dass ein Klartextblock auch mit dem vorhergehenden Klartextblock verknüpft wird. Die Chiffratblöcke werden mit dem Schlüssel also berechnet zu
Mit PCBC wirkt sich die Verfälschung eines Schlüsseltextblocks auf alle nachfolgenden Blöcke des Dechiffrats aus. Cipher Feedback ModeFalls auch Nachrichten verschlüsselt werden sollen, deren Länge kein Vielfaches der Blocklänge ist, kann die Blockchiffre im Cipher Feedback Mode (CFB) als selbstsynchronisierende Stromchiffre verwendet werden. Hierbei wird zuerst ein Initialisierungsvektor verschlüsselt und das Ergebnis auf die Nachricht addiert. Die daraus resultierenden Bits des Chiffrats werden in das Klartextregister geschoben und verdrängen dort genauso viele Bits des IV. Das Ergebnis wird wieder verschlüsselt und auf die nächsten Nachrichtenbits addiert. Wie beim CBC-Modus hängt ein Chiffratbit von der Nachricht und den vorhergehenden Chiffratbits ab. Ein Fehler wirkt sich solange auf die Verschlüsselung aus, bis das fehlerhafte Bit aus dem Klartextregister geschoben wurde. Output Feedback ModeBeim Output Feedback Mode wird im Unterschied zum Cipher Feedback Mode nicht ein Chiffratblock, sondern die Ausgabe der Verschlüsselungsfunktion als Feedback genutzt. Dadurch wird jede Fehlerfortpflanzung vermieden, und die Blockchiffre effektiv als synchrone Stromchiffre betrieben; der Schlüsselstrom ist unabhängig von der Nachricht. Das bedeutet auch, dass für jede Nachricht ein anderer Initialisierungsvektor benutzt werden muss, da der gesamte Schlüsselstrom nur von ihm abhängt. Counter ModeEine Vereinfachung des Output Feedback Modes ist der Counter Mode, bei dem anstelle eines Feedbacks eine Folge natürlicher Zahlen verschlüsselt wird. Damit ist es möglich, einen Block zu entschlüsseln, ohne vorher die anderen Blöcke entschlüsseln zu müssen. XTSXTS verwendet einen Tweak als zusätzliche Eingabe, damit gleiche Nachrichtenblöcke nicht gleich verschlüsselt werden. Der Einsatzzweck von XTS ist Festplattenverschlüsselung. Authenticated Encryption-ModiAuthenticated-Encryption-Modi sind Betriebsmodi, die zusätzlich die Nachrichtenintegrität sichern. Alle drei genannten Verfahren bieten AEAD (Authenticated Encryption with Associated Data), d. h. sie ermöglichen die Authentifizierung nicht nur der verschlüsselten, sondern beliebiger weiterer Daten. Counter Mode mit CBC-MACCCM ist die Kombination von Counter Mode mit einem CBC-MAC. Ein Nachteil ist, dass für jeden Nachrichtenblock zwei Operationen der Blockchiffre nötig sind. Galois/Counter ModeGCM ist ein authentifizierter Verschlüsselungsmodus mit assoziierten Daten. Die Authentifizierung wird durch parallel zur Verschlüsselung laufende Multiplikationen im Galoiskörper realisiert. EAX-ModusEAX steht für encrypt-then-authenticate-then-translate (verschlüsseln dann authentifizieren dann übersetzen). Der Modus benötigt wie CCM zwei Blockchiffre-Operationen pro Nachrichtenblock, hat aber ansonsten einige technische Vorteile. Literatur
Einzelnachweise
|