Der Diskrete Logarithmus [DLOG] Autoren: Christof Paar Jan Pelzl. Ruhr - Universität Bochum

Ähnliche Dokumente
IT-Sicherheit: Kryptographie. Asymmetrische Kryptographie

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Wiederholung Symmetrische Verschlüsselung klassische Verfahren: Substitutionschiffren Transpositionschiffren Vigenère-Chiffre One-Time-Pad moderne

RSA Verfahren. Kapitel 7 p. 103

Datensicherheit durch Kryptographie

IT-Sicherheitsmanagement. Teil 12: Asymmetrische Verschlüsselung

Kryptographie Reine Mathematik in den Geheimdiensten

Verschlüsselung. Chiffrat. Eve

11. Das RSA Verfahren und andere Verfahren

Public-Key-Kryptosystem

Über das Hüten von Geheimnissen

Was ist Kryptographie

Proseminar: Electronic Commerce und Digitale Unterschriften Public-Key-Kryptographie

Das wichtigste Kennzeichen asymmetrischer Verschlüsselungsverfahren ist, dass die Kommunikationspartner dabei anstelle eines

Grundlagen der Kryptographie

Konzepte von Betriebssystem-Komponenten: Schwerpunkt Sicherheit Grundlagen: Asymmetrische Verschlüsslung, Digitale Signatur

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

Seminar zur Kryptologie

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Public-Key Verschlüsselung

Symmetrische und Asymmetrische Kryptographie. Technik Seminar 2012

IT-Sicherheit Kapitel 3 Public Key Kryptographie

Übungen zu. Grundlagen der Kryptologie SS Hochschule Konstanz. Dr.-Ing. Harald Vater. Giesecke & Devrient GmbH Prinzregentenstraße 159

Elliptische Kurven in der Kryptographie

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

Kryptographie. nur mit. Freier Software!

SSL/TLS Sicherheit Warum es sich lohnt, sich mit Ciphersuites zu beschäftigen

Elliptische Kurven und ihre Anwendungen in der Kryptographie

Kryptographie: Verteidigung gegen die dunklen Künste in der digitalen Welt

Lenstras Algorithmus für Faktorisierung

Kurze Einführung in kryptographische Grundlagen.

Kryptographie praktisch erlebt

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Workshop Experimente zur Kryptographie

9 Schlüsseleinigung, Schlüsselaustausch

Elliptische Kurven in der Kryptographie

Grundlegende Protokolle

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz

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

Praktikum Diskrete Optimierung (Teil 11)

Betriebssysteme und Sicherheit

RSA Verfahren. Ghazwan Al Hayek Hochschule für Technik Stuttgart. 2. November 2008

Algorithmische Kryptographie

RSA-Verschlüsselung. von Johannes Becker Gießen 2006/2008

Digitale Signaturen Einführung und das Schnorr Signaturschema

Kryptographische Systeme auf Basis des diskreten Logarithmus

Überblick Kryptographie

Zusammenfassung der Vorlesung vom

Probabilistische Primzahlensuche. Marco Berger

Post-quantum cryptography

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

Kryptographie mit elliptischen Kurven

Bernd Blümel. Verschlüsselung. Prof. Dr. Blümel

Einführung in Computer Microsystems

Modul Diskrete Mathematik WiSe 2011/12

Erste Vorlesung Kryptographie

Seminar Kryptographie

Probabilistische Primzahltests

Digitale Signaturen. Sven Tabbert

Kryptografische Protokolle

Modulprüfung (Grundlagen der Informationsverarbeitung und -sicherheit) am um 14:00 15:30 Uhr im HS 1 (Tivoli) Viel Erfolg!

AUFGABEN ZUR KRYPTOLOGIE

Grundlagen der Verschlüsselung und Authentifizierung (2)

Anhang IV zur Vorlesung Kryptologie: Public-Key Kryptographie

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

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

Parameterwahl für sichere zeitgemäße Verschlüsselung

Kap. 8: Speziell gewählte Kurven

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

10. Kryptographie. Was ist Kryptographie?

Klassische Verschlüsselungsverfahren

Fachhochschule Rhein-Sieg Fachbereich Angewandte Informatik / Kommunikationstechnik Lehrveranstaltung Informationssicherheit Sommersemester 1998

