Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Karsten Fischer, Sven Kauer Public Key Kryptographie mit dem RSA Schema."—  Präsentation transkript:

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

2 2 Gliederung I.Historischer Hintergrund II.Public Key Kryptographie III.Beispielszenario IV.Einweg-Funktion V.RSA Verfahren VI.Algorithmus VII.Beispiel VIII.Signieren von Nachrichten IX.Schwächen des RSA X.Angriffe auf den RSA XI.Einsatzgebiete XII.Zusammenfassung XIII.Quellen

3 3 Historischer Hintergrund Bis in die 70er symmetrische Verfahren Problem der Schlüsselverteilung 1976 Theorie über asymmetrische Verschlüsselung 1977 RSA am MIT (Rivest, Shamir, Adleman) 1980 durch RSA Data Security Inc. patentiert 1991 implemetiert in PGP durch Phil Zimmermann 2000 US-Patent läuft aus RSA weltweit einsetzbar

4 4 Public Key Kryptographie Theorie von W. Diffie und M. Hellman, 1976 Asymmetrisches Verfahren: zwei verschiedene Schlüssel: 1.Kodierung einer Nachricht 2.Dekodierung einer Nachricht Kodierungsschlüssel soll keine Schlüsse auf den Dekodierungsschlüssel zulassen

5 5 Public Key Kryptographie Public Key-Prinzip: (wichtige) asymmetrischen Variante Kodierungsschlüssel öffentlich (public key) Dekodierungsschlüssel geheim (private key)

6 6 Public Key Kryptographie Public Key-Prinzip: jeder Teilnehmer T hat folgende Schlüssel: Public Key E = E T (Encryption) Private KeyD = D T (Decryption) Eigenschaften der Schlüssel: 1.für jede Nachricht m gilt: D(E(m)) = m und E(D(m)) = m 2.privater Schlüssel D (praktisch) nicht aus Schlüssel E zu erschließen.

7 7 Beispielszenario Vorbereitungen: Kommunikationsgruppe Jeder Teilnehmer T bekommt Schlüsselpaar (E T, D T ) Schlüsselpaare der Teilnehmer sind verschieden Schlüssel E wird verteilt (Publikationsorgan/Zertifizierungsstelle) Schlüssel D bleibt geheim

8 8 Beispielszenario Senden und Empfang: A will B die Nachricht m Schicken A sucht Schlüssel E B von B heraus A verschlüsselt m mittels E B A verschickt E B (m) an B B entschlüsselt mit D B (m): D B (E B (m)) = m

9 9 Beispielszenario Sicherheit: Kein anderer Teilnehmer kann E B (m) entschlüsseln, weil ihm D B von B fehlt Analogie: Briefkasten: jeder kann Post in den Briefkasten einwerfen nur Briefkastenbesitzer kann sie herausholen Public Key E Namensschild Private Key D Briefkastenschlüssel

10 10 Einweg-Funktionen Kodierungsschlüssel soll keine Schlüsse auf den Dekodierungsschlüssel zulassen Suche eine bijektive Funktion f(x) = y, die folgende Anforderungen erfüllt: 1.einfache Berechnung von y bei bekanntem x 2.schwere Berechnung von x bei bekanntem y Einweg-Funktionen (Trapdoor-functions)

11 11 Einweg-Funktionen Def: Eine umkehrbar eindeutige ("bijektive") Funktion f : A B mit x y = f (x) heißt Einweg-Funktion, wenn der Funktionswert y relativ leicht aus dem Argument x berechnet werden kann, wenn es aber andererseits bei Kenntnis von y nur mit sehr großem Aufwand möglich ist, das Argument x zu ermitteln, das zum Funktionswert y gehört.

12 12 Einweg-Funktionen Analogie: Telefonbuch (einer großen Stadt) Funktion f ermittelt Telefonnummer x aus Namen y Nachschlagen (TB ist alphabetisch sortiert) Umkehrfunktion f -1 nur sehr aufwendig (ermittele Name y zur Telefonnummer x) nach Nummern sortiertes TB?

13 13 Einweg-Funktionen Einige Einwegfunktionen: Faktorisierung: y = x 1 x 2 Diskreter Logarithmus: y = b x mod n Diskrete Wurzel: y = x a mod n (n nicht prim)

14 14 RSA-Verfahren 1977 entdeckt von Rivest, Shamir und Adleman Verfahren zum Erzeugen von Einweg-Funktionen basiert insbesondere auf: Euklidischer Algorithmus (kleinen) Satz von Fermat kein Algorithmus zur schnellen Primfaktorzerlegung bekannt

15 15 RSA-Verfahren Euklidischer Algorithmus: While (a>0) And (b>0) If a > b Then a = a Mod b Else b = b Mod a End If Wend ggT = a + b

16 16 RSA-Verfahren Erweiterter Euklidischer Algorithmus: Satz: Zu je zwei natürlichen Zahlen a und b (b 0) gibt es ganze Zahlen x und y mit der Eigenschaft GGT(a, b)= a x + b y. D.h. für teilerfremde a,b (GGT(a,b)=1): a x = 1 - b y bzw. a x 1 (mod b) x ist das Inverse zu a mod b

17 17 RSA-Verfahren Beispiel: Erweiterter Euklidischer Algorithmus Zwei teilerfremde Zahlen: a = 14, b = 51 (GGT(14, 51)=1) mögliche Werte: x = 11, y = ist das Inverse zu 14 mod 51 a x - b y = 1 (a x) mod b = 1 (14 11) mod 51 1

