Blockverschlüsselung und AES



Ähnliche Dokumente
DES der vergangene Standard für Bitblock-Chiffren

AES. Jens Kubieziel 07. Dezember Friedrich-Schiller-Universität Jena Fakultät für Mathem atik und Informatik

Kryptographische Systeme (M, C, K, e, d) Symmetrische Verfahren (gleicher Schlüssel zum Verschlüsseln und Entschlüsseln):

Advanced Encryption Standard. Copyright Stefan Dahler 20. Februar 2010 Version 2.0

Digitale Signaturen. Sven Tabbert

monoalphabetisch: Verschiebechiffren (Caesar), multiplikative Chiffren polyalphabetisch: Vigenère-Chiffre

Der Advanced Encryption Standard (AES)

Stefan Lucks Krypto und Mediensicherheit (2009) 5: Blockchiffren. 5: Blockchiffren. (n bit) (n bit) VERschlüsseln ENTschlüsseln

Methoden der Kryptographie

6.2 Perfekte Sicherheit

8 Der Advanced Encryption Standard (AES)

12 Kryptologie. ... immer wichtiger. Militär (Geheimhaltung) Telebanking, Elektronisches Geld E-Commerce

Die (Un-)Sicherheit von DES

10. Public-Key Kryptographie

Kapitel 3: Etwas Informationstheorie

Kryptographie und Komplexität

Einführung in die moderne Kryptographie

Zeichen bei Zahlen entschlüsseln

Was heißt Kryptographie I? Understanding Cryptography Christof Paar und Jan Pelzl

11. Das RSA Verfahren und andere Verfahren

Einfache kryptographische Verfahren

Kryptografische Algorithmen

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Wireless Security. IT Security Workshop Moritz Grauel Matthias Naber

Zusammenfassung der Vorlesung vom

Ein Scan basierter Seitenangriff auf DES

Kryptographische Systeme (M, C, K, E, D) Symmetrische Verfahren (gleicher Schlüssel zum Verschlüsseln und Entschlüsseln):

Kryptographie. Vorlesung 7: Der AES Algorithmus. Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca

Der Zwei-Quadrate-Satz von Fermat

Theoretische Grundlagen der Informatik WS 09/10

Visuelle Kryptographie

Grundlagen der Kryptographie

Informationssicherheit - Lösung Blatt 2

Die (Un-)Sicherheit von DES

4.6.1 Mathematische Grundlagen

Klassische Verschlüsselungsverfahren

Kryptographische Verschlüsselung mithilfe des DES-Verfahrens und die Übersetzung eines Textes durch ein selbstgeschriebenes Delphi-Programm

74 5 DES und AES. 5.1 Der Data Encryption Standard (DES)

Elliptische Kurven in der Kryptographie

Kryptographische Verfahren. zur Datenübertragung im Internet. Patrick Schmid, Martin Sommer, Elvis Corbo

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Algorithmische Anwendungen

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Primzahlen und RSA-Verschlüsselung

Sicherheit von PDF-Dateien

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren

Betriebssysteme und Sicherheit Sicherheit. Florian Kerschbaum TU Dresden Wintersemester 2011/12

Was bisher geschah Kryptographische Systeme (M, C, K, e, d) Verfahren: symmetrisch klassisch: Verschiebechiffren (Spezialfall Caesar-Code)

Wie Sie beliebig viele PINs, die nur aus Ziffern bestehen dürfen, mit einem beliebigen Kennwort verschlüsseln: Schritt 1

Modul Diskrete Mathematik WiSe 2011/12

Verschlüsselung und Entschlüsselung

Das RSA-Verfahren. Armin Litzel. Proseminar Kryptographische Protokolle SS 2009

Erinnerung Blockchiffre

Mathematische Grundlagen der Kryptographie. 1. Ganze Zahlen 2. Kongruenzen und Restklassenringe. Stefan Brandstädter Jennifer Karstens

Designziele in Blockchiffren

Zur Sicherheit von RSA

SICHERE DATENHALTUNG IN DER CLOUD VIA HANDY. Tuba Yapinti Abschlussvortrag der Bachelorarbeit Betreuer: Prof. Reinhardt, Dr.

7 Die Determinante einer Matrix

1 Kryptosysteme 1 KRYPTOSYSTEME. Definition 1.1 Eine Kryptosystem (P(A), C(B), K, E, D) besteht aus

AES und DES. Maria Eichlseder. 20. November 2007

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