Anhang I zur Vorlesung Kryptologie: Elementare Zahlentheorie

Kryptographie I Symmetrische Kryptographie

Mathematik und Logik

4 RSA und PGP. Die Mathematik von RSA an einem Beispiel

DLP. Adolphe Kankeu Tamghe ALZAGK SEMINAR. Bremen, den 18. Januar Fachbereich Mathematik und Informatik 1 / 27

Teil III ASYMMETRISCHE KRYPTOGRAPHIE

Das RSA-Kryptosystem

Methoden der Kryptographie

Schutz von Informationen bei Übertragung über unsichere Kanäle Beispiele für zu schützende Informationen

Signatursystem nach El Gamal

Untersuchung der Gruppen GL(s, Z n ) und SL(s, Z n ) zur Nutzung in der Kryptographie

Authentikation und digitale Signatur

Vorlesung IT-Sicherheit FH Frankfurt Sommersemester 2007

Exkurs Kryptographie

Kryptologie. GFS im Fach Mathematik. Nicolas Bellm. 12. November November 2005

Computeralgebra in der Lehre am Beispiel Kryptografie

Mit Python von Caesar zur Public-Key Kryptographie

Vorlesung Sicherheit

Datenschutzfreundliche Terminplanung

und Digitale Signatur

IT-Sicherheit - Sicherheit vernetzter Systeme -

ElGamal Verschlüsselungsverfahren (1984)

Einleitung Shor s Algorithmus Anhang. Thomas Neder. 19. Mai 2009

Unterhalten Sie sich leise mit Ihrem Nachbarn über ein aktuelles Thema. Dauer ca. 2 Minuten

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren

Internet Datasafe Sicherheitstechnische Herausforderungen

Vortrag Keysigning Party

Kryptographie II. Introduction to Modern Cryptography. Jonathan Katz & Yehuda Lindell

Transkript:

Der Diskrete Logarithmus [DLOG] Autoren: Christof Paar Jan Pelzl Ruhr - Universität Bochum

Der Diskrete Logarithmus [DLOG] Autoren: Christof Paar Jan Pelzl 1. Auflage Ruhr - Universität Bochum

2017 Christof Paar Ruhr - Universität Bochum Universitätsstraße 150 44801 Bochum 1. Auflage (21. September 2017) Didaktische und redaktionelle Bearbeitung: Christopher Späth Das Werk einschließlich seiner Teile ist urheberrechtlich geschützt. Jede Verwendung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung der Verfasser unzulässig und strafbar. Das gilt insbesondere für Vervielfältigungen, bersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen. Um die Lesbarkeit zu vereinfachen, wird auf die zusätzliche Formulierung der weiblichen Form bei Personenbezeichnungen verzichtet. Wir weisen deshalb darauf hin, dass die Verwendung der männlichen Form explizit als geschlechtsunabhängig verstanden werden soll. Das diesem Bericht zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung, und Forschung unter dem Förderkennzeichen 16OH12026 gefördert. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt beim Autor.

Inhaltsverzeichnis Seite 3 Inhaltsverzeichnis Einleitung 4 I. Abkürzungen der Randsymbole und Farbkodierungen......... 4 II. Zu den Autoren.............................. 5 III. Lehrziele................................. 6 Kryptographie mit dem diskreten Logarithmus 7 1 Lernziele.................................. 7 2 Grundlagen................................ 7 2.1 Asymmetrische Kryptographie................. 7 2.2 Zahlentheorie.......................... 8 3 Zyklische Gruppen............................ 8 4 Diffie-Hellman Schlüsseltausch..................... 10 5 ElGamal.................................. 11 Verzeichnisse 13 I. Literatur.................................. 13

Seite 4 Einleitung Einleitung I. Abkürzungen der Randsymbole und Farbkodierungen bung

