Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie...

29
Seite 1 Modulbeschreibung Modulbezeichnung: Kryptographie 2 Studiengang: Bachelor IT-Sicherheit Verwendbarkeit: Dieses Modul ist verwendbar für • Studierende der IT-Sicherheit • Studierende der Informatik • Studierende der Wirtschaftsinformatik • Studierende der Mathematik und Informatik auf Bachelorniveau. Dieses Modul kann nicht als Wahlpflichtmo- dul gewählt werden, sondern ist ein Pflichtmodul. Lehrveranstaltungen und Lehrformen: Kryptographie 2 Modulverantwortliche(r): Prof. Dr. Christof Paar Lehrende: Prof. Dr. Christof Paar Dauer: 1 Semester Credits: 5 ECTS Studien- und Prüfungsleistungen: Schriftliche Prüfung: 120 min. Berechnung der Modulnote: Schriftliche Prüfung Notwendige Voraussetzungen: Empfohlene Voraussetzungen: Unterrichts- und Prüfungssprache: Deutsch, Englisch Zuordnung des Moduls zu den Fachgebieten des Curriculums: Einordnung ins Fachsemester: Ab Studiensemester 5 Generelle Zielsetzung des Moduls: Modul zur Förderung und Verstärkung der Fachkompetenz Arbeitsaufwand bzw. Gesamtworkload: Summe: 150 h Präsenzzeit: 2 h • Prüfung: 2h Eigenstudium: 148 h • Durcharbeiten der Studienbriefe: 85 h • Durcharbeiten des Online-Lernmaterials: 15 h • Wahrnehmen der Online Betreuung und Beratung: 10 h • Ausarbeiten von Aufgaben: 30 h • Individuelle Prüfungsvorbereitung der Studierenden: 8 h

Transcript of Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie...

Page 1: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 1

Modulbeschreibung

Modulbezeichnung: Kryptographie 2

Studiengang: Bachelor IT-Sicherheit

Verwendbarkeit: Dieses Modul ist verwendbar für

• Studierende der IT-Sicherheit

• Studierende der Informatik

• Studierende der Wirtschaftsinformatik

• Studierende der Mathematik und Informatik

auf Bachelorniveau. Dieses Modul kann nicht als Wahlpflichtmo-dul gewählt werden, sondern ist ein Pflichtmodul.

Lehrveranstaltungen undLehrformen:

Kryptographie 2

Modulverantwortliche(r): Prof. Dr. Christof Paar

Lehrende: Prof. Dr. Christof Paar

Dauer: 1 Semester

Credits: 5 ECTS

Studien- und Prüfungsleistungen: Schriftliche Prüfung: 120 min.

Berechnung der Modulnote: Schriftliche Prüfung

Notwendige Voraussetzungen:

Empfohlene Voraussetzungen:

Unterrichts- und Prüfungssprache: Deutsch, Englisch

Zuordnung des Moduls zu denFachgebieten des Curriculums:

Einordnung ins Fachsemester: Ab Studiensemester 5

Generelle Zielsetzung des Moduls: Modul zur Förderung und Verstärkung der Fachkompetenz

Arbeitsaufwand bzw.Gesamtworkload:

Summe: 150 hPräsenzzeit: 2 h

• Prüfung: 2h

Eigenstudium: 148 h

• Durcharbeiten der Studienbriefe: 85 h

• Durcharbeiten des Online-Lernmaterials: 15 h

• Wahrnehmen der Online Betreuung und Beratung: 10 h

• Ausarbeiten von Aufgaben: 30 h

• Individuelle Prüfungsvorbereitung der Studierenden: 8 h

Page 2: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 2

Lerninhalt und Niveau: In diesem Modul werden asymmetrische kryptographische Ver-fahren behandelt. Die Schwerpunkte dieses Moduls liegen auf derBesprechung von praktisch wichtigen Verfahren und deren Einsatzfür asymmetrische Basisdienste. Es werden sowohl diskrete Loga-rithmusverfahren (Diffie-Hellman, Elgamal, elliptische Kurven),als auch das RSA-Verfahren behandelt. Außerdem werden digitaleSignaturen eingeführt. Es werden die Grundlagen der symmetri-schen und asymmetrischen Schlüsselverteilung behandelt.

Das Niveau der Lerninhalte liegt gemessen am DQR-Niveau bei 6(Bachelor)

Angestrebte Lernergebnisse: Fachkompetenz: Die Studierenden kennen die Bedeutung von asym-metrischen kryptographischen Verfahren und verstehen die Struk-turen der prominentesten asymmetrischen Primitiven. Darüberhinaus verstehen die Studenten die Sicherheitskonzepte und di-verse Angriffsziele in der asymmetrischen Kryptographie. DieStudenten können ihr Wissen über die Kryptographie anwendenund Sicherheitslösungen finden.

Methodenkompetenz: Die Studierenden beherrschen die Denkwei-sen, die in der modernen Kryptographie eingesetzt werden undkönnen diese anhand von asymmetrischen Verfahren nachvollzie-hen.

Sozialkompetenz: Die Studenten tauschen sich über Probleme beimVerstehen von symmetrischen kryptographischen Verfahren ausund diskutieren Lösungswege von Problemen.

Selbstkompetenz: Die Studenten erlangen die Fähigkeit aktuelleasymmetrische kryptographische Verfahren zu verstehen und einefundierte Meinung über die Sicherheit dieser Verfahren zu vertre-ten. Darüber hinaus besitzen die Studierenden alle Voraussetzun-gen neue asymmetrische Verfahren aus der aktuellen Fachliteraturzu verstehen und ihre Bedeutungen einzuschätzen. Das umfang-reiche Wissen der Studenten befähigt sie Sicherheitslösungen zufinden und einzusetzen.

Häufigkeit des Angebots: Jedes Semester

Anerkannte Module:

Anerkannte anderweitige Lerner-gebnisse /Lernleistungen:

Medienformen: Studienbriefe in schriflicher und elektronischer Form, Online-material in Lernplattform, Übungen über Lernplattform, Online-Konferenzen, Chat und Forum

Literatur: • Understanding Cryptography, Christof Paar, Jan Pelzl, 2010

