18.11.2013 Aufrufe

Elementare Zahlentheorie und Kryptographie

Elementare Zahlentheorie und Kryptographie

Elementare Zahlentheorie und Kryptographie

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

d.h. mit x j = f j (x 0 ), wobei f j = f ◦ · · · ◦ f die j-malige Hintereinanderausführung<br />

von f ist. Da X endlich ist, kann die Abbildung<br />

N → X, i ↦→ x i<br />

nicht injektiv sein. Es muß also ein Indexpaar (i, j) mit i < j <strong>und</strong> x i = x j geben.<br />

Ein solches Indexpaar wird im folgenden eine Kollision in (x i ) i genannt.<br />

Sei (v, w) das kleinste solche Indexpaar <strong>und</strong> s = w −v. Dann gilt für jedes j ∈ N<br />

schon x v+j+s = f j (x v+s ) = f j (x v ) = x v+j . D.h. nach einer Vorperiode der<br />

Länge v mündet (x i ) i in einen Zyklus der Periodenlänge s. Wenn f eine Zufallsabbildung<br />

(d.h. ein zufällig gewähltes Element der Menge aller Abbildungen<br />

X → X) ist, dann sind v <strong>und</strong> s Zufallsvariable mit Erwartungswert ≈ 0.6 √ N.<br />

Faktum B. Sei f : X → X eine Zufallsabbildung <strong>und</strong> x 0 ∈ X ein Startwert.<br />

Dann läßt sich eine Kollision in der Folge (x i ) i = (f i (x 0 )) in erwarteter Laufzeit<br />

von O( √ N) Schritten berechnen.<br />

Sei wieder G eine endliche abelsche Gruppe <strong>und</strong> g ∈ G. Der Clou bei der<br />

ρ-Methode von Pollard ist folgendes: Das diskrete Logarithmusproblem (d.h.<br />

Problem A im Spezialfall der Abbildung exp g ) kann durch einen “Trick” (Betrachten<br />

einer geeigneten Hilfsfunktion) überführt werden in ein Problem, das<br />

auf Gr<strong>und</strong> von Faktum B in O( √ |G|) Schritten gelöst werden kann. Dies ergibt<br />

eine Verbesserung der Laufzeit von O(|G|) auf O( √ |G|).<br />

Wir gehen nun auf die Details ein. Sei o.E. G = 〈g〉 zyklisch mit Erzeuger g.<br />

Sei h ∈ G. Wir wollen x mit g x = h berechen. Sei G = T 1 ∪ T 2 ∪ T 3 eine<br />

disjunkte Zerlegung in drei etwa gleich große Teilmengen. Wir betrachten die<br />

Hilfsfunktion<br />

⎧<br />

⎨ xg x ∈ T 1<br />

f : G → G, x ↦→ x 2 x ∈ T 2<br />

⎩<br />

xh x ∈ T 3<br />

Seien a 0 , b 0 ∈ Z/N (N := |G|) <strong>und</strong> x 0 = g a0 h b0 . Seien (x i ) i , (a i ) i <strong>und</strong> (b i ) i die<br />

rekursiv definierten Folgen mit<br />

<strong>und</strong><br />

x i+1 = f(x i ),<br />

⎧<br />

⎨ a i + 1 x ∈ T 1<br />

a i+1 = 2a i x ∈ T 2<br />

⎩<br />

a i x ∈ T 3<br />

⎧<br />

⎨ b i x ∈ T 1<br />

b i+1 = 2b i x ∈ T 2 .<br />

⎩<br />

b i + 1 x ∈ T 3<br />

Dann gilt x i = g ai h bi für alle i. Man findet nach Faktum B in erwarteter Laufzeit<br />

von O( √ N) Rechenschritten eine Kollision (i, j) in der Folge (x i ) i . Dann gilt<br />

g ai h bi = g aj h bj <strong>und</strong> das impliziert g ai−aj = h bj−bi = g x(bj−bi) . Daraus gewinnt<br />

man die folgende Gleichung im Ring Z/N:<br />

a i − a j = x(b j − b i ).<br />

66

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!