Rabin Verschlüsselung 1979

Ähnliche Dokumente
Sicherheit von hybrider Verschlüsselung

ElGamal Verschlüsselungsverfahren (1984)

RSA Full Domain Hash (RSA-FDH) Signaturen

RSA Full Domain Hash (RSA-FDH) Signaturen

10. Public-Key Kryptographie

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC:

RSA Verfahren. Kapitel 7 p. 103

Voll homomorpe Verschlüsselung

Homomorphe Verschlüsselung

Lenstras Algorithmus für Faktorisierung

Kap. 2: Fail-Stop Unterschriften

Gleichungen und Ungleichungen

Computeralgebra in der Lehre am Beispiel Kryptografie

Lösungsblatt zur Vorlesung. Kryptanalyse WS 2009/2010. Blatt 6 / 23. Dezember 2009 / Abgabe bis spätestens 20. Januar 2010, 10 Uhr (vor der Übung)

Faktorisierungsproblem, Protokolle

Praktikum Diskrete Optimierung (Teil 11)

Kryptographie I Symmetrische Kryptographie

Kleiner Satz von Fermat

Modul Diskrete Mathematik WiSe 2011/12

Probabilistische Primzahltests

Mathematik und Logik

11. Primfaktorzerlegungen

IT-Sicherheit: Kryptographie. Asymmetrische Kryptographie

11. Das RSA Verfahren und andere Verfahren

3 Das RSA-Kryptosystem

Kryptologie und Kodierungstheorie

Urbild Angriff auf Inkrementelle Hashfunktionen

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Kryptologische Grundlagen

Verschlüsselung. Chiffrat. Eve

Primzahlzertifikat von Pratt

Das RSA-Kryptosystem

Public-Key Verschlüsselung

ax 2 + bx + c = 0, (4.1)

Mitschrift Vorlesung Einführung in die Kryptographie vom 18. Januar 2011

In beiden Fällen auf Datenauthentizität und -integrität extra achten.

Grundlegende Protokolle

8. Quadratische Reste. Reziprozitätsgesetz

2: Zahlentheorie / Restklassen 2.1: Modulare Arithmetik

Mathematischer Vorbereitungskurs für Ökonomen

Vorlesung Sicherheit

Oft kommt es darauf an, Potenzen a n mod m zu berechnen. Dabei kann n eine sehr groÿe Zahl sein.

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

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

Workshop Experimente zur Kryptographie

MATHEMATIKLEHRPLAN 4. SCHULJAHR SEKUNDARSTUFE

9.2. DER SATZ ÜBER IMPLIZITE FUNKTIONEN 83

Entwicklung der Asymmetrischen Kryptographie und deren Einsatz

Kap. 8: Speziell gewählte Kurven

Grundlagen der Kryptographie

Quadratwurzel. Wie lassen sich die Zahlen auf dem oberen und unteren Notizzettel einander sinnvoll zuordnen?

AUFGABEN ZUR KRYPTOLOGIE

Einführung in Computer Microsystems

Repetitionsaufgaben Wurzelgleichungen

3. Die Eigenschaften der reellen Zahlen II: Geordnete Körper

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

Automatentheorie und Kryptologie. Computer und Mediensicherheit, FHS Hagenberg

3.3 Eigenwerte und Eigenräume, Diagonalisierung

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

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

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

Public-Key-Verfahren: RSA/Rabin

1 Ordnung muß sein. 1.1 Angeordnete Körper. 1.2 Folgerungen aus den Anordnungsaxiomen. ( c) (b a) > 0. Somit a c b c > 0.

Paul-Klee-Gymnasium. Facharbeit aus der Mathematik. Thema: Asymmetrische Verschlüsselungsverfahren. am Beispiel des RSA-Kryptosystems

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Homomorphe Verschlüsselung

Euklidischer Algorithmus, Restklassenring und seine Struktur, Chinesischer Restklassensatz