• Handbook of Applied Cryptography, Alfred J. Menezes,Paul C van Oorschot, Scott A Vanstone, 1996

Weitere Literatur wird in der Lehrveranstaltung bekannt gegeben.

Page 3: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Bachelorstudiengang Informatik/IT-Sicherheit

Kryptographie 2[Krypto2]

Autoren:

Christof Paar

Jan Pelzl

Ruhr - Universität Bochum

Page 4: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten
Page 5: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Kryptographie 2[Krypto2]

Studienbrief 1: Einführung Public Key Kryptographie

Studienbrief 2: Einführung RSA

Studienbrief 3: Kryptographie mit dem diskreten Logarith-mus

Studienbrief 4: Kryptographie mit Elliptischen Kurven

Studienbrief 5: Digitale Signaturen

Autoren:Christof PaarJan Pelzl

1. Auflage

Ruhr - Universität Bochum

Page 6: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

© 2015 Christof PaarRuhr - Universität BochumUniversitätsstraße 15044801 Bochum

1. Auflage (11. Dezember 2015)

Didaktische und redaktionelle Bearbeitung:Florian Giesen

Das Werk einschließlich seiner Teile ist urheberrechtlich geschützt. Jede Ver-wendung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohneZustimmung der Verfasser unzulässig und strafbar. Das gilt insbesonderefür Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspei-cherung und Verarbeitung in elektronischen Systemen.

Um die Lesbarkeit zu vereinfachen, wird auf die zusätzliche Formulierungder weiblichen Form bei Personenbezeichnungen verzichtet. Wir weisen des-halb darauf hin, dass die Verwendung der männlichen Form explizit alsgeschlechtsunabhängig verstanden werden soll.

Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bun-desministeriums für Bildung, und Forschung unter dem Förderkennzeichen16OH12026 gefördert. Die Verantwortung für den Inhalt dieser Veröffentli-chung liegt beim Autor.

Page 7: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Inhaltsverzeichnis Seite 3

Inhaltsverzeichnis

Einleitung zu den Studienbriefen 4I. Abkürzungen der Randsymbole und Farbkodierungen . . . . . . . . . 4II. Zu den Autoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5III. Modullehrziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

Studienbrief 1 Einführung Public Key Kryptographie 71.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.2 Advanced Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.3 Der Euklidische Algorithmus . . . . . . . . . . . . . . . . . . . . . . . 7

Studienbrief 2 Einführung RSA 92.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Advanced Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.3 RSA berechnen und brechen . . . . . . . . . . . . . . . . . . . . . . . 9

Studienbrief 3 Kryptographie mit dem diskreten Logarithmus 113.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2 Advanced Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.3 Zyklische Gruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.4 Diffie-Hellman Schlüsseltausch . . . . . . . . . . . . . . . . . . . . . 133.5 ElGamal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Studienbrief 4 Kryptographie mit Elliptischen Kurven 174.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.2 Advanced Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.3 Übungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

Studienbrief 5 Digitale Signaturen 215.1 Lernziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.2 Advanced Organizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.3 RSA Signaturen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215.4 ElGamal Signaturen . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Verzeichnisse 25I. Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Page 8: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 4 Einleitung zu den Studienbriefen

Einleitung zu den Studienbriefen

I. Abkürzungen der Randsymbole und Farbkodierungen

Übung Ü

Page 9: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Zu den Autoren Seite 5

II. Zu den Autoren

Christof Paar ist Inhaber des Lehrstuhls Embedded Security an der Ruhr-Universität Bochum und ist außerplanmäßiger Professor an der University ofMassachusetts at Amherst, USA. Er arbeitet seit 1995 im Bereich der angewandtenKryptographie.Dr. Paar lehrt seit über 15 Jahren an Universitäten, sowohl in Europa, als auch inden USA, zu Themen der Kryptographie und Datensicherheit. Darüber hinaus gibter Kurse für Teilnehmer aus der Industrie, u.a. für Motorola Research, die NASAund Philips Research. Dr. Paar hat mehr als 150 Publikationen im Bereich derangewandten Kryptographie und ist Mitgründer des Workshop on CryptographicHardware and Embedded Systems (CHES).

Jan Pelzl hat in angewandter Kryptologie promoviert und ist Hauptgeschäftsfüh-rer der ESCRYPT - Embedded Sedurity, einer führenden Firma im Bereich derSicherheitsbereatung. Er hat erfolgreich zahlreiche nationale und internationaleIndustrieprojekte geleitet und tiefgehende Kenntnisse über Sicherheitsbedürfnissein echten Systemen.Dr. Pelzl hat praktische Aspekte der Kryptographie und Kryptanalyses von ellipti-schen Kurven erforscht. Seine theoretischen und praktischen Ergebnisse hat er auf/in international führenden Konferenzen/ Zeitschriften veröffentlicht. Dr. Pelzlhat viele Jahre Kurse über Kryptographie und IT-Sicherheit in Industriekreisengehalten.

Page 10: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 6 Einleitung zu den Studienbriefen

III. Modullehrziele

Kryptographie ist heutzutage allgegenwärtig - während sie lange Zeit nur von Regierungen, Geheimdienstenund Banken verwendet wurde, werden kryptografische Techniken mittlerweile u.a. in Web-Browsern, E-Mail Programmen, Handys, industriellen Produktionssystemen, eingebetteter Software, Autos und sogar inmedizinischen Implantaten verwendet. Daher benötigen EntwicklerInnen heutzutage umfassendes Wissenim Bereich der angewandten Kryptographie.

Ziel dieses Moduls ist es, der Leserin ein solches Wissen zu vermitteln. Nach einer Einführung in das Themader Kryptographie und Datensicherheit, werden die wichtigsten Techniken der modernen symmetrischenKryptographie behandelt. Diese umfassen insbesondere Stromchiffren, den Data Encryption Standard(DES), sowie den Advanced Encryption Standard (AES) und Message Authentication Codes (MACs). Nacherfolgreichem Abschluss dieses Moduls hat die Leserin grundlegende theoretische Kenntnisse in obigenBereichen erlangt. Darüber hinaus werden Probleme erörtert, die sich im Zusammenhang der praktischenImplementierung der Verfahren ergeben, etwa die Wahl der Sicherheitsparameter.