10. Kryptographie. Was ist Kryptographie?

Kryptologie und Kodierungstheorie

Frank Weinhold Professur VSR Fakultät für Informatik TU Chemnitz Mai 2011

Lenstras Algorithmus für Faktorisierung

5. Übung zum G8-Vorkurs Mathematik (WiSe 2011/12)

RSA Verfahren. Kapitel 7 p. 103

3.3 Eigenwerte und Eigenräume, Diagonalisierung

Tutorial: Homogenitätstest

Kryptographie I Symmetrische Kryptographie

Exkurs Kryptographie

Seminar Kryptographie und Datensicherheit

Erste Vorlesung Kryptographie

Sicherer Datenaustausch mit EurOwiG AG

W-Rechnung und Statistik für Ingenieure Übung 11

Lineare Gleichungssysteme

GF(2 2 ) Beispiel eines Erweiterungskörpers (1)

Zahlensysteme: Oktal- und Hexadezimalsystem

(für Grund- und Leistungskurse Mathematik) 26W55DLQHU0DUWLQ(KUHQE UJ*\PQDVLXP)RUFKKHLP

13. Lineare DGL höherer Ordnung. Eine DGL heißt von n-ter Ordnung, wenn Ableitungen y, y, y,... bis zur n-ten Ableitung y (n) darin vorkommen.

Division Für diesen Abschnitt setzen wir voraus, dass der Koeffizientenring ein Körper ist. Betrachte das Schema

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

Künstliches binäres Neuron

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

Lineare Gleichungssysteme

8. Von den Grundbausteinen zu sicheren Systemen

Einführung in die Kodierungstheorie

Kapitel 5: Dynamisches Programmieren Gliederung

Betriebsarten von Blockchiffren. ECB Electronic Code Book Mode. Padding. ECB Electronic Code Book Mode

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

Professionelle Seminare im Bereich MS-Office

Codierungsverfahren SS Reed-Solomon-Codes zur Mehrblock-Bündelfehler-Korrektur

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Bernd Borchert. Univ. Tübingen WS 13/14. Vorlesung. Kryptographie. Teil

Musterlösungen zur Linearen Algebra II Blatt 5

Konzepte von Betriebssystemkomponenten: Schwerpunkt Sicherheit. Asymmetrische Verschlüsselung, Digitale Signatur

Transkript:

Blockverschlüsselung und AES Proseminar/Seminar Kryptographie und Datensicherheit SoSe 2009 Universität Potsdam ein Vortrag von Linda Tschepe

Übersicht Allgemeines SPNs (Substitutions- Permutations- Netzwerke) Lineare Kryptoanalyse Differentielle Kryptoanalyse DES (der Data Encryption Standard) AES (der Advanced Encryption Standard) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 2

Allgemeines - Blockchiffre Was ist eine Blockchiffre? Bei der Blockverschlüsselung werden immer Blöcke einer festen Länge verschlüsselt. Moderne Blockchiffren sind meist Produktchiffren, welche Substitutions- und Permutationschiffren kombinieren. Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 3

Allgemeines eine typische iterierte Chiffre w0 x w1 g(w0,k1) w2 g(w1,k2) : : wn-1 g(wn-2,kn-1) wn g(wn-2,kn) y wn N Anzahl der Runden K binärer Schlüssel (K 1,...,K N ) Liste der Rundenschlüssel w r Zustand des Textes w0 Klartext (x) wn Chiffretext (y) g Rundenfunktion : g(w r-1, K r ) = w r Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 4

Allgemeines eine typische iterierte Chiffre wn y wn-1 g-1(wn,kn) : : w0 g-1(w1,k1) x w0 g muss injektiv sein!!! N Anzahl der Runden K binärer Schlüssel (K 1,...,K N ) Liste der Rundenschlüssel w r Zustand des Textes w0 Klartext (x) wn Chiffretext (y) g Rundenfunktion : g(w r-1, K r ) = w r Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 5

Substitutions-Permutations-Netzwerke K i+1 + S-Boxen Permutation w N-1 w i + K N x x Klartext (Länge l*m) y Chiffretext (Länge l*m) S-Boxen N Anzahl der Runden π S : {0,1} l {0,1} l π P : {1,...,l*m} {1,...,l*m} y + K N+1 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 6

