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

Ähnliche Dokumente
Aufgabe der Kryptografie

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

VI. Public-Key Kryptographie

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

Regine Schreier

VIII. Digitale Signaturen

WS 2013/14. Diskrete Strukturen

Public Key Kryptographie

Kryptographie und Komplexität

Kryptographie und Komplexität

WS 2009/10. Diskrete Strukturen

Klausurtermin. Klausur Diskrete Mathematik I Do stündig

Asymmetrische Algorithmen

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

Das RSA-Verfahren. Proseminar Kryptographische Protokolle SS Armin Litzel

3: Zahlentheorie / Primzahlen

Kapitel 2. Elementare Zahlentheorie Primfaktorzerlegung

3. Vortrag: Das RSA-Verschlüsselungsverfahren

ADS: Algorithmen und Datenstrukturen 2

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

Proseminar Datensicherheit & Versicherungsmathematik RSA-Verfahren

Kryptographie und Komplexität

3 Public-Key-Kryptosysteme

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

Kapitel 3 Elementare Zahletheorie

Vorlesung Sicherheit

Algorithmische Kryptographie

Vorlesung Sicherheit

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

6: Public-Key Kryptographie (Grundidee)

Kryptographie und Komplexität

Public Key Kryptographie mit dem RSA Schema. Karsten Fischer, Sven Kauer

RSA Äquivalenz der Parameter

Public Key Kryptographie

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

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

Algorithmentheorie Randomisierung

IT-Sicherheitsmanagement. Teil 8: Asymmetrische Verschlüsselung

Hybride Verschlüsselungsverfahren

RSA Verfahren. Kapitel 7 p. 103

Public-Key-Verschlüsselung und Diskrete Logarithmen

Angewandte Kryptographie

Übungen zur Vorlesung Systemsicherheit

Übung GSS Blatt 6. SVS Sicherheit in Verteilten Systemen

Anwendungen der Linearen Algebra: Kryptologie

Elementare Zahlentheorie II

4 Kryptologie. Übersicht

Zufallsprimzahlen und eine Revolution in der Kryptographie Stefan Edelkamp

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

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

Public-Key-Kryptographie

Einführung in die Kryptographie ,

SCHRIFTLICHE ZUSAMMENFASSUNG ZUM VORTRAG DIE GRUNDLAGEN DER RSA-VERSCHLÜSSELUNG VON DANIEL METZSCH

Kleiner Fermatscher Satz, Chinesischer Restsatz, Eulersche '-Funktion, RSA

6.2 Asymmetrische Verschlüsselung

Vortrag zum Proseminar: Kryptographie

Erweiterter Euklidischer Algorithmus

Betriebssysteme und Sicherheit

Kryptographie I Symmetrische Kryptographie

Proseminar Bakkalaureat TM 2008/2009 Datensicherheit und Versicherungsmathematik Public-Key-Kryptosystem

Kryptografie Die Mathematik hinter den Geheimcodes

Kryptographische Protokolle

11. Das RSA Verfahren

Asymmetrische Kryptographie u

Das RSA Kryptosystem

Vorlesung Sicherheit

Probabilistische Primzahltests

IT-Sicherheit: Kryptographie. Asymmetrische Kryptographie

Modul 5: Mechanismen Schlüssel/asymmetrische Kryptographie

Algorithmentheorie Randomisierung. Robert Elsässer

Zahlentheorie, Arithmetik und Algebra I. Felix Teufel Hallo Welt! -Seminar - LS 2

Kryptograhie Wie funktioniert Electronic Banking? Kurt Mehlhorn Adrian Neumann Max-Planck-Institut für Informatik

Beispiel für simultane Kongruenz

Vorlesung Diskrete Strukturen Gruppe und Ring

Einführung in die Kryptographie

Diskreter Logarithmus und Primkörper

IT-Sicherheit Kapitel 4 Public Key Algorithmen

Netzwerktechnologien 3 VO

Diskrete Strukturen Kapitel 5: Algebraische Strukturen (Gruppen)

Mathematische Grundlagen der Kryptografie (1321) SoSe 06

PRIMZAHLEN UND DIE RSA-VERSCHLÜSSELUNG

CPA-Sicherheit ist ungenügend

Kryptographie I Symmetrische Kryptographie

EINIGE GRUNDLAGEN DER KRYPTOGRAPHIE

RSA (Rivest, Shamir, Adleman)