DasModul ist physisch in zwei Teile geteilt. Der Inhalt desModuls ist im Buch “UnderstandingCryptography”von Paar und Pelzl nachzulesen, während Sie die Übungsaufgaben in diesen Studienbriefen finden. Es gibtsowohl theoretische, als auch praktische Übungsaufgaben. Für die Bearbeitung vieler praktischen Aufgabenempfiehlt sich die Verwendung der Lernsoftware Cryptool, die sie über http://www.cryptool-online.org/kostenlos erhalten können. Aufgabe, die mit Cryptool zu lösen sind, sind entsprechend gekennzeichnet.

Page 11: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Studienbrief 1 Einführung Public Key Kryptographie Seite 7

Studienbrief 1 Einführung Public Key Kryptographie

Die Grundlage dieses Studienbriefes ist der Inhalt des sechsten Kapitels „Introduc-tion to Public-Key Cryptography“ aus dem Buch Understanding Cryptographyvon Christof Paar und Jan Pelzel Paar and Pelzl (2010). Auf der Website zum Buchwww.crypto-textbook.com finden Sie einen englischsprachigen Foliensatz zumBuchkapitel sowie nützliche Hinweise und Links zu weiterführender Literatur.Videomitschnitte von den Vorlesungen zu den hier behandelten Themen werdenan den jeweils relevanten Stellen im Studienbrief verlinkt.

1.1 Lernziele

Sie haben den Unterschied zwischen symmetrischer- und asymmetrischer Kryp-tographie verstanden. Ihnen ist klar, wo die Vor- und Nachteile hierbei liegen.Sie können den Euklidischen Algorithmus anwenden. Sie können eigenständigden größten gemeinsamen Teiler zweier großer Zahlen berechnen. Sie haben dasKonzept von modularer Arithmetik wiederholt und können Inversen berechnen.

1.2 Advanced Organizer

Mit diesem Studienbrief erfahren Sie die grundlegenden Unterschiede von sym-metrischer und asymmetrischer Kryptographie. Wir lernen den Euklidischen-und erweiterten Euklidischen Algorithmus kennen. An Beispielen üben wir denUmgang und das Berechnen von GGT und modularen Inversen.

1.3 Der Euklidische Algorithmus

Lesen Sie das 6. Kapitels aus dem Buch Understanding Cryptography Paar andPelzl (2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unterfolgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung/Kry_10.html dehttp://www3.crypto.rub.de/VL2010/Kry_11.html en

ÜÜbung 1.1: Einführung

Lesen Sie Kapitel 6.1 und 6.2 im Buch und beantworten Sie folgende Fragenkurz in Stichworten:

1. Was ist der entscheidende Vorteil von Public-key Kryptographie ge-genüber Secret-key Kryptographie?

2. Welche Eigenschaft muss bei der Schlüsselübertragung eines Public-key Verfahrens gegeben sein? Wie wird dies in der Praxis gelöst?

3. Was sind die Vorteile von Elliptischen Kurven in der Public-Key Kryp-tographie?

4. Warum sind die empfohlenen Schlüssellängen bei Public-key Verfah-ren größer als bei Secret-key Verfahren?

Page 12: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 8 Studienbrief 1 Einführung Public Key Kryptographie

ÜÜbung 1.2: Euklidischer Algorithmus: Berechnung des gcd

Benutzen Sie Euklidschen Algorithmus, um den größten gemeinsamenTeiler folgender Zahlen zu berechnen:

1. n = 3827 und m = 3311,

2. n = 286875 und m = 333200.

Versuchen Sie diese Aufgaben unter Prüfungsbedingung zu lösen, d.h. be-nutzen Sie für diese Aufgabe nur Ihren Taschenrechner. Führen Sie in IhrerAntwort jeden Schritt des Euklidschen Algorithmus auf, d.h. schreiben Sienicht nur eine Zahl als Ergebnis. Außerdem sollten Sie für jeden ggT diefolgende Gleichung aufstellen: gcd(r0,r1) = gcd(r1,r2) = · · · .

ÜÜbung 1.3: Euklidischer Algorithmus: Berechnung der multiplikativen In-

versen

Mit dem erweiterten Euklidschen Algorithmus verfügen wir über eineneffektiven Algorithmus zur Berechnung der multiplikativen Inversen inZm.

1. Berechnen Sie das Inverse in Zm für die folgenden Elemente a modulom:

a) a = 1215, m = 3094

b) a = 91, m = 7590

2. Welches Kriterium muss aber gelten, damit eine eindeutige Inversea−1 existiert?

Benutzen Sie nur den Taschenrechner und zeigen Sie im Lösungsweg jedenSchritt an.

Page 13: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Studienbrief 2 Einführung RSA Seite 9

Studienbrief 2 Einführung RSA

Die Grundlage dieses Studienbriefes ist der Inhalt des siebten Kapitels „TheRSA Cryptosystem“ aus dem Buch Understanding Cryptography von Chri-stof Paar und Jan Pelzel Paar and Pelzl (2010). Auf der Website zum Buchwww.crypto-textbook.com finden Sie einen englischsprachigen Foliensatz zumBuchkapitel sowie nützliche Hinweise und Links zu weiterführender Literatur.Videomitschnitte von den Vorlesungen zu den hier behandelten Themen werdenan den jeweils relevanten Stellen im Studienbrief verlinkt.

2.1 Lernziele

Sie haben das wichtigste asymmetrische Verschlüsselungsverfahren kennengelernt.Sie haben dieMathematik hinter demVerfahren verstanden. Sie können „perHand“ver- und entschlüsseln.

2.2 Advanced Organizer

In diesem Studienbrief stellen wir das asymmetrische VerschlüsselungsverfahrenRSA kennen. In Übungen und Beispielen lernen Sie das Berechnen von Chiffretex-ten und das Entschlüsseln von Ciphertexten.

2.3 RSA berechnen und brechen