Zu den Autoren Seite 5 II. Zu den Autoren Christof Paar ist Inhaber des Lehrstuhls Embedded Security an der RuhrUniversität Bochum und ist außerplanmäßiger Professor an der University of Massachusetts at Amherst, USA. Er arbeitet seit 1995 im Bereich der angewandten Kryptographie. Dr. Paar lehrt seit über 15 Jahren an Universitäten, sowohl in Europa, als auch in den USA, zu Themen der Kryptographie und Datensicherheit. Darüber hinaus gibt er Kurse für Teilnehmer aus der Industrie, u.a. für Motorola Research, die NASA und Philips Research. Dr. Paar hat mehr als 150 Publikationen im Bereich der angewandten Kryptographie und ist Mitgründer des Workshop on Cryptographic Hardware and Embedded Systems (CHES). Jan Pelzl hat in angewandter Kryptologie promoviert und ist Hauptgeschäftsführer der ESCRYPT - Embedded Sedurity, einer führenden Firma im Bereich der Sicherheitsbereatung. Er hat erfolgreich zahlreiche nationale und internationale Industrieprojekte geleitet und tiefgehende Kenntnisse über Sicherheitsbedürfnisse in echten Systemen. Dr. Pelzl hat praktische Aspekte der Kryptographie und Kryptanalyses von elliptischen Kurven erforscht. Seine theoretischen und praktischen Ergebnisse hat er auf/ in international führenden Konferenzen/ Zeitschriften veröffentlicht. Dr. Pelzl hat viele Jahre Kurse über Kryptographie und IT-Sicherheit in Industriekreisen gehalten.

Seite 6 Einleitung III. Lehrziele Kryptographie ist heutzutage allgegenwärtig - während sie lange Zeit nur von Regierungen, Geheimdiensten und Banken verwendet wurde, werden kryptografische Techniken mittlerweile u.a. in Web-Browsern, E- Mail Programmen, Handys, industriellen Produktionssystemen, eingebetteter Software, Autos und sogar in medizinischen Implantaten verwendet. Daher benötigen EntwicklerInnen heutzutage umfassendes Wissen im Bereich der angewandten Kryptographie. Das Modul ist physisch in zwei Teile geteilt. Der Inhalt des Moduls ist im Buch Understanding Cryptography von Paar und Pelzl nachzulesen, während Sie die bungsaufgaben in diesen Studienbriefen finden. Es gibt sowohl theoretische, als auch praktische bungsaufgaben. Für die Bearbeitung vieler praktischen Aufgaben empfiehlt 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.

Kryptographie mit dem diskreten Logarithmus Seite 7 Kryptographie mit dem diskreten Logarithmus In diesem Mikromodul geben wir in einem ersten Schritt eine Einführung in die Problematik mit diskreten Logarithmen. Die erste Anwendung ist das Diffie- Hellman (DH) Schlüsseltausch Protokoll. Hierzu gibt es Beispiele und bungen, welche die Thematik fassbar machen. Der Studienbrief schließt mit dem ElGamal Verschlüsselungsverfahren, welches die Technik des DH Protokolls nutzt um ein Verschlüsselungsverfahren zu konstruieren. Mögliche Schwachstellen werden hier ebenfalls thematisiert. 1 Lernziele Sie haben die Grundlagen des Diskreten Logarithmus Problems verstanden. Sie haben einen berblick über fortgeschrittene Anwendungen des Problems für die Kryptographie. Sie können die Konstruktionen vom Anfang bis zum Limit an Sicherheit überblicken. 2 Grundlagen 2.1 Asymmetrische Kryptographie Lesen Sie das 6. Kapitels aus dem Buch Understanding Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unter folgenden Links anschauen. http://www3.emsec.rub.de/vorlesung/kry_10.html de en bung 1: Einführung Lesen Sie Kapitel 6.1 und 6.2 im Buch und beantworten Sie folgende Fragen kurz in Stichworten: 1. Was ist der entscheidende Vorteil von Public-key Kryptographie gegenüber Secret-key Kryptographie? 2. Welche Eigenschaft muss bei der Schlüsselübertragung eines Publickey Verfahrens gegeben sein? Wie wird dies in der Praxis gelöst? 3. Was sind die Vorteile von Elliptischen Kurven in der Public-Key Kryptographie? 4. Warum sind die empfohlenen Schlüssellängen bei Public-key Verfahren größer als bei Secret-key Verfahren? bung 2: Euklidischer Algorithmus: Berechnung des gcd Benutzen Sie Euklidschen Algorithmus, um den größten gemeinsamen Teiler 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. benutzen Sie für diese Aufgabe nur Ihren Taschenrechner. Führen Sie in Ihrer