SPN - Beispiel п S : 0 1 2 3 4 5 6 7 8 9 A B C D E F E 4 D 1 2 F B 8 3 A 6 C 5 9 0 7 п P : 1 2 3 4 5 6 7 8 9 10 11 1 5 9 13 2 6 10 14 3 7 11 12 13 14 15 16 15 4 8 12 16 K 1 : 0011 1010 1001 0100 K 2 : 1010 1001 0100 1101 K 3 : 1001 0100 1101 0110 K 4 : 0100 1101 0110 0011 K 5 : 1101 0110 0011 1111 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 7

Lineare Kryptoanalyse 1993 von Mitsuru Matsui publiziert kann prinzipiell auf jede iterierte Chiffre angewandt werden fällt unter die Kategorie Known-Plaintext-Attacke Lineare Chiffren sind relativ leicht zu entziffern Umgehen der nicht-linearen S-Boxen Idee: Approximation der Chiffrierfunktion durch eine lineare Abbildung Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 8

Lineare Kryptoanalyse Piling-up Lemma Seien X 1,...,X n unabhängige Zufallsvariablen, welche Werte der Menge {0,1} annehmen, und є 1,..., є n die zugehörigen Bias-Werte, so gilt: P(X 1 xor... xor X n = 0) = ½ + 2 n-1 є i n i = 1 P(X i =0) = p i P(X i =1) = 1-p i є i = p i ½ P(X i =0) = ½ + є i P(X i =1) = ½ - є i Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 9

Lineare Kryptoanalyse 1. Teil Approximieren der S-Boxen durch eine lineare Abbildung: 4 Eingangsvariablen: X 1, X 2, X 3, X 4 4 Ausgangsvariablen: Y 1, Y 2, Y 3, Y 4 Untersuchen aller Abbildungen der Form (a i,b i є {0,1}): a 1 X 1 xor a 2 X 2 xor a 3 X 3 xor a 4 X 4 = b 1 Y 1 xor b 2 Y 2 xor b 3 Y 3 xor b 4 Y 4 a 1 a 2 a 3 a 4 in Hexadezimaldarstellung = Inputsumme (u) b 1 b 2 b 3 b 4 in Hexadezimaldarstellung = Outputsumme (v) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 10

Lineare Kryptoanalyse 1. Teil 0000 1110 0001 0100 0010 1101 0011 0001 0100 0010 0101 1111 0110 1011 0111 1000 1000 0011 1001 1010 1010 0110 1011 1100 1100 0101 1101 1001 1110 0000 1111 0111 Lineare Approximations-Tabelle: 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 16 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 1 8 8 6 6 8 8 6 14 10 10 8 8 10 10 8 8 2 8 8 6 6 8 8 6 6 8 8 10 10 8 8 2 10 3 8 8 8 8 8 8 8 8 10 2 6 6 10 10 6 6 4 8 10 8 6 6 4 6 8 8 6 8 10 10 4 10 8 5 8 6 6 8 6 8 12 10 6 8 4 10 8 6 6 8 6 8 10 6 12 10 8 8 10 8 6 10 12 6 8 8 6 7 8 6 8 10 10 4 10 8 6 8 10 8 12 10 8 10 8 8 8 8 8 8 8 8 8 6 10 10 6 10 6 6 2 9 8 8 6 6 8 8 6 6 4 8 6 10 8 12 10 6 A 8 12 6 10 4 8 10 6 10 10 8 8 10 10 8 8 B 8 12 8 4 12 8 12 8 8 8 8 8 8 8 8 8 C 8 6 12 6 6 8 10 8 10 8 10 12 8 10 8 6 D 8 10 10 8 6 12 8 10 4 6 10 8 10 8 8 10 E 8 10 10 8 6 4 8 10 6 8 8 6 4 10 6 8 F 8 6 4 6 6 8 10 8 8 6 12 6 6 8 10 8 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 11

Lineare Kryptoanalyse 1. Teil Die lineare Approximations-Tabelle zeigt die Anzahl der möglichen Kombinationen für X 1 X 2 X 3 X 4, für die die entsprechende Gleichung wahr ist. z.b: Inputsumme: B, Outputsumme: 1 -> 12 є(b1) = (12 8)/16 = ¼ P(B1) = ½ + є(b1) = ¾ Je größer є(xy) ist desto, besser ist die Approximation zu verwenden. (Bei є(xy) = ½ ist eine perfekte Repräsentation gefunden.) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 12

