AES-CTR
Was ist AES-CTR?
AES-CTREin Stream-Cipher-Modus, der AES zu einem Keystream-Generator macht, indem ein hochzaehlender Zaehler verschluesselt und mit dem Klartext XOR-verknuepft wird.
AES-CTR (Counter-Modus) ist ein in NIST SP 800-38A standardisierter Modus, der nur Vertraulichkeit liefert. Der Cipher verschluesselt aufeinanderfolgende Zaehlerbloecke (typisch eine 96-Bit-Nonce verkettet mit einem 32-Bit-Blockzaehler) und XOR-verknuepft den so erzeugten Keystream mit dem Klartext. Da jeder Block nur vom Zaehler abhaengt und nicht vom vorherigen Block, erlaubt CTR vollstaendig parallele Ver- und Entschluesselung sowie wahlfreien Zugriff auf den Chiffretext – Eigenschaften, die ihn zum Arbeitspferd der Festplattenverschluesselung, von IPsec ESP (RFC 3686) und des TLS-Record-Schutzes machen, wenn er in einen authentifizierten Modus eingebettet ist.
Die charakteristische Schwaeche von CTR ist, dass er keine Integritaet bietet und malleable ist: Ein Angreifer, der ein Chiffratbit umkippt, kippt exakt dasselbe Klartextbit, ohne dass dies erkannt wird. Er muss stets mit einem MAC kombiniert oder als Motor innerhalb eines AEAD wie GCM, EAX oder CCM verwendet werden. Die zweite, gefaehrlichere Falle ist die Nonce-/Zaehler-Wiederverwendung: Verschluesselt man zwei Nachrichten unter demselben Schluessel und demselben Startzaehler, entstehen ueberlappende Keystreams, sodass das XOR der beiden Chiffretexte den Keystream aufhebt und das XOR der beiden Klartexte liefert – ein klassisches "Two-Time-Pad", das reale Systeme gebrochen hat. Der Keystream ist unabhaengig von den Daten identisch, daher ist ein wiederholter Zaehler sogar ueber verschiedene Dateien hinweg katastrophal.
In der Praxis sollten Sie rohes AES-CTR niemals fuer gespeicherte oder uebertragene Daten einsetzen: Waehlen Sie AES-GCM oder ChaCha20-Poly1305, die Authentifizierung auf demselben Counter-Modus-Kern aufbauen und als einzige operative Anforderung garantierte eindeutige Nonces hinterlassen.
flowchart LR
subgraph Keystream-Erzeugung
N[Nonce + Zaehler 0] --> E0[AES-Verschluesselung] --> KS0[Keystream-Block 0]
N1[Nonce + Zaehler 1] --> E1[AES-Verschluesselung] --> KS1[Keystream-Block 1]
N2[Nonce + Zaehler 2] --> E2[AES-Verschluesselung] --> KS2[Keystream-Block 2]
end
P0[Klartext 0] --> X0((XOR))
KS0 --> X0 --> C0[Chiffretext 0]
P1[Klartext 1] --> X1((XOR))
KS1 --> X1 --> C1[Chiffretext 1]
P2[Klartext 2] --> X2((XOR))
KS2 --> X2 --> C2[Chiffretext 2]
C0 --> MAC[MAC hinzufuegen / GCM nutzen<br/>fuer Integritaet]● Beispiele
- 01
AES-CTR ist die Verschluesselungsschicht in AES-GCM und AES-CCM.
- 02
Linux dm-crypt nutzt AES-CTR-Varianten fuer die Festplattenverschluesselung.
● Häufige Fragen
Was ist AES-CTR?
Ein Stream-Cipher-Modus, der AES zu einem Keystream-Generator macht, indem ein hochzaehlender Zaehler verschluesselt und mit dem Klartext XOR-verknuepft wird. Es gehört zur Kategorie Kryptografie der Cybersicherheit.
Was bedeutet AES-CTR?
Ein Stream-Cipher-Modus, der AES zu einem Keystream-Generator macht, indem ein hochzaehlender Zaehler verschluesselt und mit dem Klartext XOR-verknuepft wird.
Wie schützt man sich gegen AES-CTR?
Schutzmaßnahmen gegen AES-CTR kombinieren typischerweise technische Kontrollen und operative Praktiken, wie in der Definition oben beschrieben.
Welche anderen Bezeichnungen gibt es für AES-CTR?
Übliche alternative Bezeichnungen: Counter-Modus, AES-128-CTR, AES-256-CTR.