PDF Kryptologie
PDF Kryptologie
PDF Kryptologie
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Kryptologie</strong> – Eine verschlüsselte Wissenschaft 79<br />
Durch ganz einfaches Herumprobieren (p und q müssen Primzahlen sein) kommt man<br />
sehr schnell an die Lösung. Haben wir jetzt auch p und q berechnet, so haben wir alle<br />
Koeffizienten berechnet; nur durch die Kenntnis von ϕ(N).<br />
Aber ist es nicht möglich von N auf ϕ(N) zu schließen. Wir kennen doch die Definition<br />
von ϕ(x): Gibt die Anzahl der teilerfremden Zahlen kleiner x zu x zurück. Das bedeutet<br />
wir müssten zur Errechnung von ϕ(x) von jeder Zahl kleiner x den größten gemeinsamen<br />
Teiler von der Zahl mit x überprüfen. Ist der ggT Eins, so ist sie teilerfremd zu x und ein<br />
Zähler wird inkrementiert. In der Tat geht dies sehr schnell. Der euklidische Algorithmus<br />
zur Berechnung von ggTs wurde bereits vorgestellt (Sektion 4.11.1). Allerdings muss man<br />
bedenken, dass die Berechnung für jede Zahl geschehen muss.<br />
num = 540<br />
z a e h l e r = 0<br />
for i in xrange (num ) :<br />
i f ggT ( i , num) == 1 :<br />
z a e h l e r += 1<br />
print<br />
z a e h l e r<br />
Die for-Schleife lässt bereits Schlechtes vorahnen. Bei einer Zahl wie num = 540 halten<br />
sich die Berechnungen in Grenzen, aber bei riesigen Zahlen (wie wir wissen verwendet<br />
man bevorzugt 617-stellige 2048-Bit-Zahlen) ist das ein enormer Geschwindigkeitsverlust.<br />
ϕ(N) lässt sich aus N nicht effizient berechnen. Wie berechnet es aber die Person<br />
selbst? Sie ist ja im Besitz von p und q und genau dort ist der Knackpunkt. ϕ(N) lässt<br />
sich ineffizient über den Euklidischen Algorithmus berechnen oder effizient durch eine<br />
einfache Multiplikation der Form (p−1)(q −1). Und das ist auch die Stelle, wo klar wird,<br />
was mit Falltürfunktion gemeint ist. Das Produkt von p und q lässt sich ganz leicht berechnen.<br />
Ebenso lässt sich das Produkt von (p − 1) und (q − 1) leicht berechnen. Aber<br />
ϕ(N) lässt sich nicht leicht berechnen; außer man ist im Besitz von p und q. Und diese<br />
Primzahlen p und q besitzt nur der Kodierer selbst. Und genau das ist der Knackpunkt.<br />
Wer N in p und q zerlegt kann und dann daraus (p−1) und (q−1) berechnet, kann ϕ(N)<br />
berechnen und damit einen RSA-Schlüssel knacken. RSA ist gebrochen, wenn jemand N<br />
effizient faktorisieren kann.<br />
Eine klassische Attacke<br />
Effiziente Faktorisierungsverfahren gibt es nicht. Quadratisches Sieb und die Probedivision<br />
sind die beiden führenden Verfahren, die eingesetzt werden. Die werden auf verteilten<br />
Rechner ausgeführt und so wird der riesige Aufwand auf viele kleiner Computer (Stichwort<br />
Verteiltes Rechnen) aufgespalten. Wie sieht diese Vorgehensweise aus?<br />
• Die Probedivision ermittelt kleine mögliche Faktoren