Lineare Kryptoanalyse 2. Teil Zusammensetzen der einzelnen Approximationen zu einem Ganzen: Input S-Box S i,j = U i,k (k є {1,..., 16}) Output S-Box S i,j = V i,k (k є{1,...,16}) Approximation S 1,2 : (Wahrscheinlichkeit ¾) U 1,5 xor U 1,7 xor U 1,8 = V 1,6 X 5 xor X 7 xor X 8 xor K 1,5 xor K 1,7 xor K 1,8 = V 1,6 K1 S11 S12 S13 S14 K2 S21 S22 S23 S24 K3 S31 S32 S33 S34 K4 S41 S42 S43 S44 K5 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 13

Lineare Kryptoanalyse 2. Teil Approximation S 2,2 : (Wahrscheinlichkeit ¼) U 2,6 = V 2,6 xor V 2,8 K1 S11 S12 S13 S14 K2 U 2,6 = V 1,6 xor K 2,6 X 5 xor X 7 xor X 8 xor K 1,5 xor K 1,7 xor K 1,8 xor K 2,6 = V 2,6 xor V 2,8 (mit Wahrscheinlichkeit: ½ + 2(¾ ½) (¼ ½) = 3/8) (Piling-Up Lemma) S21 S22 S23 S24 K3 S31 S32 S33 S34 K4 S41 S42 S43 S44 K5 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 14

Lineare Kryptoanalyse 2. Teil Approximation S 3,2 : (Wahrscheinlichkeit ¼) U 3,6 = V 3,6 xor V 3,8 Approximation S 3,4 : (Wahrscheinlichkeit ¼) U 3,14 = V 3,14 xor V 3,16 U 3,6 = V 2,6 xor K 3,6, U 3,14 = V 2,8 xor K 3,14 X 5 xor X 7 xor X 8 xor K 1,5 xor K 1,7 xor K 1,8 xor K 2,6 xor K 3,6 xor K 3,14 = V 3,6 xor V 3,8 xor V 3,14 xor V 3,16 (Wahrscheinlichkeit:15/32) K1 S11 S12 S13 S14 K2 S21 S22 S23 S24 K3 S31 S32 S33 S34 K4 S41 S42 S43 S44 K5 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 15

Lineare Kryptoanalyse 2. Teil X 5 xor X 7 xor X 8 xor K 1,5 xor K 1,7 xor K 1,8 xor K 2,6 xor K 3,6 xor K 3,14 xor K 4,6 xor K 4,8 xor k 4,14 xor K 4,16 = U 4,6 xor U 4,8 xor U 4,14 xor U 4,16 (K 1,5 xor K 1,7 xor K 1,8 xor K 2,6 xor K 3,6 xor K 3,14 xor K 4,6 xor K 4,8 xor k 4,14 xor K 4,16 ) hat festen Wert 1 oder 0 X 5 xor X 7 xor X 8 xor U 4,6 xor U 4,8 xor U 4,14 xor U 4,16 = 0 oder 1 K1 S11 S12 S13 S14 K2 S21 S22 S23 S24 K3 S31 S32 S33 S34 K4 S41 S42 S43 S44 K5 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 16

Lineare Kryptoanalyse 3. Teil Berechnen einzelner Bits des letzten Teilschlüssels: y xor K 5 Rückwärts durch S-Box Wiederholen für jedes Klar-, Chiffretextpaar (Werte Zählen) Der Wert dessen Zähler am weitesten entfernt von (Anzahl Paare)/2 ist, also den größten Bias-Wert hat, ist wahrscheinlich der richtige K1 S11 S12 S13 S14 K2 S21 S22 S23 S24 K3 S31 S32 S33 S34 K4 S41 S42 S43 S44 K5 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 17

Differentielle Kryptoanalyse 1990 von Biham & Shamir publiziert Fällt in Kategorie Chosen-Plaintext-Attacke Ist der linearen Kryptoanalyse recht ähnlich Hauptunterschied: die differentielle Kryptoanalyse vergleicht den Xor-Wert zweier Inputs mit dem der zugehörigen Outputs Also den Unterschied der Eingabe ΔX = X' xor X'' mit dem Unterschied der Ausgabe ΔY = Y' xor Y'' Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 18

Differentielle Kryptoanalyse ΔX = X' xor X'', ΔY = Y' xor Y'' Bei einer ideal zufällig erscheinenden Chiffre ist die Wahrscheinlichkeit, dass auf ein ΔX ein bestimmtes ΔY folgt ½^(n) (n- Anzahl der Bits von X) Der Angreifer sucht nach einem ΔX, für welches ein ΔY mit hoher Wahrscheinlichkeit erscheint Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 19

