Vorlesung Sicherheit

Ähnliche Dokumente
Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Asymmetrische Verschlüsselungsverfahren

Institut für Theoretische Informatik Prof. Dr. D. Hofheinz. Stammvorlesung Sicherheit im Sommersemester Klausur. Lösung

Vorlesung Sicherheit

Asymmetrische Verschlüsselungsverfahren

VI.3 RSA. - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman. - vorgestellt erstes Public-Key Verschlüsselungsverfahren

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

Vorlesung Sicherheit

6: Public-Key Kryptographie (Grundidee)

Hybride Verschlüsselungsverfahren

Vorlesung Sicherheit

Kryptographie - eine mathematische Einführung

3: Zahlentheorie / Primzahlen

3: Primzahlen. 111 S. Lucks Diskr Strukt. (WS 18/19) 3: Primzahlen

Übung zur Vorlesung Sicherheit Übungsblatt 3. Björn Kaidel 1 / 52

Public Key Kryptographie

Übung zur Vorlesung. Sicherheit Übungsblatt 5 Björn Kaidel

Betriebssysteme und Sicherheit

Kryptographie und Komplexität

Vorlesung Sicherheit

3 Public-Key-Kryptosysteme

Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade. Nachklausur Hinweise

VI.4 Elgamal. - vorgestellt 1985 von Taher Elgamal. - nach RSA das wichtigste Public-Key Verfahren

RSA-Verfahren Schnelle Ver- / Entschlüsselung Zusammenhang mit dem Faktorisierungsproblem. RSA-Verfahren. Herwig Stütz

Vorlesung Sicherheit

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

Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade. Nachklausur. Lösungsvorschlag Hinweise

Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade. Nachklausur. Lösung Hinweise

VII. Hashfunktionen und Authentifizierungscodes

Verschlüsselung durch Exponentiation (Pohlig, Hellman, 1976)

Kryptographie und Komplexität

Vorlesung Sicherheit

Aufgabe der Kryptografie

Asymmetrische Verschlüsselungsverfahren

Digitale Signaturen. GHR-und Chamäleon-Signaturen Björn Kaidel. FAKULTÄT FÜR INFORMATIK, INSTITUT FÜR THEORETISCHE INFORMATIK

Institut für Kryptographie und Sicherheit Jun.-Prof. Dr. D. Hofheinz. Stammvorlesung Sicherheit im Sommersemester Nachklausur

Kryptographische Protokolle

Digitale Signaturen. RSA-FDH & das Random Oracle Model Jiaxin Pan (Slides from Björn Kaidel and Gunnar Hartung)

WS 2009/10. Diskrete Strukturen

Vorlesung Sicherheit

Systemsicherheit 8: Das Internet und Public-Key-Infratrukturen

Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Nachklausur Hinweise

Vorlesung 7. Tilman Bauer. 25. September 2007

El. Zahlentheorie I: Der kleine Satz von Fermat

Literatur. [8-9] ISM WS 2018/19 Teil 8/Asymmetrische Verschlüsselung

Rabin Verschlüsselung 1979

WS 2013/14. Diskrete Strukturen

Institut für Theoretische Informatik Prof. Dr. J. Müller-Quade. Klausur Hinweise

Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Klausur Hinweise

Literatur. ISM SS 2017 Teil 8/Asymmetrische Verschlüsselung

Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Übungsblatt 5. pk = (g, y) und sk = (g, x). ? = y H(t m) t. g s

Sicherheit von Merkle Signaturen

Asymmetrische Verschlüsselungsverfahren

Hashfunktionen und Kollisionen

Homomorphe Verschlüsselung

Asymmetrische Algorithmen

IT-Sicherheitsmanagement. Teil 8: Asymmetrische Verschlüsselung

Kurzskript MfI:AGS WS 2018/19 Teil II: Gruppen / Teil III: Ringe 34

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