Primzahlen Primzahlsatz Der Satz von Green und Tao Verschlüsselung mit RSA. Primzahlen. Ulrich Görtz. 3. Mai 2011

Digitale Signaturen. Proseminar Kryptographie und Datensicherheit SoSe Sandra Niemeyer

Kryptographie und Komplexität

Kryptographie. Nachricht

Rabin Verschlüsselung 1979

Das Quadratische Reste Problem

Kryptosystem von Paillier: Analyse und Verbesserungen

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

Mathematisches Kaleidoskop 2014 Materialien Teil 2. Dr. Hermann Dürkop

Digitale Unterschriften mit ElGamal

Transkript:

VI.3 RSA - RSA benannt nach seinen Erfindern R. Rivest, A. Shamir und L. Adleman - vorgestellt 1977 - erstes Public-Key Verschlüsselungsverfahren - auch heute noch das wichtigste Public-Key Verfahren 1

Verschlüsselungsverfahren Definition 2.1 Ein Verschlüsselungsverfahren ist ein 5-Tupel (P,C,K,E,D), wobei 1. P die Menge der Klartexte ist. 2. C die Menge der Chiffretexte ist. 3. K die Menge der Schlüssel ist. 4. E={E k : k K} eine Menge von Verschlüsselungsfunktionen E k : P C ist. 5. D={D k : k K} eine Menge von Entschlüsselungsfunktionen D k : C P ist. 6. Zu jedem e K existiert ein d K, so dass für alle m P D d (E e (m)) = m. Schlüssel e,d mit dieser Eigenschaft heißen Schlüsselpaare. 2

Symmetrische & asymmetrische Verfahren - auch Private-Key-Verfahren & Public-Key-Verfahren Gilt für e,d K, dass D d (E e (m)) = m für alle m P,so heißt (e,d) ein Schlüsselpaar. - Symmetrische Verfahren Für alle Schlüsselpaare (e,d) gilt - e = d oder - d kann aus e leicht berechnet werden. - Asymmetrische Verfahren Für alle Schlüsselpaare (e,d) gilt - d kann aus e nicht mit vertretbarem Aufwand berechnet werden. 3

Verschlüsselung (asymmetrisch) Bob an Alice: Alice an Bob: Rollen werden vertauscht! öffentlicher Schlüssel geheimer Schlüssel 4

Vorbereitungen Definition 6.1 Sei n N. Dann ist { } Z * n := a Z n : ggt ( n,a) = 1 die Menge der Elemente aus Z n, die zu n teilerfremd sind. Wir setzen ϕ ( n)= Z * n. Lemma 6.2 Sei n N mit Primfaktorzerlegung n = k e p i i. i=1 Dann gilt ϕ n k i=1 ( ) = n 1-1 p i ( ) = p i e i - p i e i 1 k i=1 ( ). 5

Vorbereitungen Lemma 6.3 Seien a,b mit ggt ( a,b) = 1. Dann existieren s,t mit s a + t b = 1. Korollar 6.4 Seien n! und a " n *. Dann existiert ein Element s " n * mit a s = 1 mod n. Lemma 6.5 Sei G eine endliche Gruppe und a G. Dann gilt a G = 1 ( in G). Korollar 6.6 Seien n! und a " * n. Dann gilt a ϕ ( n ) = 1 mod n. 6

RSA Schlüsselerzeugung 1. Erzeuge zwei zufällige Primzahlen p,q geeigneter Länge und setze N:= p q. * 2. Wähle e ϕ ( N ) * und berechne d ϕ ( N ) mit e d = 1 mod ϕ ( N). 3. Der öffentliche Schlüssel ist pk := ( N,e), der private Schlüssel ist sk := ( N,d). 7

RSA Verschlüsselung und Entschlüsselung Bei Wahl des öffentlichen Schlüssels pk := ( N,e) ist der Klartextraum P := N. Der Chiffretextraum ist ebenfalls C := N. Für alle m N ist E ( N,e ) ( m) = m e mod N. Für alle c N ist D ( N,d ) ( c) = c d mod N. 8

RSA Korrektheit Lemma 6.7 Sei N N, N = p q, für Primzahlen p,q, p q. * Außerdem seien e,d Z ϕ ( N ) mit e d = 1 mod ϕ ( N) und m Z N beliebig. Dann gilt m e d = m mod N. Satz 6.8 Seien N 1,,N k N paarweise teilerfremd und seien a 1,,a k Z. Dann besitzt das System von Kongruenzen x = a 1 mod N 1 x = a k mod N k eine eindeutige Lösung a Z N, wobei N=N 1 N k. Die Lösung kann in Zeit polynomiell in log( N) berechnet werden. 9

