Elementare Zahlentheorie und Kryptographie
Elementare Zahlentheorie und Kryptographie
Elementare Zahlentheorie und Kryptographie
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
gilt. Sei Z(N) die Menge der Solovay-Strassen-Zeugen (in diesem Abschnitt<br />
kurz: Zeugen) gegen die Primalität von N. Aus dem Satz von Euler 6.1.3 folgt:<br />
Wenn Z(N) ≠ ∅, dann ist N sicher zusammengesetzt. Oder anders gesagt: Wenn<br />
N prim ist, dann gilt Z(N) = ∅.<br />
Lemma 6.3.1 Wenn N zusammengesetzt ist, dann gibt es eine zu N teilerfremde<br />
Zahl a ∈ Z(N).<br />
Beweis. Siehe [So].<br />
Satz 6.3.2 Wenn N zusammengesetzt ist, dann ist |Z(N)| ≥ N 2 .<br />
Beweis. Sei<br />
U = {[a] : 1 ≤ a ≤ N − 1 zu N teilerfremd <strong>und</strong> a /∈ Z(N).<br />
Dies ist eine Untergruppe von (Z/N) × . Nach dem Lemma gilt U ≠ (Z/N) × .<br />
Da |U| ein Teiler von ϕ(N) sein muß, folgt |U| ≤ ϕ(N)/2 ≤ N/2. Daher gilt die<br />
Behauptung.<br />
□<br />
Zusammenfassend kann man sagen:<br />
a) Wenn N prim ist, dann ist Z(N) = ∅.<br />
b) Wenn N zusammengesetzt ist, dann sind mindestens 50 Prozent der Zahlen<br />
im Bereich {0, · · · , N − 1} Zeugen gegen die Primalität von N.<br />
Algorithmus 6.3.3 (Solovay-Strassen-Test)<br />
Eingabe: N ungerade <strong>und</strong> ein Steuerparameter t, der die Fehlerwahrscheilichkeit<br />
regelt.<br />
Man testet für t Zufallszahlen im Bereich a ∈ {0, · · · , N − 1}, ob a ∈ Z(N).<br />
Wird dabei ein Zeuge gegen die Primalität von N gef<strong>und</strong>en, gib aus “N ist<br />
zusammengesetzt”.<br />
Wird dabei kein Zeuge gegen die Primalität von N gef<strong>und</strong>en, gib aus “N ist<br />
wahrscheinlich prim”.<br />
Die Fehlerwahrscheinlichkeit dieses Monte-Carlo-Verfahrens ist ≤ 2 −t .<br />
6.4 Das Rabin-Verfahren<br />
Sei R ein Ring <strong>und</strong> a ∈ R. Wir bezeichnen mit sqrt R (a) die Lösungsmenge der<br />
Gleichung X 2 = a über R. Wenn R ein Körper ist, dann gilt |sqrt R (a)| ≤ 2, da<br />
ein Polynom zweiten Grades über einem Körper höchstens zwei Nullstellen hat.<br />
91