Seite 8 Kryptographie mit dem diskreten Logarithmus Antwort jeden Schritt des Euklidschen Algorithmus auf, d.h. schreiben Sie nicht nur eine Zahl als Ergebnis. Außerdem sollten Sie für jeden ggt die folgende Gleichung aufstellen: gcd(r 0,r 1 ) = gcd(r 1,r 2 ) =. bung 3: Euklidischer Algorithmus: Berechnung der multiplikativen Inversen Mit dem erweiterten Euklidschen Algorithmus verfügen wir über einen effektiven Algorithmus zur Berechnung der multiplikativen Inversen in Z m. 1. Berechnen Sie das Inverse in Z m für die folgenden Elemente a modulo m: a) a = 1215, m = 3094 b) a = 91, m = 7590 2. Welches Kriterium muss aber gelten, damit eine eindeutige Inverse a 1 existiert? Benutzen Sie nur den Taschenrechner und zeigen Sie im Lösungsweg jeden Schritt an. 2.2 Zahlentheorie Lesen Sie die Abschnitte 1.5 und 1.6 des ersten Kapitels aus dem Buch Understanding Cryptography Paar and Pelzl (2010). bung 4: Kongruenzen 1. Bestimmen Sie folgenden Kongruenzen mit dem Modulus m = 29 ohne Taschenrechner. Die Ergebnisse müssen im Bereich 0,1,...,m 1 liegen: a) 13 24 mod 29 b) 17 1337 mod 29 c) 69 31 mod 29 d) ( 36) ( 28) mod 29 e) 231 ( 51) mod 29 2. Beschreiben Sie kurz den Zusammenhang zwischen den einzelnen vorherigen Rechnungen. 3. Bestimmen Sie jeweils ohne Taschenrechner: a) 3 1 mod 29 b) 2 6 1 mod 23 c) 7 3 1 4 9 1 mod 13 3 Zyklische Gruppen Lesen Sie die Abschnitte 8.2 und 8.3 des 8. Kapitels aus dem Buch Understanding Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unter folgenden Links anschauen.

3 Zyklische Gruppen Seite 9 http://www3.emsec.rub.de/vorlesung2/kvl01.html de en bung 5: Ordnung von Elementen Untersuchen Sie die Ordnung aller Elemente der multiplikativen Gruppen: 1. Z 5 2. Z 11 Erstellen Sie eine Tabelle mit zwei Spalten für jede Gruppe, wobei jede Zeile ein Element a und die Ordnung ord(a) enthält. (Tipp: Damit Sie die zyklischen Gruppen und ihre Eigenschaften näher kennenlernen, wäre es gut, wenn Sie alle Ordnungen per Hand berechnen, d.h. verwenden Sie nur einen Taschenrechner. Wenn Sie Ihr Kopfrechnen auffrischen wollen, versuchen Sie bei der Berechnung möglichst keinen Taschenrechner zu verwenden.) bung 6: 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 primitiven Elemente 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 Theorem or Fermat s Theorem bekannt.) bung 7: Ordnung von Elementen II Schreiben Sie ein Programm in der Programmiersprache Ihrer Wahl, das die Ordnung eines Elementes in Z p berechnet und ausgibt. Das Programm soll zusätzlich die Ausgabe Primitiv erzeugen, wenn das Element primitiv ist. Als Eingabe soll der Benutzer sowohl a als auch eine Primzahl p eingeben. Beachten Sie, dass Sie nach jedem Schritt eine Moduloreduktion durchführen. Ermitteln Sie die Ordnung der folgenden Elemente a in Z p : 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 8: Primitive Elemente Für Kryptoverfahren, die auf dem diskreten Logarithmusproblem beruhen ist es oft notwendig, ein primitives Element zu finden. In dieser Aufgabe

