18.11.2013 Aufrufe

Elementare Zahlentheorie und Kryptographie

Elementare Zahlentheorie und Kryptographie

Elementare Zahlentheorie und Kryptographie

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Beispiel: Wir gehen durch ein Beispiel mit kleinen 5 Zahlen. Sagen wir, Alice<br />

wählt p = 11 <strong>und</strong> q = 31. Dann ist N = 341 <strong>und</strong> ϕ(N) = 10 · 30 = 300. Ferner<br />

wählt Alice e = 7 als V-Schlüssel <strong>und</strong> berechnet daraus den E-Schlüssel d = 43<br />

(beachte: ed = 7 · 43 = 301 = 1 mod 300). Alice macht N = 341 <strong>und</strong> e = 7 auf<br />

ihrer Homepage publik.<br />

Wenn Bob die Nachricht m = 10 an Alice übermitteln will, dann berechnet er<br />

m e = 10 7 = 175 mod 341 <strong>und</strong> übermittelt 175.<br />

Alice empfängt 175 <strong>und</strong> kann dann die Rechnung (m e ) d = 175 43 = 10 durchführen,<br />

um m aus m e zu gewinnen; sie kennt ja d.<br />

Angriffe auf RSA<br />

Nehmen wir an, ein Angreifer Oskar hat den gesamten Dialog abgehört, also<br />

Oskar kennt N, e, m e ,<br />

Bob kennt N, e, m, m e <strong>und</strong><br />

Alice kennt N, p, q, ϕ(N), e, d, m e , m.<br />

1. Nehmen wir an, es gelingt Oskar, N zu faktorisieren, d.h. p <strong>und</strong> q zu<br />

bestimmen. Dann kann er leicht ϕ(N) = (p−1)(q−1) bestimmen <strong>und</strong> dann<br />

das d ∈ {0, 1, · · · , ϕ(N) − 1} mit ed = 1 mod ϕ(N) berechnen, genau wie<br />

Alice es eingangs getan hat. Das entspricht nur einer Inversenbildung in<br />

(Z/ϕ(N)Z) × mit dem euklidischen Algorithmus. Wenn er den E-Schlüssel<br />

d einmal hat, dann kann er m aus m e durch die Rechnung m = (m e ) d<br />

(Square and Multiply!) finden. Er kann dann jede abgehörte Nachricht an<br />

Alice entschlüsseln.<br />

Die Sicherheit von RSA beruht also wesentlich darauf, dass es heute für<br />

“technisch unmöglich” gehalten wird, ein Produkt aus zwei großen Zufalls-<br />

Primzahlen (sagen wir je ca. 1024 Bit) in seine Primfaktoren zu zerlegen.<br />

Fortschritte im Bereich der Hardware oder im Bereich der Faktorisierungsalgorithmen<br />

würden eine massive Bedrohung für RSA darstellen. Solange<br />

nur kleinere Fortschritte gemacht werden, kann man allerdings einfach die<br />

Schlüssellänge nach oben anpassen.<br />

2. Natürlich würde es Oskar genügen, ϕ(N) zu finden. Das ist aber auch<br />

nicht leichter als das Faktorisieren von N. Wer ϕ(N) kennt, der kennt<br />

ϕ(N) = (p − 1)(q − 1) = N − p − q + 1 <strong>und</strong> kann p <strong>und</strong> q durch das<br />

Auflösen der Gleichungen pq = N, p + q = N + 1 − ϕ(N) ermitteln. (Dies<br />

läuft auf eine quadratische Gleichung in p hinaus.)<br />

3. Ebenso würde es Oskar genügen, an d zu kommen. Man kann auch hier<br />

beweisen, daß das ungefähr genauso schwer ist, wie das Faktorisieren von<br />

N. D.h.: Wer d kennt, der kann p <strong>und</strong> q leicht berechnen.<br />

4. Oskar könnte auch versuchen, m aus m e zu bestimmen, ohne d zu errechnen,<br />

d.h. ohne die Gleichung m = (m e ) d zu benutzen. Es ist meines<br />

Wissens nicht bekannt, ob das genauso schwer ist wie das Faktorisieren<br />

von N, <strong>und</strong> das wird als Nachteil von RSA angesehen.<br />

5 viel zu klein, um sicher zu sein!<br />

53

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!