Technische Universität Darmstadt Fachgebiet Theoretische Informatik Prof. Johannes Buchmann Thomas Wunderer Einführung in die Kryptographie WS 2016/ 2017 2. Übungsblatt — 28.10.2016 Ankündigungen Arithmetik modulo n und Grundlagen der linearen Algebra sind wichtige Grundkenntnisse für diese Vorlesung und werden vorausgesetzt. Sollten Ihnen einige dieser Grundlagen fehlen (zum Beispiel wie invertiert man eine Martix modulo n), so holen Sie diese bitte im Selbststudium nach. Sollten Sie trotzdem Verständnisschwierigkeiten haben, helfen Ihnen die Übungsleiter in den Übungen oder Sprechstunden gerne weiter! P1 Affin lineare Chiffre Die Permutationschiffre mit Blocklänge n über dem Alphabet Σ vertauscht die Positionen in Strings der Länge n über Σ. (a) Zeigen Sie, dass die Permutationschiffre eine lineare Chiffre ist. (b) Folgende Paare aus Klartext und Chiffretext wurden bei der Verschlüsselung mit der Permutationschiffre der Blocklänge 4 über dem Alphabet {0, 1} beobachtet: ((0, 0, 1, 0), (0, 0, 1, 0)), ((1, 1, 1, 1), (1, 1, 1, 1)), ((1, 1, 1, 0), (0, 1, 1, 1)), ((1, 0, 1, 0), (0, 0, 1, 1)). Bestimmen Sie die geheime Permutation. P2 ggT und Inverses 1. Zeigen Sie folgende Aussage. Seien a und n natürliche Zahlen. Dann gilt: a ist genau dann (multiplikativ) invertierbar modulo n (d.h. es existiert ein multiplikatives Inverses a−1 zu a modulo n), wenn ggT(a, n) = 1 gilt. (Ist dies der Fall so schreibt man a ∈ Z×n oder a ∈ Z?n .) Hinweis: Verwenden Sie die Aufgabe H1 des letzten Übungsblattes. 2. Beschreiben Sie, wie man mit Hilfe des erweiterten Euklidischen Algorithmus das Inverse eines invertierbaren Elements modulo einer natürlichen Zahl n bestimmen kann. 3. Berechnen Sie das Inverse von a = 21 modulo n = 38. 4. In manchen Fällen ist es nicht notwendig, den erweiterten Euklidischen Algorithmus anzuwenden um a−1 mod n zu berechnen, da man die Lösung sofort ”sehen” kann. Finden Sie eine einfache Lösung, wie man 2−1 mod n berechnen kann, wenn n > 1 eine ungerade natürliche Zahl ist. P3 Affin lineare Blockchiffren Wir betrachten affin lineare Blockchiffren mit Klar- und Schlüsseltextraum (Z13 )3 . (a) Sei E : (Z13 )3 → (Z13 )3 , x → Ax + b mod 13 die Verschlüsselungsfunktion mit 0 A= 1 12 5 7 11 3 1 4 und b = 4 . 7 7 Geben sie die Entschlüsselungsfunktion an. 1 (b) Sie kennen die folgenden Klar- und Schlüsseltextpaare einer affin linearen Blockchiffre: Klartext m0 = (3, 7, 1)> m1 = (5, 7, 8)> m2 = (11, 6, 12)> m3 = (2, 6, 10)> → → → → → Schlüsseltext c0 = (6, 12, 6)> c1 = (1, 5, 6)> c2 = (4, 9, 10)> c3 = (3, 5, 8)> Bestimmen Sie die Verschlüsselungsfunktion. P4 Modi einer Blockchiffre In dieser Aufgabe wird die lineare Verschlüsselungsfunktion EA : Z2n −→ Z2n : v 7→ Av (mod 2), (n,n) verwendet, wobei A ∈ Z2 0 (a) Sei n = 3 und A = 1 1 invertierbar modulo 2 ist. 1 0 1 0 1 . 0 Verschlüsseln Sie den Klartext (1, 0, 1, 1, 1, 1, 1, 0, 0) T mit Blocklänge 3 und dem Initialisierungsvektor (1, 1, 1) T im Cipherblock Chaining Mode (CBC). (b) Welcher Schlüssel muss verwendet werden, um mit Blocklänge 3 im Electronic Codebook Mode (ECB) den Klartext (1, 0, 0, 1, 1, 1, 1, 0, 1) T zum Chiffretext (1, 1, 1, 0, 0, 1, 1, 0, 0) T zu verschlüsseln? (c) Ist das Verschlüsselungsverfahren E(A1 ,A2 ) : Z2n −→ Z2n : v 7→ EA2 (EA1 (v )) (mod 2) (n,n) mit A1 , A2 ∈ Z2 invertierbar modulo 2, sicherer als EA ? Begründen Sie Ihre Antwort. H1 Permutationschiffre Eine Permutationschiffre ist eine Blockchiffre, die die Positionen eines Wortes permutiert. Zum Beispiel gibt es eine Permutationschiffre, die aus dem Klartext „übung“ den Chiffretext „bungü“ macht. Bestimmen Sie allgemein Klartextraum, Chiffretextraum und Schlüsselraum der Permutationschiffre. Wie groß ist der Schlüsselraum? H2 Verschlüsselungsmodi Verschlüsseln Sie (0, 1, 0, 1, 0, 1, 0, 1) mit der Permutationschiffre der Blocklänge 4 über dem Alphabet {0, 1} mit dem Schlüssel (1, 2, 3, 4) 7→ (2, 1, 4, 3) in allen vorgestellten Modi mit Initialisierungsvektor I V = 1011 und Parameter r = 4. 2