Lesen Sie das 7. Kapitel aus dem Buch Understanding Cryptography Paar and Pelzl(2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unterfolgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung/Kry_11.html dehttp://www3.crypto.rub.de/VL2010/Kry_12.html en

ÜÜbung 2.1: Square and Multiply

Berechnen Sie die folgenden Exponentiationen xe mod m mit Hilfe dessquare-and-multiply Algorithmus.

1. x = 3, e = 68, m = 101

2. x = 5, e = 45, m = 101

Nach jedem Schritt des square-and-multiply Algorithmus soll der Exponentin binärer Darstellung angegeben werden.

ÜÜbung 2.2: RSA Ver- und Entschlüsselung

Berechnen Sie zunächst den öffentlichen bzw. privaten Schlüssel und führenSie dann eine RSA Ver- bzw. Entschlüsselung mit den folgenden Systempa-rametern durch:

1. p = 19, q = 13, d = 137, x = 17

2. p = 23, q = 7, d = 53, x = 6

Page 14: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 10 Studienbrief 2 Einführung RSA

3. p = 11, q = 17, e = 61, y = 176

Anmerkung: Versuchen Sie diese Aufgabe unter Prüfungsbedigungen zulösen und benutzen Sie nur einen Taschenrechner.

ÜÜbung 2.3: RSA brechen

Sie haben über einen Ihrer Informanten erfahren, dass einige Kommilitioneneine Party am Kemnader See planen und Sie sind nicht eingeladen! Umtrotzdem zum richtigen Zeitpunkt dabei zu sein, wollen Sie die Kommuni-kation abhören und konnten schon erfolgreich einige verschlüsselte E-Mailsabfangen.

Diese sind allerdings 256 Bit AES verschlüsselt. Nach einigen Nächten Ar-beit, schaffen Sie es aber, einen neuen Schlüsselaustausch abzuhören. Dabeierhalten Sie die folgenden Informationen:

• RSA-PubKey: (n,e)=(1219,5)

• Cipher-Text: [93, 597, 211, 254, 1190, 934, 793, 880, 894]

Ihr fleißiger Informant konnte außerdem in Erfahrung bringen, dass derCipher-Text das Password für die AES-Verschlüsselung inASCII-Darstellungenthält, dieses nur aus alphanummerischen Zeichen besteht [A..Za..z0..9]und zur Verschlüsselung der ASCII-Wert der einzelnen Buchstaben verwen-det wurde.

Brechen Sie die Verschlüsselung, damit die folgenden Planungsdetails nichtmehr vor Ihnen verborgen bleiben!

Hinweis: Verwenden Sie als Klausurvorbereitung nur einen Taschenrech-ner!

Page 15: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Studienbrief 3 Kryptographie mit dem diskreten Logarithmus Seite 11

Studienbrief 3 Kryptographie mit dem diskretenLogarithmus

Die Grundlage dieses Studienbriefes ist der Inhalt des achten Kapitels „Public-Key Cryptosystems Based on the Discrete Logarithm Problem“ aus dem BuchUnderstanding Cryptography von Christof Paar und Jan Pelzel Paar and Pelzl(2010). Auf der Website zum Buch www.crypto-textbook.com finden Sie einenenglischsprachigen Foliensatz zum Buchkapitel sowie nützliche Hinweise undLinks zu weiterführender Literatur. Videomitschnitte von den Vorlesungen zu denhier behandelten Themen werden an den jeweils relevanten Stellen im Studienbriefverlinkt.

3.1 Lernziele

Sie haben die Grundlagen des Diskreten Logarithmus Problems verstanden. Siehaben einen Überblick über fortgeschrittene Anwendungen des Problems für dieKryptographie. Sie können die Konstruktionen vom Anfang bis zum Limit anSicherheit überblicken.

3.2 Advanced Organizer

In diesem Studienbrief gebenwir in einem ersten Schritt eine Einführung in die Pro-blematik mit diskreten Logarithmen. Die erste Anwendung ist das Diffie-Hellman(DH) Schlüsseltausch Protokoll. Hierzu gibt es Beispiele und Übungen, welchedie Thematik fassbar machen. Der Studienbrief schließt mit dem ElGamal Ver-schlüsselungsverfahren, welches die Technik des DH Protokolls nutzt um einVerschlüsselungsverfahren zu konstruieren. Mögliche Schwachstellen werden hierebenfalls thematisiert.

3.3 Zyklische Gruppen

Lesen Sie die Abschnitte 8.2 und 8.3 des 8. Kapitels aus dem Buch UnderstandingCryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnittder Vorlesung online unter folgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/KVL01.html dehttp://www3.crypto.rub.de/SoSe_2011/Kry_13.html en

ÜÜbung 3.1: Ordnung von Elementen

Untersuchen Sie die Ordnung aller Elemente der multiplikativen Grup-pen:

1. Z?5

2. Z?11

Erstellen Sie eine Tabelle mit zwei Spalten für jede Gruppe, wobei jede Zeileein Element a und die Ordnung ord(a) enthält.

(Tipp: Damit Sie die zyklischen Gruppen und ihre Eigenschaften näherkennenlernen, wäre es gut, wenn Sie alle Ordnungen “per Hand” berechnen,d.h. verwenden Sie nur einen Taschenrechner. Wenn Sie Ihr Kopfrechnen

Page 16: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 12 Studienbrief 3 Kryptographie mit dem diskreten Logarithmus

auffrischen wollen, versuchen Sie bei der Berechnung möglichst keinenTaschenrechner zu verwenden.)

ÜÜbung 3.2: Eigenschaften von zyklischen Gruppen

Wir betrachten nun die Gruppen von der vorherigen Aufgabe.

1. Wie viele Elemente hat jede dieser multiplikativen Gruppen?

2. Welche der Elemente von Aufgabe 1 sind primitive Elemente?

3. Überprüfen Sie für beide Gruppen, ob die Anzahl der primitivenElemente durch φ(|Z?

p|) gegeben ist.

4. Überprüfen Sie für alle Elemente a von Z?p, dass a|Z

?p| ≡ 1 mod p, mit

p = 5. (Diese Eigenschaft ist unter dem Namen“Fermat’s Little Theo-rem” or “Fermat’s Theorem” bekannt.)

ÜÜbung 3.3: Ordnung von Elementen II

Schreiben Sie ein Programm in der Programmiersprache Ihrer Wahl, dasdie Ordnung eines Elementes in Z?

p berechnet und ausgibt. Das Programmsoll zusätzlich die Ausgabe “Primitiv“ erzeugen, wenn das Element pri-mitiv ist. Als Eingabe soll der Benutzer sowohl a als auch eine Primzahl peingeben. Beachten Sie, dass Sie nach jedem Schritt eine Moduloreduktiondurchführen. Ermitteln Sie die Ordnung der folgenden Elemente a in Zp:

1. p = 5431,a = 2,51,5430 (10 Pkt.)

2. p = 19751,a = 2,7,11111 (10 Pkt.)

Welche der Elemente sind primitiv? (5 Pkt.)

ÜÜbung 3.4: Primitive Elemente

Für Kryptoverfahren, die auf dem diskreten Logarithmusproblem beruhenist es oft notwendig, ein primitives Element zu finden. In dieser Aufgabewerdenwir die Rechenkomplexität für das Testen eines primitiven Elementesbetrachten.

1. Wie viele Elemente müssen durchschnittlich getestet werden, um einprimitives Element zu finden?

2. Was ist die Komplexität (d.h. die durchschnittliche Anzahl von Schrit-ten, die benötigt wird) des Programms zum Testen von Primitivitäten,das Sie für die Aufgabe 3 geschrieben haben? Ist diese Vorgehensweisefür in der Praxis verwendete Schlüssellängen geeignet?

3. Haben Sie Vorschläge, wie der Test dramatisch beschleunigt werdenkönnte? Sie müssen nicht den ganzen Algorithmus beschreiben, son-dern nur kurz Ihre Idee aufführen, die dem verbesserten Verfahrenzu Grunde liegt.Hinweis: Benutzen Sie eine der Eigenschaften von zyklischen Grup-pen, die in der Vorlesung besprochen worden sind.

Page 17: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

3.4 Diffie-Hellman Schlüsseltausch Seite 13

4. Wie groß ist die Gesamtkomplexität zum Auffinden eines primitivenElementes?

3.4 Diffie-Hellman Schlüsseltausch

Lesen Sie die Abschnitte 8.1, 8.3 und 8.4 des 8. Kapitels aus dem Buch Understan-ding Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomit-schnitt der Vorlesung online unter folgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/KVL02.html dehttp://www3.crypto.rub.de/SoSe_2011/Kry_01.html en

ÜÜbung 3.5: Diskreter Logarithmus und generalisiertes diskretes Logarith-

musproblem

Bestimmen Sie den folgenden diskreten Logarithmus:

a) dlog4(6) in (Z∗23, ·)