Public-Key Kryptographie mit dem RSA Schema. Torsten Büchner

Proseminar Schlüsselaustausch (Diffie - Hellman)

Zahlentheorieseminar: Einführung in die Public-Key-Kryptographie

Kryptologie. K l a u s u r WS 2006/2007, Prof. Dr. Harald Baier

ADS: Algorithmen und Datenstrukturen 2

Public Key Kryptographie

Regine Schreier

Mathematische Methoden für Informatiker

Kryptographie. Nachricht

Kryptographische Grundlagen

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (RSA-Verfahren)

Übungen zur Vorlesung Systemsicherheit

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.

Modul 5: Mechanismen Schlüssel/asymmetrische Kryptographie

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.

7: Grundlagen der Public-Key-Kryptographie

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren

Vorlesung Sicherheit

Netzsicherheit 9: Das Internet und Public-Key-Infrastrukturen

Digitale Signaturen. RSA-FDH & das Random Oracle Model Björn Kaidel (mit Folien von Gunnar Hartung)

Vorlesung Sicherheit

Asymmetrische Verschlüsselungsverfahren

Algorithmische Kryptographie

Kryptographie. ein erprobter Lehrgang. AG-Tagung Informatik, April 2011 Alfred Nussbaumer, LSR für NÖ. LSR für NÖ, 28. April 2011 Alfred Nussbaumer

Vorlesung Sicherheit

Digitale Unterschriften mit ElGamal

Das RSA Kryptosystem

Kryptologie. Bernd Borchert. Univ. Tübingen SS Vorlesung. Teil 10. Signaturen, Diffie-Hellman

VI. Public-Key Kryptographie

RSA Verfahren. Kapitel 7 p. 103

Institut für Theoretische Informatik Prof. Dr. Dennis Hofheinz Übungsleiter: Thomas Agrikola. Stammvorlesung Sicherheit im Sommersemester 2017

Institut für Theoretische Informatik Jun.-Prof. Dr. D. Hofheinz. Klausur Hinweise

Übung zur Vorlesung Sicherheit Übungsblatt 2. Alexander Koch Björn Kaidel

Transkript:

Vorlesung Sicherheit Dennis Hofheinz ITI, KIT 15.05.2017 1 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 2 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 3 / 25

Birthday Attack Idee: betrachte viele Y i := H(X i ) für zufällige X i Vereinfachend: Y i {0, 1} k unabhängig gleichverteilt Theorem (Birthday Bound, ohne Beweis) Sei n 2 k/2 und Y 1,..., Y n {0, 1} k unabhängig gleichverteilt. Dann gibt es i j mit Y i = Y j mit Wkt. p > (1/11) (n 2 /2 k ). Konsequenz: für n = 2 k/2 zufällige (verschiedene) X i Kollisionen unter den Y i mit Wahrscheinlichkeit p > 1/11 Vorgehen (Aufwand ˆ(k 2 k/2 ) Schritte, ˆ(k 2 k/2 ) Bits): 1 Schreibe (X i, Y i ) in Liste (X i {0, 1} 2k glv., Y i = H(X i )) 2 Sortiere Liste nach Y i 3 Untersuche Liste auf Y i -Kollisionen 4 / 25

Weitere Angriffe, Konsequenzen Auch Meet-in-the-Middle-Angriff manchmal möglich Setzt spezielle Struktur von Hashfunktionen voraus: Hashwert sollte sich rückwärts berechnen lassen Aufwand: asymptotisch wie Birthday Attack Lehre: Hash-Ausgabe k Bits für k/2 Bits Sicherheit Ausgabelängen: MD5 128, SHA-1 160, SHA-3 variabel 5 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 6 / 25

Zusammenfassung Hashfunktionen Hashwert Fingerabdruck der Eingabe Kollisionsresistenz Einwegeigenschaft Populäre Strategie: Merkle-Damgård Ausgabelänge k Bits für k/2 Bits Sicherheit Populäre Verfahren: MD5, SHA-1, SHA-3 (Keccak) Aber: MD5, SHA-1 gebrochen 7 / 25

