Transcript Warum AES

Die Finalisten für den
Advanced
Encryption
Standard
Herbert Frohner
Sebastian Hegenbart
Joachim Kerschbaumer
Einführung
Was ist AES ?
- Von US-Regierung genehmigter Verschlüsselungsstandard
- Exportbeschränkungen für Verschlüsselungsalgorithmen
- Wettbewerb von NIST ausgerufen
- Nachfolger von DES (Data Encryption Standard)
Einführung
Warum AES ?
- DES seit 1973 Standard
- Zu kurze DES Schlüssellänge (Brute-Force)
- Diverse Schwachstellen von DES
- 3DES zu langsam
Einführung
Wichtige Begriffe :
- Kryptoanalyse
- Blockcipher
- Runden (Feistel-Netzwerke)
- S-Boxen
Einführung
NIST Ausschreibung für AES:
- Kosten
- Lizenzkosten
- Implementierungskosten ( Effizienz )
- Flexibilität
- Implementierbar auf div. Platformen bzw. Hardware
- Sicherheit
- wichtigster Aspekt
Einführung
Minimale Anforderungen an AES:
- Symmetrischer Verschlüsselungsalgorithmus
- Blockcipher
- Schlüssel-Block Kombinationen von
- 128-128 Bit
- 192-128 Bit
- 256-128 Bit
Kandidaten
Bewerber:
- Anfänglich 15 Kandidaten
- 5 Finalisten
- Rijndael
- Twofish
- Serpent
- MARS
- RC6
Kandidaten
Rijndael:
- Joan Daemen & Vincent Rijmen
- Flexibler Algorithmus ( diverse Platformen )
- Variable Schlüssellängen und Rundenzahlen
- Hohe Performance und Sicherheit
Kandidaten
Twofish:
- Bruce Schneier et al.
- Effizient in Hardware implementierbar
- Variable Schlüssellängen
- Hohe Performance und Sicherheit
- Erschwerte Kryptoanalyse durch hohe Komplexität
Kandidaten
Serpent:
- Ross Anderson, Eli Biham, Lars Knudsen
- Sicherster Algorithmus
- Langsamster/Kostenintensivster Algorithmus
Kandidaten
MARS:
- IBM
- Variable Schlüssellänge
- Einfache Kryptoanalyse
- Kostenaufwendige Hardwareimplementation
Kandidaten
RC6:
- RSA ( Ron Rivest et al. )
- Einfachster und elegantester Algorithmus
- Unterschiedliche Performancewerte
- Modifizierter RC5
Sicherheit
Attacken gegen AES Kandidaten:
- Keine bekannten Attacken gegen Finalisten
- Attacken gegen Reduced-Round Versionen
- Reduced-Round Version != Original Algorithmus
- Angriffe noch theoretischer Natur
Sicherheit
Vergleich Gesamtrunden vs. Unsichere Runden:
Effizienz
Kostenaufwendige Operationen:
- Verschlüsselung
- Entschlüsselung
- Key-Setup
Effizienz
Effizienz:
- Software
- High-End Systeme
- Low-End Systeme (Embedded)
- Smartcards
- Hardware
Effizienz
High-End Systeme:
Effizienz
Low-End Systeme:
Effizienz
Smartcards:
- 8-bit CPU
- Üblicherweise zwischen 128 und 512 byte RAM
- Benötigter RAM ausschlaggebend
Effizienz
Smartcards:
Effizienz
Smartcard-Vergleich:
- MARS
- Benötigt viel Speicher (3-KB ROM)
- Benötigt viel RAM ( 200-byte )
- Schlechte Performance durch Multiplikationen
- RC6
- Kleine Code Größe
- Benötigt viel RAM ( 210-byte )
- Schlechte Performance durch Multiplikationen
Effizienz
Smartcard-Vergleich:
- Rijndael
- Weniger als 1-KB ROM
- Benötigt nur 52-byte RAM
- Schlechtere Performance bei Entschlüsselung
- Serpent
- Weniger als 1-KB ROM
- Benötigt ca. 50-byte RAM
- Twofish
- Benötigt 60-byte RAM
- Sehr schnell sowohl bei Ver-/Entschlüsselung
Effizienz
Hardware-Vergleich:
- MARS
- Aufwendige Operationen
- Viel Speicher für S-Boxen (2-KB)
- 70 000 Zellen
- RC6
- Aufwendige Operationen
- Viele Tradeoffs (flexibel)
- Rijndael
- 4KB S-Boxen für voll parallele Implementation
- Entschlüsselung verdoppelt die Chipgröße
- Langsamere Subkey Generierung bei Entschlüsselung
Effizienz
Hardware-Vergleich:
- Serpent
- 2-KB S-Boxen für voll parallele Version
- Entschlüsselung verdoppelt die Chipgröße
- Kein overhead für Subkey Generierung
-Twofish
- Viele Tradeoffs
- Kein overhead für Subkey Generierung
- Effizient auf High Speed & Low Gate Implementierungen
- 20 000 Zellen
Abstimmung
Ergebnis des Wettbewerbs:
1. Rijndael
2. Serpent
3. Twofish
4. RC6
5. MARS
Gewinner
Gründe für Rijndael als AES:
Beste Kombination aus :
- Sicherheit
- Effizienz
- Flexibilität
- Einfache Implementation
- Einfache Kryptoanalyse
…
Vielen Dank für Ihre
Aufmerksamkeit !
Referenzen
• NIST
• Offizielle Papers der jeweiligen Entwickler