b) Ist die Lösung für a) eindeutig (warum)?

Wir betrachten nun das generalisierte diskrete Logarithmusproblem. SeiG = (Zp,+) eine Gruppe und p prim.

c) Beschreiben Sie die Vorgehensweise, um das generalisierte diskreteLogarithmusproblem für G effizient zu lösen.

ÜÜbung 3.6: Diffie-Hellman Schlüsselaustausch I

Berechnen Sie die zwei öffentlichen Schlüssel und den gemeinsamenSchlüssel des Diffie-Hellman Schlüsselaustausches mit den Parameternp = 1153,α = 202 und:

a) kpr,A = 80,kpr,B = 101

b) kpr,A = 565,kpr,B = 203

ÜÜbung 3.7: Diffie-Hellman Schlüsselaustausch II

Beim DHKE werden sowohl der Generator α als auch die privaten Schlüsselkpr,A,kpr,B aus {2,3, ..., p−2} gewählt.

a) Wieso wird p−1 nicht als privater Schlüssel verwendet?

b) Berechnen Sie α p−1 mod p für beliebige DHKE-Parameter α, p.

c) Welche Ordnung hat der Generator α = p−1?

d) Welche Untergruppe Hα wird von α = p−1 erzeugt?

Page 18: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 14 Studienbrief 3 Kryptographie mit dem diskreten Logarithmus

3.5 ElGamal

Lesen Sie die Abschnitte 8.5 und 8.6 des 8. Kapitels aus dem Buch UnderstandingCryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnittder Vorlesung online unter folgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/Kry_03.htmldehttp://www3.crypto.rub.de/SoSe_2011/Kry_02.htmlen

ÜÜbung 3.8

Wir betrachten eine alternative Version des Diffie-Hellman Schlüsselaus-tauschs auf Basis der Primzahl p = 467 über Z∗467. Gegeben sei das Elementα = 4 als Basiselement für den Schlüsselaustausch. Das Element 4 hat dieOrdnung 233 und generiert deshalb eine Untergruppe mit 233 Elementen.Berechnen Sie KAB mit:

1. aA = 300, aB = 134

2. aA = 67, aB = 134

Warum sind die Sitzungsschlüssel identisch? Worauf ist dies zurückzufüh-ren?

ÜÜbung 3.9: ElGamal Verschlüsselungsprinzip

1. Warum ist ElGamal nicht-deterministisch? Was ist der Vorteil einesnicht-deterministischen Systems?

2. Was ist der Nachteil von der ElGamal verschlüsselten Klartextblöcken,wenn man es mit der RSA-Verschlüsselung vergleicht? Wie wirkt sichdas auf die benötigte IT-Infrastruktur aus?

ÜÜbung 3.10: ElGamal Verschlüsselung

Verschlüsseln Sie die folgenden Nachrichten mit dem ElGamal Schema(p = 409 und α = 19):

1. Privater Schlüssel Kpr = 301, zufälliger Parameter i = 23, Nachrichtm = 59

2. Privater Schlüssel Kpr = 301, zufälliger Parameter i = 135, Nachrichtm = 59

Entschlüsseln Sie ebenfalls wieder jedes Chiffrat. Zeigen Sie dabei jedenRechenschritt des ElGamal Protokolls.

ÜÜbung 3.11: Angriff auf ElGamal bei schlecht gewähltem Zufall

