RSA - Chaosdorf Wiki

Werbung
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 |
Herunterladen