Differentielle Kryptoanalyse Differentielle Charakteristiken sind Sequenzen von Einund Ausgabedifferenzen von Runden, wobei die Ausgabedifferenz der einen Runde der Eingabedifferenz der nächsten entspricht Suche noch möglichst wahrscheinlichen differentiellen Charakteristiken bis in die letzte Runde Rückschlüsse auf einzelne Bits des letzten Teilschlüssels Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 20

Data Encryption Standard Vorgängersystem: Lucifer (IBM) Entwickelt von IBM mit Hilfe der NSA (National Security Agency) 1977 in den USA als Standard festgelegt 2000 durch AES abgelöst Modifizierte Feistel - Chiffre Iterierte Blockchiffre Rundenanzahl: 16 Blocklänge: 64 Bit Schlüssellänge: 64 Bit (56 Bit + 8 Paritätsbits) Schlüsselraum: 2 56 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 21

DES Berechnen der Rundenschlüssel 64 Bit Schlüssel PC: Permuted Choice - Entfernt Paritätsbits - Teilt in 2 28 Bit Blöcke PC-1 C-0 D-0 LS LS C-i D-i 16 Runden PC-2 LS: Left Shift - jede Runde um 2 Bit - in Runden 1, 2, 9 und 16 nur je ein Bit K i 48 Bit Rundenschlüssel Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 22

DES - Verschlüsselung 1. Unterteilung des Chiffretextes in 2 Blöcke gleicher Länge (L 0,R 0 ) 2. Rundenfunktion: g(li-1,ri-1,ki) = (Li,Ri) L i-1 R i-1 f K i L i = Ri-1 + R i = Li-1 xor f(ri-1,ki) 3. Vertauschen der Blöcke L i R i Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 23

DES Entschlüsselung 1. Zerteilen des Chiffretextes und Vertauschen der Hälften K i f L i R i 2. Rundenfunktion: R i-1 = L i + L i-1 = R i xor f(l i,k i ) L i-1 R i-1 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 24

DES die Verschlüsselungsfunktion f Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 25

DES die Verschlüsselungsfunktion f R i-1 wird durch eine feste Expansionsfunktion E auf 48 Bit erweitert E: Von den 32 Bits werden 16 verdoppelt Anschließend: Permutation Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 26

DES die Verschlüsselungsfunktion f Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 27

DES die Verschlüsselungsfunktion f E (Ri-1) xor Ki Das Ergebnis dann schon unterteilt in 8 6-Bit-Strings geschrieben Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 28

DES die Verschlüsselungsfunktion f Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 29

DES die Verschlüsselungsfunktion f 8 S-Boxen mit S i : {0,1} 6 {0,1} 4 In 16 * 4 Tabelle gespeichert 1. und letztes Bit = Zeilennummer Die 4 mittleren Bit = Spaltennummer S 1 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 30

DES die Verschlüsselungsfunktion f Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 31

DES die Verschlüsselungsfunktion f Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 32

DES die Verschlüsselungsfunktion f Zusammensetzen zu 32 Bit Permutation P Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 33

DES - Kryptoanalyse Das Größte Sicherheitsrisiko des DES ist wohl der relativ kleine Schlüsselraum von nur 2 56 möglichen Schlüsseln. Schon 1999 wurden zum knacken eines 88 Byte langen Chiffretextes nur 22 Stunden und 15 Minuten benötigt (Das Durchsuchen des gesamten Raumes ca. 82 Std.) S-Boxen wurden zufällig zusammengestellt Gerüchte NSA hätte Hintertüren eingebaut (keine Seite nachgewiesen) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 34