Der zufällige Exponent i in der ElGamal-Verschlüsselung muss bei jederVerschlüsselung zufällig gewählt werden. Zeigen Sie, dass die ElGamal-Verschlüsselung unsicher ist, wenn der Sender den Exponenten i1 fuer dieerste Verschlüsselung zufällig wählt, und dann für jede weitere Verschlüs-selung um eins erhöht, also ik+1 = ik + 1. Nehmen Sie dabei an, dass der

Page 19: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

3.5 ElGamal Seite 15

Angreifer ein Nachricht/Chiffrat-Paar kennt (sowie weitere Chiffrate, die erbrechen möchte).

ÜÜbung 3.12: name

Übung

Page 20: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten
Page 21: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Studienbrief 4 Kryptographie mit Elliptischen Kurven Seite 17

Studienbrief 4 Kryptographie mit Elliptischen Kurven

Die Grundlage dieses Studienbriefes ist der Inhalt des neunten Kapitels „El-liptic Curve Cryptosystems“ aus dem Buch Understanding Cryptography vonChristof Paar und Jan Pelzel Paar and Pelzl (2010). Auf der Website zum Buchwww.crypto-textbook.com finden Sie einen englischsprachigen Foliensatz zumBuchkapitel sowie nützliche Hinweise und Links zu weiterführender Literatur.Videomitschnitte von den Vorlesungen zu den hier behandelten Themen werdenan den jeweils relevanten Stellen im Studienbrief verlinkt.

4.1 Lernziele

Sie haben die Grundlagen von elliptischen Kurven (EC) verstanden. Sie sind mitden Pro- und Kontra-Argumenten in der Diskussion ECC vs. RSA vertraut. Siekönnen die Stärken der EC Kryptographie einschätzen.

4.2 Advanced Organizer

In diesem Studienbrief behandeln wir das Gebiet der elliptischen Kurven Krypto-graphie (ECC). Wir besprechen Argumente für und gegen den Einsatz von ellipti-schen Kurven im Vergleich zu RSA. Wir besprechen an Beispielen und Übungendie Mathematik von elliptischen Kurven.

4.3 Übungen

Lesen Sie das 9. Kapitel aus dem Buch Understanding Cryptography Paar and Pelzl(2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unterfolgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/Kry_05.html dehttp://www3.crypto.rub.de/SoSe_2011/Kry_03.html en

ÜÜbung 4.1: Grundlagen

a) Gegeben seienE1 : y2 = x3 +5 · x+3 mod 11E2 : y2 = x3 +2 · x+3 mod 11Welche der beiden elliptischen Kurven ist für kryptografische Zweckegeeignet und wieso? Beachten Sie in diesem Fall keine sicherheitsre-levanten Attribute wie Primzahlgröße, o.ä.

Verwenden Sie für die folgenden Teilaufgaben nur die geeignete Kurve.

b) Berechnen Sie alle Punkte der Kurve! Zeigen Sie hierbei, wie Sie diePunkte bestimmt haben.

c) Was ist die Gruppenordnung?

d) Gegeben sei der Punkt α = (0,6). Bestimmen Sie die Ordnung von α

mit nur einer Punktmultiplikation. Ist α ein Generator?

Page 22: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 18 Studienbrief 4 Kryptographie mit Elliptischen Kurven

ÜÜbung 4.2: Schnelle Punktmultiplikation

Gegeben sei eine elliptische Kurve E über Z71 und der Punkt P = (23,68):

E : y2 ≡ x3 +49x+63 mod 71.

Es ist bekannt, dass die Ordnung der Kurve ord(E ) = 66 ist. Weiterhin sei einzusätzlicher Punkt Q = 15 ·P = (33,49) auf der Kurve gegeben. BestimmenSie nun mit möglichst wenigen Gruppenoperationen (d.h. Punktadditionen)das Ergebnis der folgenden Punktmultiplikationen, z.B. durch die geschick-te Verwendung des bekannten Punktes Q. Geben Sie jeweils an, wie Siedie Berechnung vereinfachen konnten. Die einzelnen Rechenoperationenmüssen nicht angegeben werden.

a) 14 ·P

b) 67 ·P

c) 4 ·P+4 ·Q

ÜÜbung 4.3: Programmieraufgabe

An einem verregneten Apriltag stehen Sie vor ihrem Wohnungsfenster undstarren in die Ferne. Während die Regentropfen langsam an der Scheibenach unten kriechen, bildet sich in ihrem Kopf ein genialer Plan. Die letzteKrypto-Vorlesung noch lebhaft vor dem inneren Auge, nehmen Sie sich vor,die Gruppenoperationen für Elliptische Kurven zu implementieren, um sodie graue Eintönigkeit dieses Tages endlich abzuschütteln!

a) Implementieren Sie eine Funktion, die je nach Eingabe eine Punk-taddition oder eine Punktdopplung auf der elliptischen Kurve Erealisiert.

b) Berechnen Sie mit ihrem Programm folgende Werte auf der KurveE : y2 ≡ x3 +213 · x+560 mod 947:

i) (374,627)+(374,627)

ii) (771,633)+(217,551)

Hinweis: Sie können die Aufgabe in einer beliebigen Programmierspracheumsetzen (mit Außnahme von esotherischen Sprachen wie z.B. Brainfuck).Geben Sie ihren sinnvoll kommentierten Quellcode in gedruckter Form ab.Bei Gruppenabgaben reicht eine gedruckte Version. Nebem dem Quellcodegeben Sie bitte auch die Ausgabe ihres Programms für die jeweiligen Aufrufean!

ÜÜbung 4.4: Elliptische-Kurven Diffie-Hellman Schlüsselaustausch

Gegeben sei eine elliptische Kurve E über Z11:

E : y2 = x3 + x+6 mod 11.

Gegeben ist ihr private Schlüssel a = 6 und der öffentliche Schlüssel vonBob B = (5,9). Berechnen Sie den Session-Key. Verwenden Sie den Double-And-Add Algorithmus und geben Sie alle Zwischenwerte an.

Page 23: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

4.3 Übungen Seite 19

ÜÜbung 4.5: Laufzeit des Double-And-Add Algorithmus