18 18 RSA-Verfahren Satz von Fermat: Satz: Ist p eine Primzahl und a eine zu p teilerfremde natürliche Zahl, so ist a p-1 1 (mod p). Findet man auch als: a p a (mod p)

19 19 RSA-Verfahren Satz von Fermat: 22mod733mod755mod

20 20 RSA-Verfahren Beweis: Satz von Fermat Sind a, b inkongruent modulo einer festen Zahl n, dann sind auch x a und x b inkongruent (mod n) f.a. x > 0 mit GGT(x,n )=1 1 2 … (p-1) = (1 a) (2 a) … ((p-1) a) (mod p) W = W a p-1 (mod p) 1 = a p-1 (mod p) qed.

21 21 RSA-Verfahren Anwendungen des Satzes Primzahlerzeugung? Wenn p Primzahl, dann gilt a p a (mod p) Gilt auch: Wenn a p a (mod p), dann ist p Primzahl? Nein Fermatsche Pseudoprimzahlen

22 22 RSA-Verfahren Anwendungen des Satzes Primzahltest? Fermatscher Primzahltest: Berechne b = a n-1 (mod n) Prüfe b = 1, bei erfolg: b Primzahlkandidat Langsam und Aufwendig

23 23 Algorithmus Kodierung Wähle Zufällig zwei Primzahlen p und q, welche nahe beieinander liegen. Bestimmt deren Produkt N. Ermittle. Bestimme ein e, s. d. e > 1 und teilerfremd zu. Berechne aus den geheimen Schlüssel d. Somit ist der öffentliche Schlüssel: N, e und der geheime Schlüssel: d Die Kodierung erfolgt mit:

24 24 Beispiel Schlüsselerstellung Primzahlen: p = 463 und q = 467 ermitteln: bestimmen:, teilerfremd zu, ermitteln: mögliche Lösung:, öffentliche Schlüssel: N = und e = 277 geheimer Schlüssel: d = 17099

25 25 Beispiel Verschlüsselung öffentliche Schlüssel: N = und e = 277 Klartext K = 174 C ermitteln: gerechnet mit modularer Exponentiation Quad := b, Halb := e, Erg := 1 while Halb > 0 if Halb mod 2 > 0 then Erg := (Erg * Quad) mod m Quad = (Quad * Quad) mod m Halb = Halb div 2 end while return Erg Geheimtext C =

26 26 Beispiel Dekodierung öffentliche Schlüssel: N = geheimer Schlüssel: d = Geheimtext C = K ermitteln: gerechnet mit modularer Exponentiation Klartext K = 174 Dekodierung mit.

27 27 Signieren von Nachrichten Idee: Dokumente mit einer digitalen Unterschrift versehen. 1. Vorteil: Integrität, d. h. es wird die Unversehrtheit der übermittelten Nachricht sichergestellt 2. Vorteil: Authentizität, d. h. die Nachricht wurde vom richtigen Absender versandt

28 28 Signieren von Nachrichten Absender besitzt eigenen Schlüsselsatz. Absender kodiert seine Nachricht mit d, sprich: Absender versendet signierte und unsignierte Nachricht an Empfänger. Empfänger dekodiert die Nachricht mit e, sprich: Empfänger vergleicht unsignierte und dekodierte Nachricht miteinander und prüft auf Gleichheit.

29 29 Schwächen des RSA asymmetrisches Verfahren, welches für das Ver- und Entschlüsseln große K viel Zeit benötigt Wahl der Primzahlen kann nicht einfach zufällig erfolgen Sicherheit beruht auf der Annahme das die Zerlegung von N in seine Primfaktoren in polynomieller Zeit nicht gelingen kann. Beweis steht aus Shor-Algorithmus löst das Problem auf Quantencomputern in P

30 30 Angriffe auf den RSA Verfahren substituiert Klartext zu Geheimtext, weshalb Angriffe mit der Known-Plaintext-Angriffe und Wahrscheinlichkeitsanalyse möglich sind. Bei schlecht gewählten Primzahlen, kann aus N auf wenige mögliche Paare geschlossen werden. Zerlegung in Primfaktoren ist bedingt schon gelungen:RSA-567 mit 174 Ziffern Mersenne-Zahl mit 228 Ziffern Timing Attacks

31 31 Timing Attacks auf den RSA Idee: Geheimtexte mit dem öffentlichen Schlüssel so erstellen, das die Dechiffrierung lange benötigt, um fehl zu schlagen. Vorgehen Festlegen eines großen Startwertes Schleife Messen der Laufzeit der einzelnen Anfragen wird gemessen. Aus auffälligen Messwerten wird auf Werte geschlossen, welche ausprobiert werden. Ausgabe des geheimen Schlüssels

32 32 Einsatzgebiet Internet- u. Telefonie-Infrastruktur: X.509-Zertifikate Übertragungs-Protokolle: IPSec SSL TLS SSH WASTE -Verschlüsselung: PGP S/MIME Authentifizierung französischer Telefonkarten

33 33 Zusammenfassung RSA asymmetrisches Verschlüsselungsverfahren benutzt öffentliche und geheime Schlüssel Nachrichten können nur von einem Empfänger gelesen, aber vielen Absendern versandt werden Algorithmus beruht auf der scheinbaren Unmöglichkeit der Zerlegung von großen Produkten in Primfaktoren Verschlüsselung und Entschlüsselung erfolgt nach einfachen Formeln

34 34 Quellen Handbook of Applied Cryptography A. Menezes, P. C. van Oorschot, S. A. Vanstone Remote Timing Attacks are Practical D. Brumley, D. Boneh Pulic Key Cryptographie J. Ziegenbalg


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

Ähnliche Präsentationen


Google-Anzeigen