Advanced Encryption Standard 1997 Ausschreibung des AES 1998 1. AES Kandidaten Konferenz: 15 der 21 Kryptosysteme als Kandidaten zugelassen 1999 2. AES Kandidatenkonferenz: 5 Finalisten ausgewählt: MARS, RC6, Rijndael, Serpent, Twofish 2000 3. AES Kandidaten Konferenz: Rijndael = AES Blocklänge: 128 Bit Schlüssellänge: 128, 192, oder 256 Bits Rundenanzahl: 10, 12, oder 14 (abhängig von Schlüssellänge) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 35

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey 1. Umwandeln des Klartextes in einen State anschließend AddRoundKey 2. N-1 mal: SubBytes, ShiftRows, MixColumns, AddRoundKey 3. SubBytes, ShiftRows, AddRoundKey 4. Umwandeln von State in Chiffretext Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 36

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Alle Operationen in Rijndael sind byteorientiert Unterteilung des Klartextes in 16 1-Byte Blöcke Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 37

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Rundenschlüssel hat gleiche Anzahl von Byes wie State Byteweises Xor-Verknüpfen der beiden Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 38

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey S-Box π S :{0,1} 8 {0,1} 8 Meist als 16 x 16 Array gespeichert Diese S-Box ist im Gegensatz zu denen vom DES algebraisch definiert Basiert auf Operationen des endlichen Körpers GF(28 ) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 39

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Z 2 ist der Restklassenring modulo 2 Da 2 eine Primzahl ist, ist Z 2 auch ein Körper π S operiert auf dem Polynomring in x über Z 2 : Z 2 [x] Jedoch nur auf Polynomen vom Grad 7 oder kleiner Bilden von Restklassen modulo eines irreduziblen Polynoms 8. Grades Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 40

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Welches irreduzible Polynom 8. Grades ist egal AES nutzt: x8 + x4 + x3 + x + 1 GF(28) = Z2[x]/( x8 + x4 + x3 + x + 1) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 41

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey 1. Byte in Polynom umwandeln 2. Falls Polynom!= 0, berechne das Multiplikativ Inverse M= 3. Polynom in Byte umwandeln 4. Multipliziere mit Matrix M 5. Xor mit a= 11000110 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 42

AES - Verschlüsselung Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 43

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 44

AES - Verschlüsselung AddRoundKey x y AddRoundKey ShiftRows SubBytes SubBytes ShiftRows MixColumns AddRoundKey Die Spalten von State werden als Polynome aufgefasst Multiplikation mit Matrix A (Multiplikation in GF(28 )) A = Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 45

AES Schlüsselerzeugung (128 Bit Schlüssel) Die Schlüsselerzeugung ist wortbasiert (1 Wort = 4 Bytes) Ein Rundenschlüssel besteht aus 4 Wörtern 128 Bit-Schlüssel 10 Runden 11 Rundenschlüssel Festes Array Rcon bestehend aus 10 Wörtern Teilfunktionen: RotWord: rotiert die Bytes eines Wortes um eine Stelle nach links SubWord: nutzt für jedes Byte die S-Box aus SubBytes Xor Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 46

AES Schlüsselerzeugung (128 Bit Schlüssel) RCon (in Hexadezimaldarstellung): 01 00 00 00 02 00 00 00 04 00 00 00 08 00 00 00 10 00 00 00 20 00 00 00 40 00 00 00 80 00 00 00 1B 00 00 00 36 00 00 00 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 47

AES Schlüsselerzeugung (128 Bit Schlüssel) RW + + + RW + +... SW + SW + Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 48

AES - Entschlüsselung Die Reihenfolge der Operationen ist umgekehrt Dabei werden anstelle von ShiftRows, SubBytes und MixColumns ihre inversen Funktionen genutzt Außerdem werden die Rundenschlüssel in umgekehrter Reihenfolge verwendet Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 49

AES - Kryptoanalyse Die Entwickler des Algorithmus selber, wiesen schon nach, dass Rijndael gegen lineare und differentielle Kryptoanalyse resistent Bis heute keine effektiven Angriffe auf Rijndael bekannt Die effektivsten Varianten lehnen sich an eine Chiffre mit einer reduzierten Rundenzahl an Doch selbst diese sind kaum besser als einfache Suche Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 50

Referenzen Douglas R. Stinson: Cryptography: Theory and Practice. 3nd Edition, Chapman & Hall/CRC 2006 Andreas Pfitzmann: Sicherheit in Rechnernetzen: Mehrseitige Sicherheit in verteilten und durch verteilte Systeme (http://www.inf.tu-dresden.de/index.php? node_id=510&ln=de) Albrecht Beutelspacher, Heike B. Neumann, Thomas Schwarzpaul: Kryptografie in Theorie und Praxis: mathematische Grundlagen für elektronisches Geld, Internetsicherheit und Mobilfunk Vieweg+Teubner Verlag, 2005 Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 51

Referenzen Howard M.Heys: A tutorial on linear and differential cryptanalysis (Faculty of Engineering and Applied Science - Memorial University of Newfoundland) Kryptographie und Datensicherheit: Blockverschlüsselung und AES Folie 52