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