Aktuelle Forschung Hashfunktionen, deren Sicherheit auf gut untersuchten Problemen beruht (z.b. Berechnungsprobleme in Gittern) Für Passwortabfragen: universelle Einwegfunktionen Untersuchung von generischen Strategien (wie Merkle-Damgård) in idealisierten Modellen Kryptoanalyse: Weitere Anwendungen und Erweiterungen von bekannten Angriffen auf z.b. MD5, SHA-1, Beispiele: gefälschte Webseiten-Zertifikate (Flame) gefälschte Signaturen für (Postscript-/PDF-)Dokumente Grundidee: gegeben (Signatur von) H(M), finde sinnvolles M mit H(M ) = H(M) (für das die Signatur dann gilt) 8 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 9 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 10 / 25

Motivation Symmetrische Verschlüsselung: gemeinsames Geheimnis K Alice K C:=Enc(K,M) Bob K Bei n Benutzern ( n 2) = n (n 1)/2 Schlüsselpaare Zudem kann Schlüsselverteilung problematisch sein Auftritt Merkle (1974) und Diffie und Hellman (1976): Quelle: Wikipedia 11 / 25

Grundidee Asymmetrische (oder Public-Key-)Verschlüsselung: Alice sk C:=Enc(pk,M) Bob pk Verschlüsselung mit pk: C Enc(pk, M) Entschlüsselung mit sk: M Dec(sk, C) pk und sk gemeinsam generiert: (pk, sk) Gen(1 k ) pk darf veröffentlicht werden, sk muss geheim bleiben 12 / 25

Erste Eigenschaften Alice sk C:=Enc(pk,M) Bob pk Keine (geheime) Schlüsselverteilung, pk öffentlich Bei n Benutzern n öffentliche (und n geheime) Schlüssel Problem: Diffie und Hellman hatten kein Verfahren Auftritt Rivest, Shamir und Adleman (1977): (Quelle: ams.org) 13 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 14 / 25

Überblick RSA pk = (N, e) sk = (N, d) N = PQ für (hinreichend große) Primzahlen P Q Rechnung in Z N := Z/NZ (d.h. Rechnung modulo N) e und d sind zueinander inverse Exponenten Genauer: e d = 1 mod ϕ(n) (mit ϕ(n) = (P 1)(Q 1)) Nachrichtenraum ist M := Z N Enc(pk, M) = M e mod N Dec(sk, C) = C d mod N 15 / 25

RSA-Schlüsselgenerierung Gesucht: pk = (N, e) sk = (N, d) Gen wählt P und Q zufällig von vorgegebener Bitlänge k: Gängig: wähle gleichverteiltes ungerades P {2 k,..., 2 k+1 }... bis P prim (Primalitätstest z.b. Miller-Rabin), analog für Q Um e und d zu erhalten: Wähle zufällig gleichverteilt e {3,..., ϕ(n) 1}... bis gcd(e, ϕ(n)) = 1 Berechne d = e 1 mod ϕ(n) mit erweitertem Euklid: EE(e, ϕ(n)) = (α, β) mit α e + β ϕ(n) = gcd(e, ϕ(n)) = 1 Damit ist α e = 1 mod ϕ(n), setze also d := α mod ϕ(n) 16 / 25

Korrektheit von RSA Für Korrektheit sollte gelten: (M e ) d = M ed = M mod N Zutaten (ohne Beweis): Theorem (Kleiner Satz von Fermat, ohne Beweis) Für primes P und M {1,..., P 1} gilt M P 1 = 1 mod P. Konsequenz: M Z P, α Z : (M P 1 ) α M = M mod P Theorem (Chinesischer Restsatz, ohne Beweis) Sei N = PQ mit P, Q teilerfremd. Dann ist die Abbildung µ : Z N Z P Z Q mit µ(m) = (M mod P, M mod Q) bijektiv. Also: (X = Y mod P) (X = Y mod Q) = X = Y mod N 17 / 25

