Lösung zur Klausur zu Krypographie Sommersemester 2005

Ähnliche Dokumente
Ganzzahlige Division mit Rest

Lineare Algebra I 5. Tutorium Die Restklassenringe /n

Lösungen der Aufgaben

Übungsblatt 3. Stammvorlesung Sicherheit im Sommersemester Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade

Von den ganzen Zahlen zu GF(p)

Euklidische Algorithmus, Restklassenringe (Z m,, )

Unterlagen zu Polynomringen. Erhard Aichinger

Vorlesung Mathematik 2 für Informatik

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Stammvorlesung Sicherheit im Sommersemester Übungsblatt 3

ggt mit Euklid Satz: Um ggt(k, l) mit dem Euklidischen Algorithmus zu berechnen, braucht man höchstens log Φ k < 3 2 log 2 k rekursive Aufrufe.

Erweiterter Euklidischer Algorithmus

χ a : N + {0, 1, 1} {( a χ a (n) = χ a (n ). ψ(mn) < ψ(m)ψ(n).

4 Kryptologie. Übersicht

Merkle-Damgard Transformation

Asymmetrische Algorithmen

kgv-berechnung Invertieren modulo m Simultane Kongruenzen Restklassenringe Modulare Arithmetik Euler sche Funktion Sätze von Fermat und Euler

Prüfungsfragen zur Vorlesung Algebra und Diskrete Mathematik. Sommersemester 2018

Algebra und Diskrete Mathematik, PS3. Sommersemester Prüfungsfragen

1.Vortrag: Rechnen mit Restklassen/modulo einer Zahl

$Id: ring.tex,v /05/03 15:13:26 hk Exp $

Die Ringe Z n. Invertierbare Elemente ( Einheiten ) für n > 0 wird auf Z n = {0, 1, 2,..., n 1} definiert: n : Z n Z n Z n : (a, b) (a b) mod n

n ϕ n

Asymmetrische Kryptographie u

Mathematische Methoden für Informatiker

Hashfunktionen und Kollisionen

Praktisch modulo n rechnen

Name:... Vorname:... Matrikel-Nr.:... Studienfach:...

Name: Mustermann Vorname: Max Matrikel-Nr.: Studienfach:...

1 Zahlentheorie. 1.1 Kongruenzen

Kapitel 6: Das quadratische Reziprozitätsgesetz

Kapitel 2. Elementare Zahlentheorie Primfaktorzerlegung

Kanonische Primfaktorzerlegung

3.5 Kryptographie - eine Anwendung der Kongruenzrechnung

RSA Parameter öffentlich: N = pq mit p, q prim und e Z RSA Parameter geheim: d Z φ(n)

Folien der 15. Vorlesungswoche

Einführung in Algebra und Zahlentheorie Lösungsvorschläge zur Klausur vom Aufgabe 1 (6 Punkte)

Zufallsprimzahlen und eine Revolution in der Kryptographie Stefan Edelkamp

6. Lösungsblatt

Übungen zu Zahlentheorie, SS 2017

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

UE Zahlentheorie. Markus Fulmek

Kapitel III Ringe und Körper

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen)

Übungen zu Zahlentheorie, SS 2008

Algebra für Informationssystemtechniker

WIEDERHOLUNG (BIS ZU BLATT 7)

Algebraische Grundlagen

6.2 Asymmetrische Verschlüsselung

Trim Size: 176mm x 240mm Lang ftoc.tex V1-5.Juli :54 P.M. Page 9

Algebraische Strukturen. Idee. Gruppen, Ringe, Körper... (Teschl/Teschl Abschnitt 3.2, siehe auch Kap. 4)

2008W. Vorlesung im 2008W Institut für Algebra Johannes Kepler Universität Linz

Inhalt 2007W. Vorlesung im 2007W

Übungsaufgaben zur Zahlentheorie (Holtkamp)

Polynome und endliche Körper

Aufgabenblatt 5 (Schnellübung)

Kryptographie und Komplexität

Satz von Euler. Satz von Euler. Korollar 1. Korollar 2 Kleiner Fermat. Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G.

Satz von Euler. Satz von Euler. Korollar 1. Korollar 2 Kleiner Fermat. Sei (G, ) eine endl. abelsche Gruppe. Dann gilt a G = 1 für alle a G.

Algebraische Strukturen

Fibonacci-Zahlen und goldener Schnitt

Zahlen. Vorlesung Mathematische Strukturen. Sommersemester Zahlen. Zahlen

3 Public-Key-Kryptosysteme

Beispiel bestimme x Z mit. es gilt also. gilt dann. für x = 1 i k c i (M/m i ) v i gilt. y c i mod m i (1 i k), nämlich y = x mod M

Elemente der Algebra

Diskrete Strukturen. Restklassenringe WS 2013/2014. Vorlesung vom 24. Jänner 2014

Der Algorithmus von Schoof

Binärzahlen. Vorkurs Informatik. Sommersemester Institut für Informatik Heinrich-Heine-Universität Düsseldorf

Universität Tübingen WS 2015/16. Kryptologie. Klausur

EINFÜHRUNG IN DIE ALGEBRA Proseminar SS Übungsblatt für den

Anzahl der Generatoren

Modulprüfung BA 04 Mathematik: Grundlagen der Mathematik C: Geometrie, Elementare Algebra und Zahlentheorie LÖSUNGSHINWEISE

Kanonische Primfaktorzerlegung

IT-Sicherheit Kapitel 4 Public Key Algorithmen

Lehrbuch der Algebra, Vieweg 2007

Sicherer MAC für Nachrichten beliebiger Länge

Algorithmische Kryptographie

Viel Erfolg! Universität Kassel Lösungen zur Klausur WS 2010/11 Diskrete Strukturen II (Informatik) Name:... Matr.-Nr.:...

Zahlentheorie. Stefan Takacs Linz, am 2. Juni 2004

Grundlagen der Arithmetik und Zahlentheorie

Aufgabe der Kryptografie

Vorkurs für. Studierende in Mathematik und Physik. Einführung in Kryptographie Kurzskript 2015

Musterlösung zur Probeklausur zur Angewandten Diskreten Mathematik

Vorlesung Diskrete Strukturen Die natürlichen Zahlen

Der RSA-Algorithmus. 2. Anschließend ist n = p q und ϕ (n) = (p 1) (q 1) zu berechnen.

Klausur zu Mathematische Grundlagen BachelorStudiengänge der Informatik

1 Körper. Wir definieren nun, was wir unter einem Körper verstehen, und sehen dann, dass es noch andere, ganz kleine Körper gibt:

Kryptographie und Komplexität

Musterlösung zur Probeklausur zur Angewandten Diskreten Mathematik

Einführung in die Algebra

1 Der Ring der ganzen Zahlen

Übungen zum Vorkurs Mathematik für Studienanfänger Ein leeres Produkt ist gleich 1, eine leere Summe 0. ***

Kryptographie - eine mathematische Einführung

Einführung in die. Kryptographie WS 2016/ Lösungsblatt

Der chinesische Restsatz mit Anwendung

Formale Grundlagen 2008W. Vorlesung im 2008S Institut für Algebra Johannes Kepler Universität Linz

Einführung in Algebra und Zahlentheorie Lösungsvorschlag zur Klausur am 16. Februar 2016

Vorlesung Diskrete Strukturen Gruppe und Ring

2011W. Vorlesung im 2011W Institut für Algebra Johannes Kepler Universität Linz

1 Der Ring der ganzen Zahlen

Transkript:

Lösung zur Klausur zu Krypographie Sommersemester 2005 1. Bestimmen Sie die zwei letzten Ziffern der Dezimaldarstellung von 12 34 Es gilt: 12 34 = 12 32+2 = 12 32 12 2 = 12 (25) 12 2 = ((((12 2 ) 2 ) 2 ) 2 ) 2 12 2 Weil uns nur die beiden letzten Ziffern interessieren, rechnen wir Modulo 100: 12 2 = 144 44 mod 100 (12 2 ) 2 44 2 36 mod 100 ((12 2 ) 2 ) 2 36 2 96 mod 100 (((12 2 ) 2 ) 2 ) 2 96 2 16 mod 100 ((((12 2 ) 2 ) 2 ) 2 ) 2 16 2 56 mod 100 Also folgt 12 34 56 44 64 mod 100. Die letzte Ziffer der Dezimaldarstellung von 12 34 lautet damit 4 und die vorletzte 6. 2. Beschreiben Sie das Kerkhoffsche Prinzip und erläutern Sie dessen Auswirkungen für den praktisch arbeitenden Softwareentwickler. Antwort: Das Kerkhoffsche Prinzip besagt, dass einem eventuellen Angreifer auf ein Kryptosystem alle Deteils des verwendeten Verfahrens sowie der Implementierung als bekannt vorausgesetzt werden sollten. Für die Praxis bedeutet dies, dass die Sicherheit eines Kryptosystems nicht dadurch gewährleistetw erden kann, dass man ein unbekanntes Verschlüsselungssystem verwendet (sog. security by obscurity). 3. Geben Sie eine Lösung für die Gleichung 122x 3 mod 343 an. Antwort: Wir stellen den Erweiterten Euklidischen Algorithmus vor, mit dem zu zwei natürlichen Zahlen m und n der ggt und die Lineardarstellung des ggt berechnet werden kann (beachte: der ggt von 122 und 343 ist 1). a 0 := m a 1 := n q k := a k 1 a k für k > 0 a k := a k 2 a k 1 q k 1 für k > 1 x 0 := 1 x 1 := 0 y 0 := 0 y 1 := 1 x k := x k 2 q k 1 x k 1 für k > 1 y k := y k 2 q k 1 y k 1 für k > 1 Sei a p das letzte a k 0. Dann gilt nach dem Euklidischen Algorithmus a p = ggt(m, n). Weiterhin gilt: ggt(m, n) = x p m + y p n.

Mit diesem Algorithmus erhält man die Lineardarstellung 1 = ( 149) 122 + 53 343. Also gilt 122 ( 149) 1 mod 343. Multiplikation mit 3 ergibt (Rechnung modulo 343): 122 239 1 mod 343. 4. Sdeien p und q Primzahlen, und sei (e, n) mit n = p q ein korrekt gewählter öffentlicher Schlüssel des RSA-Verfahrens. Beweisen Sie: Es gibt genau eine Restklasse d, die als geheimer Schlüssel zu (e, n) passt. Eine Restklasse d ist ein zugehöriger geheimer Schlüssel, falls e d 1 mod ϕ(n). Wir nehmen an, dass es zwei passende Schlüssel d 1 und d 2 gibt. Es folgt (alle Gleichungen gelten im Ring Z ϕ(n) ): 1 = e d 1 = e d 2 e(d 1 d 2 ) = 0. Multiplikation mit d 1 liefert d 1 d 2 = 0, also d 1 = d 2. 5. Gegeben seien p = 19, q = 17 und e = 5. (a) Bestimmen Sie den Ciphertext der aus der Nachricht x = 10 entsteht, wenn Sie das RSA-Verfahren mit den gegebenen Werten anwenden. (b) In der Vorlesung wurde der Satz von Euler besprochen: Seien a, n N \ {0} und ggt (a, n) = 1, dann gilt a ϕ(n) 1 mod n. Verwenden Sie den Satz von Euler um den geheimen Schlüssel zu berechnen. (c) Beim RSA-Verfahren sind nur bestimmet Verschlüsselungexponenten zulässig. Geben Sie alle erlaubten Exponenten für den Fall p = 11 und q = 7 an. (a) Die Verschlüsselung c von x lautet: x e mod n. Berechnung von n: n = p q = 19 17 = 323. Teilen mit Rest ergibt: 10 5 = 309 323 + 193. Also gilt: 10 5 193 mod 323 und somit c = 193. (b) Es gilt ggt(e, ϕ(n)) = 1. Daraus folgt mit dem Satz von Euler: e ϕ(ϕ(n)) 1 mod ϕ(n) (1) Berechnung der ϕ-funktion: ϕ(n) = 18 16 = 288 ϕ(ϕ(n)) = ϕ(288) = ϕ(2 5 3 2 ) = 288(1 1 2 )(1 1 3 ) = 96 Engesetzt in Gleichung (1) ergibt sich: e 96 1 mod 288. Da e d 1 mod ϕ(n)

gilt, folgt für den privaten Schlüssel: d = e 95 mod 288 = 5 64+16+8+4+2+1 mod 288 = 5 25 32+8+4+2+1 mod 288 = 5 25 49 16+4+2+1 mod 288 = 5 25 49 97 8+2+1 mod 288 = 5 25 49 97 193 4+1 mod 288 = 5 25 49 97 193 97 2 mod 288 = 5 25 49 97 193 193 mod 288 = 5 25 49 97 97 mod 288 = 5 25 49 193 mod 288 = 5 25 241 mod 288 = 5 265 mod 288 = 173 (c) e ist aus der Einheitengruppe Z ϕ(n) zu wählen, so dass e 2, d.h. e {7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 49, 53, 59}. 6. Beim AES-Verfahren kommt der endliche Körper GF(2 8 ) zum Einsatz. Dazu wird als erzeugendes Element das Polynom 0x11B verwendet. Zeigen Sie: In dieser Darstellung ist das inverse Element bezüglich der Multiplikation von 0x03 gleich 0xF 6. Die in hexadezimaler Schreibweise angegebenen Elemente entsprechen folgenden Polynomen über Z 2 : f = 0x03 = x + 1 g = 0xF 6 = x 7 + x 6 + x 5 + x 4 + x 2 + x h = 0x11B = x 8 + x 4 + x 3 + x + 1 Wir berechnen das Produkt aus den ersten beiden Polynomen: f g = x 8 + x 4 + x 3 + x. Die Aufgabe besteht nun darin, zu verifizieren, dass dieses Polynom äquivalent zu 1 modulo h ist. Um dies zu zeigen ist zu beweisen, dass h ein Teiler der Differenz von f g und 1 ist. Da in Körpern der Charakteristik 2 Addition und Subtraktion dasselbe ist, können wir das Polynom f g + 1 betrachten. Dies ist aber identisch mit h, also ist h trivialerweise ein Teiler. 7. Mie AES 128 (, ) bezeichnen wir die in der Vorlesung beschriebene Version von AUS, die auf 128-Bit Schlüssel beschrnkt ist. (a) Geben Sie den Pseudocode einer Hashfunktion an, die AES 128 als Kompressionsfunktion verwendet. Mit den Bezeichnungen aus der Vorlesung gelten die folgenden Beziehungen:

n = 128 m = 256 r = 128 Sei x {0, 1} ein Eingabetext. Zunächst padden wir x, sodass die Länge von x ein Vielfaches von 128 ist, und hängen die Länge von x binär kodiert an (beispielsweise mit einer passenden Anzahl von führenden Nullen, sodass das modifizierte x danach wieder eine Länge hat, die ein Vielfaches von 128 ist). Also nehmen wir an, dass x = x 1... x k, wobei x i = r für alle i. Wir definieren die Zeichenketten h i {0, 1} 128 rekursiv wie folgt: h 0 = 0 128 h i = AES 128 (h i 1, x i ) Wir definieren: h: {0, 1} {0, 1} 128, h(x) := h k. (b) Von einer sicheren Hashfunktion wird heute erwartet, dass man mindestens 2 64 Hashwerte berechnen muss, bis man eine Kollision findet. Ist die von Ihnen beschriebene Hashfunktion unter diesem Gesichtspunkt zukünftig brauchbar? Begründen Sie ihre Einschätzung. Antwort: Zunächst ist die oben konstruierte Hashfunktion nur dann brauchbar, wenn AES 128 für praktische Zwecke kollisionsresistent ist. Es ist keine Funktion bekannt, die beweisbar kollisionsresistent ist, aber bei AES geht man davon aus. Unter der Annahme, dass AES 128 für praktische Zwecke genügend kollisionsresistent ist, ist die Konstruktion genügend sicher, denn nach Vorlesung konstruiert die oben angewendete Merkle-Damgård Konstruktion aus einer kollisionsresistenten Funktion f : {0, 1} m {0, 1} n eine kollisionsresistente Funktion h: {0, 1} {0, 1} n. Nach Vorlesung ist ein n 128 zur Zeit ausreichend. 8. Sei die Elliptische Kurve E : y 2 = x 3 + x + 6 über dem endlichen Körper GF(11) gegeben. (a) Zeigen Sie: (2, 4) und (5, 9) sind Punkte dieser Kurve. Dies verifiziert mal leicht durch einsetzen der Zahlen und Rechnen modulo 11. Beide Paare erfüllen die definierende Gleichung der Kurve. (b) Berechnen Sie den Summenpunkt (2, 4) + (5, 9). Wir verwenden die Additionsformeln aus der Vorlesung, mit den Werten x 1 = 2, y 1 = 4, x 2 = 5, y 2 = 9. Hiermit ergibt sich: m = y 2 y 1 x 2 x 1 = 5 3. In GF(11) ist das Inverse zu 3 gleich 4, denn 3 4 = 12 1 mod 11. Also gilt m = 5 4 9.

Damit ergibt sich weiter: x 3 = m 2 x 1 x 2 81 2 5 74 8, y 3 = m(x 1 x 3 ) y 1 9 (2 8) 4 58 8. Der gesuchte Punkt hat also die Koordinaten (8, 8).