6.2 Perfekte Sicherheit

8: Zufallsorakel. Wir suchen: Einfache mathematische Abstraktion für Hashfunktionen

Optimalitätskriterien

Vorlesung Sicherheit

Wurzeln als Potenzen mit gebrochenen Exponenten. Vorkurs, Mathematik

Aufgabe 1: Der Weidezaun

IT-Sicherheit Zusammenfassung

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

Vorlesung Sicherheit

Ich bedanke mich bei Florian Böhl, Benny Fuhry, Gunnar Hartung, Jan Holz, Björn Kaidel, Eike Kiltz, Evgheni Kirzner, Jessica Koch, Julia Rohlfing,

Stefan Lucks Krypto und Mediensicherheit (2009) 4: Stromchiffren

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

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

Vorlesung IT-Sicherheit FH Frankfurt Sommersemester 2007

Hardenberg-Gymnasium Fürth Kollegstufenjahrgang 2004/06. Facharbeit. aus dem Fach. Mathematik. Thema: Das RSA-Verfahren

Randomisierte Primzahltests Paul Gamper

Seminar Kryptographie

6 asymmetrische Verfahren. Public Key Kryptosysteme, RSA, ElGamal

Lernziele Matbu. ch 8

Approximationsalgorithmen

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

Zusatztutorium,

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

1. Modulare Arithmetik

Das Public-Key-Kryptosystem RSA

Public-Key-Kryptosystem

Das Knapsack-Kryptosystem

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Grundlagen der Verschlüsselung und Authentifizierung (2)

Beweisbar sichere Verschlüsselung

Hans Walser, [ a] Wurzeln aus Matrizen

II. Primzahltests und Faktorisierungsalgorithmen (mit Anwendungen in der Kryptographie) 1. Public Key Kryptosysteme: Grundprinzip und Beispiele

Transkript:

Rabin Verschlüsselung 1979 Idee: Rabin Verschlüsselung Beobachtung: Berechnen von Wurzeln in Z p ist effizient möglich. Ziehen von Quadratwurzeln in Z N ist äquivalent zum Faktorisieren. Vorteil: CPA-Sicherheit beruht nur auf Faktorisierungsannahme. Für unsere bisherigen Verfahren verwendeten wir stärkere Annahmen. RSA: Berechnen von e-ten Wurzeln in Z n. Goldwasser-Micali: Unterscheiden von QR N und QNR +1 N. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 93 / 159