Korrektheit von RSA Theorem (Korrektheit von RSA) Sei N, e, d wie oben. Dann ist M ed = M mod N für alle M Z N. Beweis. Es gilt ed = 1 mod (P 1)(Q 1) nach Definition, deshalb: (P 1)(Q 1) ed 1 P 1 ed 1 ed = α(p 1) + 1 für α Z Analog: M ed = M mod Q Chinesischer Restsatz M ed = M mod N M ed = (M P 1 ) α M Fermat = M mod P 18 / 25

Überblick 1 Hashfunktionen Angriffe auf Hashfunktionen Zusammenfassung Hashfunktionen 2 Asymmetrische Verschlüsselung Idee Beispiel: RSA Sicherheit von RSA 19 / 25

Sicherheit? Diskussion: Was wollen wir eigentlich? Wieder Einschränkung auf passive Sicherheit/Angriffe 20 / 25

Semantische Sicherheit für Public-Key-Verschlüsselung Definition (Semantische Sicherheit für Public-Key-Verfahren) Ein Public-Key-Verschlüsselungsschema ist semantisch sicher, wenn es für jede M-Verteilung von Nachrichten gleicher Länge, jede Funktion f und jeden PPT-Algorithmus A einen PPT-Algorithmus B gibt, so dass [ ] [ ] Pr A(1 k, pk, Enc(pk, M)) = f (M) Pr B(1 k ) = f (M) vernachlässigbar (als Funktion im Sicherheitsparameter) ist. Unhandlich, aber (wie symmetrisch) äquivalent zu IND-CPA 21 / 25

IND-CPA für asymm. Verschlüsselung Herausforderer C erzeugt Schlüsselpaar (pk, sk) Gen(1 k ). Kein Enc-Orakel, stattdessen erhält der Angreifer pk. C pk A M 0, M 1 b {0, 1} C = Enc(pk, M b ) b b = b? Formal: analog zu IND-CPA für symm. Verfahren (mit entsprechenden Anpassungen). 22 / 25

Sicherheit von RSA RSA nicht semantisch sicher f (M) = M e mod N kann mit Chiffrat berechnet werden Aber ohne Chiffrat keine Information über M Angriff nutzt aus, dass RSA deterministisch Intuitiv überzeugender: beispielsweise Enc(pk, annehmen) und Enc(pk, ablehnen) bei RSA effizient unterscheidbar (keine IND-CPA-Sicherheit) 23 / 25

Weitere Angriffe auf RSA Was, wenn e = 3 (aus Effizienzgründen) für alle Benutzer? Problem, wenn M an 3 Benutzer gesendet wird Angreifer kennt Chiffrate M 3 mod N i für 1 i 3 Chinesischer Restsatz M 3 mod N 1 N 2 N 3 Wegen 0 M N 1, N 2, N 3 ist M 3 mod N 1 N 2 N 3 = M 3 Z Wurzelziehen über Z liefert M Könnte mit probabilistischem Enc behoben werden Weitere schlechte Idee: gleiches N für mehrere Benutzer 24 / 25

Homomorphie von RSA Es gilt (Rechnung modulo N): Enc(pk, M) Enc(pk, M ) = M e M e = (M M ) e = Enc(pk, M M ) Problem z.b. bei Auktionen: Auktionator A veröffentlicht pk, behält sk Bieter B 1, B 2 senden verschlüsselte Gebote C i := Enc(pk, M i ) an Auktionator A entschlüsselt C i, Bieter mit höchstem Gebot erhält Ware Angriff: B 2 wartet B 1 s Gebot ab, setzt C 2 := C 1 Enc(pk, 2) mod N 25 / 25