Wir betrachten eine 160 bit Primzahl p≈ 2160 und wollen k ·P mit Hilfe desDouble-And-Add Algorithmus berechnen.

a) Wie viele Punktadditionen und wie viele Punktverdopplungen müs-sen (i) im Durchschnitt, (ii) im besten Fall, und (iii) im schlechtestenFall berechnet werden?

b) Welche Werte von k sind der “beste Fall” und der “schlechteste Fall”?

c) Angenommen eine Gruppenoperation (also Punktaddition oderPunktverdopplung) benötigt 20µsec, wie lange dauert die Punktaddi-tion (i) im Durchschnitt, (ii) im besten Fall, und (iii) im schlechtestenFall?

ÜÜbung 4.6: Programmieraufgabe II

Leider hat sich das Wetter seit der ersten Übung zu diesem Brief nichtwesentlich verbessert, deshalb beschliessen Sie nun, Ihr Programm vomletzten Blatt um den Double-And-Add Algorithmus für Elliptische Kurvenzu erweitern.

a) Implementieren Sie eine Funktion, die nach Eingabe eines Punktes Pauf einer elliptischen Kurve und einer ganzen Zahl k den Wert k ·Pmit Hilfe des Double-And-Add Algorithmus berechnet.

b) Berechnen Sie mit ihrem Programm folgende Werte auf der KurveE : y2 ≡ x3 +213 · x+560 mod 947:

i) 42 · (468,779)

ii) 7 · (468,779)

Hinweis: Wie gehabt können Sie die Aufgabe in einer beliebigen (aber nichtesoterischen) Programmiersprache umsetzen; abzugeben sind der sinnvollkommentierte Quellcode und die jeweiligen Lösungen.

Page 24: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten
Page 25: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Studienbrief 5 Digitale Signaturen Seite 21

Studienbrief 5 Digitale Signaturen

Die Grundlage dieses Studienbriefes ist der Inhalt des zehnten Kapitels „Digital Si-gnatures“ aus dem Buch Understanding Cryptography von Christof Paar und JanPelzel Paar and Pelzl (2010). Auf derWebsite zum Buch www.crypto-textbook.comfinden Sie einen englischsprachigen Foliensatz zum Buchkapitel sowie nützlicheHinweise und Links zu weiterführender Literatur. Videomitschnitte von den Vorle-sungen zu den hier behandelten Themen werden an den jeweils relevanten Stellenim Studienbrief verlinkt.

5.1 Lernziele

Sie Verstehen die Grundlagen und das Einsatzgebiet von digitalen Signaturen. Siekönnen Signaturen unter Verwendung des RSA Verfahrens erzeugen. Sie könnendie Schwächen von RSA Signaturen einschätzen.

5.2 Advanced Organizer

Wir beschäftigen uns in diesem Studienbrief mit den Grundlagen von digitalenSignaturen. Wir besprechen die konkreten Signaturverfahren RSA und ElGamal.Diese untersuchen wir in Übungen und Beispielen genauer.

5.3 RSA Signaturen

Lesen Sie die Abschnitte 10.1 und 10.2 des 1. Kapitels aus dem Buch UnderstandingCryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnittder Vorlesung online unter folgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/Kry_06.html dehttp://www3.crypto.rub.de/SoSe_2011/Kry_05.html en

ÜÜbung 5.1: Grundlagen zu digitalen Signaturen

Erklären Sie in jeweils maximal ein bis zwei Sätzen folgende Begriffe mitIhren eigenen Worten:

a) Authentisierung (authentication)

b) Integrität (integrity)

c) Nicht-Zurückweisbarkeit (non-repudiation)

ÜÜbung 5.2: RSA-Signaturen

Berechnen Sie die RSA-Signaturen zu den gegebenen Nachrichten x mit demöffentlichen Schlüssel (n,e) = (1177,17) und dem privaten Schlüssel (d) =(873). Überprüfen Sie ebenfalls Ihre Ergebnisse, indem Sie die Signaturenanschließend verifizieren.

a) x = 873

b) x = 73

Page 26: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 22 Studienbrief 5 Digitale Signaturen

Gegeben ist ein RSA Signatur-Protokoll, sowie der öffentliche Schlüssel(n = 1821971,e = 401). Welche der folgenden Signaturen sind korrekt?

c) (x = 2015,sig(x) = 481114)

d) (x = 124214,sig(x) = 532532)

ÜÜbung 5.3: Fälschen von RSA-Signaturen

a) Zeigen Sie anhand einer Beispielrechnung, wie ein Angreifer einegültige RSA-Signatur zu einer von ihm beliebig wählbaren Nachrichterzeugen kann, ohne im Besitz des geheimen Schlüssels d zu sein.Rechnen Sie in ihrem Beispiel mit den öffentlichen RSA-Parametern(n,e) = (1177,17). Dieser Angriff soll ohne die Faktorisierung von nund die Berechnung des diskreten Logarithmus auskommen!

b) Kann ein solcher Angreifer damit gezielt Unterschriften zu bestimm-ten Dokumenten (z.B. Kaufverträgen, E-Mails) fälschen? BegründenSie Ihre Antwort!

ÜÜbung 5.4: RSA-Signaturen mit Padding

Erschöpft von einer guten Maiwanderung liegen Sie am nächsten Tag aufdem Sofa und grübeln über die Schwachstellen des „Schulbuch“-RSA nach.Da der heutige Tag bestens für eine entspannte Programmieraufgabe geeig-net ist, nehmen Sie sich vor, eines dieser Probleme zu beheben.

Nach einer kurzen Kaffee-Pause schwebt Ihnen folgendes RSA-PaddingFormat vor Augen:

+--------+--------+---------+-----------+| Header | Laenge | Padding | Nachricht |+--------+--------+---------+-----------+

Dabei soll der Header die Zeichenkette CRYPTO12 in 8-Bit ASCII Kodierungenthalten. Das Längenfeld beinhaltet die (genaue) Anzahl der tatsächlichverwendeteten Bits für die Nachricht und ist selber 16 Bit lang. Das Paddingfüllt dieNachrichtmitNullen auf die benötigte Länge (Bitlänge desModulus)auf.