Berechnen von Quadratwurzeln in Z p Satz Ziehen von Wurzeln in Z p Sei p prim mit p = 3 mod 4 und a QR p. Dann gilt für b 2 = a mod p, dass b = ±a p+1 4 mod p. Ferner ist a p+1 4 QR p und a p+1 4 QNR p Beweis: Es gilt ( a p+1 4 p ) (±a p+1 2 ( p+1 4 = a 2 = a p 1 2 a = a p) a = a mod p. Wir schreiben p = 4k + 3. Dann gilt ) ( ) ) = = ( 1) p 1 2 1 p ( a p+1 4 p ( ) p+1 4 a p Damit folgt a p+1 4 QNR p und a p+1 4 QR p. = ( 1) 2k+1 = ( 1). Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 94 / 159

Quadratwurzel bei bekannter Faktorisierung Definition Blum-Zahl Sei N = pq ein RSA-Modul. N heißt Blum-Zahl falls p = q = 3 mod 4. Satz Quadratwurzeln in Z N Sei N = pq eine Blum-Zahl mit bekannten p, q. Dann können die vier Quadratwurzeln von a QR N in Zeit O(log 3 N) berechnet werden. Beweis: Algorithmus QUADRATWURZEL EINGABE: N, p, q, a QR N 1 Berechne x p a p+1 4 mod p, x q a q+1 4 mod q. 2 Berechne mittels Chinesischem Restsatz die Lösungen von b 1 = x p mod p, b 2 = x p mod p, b 3 = x p mod p, b 1 = x q mod q AUSGABE: b 1,..., b 4 mit b 2 i b 2 = x q mod q = a mod N b 3 = x q mod q b 4 = x p mod p b 4 = x q mod q Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 95 / 159

Hauptwurzeln Satz Existenz einer Hauptwurzel Sei N = pq eine Blumzahl. Dann besitzt jedes a QR N genau ein b QR N mit b 2 = a mod N. Wir bezeichnen b als Hauptwurzel. Beweis: Algorithmus QUADRATWURZEL liefert b 1 (x p, x q ) QR p QR q. Damit ist b 1 QR N eine Hauptwurzel. Alle anderen Wurzel b 2, b 3, b 4 sind keine Hauptwurzeln. Z.B. gilt b 2 = ( x p, x q ) QNR p QR q und damit b 2 QNR N. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 96 / 159

Quadratwurzeln ohne Faktorisierung Spiel Wurzelziehen SQR A,GenModulus (n) 1 (N, p, q) GenModulus(1 n ) 2 Wähle z R QR N. 3 y A(1 n, N, z) 4 SQR A,GenModulus (n) = { 1 falls y 2 = z mod N 0 sonst. Definition Quadratwurzelannahme Das Berechnen von Quadratwurzeln ist hart bezüglich GenModulus, falls für alle ppt A gilt Ws[SRQ A,GenModulus (n) = 1] negl(n). Quadratwurzelannahme: Berechnen von Quadratwurzeln ist hart. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 97 / 159

Spiel Wurzelziehen SQR A,GenModulus (n) (N,p,q) GenModulus(1 n ) Wähle z R QR N Ausgabe: { 1 falls y 2 = z mod N 0 sonst (1 n,n,z) y A Berechne y Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 98 / 159

Nicht-triviale Quadratwurzeln Satz Faktorisieren mit Wurzeln Sei N = pq ein RSA-Modul. Seien x, y Z N mit x 2 = y 2 mod N und x ±y mod N. Dann können p, q in Zeit O(log 2 N) berechnet werden. Beweis: Mittels CRT erhalten wir x (x p, x q ) Z p Z q. Es gilt y (x p, x q ) oder y ( x p, x q ). Wir betrachten den Fall y (x p, x q ). Der zweite Fall ist analog. Es gilt x + y (2x p, 0) bzw. x y (0, 2x q ). Damit folgt ggt(n, x + y) = q bzw. ggt(n, x y) = p wegen 2x p Z p und 2x q Z q. Die ggt-berechnung benötigt Laufzeit O(log 2 N). Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 99 / 159

Quadratwurzeln implizieren Faktorisierung Satz Quadratwurzeln implizieren Faktorisierung Quadratwurzel- und Faktorisierungsannahme sind äquivalent. Beweis: Bereits gezeigt: Faktorisierung impliziert Quadratwurzeln. Sei A Angreifer im Spiel SQR A,GenModulus (n) mit Erfolgsws ǫ(n). Konstruieren einen Angreifer A im Spiel Factor A,GenModulus(n). Algorithmus A EINGABE: N 1 Wähle x Z N und berechne z x 2 mod N. 2 y A(1 n, N, z) 3 Falls x = ±y mod N oder x 2 y 2 mod N, Abbruch. AUSGABE: p, q = {ggt(n, x + y), ggt(n, x y)} Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 100 / 159

Faktorisieren mit Quadratwurzeln Unter der Faktorisierungsannahme gilt negl(n) Ws[Factor A,GenModulus(n) = 1] = Ws[x ±y mod N x 2 = y 2 mod N] = Ws[x ±y mod N x 2 = y 2 mod N] Ws[x 2 = y 2 mod N] = Ws[x ±y mod N x 2 = y 2 mod N] ǫ(n) = 1 2 ǫ(n) Die letzte Gleichung folgt, da x 2 exakt vier Wurzeln in Z N besitzt. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 101 / 159

Einwegfunktion unter Quadratwurzelannahme Definition Einwegfunktion QUADRAT Definieren Einwegfunktionsfamilie QUADRAT= (Gen, Samp, f) als 1 Gen(1 n ) : (N, p, q) GenModulus(1 n ), Ausgabe I = N. Definiert f : Z N QR N. 2 Samp(I) : Wähle x R Z N zufällig. 3 f I (x) : Berechne f(x) := x 2 mod N. Anmerkungen: QUADRAT ist Einwegfunktion unter der Quadratwurzelannahme. D.h. QUADRAT ist Einwegfunktion unter Faktorisierungsannahme. Ziel: Konstruktion einer Trapdoor-Einwegpermutation. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 102 / 159

RABIN Trapdoor-Einwegpermutation Definition RABIN Trapdoor-Einwegpermutation Trapdoor-Einwegpermutationsfamilie RABIN= (Gen, Samp, f) mit 1 Gen(1 n ) : (N, p, q) GenModulus(1 n ) mit Blumzahl N. Ausgabe I = N, td = (p, q). Definiert f : QR N QR N. 2 Samp(I) : Wähle r R Z N zufällig. Berechne x r 2 mod N. 3 f I (x) : Berechne y = f(x) := x 2 mod N. 4 Inv td (y): Bestimme Hauptwurzel x QR N von y = x 2. Anmerkungen: RABIN ist einweg unter der Faktorisierungsannahme. Wir wissen: Trapdoor-Einwegpermutation + Hardcore-Prädikat = CPA-sichere Verschlüsselung. Benötigen ein Hardcore-Prädikat hc : QR N {0, 1} für f. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 103 / 159

Berechnen des niederwertigsten Bits Satz Hardcore-Prädikat lsb(x) Sei f die RABIN Trapdoor-Einwegpermutation und N eine Blumzahl. Für x QR N bezeichne lsb(x) das niederwertigste Bit von x. Dann ist hc(x) := lsb(x) ein Hardcore-Prädikat für f. ohne Beweis (nicht-trivial) Für alle ppt A gilt damit Ws[A(1 n, N, x 2 ) = lsb(x)] 1 2 + negl(n). Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 104 / 159

RABIN Kryptosystem (1979) Algorithmus RABIN Verschlüsselung 1 Gen: (N, p, q) GenModulus(1 n ), wobei N eine Blumzahl ist. Ausgabe pk = N, sk = (p, q). 2 Enc: Für m {0, 1} wähle r Z N, berechne x r 2 mod N und c (x 2 mod N, lsb(x) m). 3 Dec: Für c = (c 1, c 2 ) berechne Hauptwurzel x von c 1 und m := lsb(x) c 2. Satz CPA-Sicherheit von RABIN RABIN Verschlüsselung ist CPA-sicher unter der Faktorisierungsannahme. Beweis: Folgt aus dem Satz zur CPA-Sicherheit von VERSCHLÜSSELUNG Π. Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 105 / 159

Diskussion RSA versus RABIN Vergleich: RSA und RABIN Quadrieren und Exponentieren mit e erscheinen ähnlich. Aber: RABIN ist kein Spezialfall von RSA, da e = 2 / Z φ(n). RABIN-Einwegpermutation beruht auf Faktorisierungsannahme. Die Faktorisierungsannahme ist möglicherweise schwächer als die RSA-Annahme. Offen: Invertieren von RSA Faktorisierung? RABIN ist nicht ineffizienter als RSA. Historische Variante: Textbook RABIN mit c := m 2 mod N. Es existiert ein CCA-Angriff auf Textbook RABIN, der p, q liefert. (Wie?) Krypto II - Vorlesung 8-25.05.2011 Quadratwurzeln, Faktorisieren, Rabin Kryptosystem 106 / 159