RSA-Verfahren: Bestimmung der Faktorisierung von n aus Kenntnis ...
RSA-Verfahren: Bestimmung der Faktorisierung von n aus Kenntnis ...
RSA-Verfahren: Bestimmung der Faktorisierung von n aus Kenntnis ...
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>RSA</strong>-<strong>Verfahren</strong>:<br />
<strong>Bestimmung</strong> <strong>der</strong> <strong>Faktorisierung</strong> <strong>von</strong> n <strong>aus</strong><br />
<strong>Kenntnis</strong> <strong>von</strong> n, e, d<br />
Ist 2 s die größte 2-Potenz, die ed − 1 teilt, k = (ed − 1)/2 s , so beruht die<br />
Erfolgswahrscheinlichkeit des in <strong>der</strong> Vorlesung vorgestellten probabilistischen<br />
Algorithmus zur <strong>Faktorisierung</strong> <strong>von</strong> n (= p · q) auf folgendem Satz:<br />
Satz<br />
Die Anzahl <strong>der</strong> zu n teilerfremden Zahlen a mit 1 ≤ a ≤ n − 1, für die<br />
o((a mod p) k ) ≠ o((a mod q) k ) gilt, ist wenigstens (p − 1)(q − 1)/2.<br />
(Die Ordnungen beziehen sich auf die Gruppen Z p ∗ bzw. Z q ∗ .)<br />
Beweis:<br />
Die Gruppen Z ∗ p und Z ∗ q sind zyklisch <strong>der</strong> Ordnung p − 1 bzw. q − 1. (Die<br />
multiplikativen Gruppen endlicher Körper sind immer zyklisch; einen Beweis<br />
findet man z.B. im Buch <strong>von</strong> Buchmann, Abschnitt 2.20, o<strong>der</strong> in jedem<br />
Algebra-Lehrbuch.)<br />
Sei v ∈ {1, . . . , p − 1} mit Z ∗<br />
p =< v > und sei w ∈ {1, . . . , q − 1} mit<br />
Z ∗ q =< w >.<br />
Nach dem Chinesischen Restsatz existiert ein h, 1 ≤ h ≤ n = p · q mit<br />
h ≡ v mod p und h ≡ w mod q. Dann ist also o(h mod p) = p − 1 und<br />
o(h mod q) = q − 1.<br />
1. Fall: o((h mod p) k ) > o((h mod q) k )<br />
Da p − 1 ein Teiler <strong>von</strong> ϕ(n) und ϕ(n) ein Teiler <strong>von</strong> ed − 1 ist, ist ed − 1 =<br />
(p−1)r für ein r ∈ N. Es folgt ((h mod p) k ) 2s = (h mod p) k2s = (h mod p) ed−1<br />
= (h mod p) (p−1)r ≡ 1 mod p. Also ist o((h mod p) k ) = 2 i für ein i ≤ s (siehe<br />
Satz über Ordnungen <strong>von</strong> Elementen endlicher Gruppen, Teil b)). Analog ist<br />
o((h mod q) k ) = 2 j mit j < i.<br />
Sei x eine ungerade Zahl in {1, . . . , p − 1} und sei y ∈ {0, . . . , q − 2}. Nach<br />
dem Chinesischen Restsatz gibt es ein a, 1 ≤ a < n = p·q, mit a ≡ h x mod p<br />
und a ≡ h y mod q.<br />
Dann ist o((a mod p) k ) = o((h mod p) xk ), also o((a mod p) k ) = o((h mod p) k )<br />
(siehe Satz über Ordnungen <strong>von</strong> Elementen, Teil c)).<br />
An<strong>der</strong>erseits ist ((a mod q) k ) 2j = (a mod q) k·2j ≡ (h mod q) yk·2j ≡ 1 mod q,<br />
d.h. o((a mod q) k ) ≤ o((h mod q) k ) (siehe Satz über Ordnungen <strong>von</strong> Elementen,<br />
Teil b)). Also ist o((a mod p) k ) > o((a mod q) k ).<br />
Es ist klar, dass für jede <strong>der</strong> (p − 1)(q − 1)/2 möglichen Wahlen <strong>von</strong> (x, y)<br />
die zugehörigen Zahlen a < n paarweise verschieden sind. Damit folgt die<br />
Behauptung in diesem Fall.<br />
2. Fall: o((h mod p) k ) < o((h mod q) k )<br />
Analog zum ersten Fall.
3. Fall: o((h mod p) k ) = o((h mod q) k )<br />
Wie zu Beginn des ersten Falles sieht man, dass o((h mod p) k ) =<br />
o((h mod q) k ) = 2 i , i ≤ s. Dabei ist i ≥ 1 (siehe Satz über Ordnungen<br />
<strong>von</strong> Elementen, Teil c)), da k ungerade ist und p − 1 o<strong>der</strong> q − 1 gerade ist<br />
(in unserem Fall dann sogar beide).<br />
Ist x eine ungerade Zahl in {0, . . . , p − 2} und y eine gerade Zahl in<br />
{0, . . . , q − 2}, so existiert nach dem Chinesischen Restsatz ein a,<br />
1 ≤ a ≤ n = p · q, mit a ≡ h x mod p und a ≡ h y mod q. Wie im ersten<br />
Fall sieht man, dass o((a mod p) k ) = o((h mod p) k ).<br />
An<strong>der</strong>erseits ist ((a mod q) k ) 2i−1 ≡ ((h mod q) yk ) 2i−1 ≡ ((h mod q) k ) y·2i−1 ≡<br />
1 mod q, da y gerade und daher 2 i ein Teiler <strong>von</strong> y2 i−1 ist.<br />
Also ist o((a mod q) k ) < o((a mod p) k ).<br />
Wählt man x als gerade Zahl in {0, . . . , p − 2} und y als ungerade Zahl in<br />
{0, . . . , q − 2}, so verläuft das Argument analog. Für jede dieser insgesamt<br />
(p − 1)(q − 1)/2 möglichen Wahlen <strong>von</strong> (x, y) sind die zugehörigen Zahlen<br />
a < n verschieden.<br />
Damit ist <strong>der</strong> Beweis vollständig.