a) Wie lang kann die signierte Nachricht höchstens sein, wenn RSA miteinem 1024 Bit Modulus und die Nachricht unverändert verwendetwerden?

b) Kann diese Länge im Header korrekt kodiert werden (wieso)?

c) Wie kann die Längenbeschränkung in der Praxis umgangen werden?

Im Übungsordner finden Sie eine Datei RSA-Parameter.txt mit den Pa-rametern n, e und d, die Sie für die restliche Aufgabe verwenden sollen.Weiterhin befindet sich eine generierte digitale Signatur im Dezimalformatim Übungsordner (Signatur.txt), zu der allerdings die Nachricht fehlt.

d) Ist die Signatur gültig?

Page 27: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

5.4 ElGamal Signaturen Seite 23

e) Geben Sie den Inhalt des Header-Feldes in hexadezimaler Schreib-weise an.

f) Geben Sie den Inhalt des Längen-Feldes in hexadezimaler Schreib-weise an. Wie lang ist die signierte Nachricht?

g) Geben Sie die Nachricht in hexadezimaler Schreibweise an.Die Nachricht ist 8-Bit ASCII kodiert. Geben Sie den Inhalt der Nach-richt an.

h) Implementieren Sie nun eine Signaturfunktion, die dieses Paddingumsetzt und signieren Sie die Nachricht EIN SACK ZEMENTGeben Sie die gepaddedete Nachricht und die dazugehörige Signaturin hexadezimaler Schreibweise an. Ihren Quellcode müssen Sie nichtmit abgeben!

Hinweise:

i) Sie sollten eine Langzahlarithmetik-Bibliothek (für C bspw. gmp, fürJava BigInteger) verwenden und die Funktionen der Bibliothek über-prüfen um sich unnötige Arbeit zu ersparen (bei gmp etwa mpz_powm).

ii) Geben Sie alle hexadezimalenWerte in 4-Byte-Blöcken an (es sei denn,der Wert ist kürzer)!

5.4 ElGamal Signaturen

Lesen Sie die Abschnitte 10.3, 10.6 und 10.7 des 10. Kapitels aus dem Buch Under-standing Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Video-mitschnitt der Vorlesung online unter folgenden Links anschauen.

http://www3.crypto.rub.de/Vorlesung2/Kry_07.html dehttp://www3.crypto.rub.de/SoSe_2011/Kry_06.html en

ÜÜbung 5.5: ElGamal-Signatur

Da Bob dem RSA-Signaturschema nicht traut, ist er mit Alice auf ein neuesVerfahren umgestiegen: ElGamal. Trudy versuchtAlice undBob auseinanderzu bringen, muss sich aber nun auf die neue Situation einstellen. Alice undBob wollen sich, nach wie vor, signierte E-Mails schicken und beherrschenauch beide das ElGamal-Signaturverfahren. Da Bob aber gerade sehr vielArbeit hat, hat er Sie gebeten, ihm die Signaturen zu seinen Nachrichten anAlice zu berechnen. Er hat Ihnen folgende Parameter gegeben:

• Seinen privaten Schlüssel Kpr = d = (67)

• Den dazugehörigen öffentlichen Schlüssel Kpub = (p,α,β ) =(97,23,15)

1. Um IhnendieArbeit nicht zu schwer zumachen, hat er seineNachrich-ten mittels einer Hashfunktion H(m) reduziert. Signieren Sie folgendeNachrichten:

a) H(m) = x = 17 und kE = 31

b) H(m) = x = 85 und kE = 48

c) H(m) = x = 17 und kE = 49

Page 28: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Seite 24 Studienbrief 5 Digitale Signaturen

Geben Sie hierbei alle Zwischenschritte mit an, d.h. die Überprü-fung der einzelnen Parameter, die Ergebnisse von r und s, sowie dieErgebnisse der Überprüfung, t und αx. (Sie brauchen keinen Square-and-Multiply zu verwenden.)

2. Vergleichen Sie das RSA- und das ElGamal-Signaturschema und ge-ben Sie zu jedem Schema mindestens einen Vor- und einen Nachteilan.

ÜÜbung 5.6: ElGamal-Signatur - Verifikation

Bob hat zweimal die gleiche Nachricht mit unterschiedlichen Signaturenerhalten undmöchtewissen, ob Trudy ihre Finger im Spiel hat. DieNachrichtlautet in beiden Fällen x = 10.

1. Verifizieren Sie die Signaturen mit dem öffentlichen Schlüssel vonAlice Kpub = (p,α,β ) = (31,3,6):

a) (r,s) = (17,5)

b) (r,s) = (13,15)

2. Wie viele gültige Signaturen kann man mit den Parametern von Alicezu jeder Nachricht x berechnen (inkl. Begründung)?

ÜÜbung 5.7: ElGamal-Signatur – Ephemeral Key

Bob hat keine Lust, sich für jede Signatur einen neuen Ephemeral Key zufäl-lig zu generieren. Daher hat er beschlossen, kE einfach zu inkrementieren:

kEi+1 = kEi +1.

Beschreiben Sie, wie ein Angreifer den privaten Schlüssel aus zwei aufein-anderfolgenden Signaturen berechnen kann.

ÜÜbung 5.8: ElGamal-Signatur – Existential Forgery Attack

Gegeben sei Bobs öffentlicher Schlüssel:Kpub = (p,α,β ) = (97,23,15). ZeigenSie, wie Trudy eine gültige Signatur einer zufälligen Nachricht erzeugenkann, ohne den privaten Schlüssel zu besitzen (Stichwort: Existential ForgeryAttack). Verwenden Sie hierzu die zufälligen Werte i = 18 und j = 11.

Page 29: Seite1 - Nachrichten - Ruhr-Universität Bochum · 2015. 12. 11. · Studienbrief 4 Kryptographie mit Elliptischen Kurven Die Grundlage dieses Studienbriefes ist der Inhalt des neunten

Verzeichnisse Seite 25

Verzeichnisse

I. Literatur

Christof Paar and Jan Pelzl. Understanding Cryptography - A Textbook for Students and Practitioners. Springer,2010. ISBN 978-3-642-04100-6.