AES / Rijndael Chiffre

Kategorisierung:Moderne binär-basierte Blockchiffre
Herkunft / Verwendung:AES steht für 'Advanced Encryption Standard' und ist der Sieger-Algorithmus einer Ausschreibung in 2000 des NIST und gilt als Nachfolger von DES (Data Encryption Standard) von 1977. Der Algorithmus wurde von Joan Daemen und Vincent Rijmen entwickelt und die Chiffre wird deshalb auch Rijndael-Chiffre genannt. AES lässt einem die Wahl bei der Schlüssellänge von 128, 192 und 256 Bit. AES-192 und AES-256 sind in den USA für staatliche Dokumente mit höchster Geheimhaltungsstufe zugelassen.

Er ist so konstruiert, dass er in beide Richtungen funktioniert, d. h. die Verschlüsselung von bereits auf die selbe Art verschlüsselten Daten wieder zum Ausgangsresultat führt. Bei dieser Variante kann ein 128 bit Schlüssel angegeben werden, das entspricht 16 Zeichen. Üblicherweise wird als Schlüssel der binäre Hashwert eines Klartext-Passwortes angegeben.

AES hat sich mittlerweile als Standard durchgesetzt und neuere CPUs enthalten inzwischen spezielle Instruktionen, um die Verschlüsselung damit zu beschleunigen. Er wird u. a. bei der WLAN-Verschlüsselung WPA2, bei SSH, IPSec und in der IP-Telefonie benutzt.

Beschreibung des Algorithmus

Der in AES implementierte Algorithmus heißt Rijndael und ist ein als Substitutions-Permutations-Netzwerk entworfene Blockchiffre. Jeder Block wird zunächst in eine zweidimensionale Tabelle mit vier Zeilen geschrieben, deren Zellen ein Byte groß sind. Die Anzahl der Spalten variiert je nach Blockgröße von 4 (128 Bits) bis 8 (256 Bits). Jeder Block wird nun nacheinander bestimmten Transformationen unterzogen. Aber anstatt jeden Block einmal mit dem Schlüssel zu verschlüsseln, wendet Rijndael verschiedene Teile des erweiterten Originalschlüssels nacheinander auf den Klartext-Block an. Die Anzahl der Runden variiert und ist von Schlüssellänge und Blockgröße abhängig (bei AES also nur von der Schlüssellänge).

Eine S-Box (Substitutionsbox) mit 256 Bytes dient als Basis für eine monoalphabetische Verschlüsselung. Sie gibt an, wie in jeder Runde jedes Byte eines Blocks durch einen anderen Wert zu ersetzen ist. Typischerweise wird die S-Box in Blockchiffren eingesetzt, um die Beziehung zwischen Klar- und Geheimtext zu verwischen (in der kryptologischen Fachsprache Konfusion genannt). Die S-Box des AES setzt auch teilweise das Shannon’sche Prinzip der Diffusion um. Die Konstruktion der S-Box unterliegt Designkriterien, die die Anfälligkeit für die Methoden der linearen und der differentiellen Kryptoanalyse sowie für algebraische Attacken minimieren sollen.

Die genaue Spezifikation findet sich beim NIST.

Beispiel

Klartext:Beispielklartext (ASCII hex: 426569737069656c6b6c617274657874)
Schlüssel:Apfelstrudel (ASCII hex: 417066656c7374727564656c)
Chiffrat:EC3E3ACD9B055C93086EE44AC6A379EA (hex)
Chiffrieren / dechiffrieren: Beispielklartext -> 42 65 69 73 70 69 65 6c 6b 6c 61 72 74 65 78 74 Apfelstrudel -> 41 70 66 65 6c 73 74 72 75 64 65 6c chiff. Chiffrat EC 3E 3A CD 9B 05 5C 93 08 6E E4 4A C6 A3 79 EA Apfelstrudel -> 41 70 66 65 6c 73 74 72 75 64 65 6c dechiff. Beispielklartext <- 42 65 69 73 70 69 65 6c 6b 6c 61 72 74 65 78 74

Code / Chiffre online dekodieren / entschlüsseln bzw. kodieren / verschlüsseln (DeCoder / Encoder / Solver-Tool)

Wenn Sie Texte eingeben, die nicht als Hex-Sequenz (ohne Leerzeichen) interpretiert werden können, erfolgt eine automatische Umsetzung in eine Hex-Sequenz. Ist Das Ergebnis umsetzbar in druckbare ASCII-Zeichen, erfolgt eine automatische Umsetzung von Hex.