Faktorisierung großer Zahlen Eine Einführung Raum BE14 am Campus Krefeld Süd (Reinarzstraße) 19.04.2012 | 4-te Fachsemester | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Inhaltsverzeichnis Die Vorlesung ist wie folgt gegliedert: • • • Einführung Probedivison Die Methode von Fermat | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Einführung – Das Problem Gesucht ist eine möglichst effiziente Methode um eine große Zahl in ihre Faktoren zu zerlegen. Von besonderem Interesse ist die Zerlegung einer großen Zahl in ihre Primfaktoren. Primzahlen lassen sich nicht weiter zerlegen! Bemerkungen: • Es können Faktoren doppelt vorkommen • Nicht jede Zahl (Primzahlen) lassen sich in andere Faktoren zerlegen | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Einführung – Anwendung (RSA) Der öffentliche Schlüssel N ist aus Primfaktoren p und q zusammengesetzt. Wenn Die Primfaktorzerlegung von N bekannt ist, können mit den Primfaktoren sämtliche entschlüsselungsrelevante Informationen in kurzer Zeit berechnet werden. 1. Wähle zwei Primzahlen p ! q 2. N p *q 3. N ) ( p 1) * (q 1) 4. Wähle zu N ) teilerfremde Zahl e mit 1 e N ) 5. Berechne e * d 1 mod N ) Der öffentliche Schlüssel besteht aus e (verschlüsseln) und N 1. Faktorisiere N 2. Berechne N ) (ohne Primfaktoren nicht effizient möglich) 3. Berechne d (entschlüsseln) | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | RSA-Challenge Die letzte faktorisierte Zahl ist RSA-768 (ungefähr 232 Dezimalstellen). Die nächsten relevanten Zahlen sind RSA-896 (ungefähr 270 Dezimalstellen) und RSA-1024 (ungefähr 309 Dezimalstellen). Quelle: www.rsa.com/rsalabs/node.asp?id=2093 | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Verfahren: Probedivison • • Division durch Zahlen aus Pi (n) [2, n ] • Frage: Wieso nur bis n ? Division durch eine Liste von Primfaktoren • Frage: Wie erzeuge ich eine Liste aus Primzahlen? • Frage: Wie speichere ich die Liste speichereffizient? | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Verfahren: Faktorisierungsmethode von Fermat Es gilt n x² y ² ( x y) * ( x y) a * b x ² n y ² Aus diesem Grund reicht es ab Also wird x² n i² verwendet. zu prüfen, da ein y größer n existieren muss. Best-Case: Die Teiler liegen nahe an der Wurzel von n Worst-Case: Gegenteil von Best-Case! Worst-Case wird verbessert mit der Methode von Lehman [Factoring Large Integers, Mathematics of Computation S. 637-646, 1974.] | 14.04.2012| Faktorisierung großer Zahlen | Florian Scholz | Sonstiges | Fermat: Wie überprüfen wir ob Zahl eine Wurzel ist? Es gilt n x² y ² ( x y) * ( x y) a * b x ² n y ² Aus diesem Grund reicht es ab Also wird x² n i² verwendet. • • zu prüfen, da ein y größer n existieren muss. Frage: Ist der Quadratzahltest nicht ineffizient? Frage: Wie quadrieren wir schnell? Best-Case: Die Teiler liegen nahe an der Wurzel von n Worst-Case: Gegenteil von Best-Case! Worst-Case wird verbessert mit der Methode von Lehman [Factoring Large Integers, Mathematics of Computation S. 637-646, 1974.] | Datum | Titel | Name | Sonstiges | Bessere Verfahren • • Quadratische Sieb Zahlkörpersieb | Datum | Titel | Name | Sonstiges | Impressum Florian Scholz Emailadresse: [email protected] | Datum | Titel | Name | Sonstiges |