Effizienz von Ver- und Entschlüsselung Lemma 6.9 Sind der öfffentliche und geheime Schlüssel ( N,e) und ( N,d), so kann die Verschlüsselung eines Klartexts und die Entschlüsselung eines Chiffretexts in Zeit O ( log( N) 3 ) berechnet werden. Lemma 6.10 Arithmetische Operation in Z N können in Zeit O ( log( N) 2 ) berechnet werden. 10

Square-and-Multiply Ziel G endliche Gruppe, g G, a N, a = berechne g a in G. l-1 a i 2 i, a i { 0,1}, i=0 Square - and - Multiply ( g,a) 1 y := 1 2 z := g 3 for i = 0 to l 1 do 4 if a i = 1 5 then y := y z 6 z := z 2 7 return y 11

Square-and-Multiply Lemma 6.11 Der Square - and - Multiply Algorithmus benötigt ( ) höchstens 2 log a + 1 Gruppenoperationen. 12

RSA - Schlüsselerzeugung Zu zeigen sind 2 Dinge: 1. Primzahlen p,q können effizient erzeugt werden. 2. Gegeben N, φ(n), können e,d mit ed=1mod φ (N) effizient erzeugt werden. 13

Primzahlerzeugung Beruht auf zwei Tatsachen: 1. Es kann effizient entschieden werden, ob eine Zahl Primzahl ist (z.b. Miller-Rabin-Test). 2. Es gibt viele Primzahlen (Primzahlsatz). Primzahlerzeugung Erzeuge zufällige Zahlen und teste, ob sie Primzahlen sind, bis eine Primzahl gefunden. 14

Erzeugung von e und d Beruht auf zwei Tatsachen: 1. Es kann effizient entschieden werden, ob zwei Zahlen teilerfremd sind. Falls ja, kann dann auch das modulare Inverse effizient berechnet werden (erweiterter euklidischer Algorithmus). 2. Zu jeder Zahl n gibt es viele Zahlen, die zu n teilerfremd sind. 15

Sicherheit des geheimen Schlüssels Satz 6.12 Es existiert ein Algorithmus, der bei Eingabe N,e,d mit N=pq, p,q Primzahlen und mit ed=1 mod φ(n) in Zeit erwartet polynomiell in log(n) die Primzahlen p und q berechnet. Tatsache 6.13 Der zurzeit beste bekannte Algorithmus zur Faktorisierung einer natürlichen Zahl n besitzt Laufzeit e c log ( n ) 1 3 loglog( n) 2 3, wobei c 1.94. 16

Angriffe auf RSA Satz 6.14 Seien N 1,N 2,N 3 drei unterschiedliche RSA-Module und sei m N mit m<n i, i = 1,2,3. Gegeben c i := m 3 mod N i, i = 1,2,3, kann m in Zeit polynomiell in log( N 1 N 2 N ) 3 berechnet werden. * Satz 6.15 Sei N ein RSA-Modul und seien e 1,e 2 Z ϕ ( N ) mit ggt ( e 1,e ) 2 = 1. Gegeben die Chiffretexte c i := m e i i=1,2, kann der Klartext m in Zeit polynomiell in log( N) berechnet werden. mod N, 17

Angriffe auf RSA * Satz 6.16 [Wiener] Sei N ein RSA-Modul und sei e Z ϕ N, * so dass für das eindeutige d Z ϕ ( N ) ( ) mit e d = 1 mod ϕ ( N) gilt d 1 3 N1 4. Dann kann d aus e und N in Zeit O ( log( N) 2 ) berechnet werden. Satz 6.17 RSA ist nicht sicher gegen Chosen-Ciphertext Angriffe. 18

Möglichkeiten eines Angreifers - Ciphertext-Only Angriff Angreifer kennt nur Chiffretext c. - Known-Plaintext Angriff Angreifer kennt Chiffretext c und Paare (m i,c i ) von Klartexten und Chiffretexten unter dem gleichen Schlüssel e. - Chosen-Plaintext Angriff Angreifer kann sich zu selbst gewählten Klartexten m i die Chiffretexte c i erzeugen. - Chosen-Ciphertext Angriff Angreifer kann sich zu selbst gewählten Chiffretexten c i die Klartexte m i erzeugen. 19