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.

von der Länge ca. 1024 Bit (d.h. ca. 300 Dezimalstellen) zu arbeiten. N hat<br />

dann ca. 600 Dezimalstellen.<br />

Alice wählt des weiteren eine zu ϕ(N) = (p − 1)(q − 1) (vgl. 2.6.3) teilerfremde<br />

Zahl e ∈ {0, 1, · · · , ϕ(N) − 1}. Nach 2.5.1 ist e + ϕ(N)Z Z/ϕ(N)Z eine Einheit,<br />

d.h. es existiert ein d ∈ {0, 1, · · · , ϕ(N) − 1} mit ed = 1 mod ϕ(N)Z. Alice<br />

berechnet diese Zahl d mit dem euklidischen Algorithmus 2.5.3.<br />

Von den bisher errechneten Daten (p, q, N, ϕ(N), e, d) macht Alice nun einen<br />

Teil öffentlich (z.B. auf ihrer Homepage) <strong>und</strong> behält den anderen Teil für sich<br />

(z.B. abgespeichert auf einem USB Stick).<br />

Geheim bleibt p, q, ϕ(N), d, d.h. nur Alice (<strong>und</strong> nicht einmal Bob) kennt diese<br />

Daten.<br />

Öffentlich gemacht wird N <strong>und</strong> e. Insbesondere kennt Bob diese Daten; aber<br />

auch jeder potentielle Angreifer kennt sie.<br />

(N, e) ist der öffentliche Verschlüsselungsschlüssel (kurz: V-Schlüssel) <strong>und</strong> d ist<br />

der geheime (nur Alice kennt ihn) Entschlüsselungsschlüssel (kurz: E-Schlüssel).<br />

Übertragen werden Elemente von P := Z/NZ = {[0], · · · , [N−1]}. Wenn Bob die<br />

Nachricht m ∈ Z/NZ an Alice übermitteln will, so berechnet er c := m e . Für<br />

die Potenzierung kann der Square and Multiply Algorithmus 3.1.1 verwendet<br />

werden. Bob übermittelt dann c.<br />

Alice empfängt c = m e <strong>und</strong> berechnet c d (mit dem Square and Multiply Algorithmus).<br />

Nach dem folgenden Satz ist c d = m; sie erhält also die ursprüngliche<br />

Nachricht m zurück. Ein Angreifer Oskar, der den gesamten Dialog abhört, kann<br />

m nicht durch die selbe Rechnung m = c d wie Alice ermitteln, weil er d nicht<br />

kennt. Mehr dazu später.<br />

Satz 3.3.1 Es gilt m ed = m.<br />

Beweis: Nach 2.6.1 hat man einen bijektiven Ringhomomorphismus<br />

f : Z/NZ → Z/pZ × Z/qZ<br />

Sei (m 1 , m 2 ) := f(m). Es genügt m ed<br />

1 = m 1 <strong>und</strong> m ed<br />

2 = m 2 zu zeigen. (Daraus<br />

folgt nämlich f(m ed ) = f(m) <strong>und</strong> das impliziert m ed = m, weil f injektiv ist.)<br />

Wegen ϕ(N) = (p − 1)(q − 1) <strong>und</strong> ed = 1 mod ϕ(N)Z gibt es ein k ∈ N mit<br />

ed = 1 + k(p − 1)(q − 1). Falls m 1 ∈ (Z/pZ) × = F × p \ {[0]} eine Einheit ist, so<br />

gilt m p−1<br />

1 = 1 nach dem kleinen Satz von Fermat 2.7.2. Daraus folgt<br />

m ed<br />

1 = m 1+k(p−1)(q−1)<br />

1 = m 1 (m p−1<br />

1 ) k(q−1) = m 1 · 1 k(q−1) = m 1 .<br />

Falls m 1 = 0 in Z/pZ gilt, so hat man offensichtlich m ed<br />

1 = m 1 . Also gilt in<br />

jedem Fall m ed<br />

1 = m 1 .<br />

Völlig analog kann man zeigen, daß m ed<br />

2 = m 2 gilt. □<br />

52

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!