Seite 10 Kryptographie mit dem diskreten Logarithmus werden wir die Rechenkomplexität für das Testen eines primitiven Elementes betrachten. 1. Wie viele Elemente müssen durchschnittlich getestet werden, um ein primitives Element zu finden? 2. Was ist die Komplexität (d.h. die durchschnittliche Anzahl von Schritten, die benötigt wird) des Programms zum Testen von Primitivitäten, das Sie für die Aufgabe 3 geschrieben haben? Ist diese Vorgehensweise für in der Praxis verwendete Schlüssellängen geeignet? 3. Haben Sie Vorschläge, wie der Test dramatisch beschleunigt werden könnte? Sie müssen nicht den ganzen Algorithmus beschreiben, sondern nur kurz Ihre Idee aufführen, die dem verbesserten Verfahren zu Grunde liegt. Hinweis: Benutzen Sie eine der Eigenschaften von zyklischen Gruppen, die in der Vorlesung besprochen worden sind. 4. Wie groß ist die Gesamtkomplexität zum Auffinden eines primitiven Elementes? 4 Diffie-Hellman Schlüsseltausch Lesen Sie die Abschnitte 8.1, 8.3 und 8.4 des 8. Kapitels aus dem Buch Understanding Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unter folgenden Links anschauen. de en http://www3.emsec.rub.de/vorlesung2/kvl02.html bung 9: Diskreter Logarithmus und generalisiertes diskretes Logarithmusproblem Bestimmen Sie den folgenden diskreten Logarithmus: a) dlog 4 (6) in (Z 23, ) b) Ist die Lösung für a) eindeutig (warum)? Wir betrachten nun das generalisierte diskrete Logarithmusproblem. Sei G = (Z p,+) eine Gruppe und p prim. c) Beschreiben Sie die Vorgehensweise, um das generalisierte diskrete Logarithmusproblem für G effizient zu lösen. bung 10: Diffie-Hellman Schlüsselaustausch I Berechnen Sie die zwei öffentlichen Schlüssel und den gemeinsamen Schlüssel des Diffie-Hellman Schlüsselaustausches mit den Parametern p = 1153,α = 202 und: a) k pr,a = 80,k pr,b = 101 b) k pr,a = 565,k pr,b = 203

5 ElGamal Seite 11 bung 11: Diffie-Hellman Schlüsselaustausch II Beim DHKE werden sowohl der Generator α als auch die privaten Schlüssel k pr,a,k pr,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? 5 ElGamal Lesen Sie die Abschnitte 8.5 und 8.6 des 8. Kapitels aus dem Buch Understanding Cryptography Paar and Pelzl (2010). Ergänzend können Sie den Videomitschnitt der Vorlesung online unter folgenden Links anschauen. http://www3.emsec.rub.de/vorlesung2/kry_03.html de en bung 12 Wir betrachten eine alternative Version des Diffie-Hellman Schlüsselaustauschs 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 die Ordnung 233 und generiert deshalb eine Untergruppe mit 233 Elementen. Berechnen Sie K AB mit: 1. a A = 300, a B = 134 2. a A = 67, a B = 134 Warum sind die Sitzungsschlüssel identisch? Worauf ist dies zurückzuführen? bung 13: ElGamal Verschlüsselungsprinzip 1. Warum ist ElGamal nicht-deterministisch? Was ist der Vorteil eines nicht-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 sich das auf die benötigte IT-Infrastruktur aus? bung 14: ElGamal Verschlüsselung Verschlüsseln Sie die folgenden Nachrichten mit dem ElGamal Schema (p = 409 und α = 19): 1. Privater Schlüssel K pr = 301, zufälliger Parameter i = 23, Nachricht m = 59 2. Privater Schlüssel K pr = 301, zufälliger Parameter i = 135, Nachricht m = 59

Seite 12 Kryptographie mit dem diskreten Logarithmus Entschlüsseln Sie ebenfalls wieder jedes Chiffrat. Zeigen Sie dabei jeden Rechenschritt des ElGamal Protokolls. bung 15: Angriff auf ElGamal bei schlecht gewähltem Zufall Der zufällige Exponent i in der ElGamal-Verschlüsselung muss bei jeder Verschlüsselung zufällig gewählt werden. Zeigen Sie, dass die ElGamal- Verschlüsselung unsicher ist, wenn der Sender den Exponenten i 1 fuer die erste Verschlüsselung zufällig wählt, und dann für jede weitere Verschlüsselung um eins erhöht, also i k+1 = i k + 1. Nehmen Sie dabei an, dass der Angreifer ein Nachricht/Chiffrat-Paar kennt (sowie weitere Chiffrate, die er brechen möchte). bung 16: name bung

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