<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Pollard-Rho-Methode</id>
	<title>Pollard-Rho-Methode - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Pollard-Rho-Methode"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Pollard-Rho-Methode&amp;action=history"/>
	<updated>2026-05-18T01:40:41Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Pollard-Rho-Methode&amp;diff=206573&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Pollard-Rho-Methode&amp;diff=206573&amp;oldid=prev"/>
		<updated>2025-12-17T15:10:15Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Datei:Pollard Rho.png|mini|150px|Grafische Darstellung der Teilergebnisse]]&lt;br /&gt;
Die &amp;#039;&amp;#039;&amp;#039;Pollard-Rho-Methoden&amp;#039;&amp;#039;&amp;#039; sind [[Algorithmus|Algorithmen]] zur Bestimmung der Periodenlänge einer Zahlenfolge, die mit einer mathematischen Funktion berechnet wird. Verschiedene schwierige mathematische Probleme wie der [[Diskreter Logarithmus|diskrete Logarithmus]] und die [[Faktorisierungsverfahren|Faktorisierung]] lassen sich mit diesen Methoden berechnen. Eine optimierte Variante der Pollard-Rho-Methode wurde von [[John M. Pollard]] im Jahre [[1975]] zur [[Primfaktorzerlegung]] entwickelt. Derartige Verfahren lassen sich auch zur Berechnung von [[Kollisionssicherheit|Kollisionen]] in Hash-Funktionen anwenden.&lt;br /&gt;
&lt;br /&gt;
Bei den Pollard-Rho-Methoden werden Folgen von Teilergebnissen berechnet. Ab einem bestimmten Punkt wiederholt sich ein Teil dieser Teilergebnisse nur noch. Man kann die Teilergebnisse grafisch so anordnen, dass sich die Gestalt des Buchstaben [[Rho|ρ]] (Rho) erkennen lässt. Daraus leitet sich die Bezeichnung der Methoden ab.&lt;br /&gt;
&lt;br /&gt;
== Funktionsweise ==&lt;br /&gt;
&lt;br /&gt;
Gesucht ist ein echter Teiler &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; der Zahl &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;. Im Allgemeinen muss dieser Teiler jedoch nicht zwingend eine [[Primzahl]] sein. Das Verfahren beruht auf der Erzeugung einer Folge von [[Pseudozufallszahlen]]. Zur Erstellung der Zufallsfolge kann eine relativ beliebige Funktion &amp;lt;math&amp;gt;f \colon \N \to \N &amp;lt;/math&amp;gt; verwendet werden. Es ist lediglich erforderlich, dass aus &amp;lt;math&amp;gt;x\equiv y\pmod p&amp;lt;/math&amp;gt; auch &amp;lt;math&amp;gt;f(x)\equiv f(y)\pmod p&amp;lt;/math&amp;gt; folgt, und dies gilt beispielsweise bereits, wenn &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; durch ein [[Polynom]] mit ganzzahligen Koeffizienten gegeben ist.&lt;br /&gt;
&lt;br /&gt;
Die Folge startet mit einem weitgehend beliebig wählbaren Startwert &amp;lt;math&amp;gt;x_0&amp;lt;/math&amp;gt;. Die weiteren Werte werden iterativ berechnet gemäß&lt;br /&gt;
:&amp;lt;math&amp;gt;x_i = f(x_{i-1})&amp;lt;/math&amp;gt;&lt;br /&gt;
Die Funktionswerte [[modulo]] &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; können maximal die &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; verschiedenen Werte &amp;lt;math&amp;gt;0, 1, 2, \ldots , p- 1&amp;lt;/math&amp;gt; annehmen. Tritt einer dieser Werte erneut auf, so wiederholen sich anschließend diese Werte modulo &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;. Dies geschieht spätestens nach &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; Iterationen und im Mittel nach etwa &amp;lt;math&amp;gt;\sqrt p&amp;lt;/math&amp;gt; Iterationen. Aus denselben Gründen kann man nach etwa &amp;lt;math&amp;gt;\sqrt n&amp;lt;/math&amp;gt; Iterationen erwarten, dass sich die Werte modulo &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; wiederholen. Wenn bereits bekannt ist, dass &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; einen kleinen Primfaktor hat, ist &amp;lt;math&amp;gt;\sqrt p&amp;lt;/math&amp;gt; erheblich kleiner als &amp;lt;math&amp;gt;\sqrt n&amp;lt;/math&amp;gt;, so dass gehofft werden darf, dass die Wiederholung modulo &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; erheblich früher als die Wiederholung modulo &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; einsetzt.&lt;br /&gt;
&lt;br /&gt;
Bei einer derart berechneten Zahlenfolge mit endlich vielen möglichen Funktionswerten werden zunächst in einer Vorperiode einige Werte&lt;br /&gt;
:&amp;lt;math&amp;gt;x_0,  x_1, \ldots, x_{k - 1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
angenommen. Sobald ein Wert wiederholt auftritt, wiederholen sich die Werte anschließend zyklisch&lt;br /&gt;
:&amp;lt;math&amp;gt;x_k, x_{k+1}, \ldots,  \left( x_{k+l} = x_k \right), x_{k+1}, \ldots&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dieses Verhalten der Folge gab der Methode ihren Namen, da man sich die Periode wie einen Kreis vorstellen kann und die Folgenglieder am Anfang wie einen Stängel, der in den Kreis hineinführt. Graphisch sieht das aus wie der griechische Buchstabe [[Rho|ρ]].&lt;br /&gt;
&lt;br /&gt;
Haben zwei Werte &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; modulo &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; aus der Folge den gleichen Wert, für die folglich &amp;lt;math&amp;gt;x\equiv y \pmod p\ &amp;lt;/math&amp;gt; gilt, so ergibt der [[Größter gemeinsamer Teiler|größte gemeinsame Teiler]] &amp;lt;math&amp;gt;\operatorname{ggT}(x-y , n)&amp;lt;/math&amp;gt; ein Vielfaches von &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; und oftmals einen echten Teiler von &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Es ist jedoch sehr aufwändig, alle Zahlenwerte auf diese Weise zu vergleichen. Eine optimierte Variante der Pollard-Rho-Methode berechnet daher zur Bestimmung der Periodenlänge zwei Folgen. Eine Folge&lt;br /&gt;
:&amp;lt;math&amp;gt; x = (x_1, x_2, x_3, x_4, \ldots)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
und die zweite Folge&lt;br /&gt;
:&amp;lt;math&amp;gt; y = (y_1, y_2, y_3, y_4, \ldots) = (x_2, x_4, x_6, x_8, \ldots)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Durch diesen Trick kann der Vergleich sehr vieler Funktionswerte vermieden werden. Es muss jetzt nicht für alle Paare &amp;lt;math&amp;gt;(x_i, x_j)&amp;lt;/math&amp;gt; der größte gemeinsame Teiler &amp;lt;math&amp;gt;\operatorname{ggT}(x_i - x_j, n)&amp;lt;/math&amp;gt; berechnet werden. Es genügt jeweils, &amp;lt;math&amp;gt;\operatorname{ggT}(x_i - y_i, n)&amp;lt;/math&amp;gt; bzw. &amp;lt;math&amp;gt;\operatorname{ggT}(x_i - x_{2i}, n)&amp;lt;/math&amp;gt; zu berechnen.&lt;br /&gt;
&lt;br /&gt;
Da &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;, als ein gesuchter Teiler von &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;, unbekannt ist, kann zunächst der Rest der Division durch &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; nicht berechnet werden. Es wird daher nicht die Gleichheit zweier Werte &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; abgefragt, sondern der &amp;lt;math&amp;gt;\operatorname{ggT}(x-y,n)&amp;lt;/math&amp;gt; berechnet. Falls sich die Werte &amp;lt;math&amp;gt;x&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;y&amp;lt;/math&amp;gt; nur um ein Vielfaches von &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; unterscheiden, ist der Wert des &amp;lt;math&amp;gt;\operatorname{ggT}(x-y, n)&amp;lt;/math&amp;gt; ein Vielfaches des gesuchten Teilers &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; von &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;. Ganzzahlige Vielfache von &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; sind zugleich ganzzahlige Vielfache von &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; und brauchen deshalb bei der Berechnung nicht berücksichtigt werden. Infolgedessen genügt es die Funktionswerte modulo &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; zu berechnen.&lt;br /&gt;
&lt;br /&gt;
Zur Berechnung der Zahlenfolge kann eine Funktion der Form &amp;lt;math&amp;gt;f(x)=x^2+ const&amp;lt;/math&amp;gt; benutzt werden. Durch diese Wahl können nur ein Teil, etwa die Hälfte, der Werte &amp;lt;math&amp;gt;0&amp;lt;/math&amp;gt; bis &amp;lt;math&amp;gt;p-1&amp;lt;/math&amp;gt; bei der Restbildung auftreten, wodurch das frühzeitigere Auftreten der gesuchten Wiederholungen etwas begünstigt wird.&lt;br /&gt;
&lt;br /&gt;
=== Formale Definition ===&lt;br /&gt;
&lt;br /&gt;
Sei &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; die Zahl, von der ein Primfaktor &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; berechnet werden soll. Bezeichne &amp;lt;math&amp;gt;(x_k)_{k \in \mathbb{N}}&amp;lt;/math&amp;gt; eine Folge von Pseudozufallszahlen wie zum Beispiel&lt;br /&gt;
:&amp;lt;math&amp;gt;\begin{align}&lt;br /&gt;
x_0 &amp;amp;= 2\\&lt;br /&gt;
x_{k+1} &amp;amp;= x_k^2 + c \pmod n \quad\text{ mit }\quad c \not\equiv 0\pmod n \text{ und }c \not\equiv -2\pmod n.&lt;br /&gt;
\end{align}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Existiert ein echter Primfaktor &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt;, so gilt&lt;br /&gt;
:Es gibt einen Index &amp;lt;math&amp;gt;i &amp;lt; p&amp;lt;/math&amp;gt;, so dass &amp;lt;math&amp;gt;n &amp;gt; k_i &amp;gt; 1&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;k_i \,|\, n&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;k_i = \operatorname{ggT}(|x_i - x_{2i}|,n)&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Algorithmus ==&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Eingabe&amp;#039;&amp;#039;: &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; ist die zu faktorisierende Zahl und &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; sei die Pseudo-Zufallsfunktion modulo &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;Ausgabe&amp;#039;&amp;#039;: Ein nicht-trivialer Faktor von &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; oder eine Fehlermeldung&lt;br /&gt;
# &amp;#039;&amp;#039;x&amp;#039;&amp;#039; ← 2, &amp;#039;&amp;#039;y&amp;#039;&amp;#039; ← x; &amp;#039;&amp;#039;d&amp;#039;&amp;#039; ← 1&lt;br /&gt;
# Solange &amp;#039;&amp;#039;d&amp;#039;&amp;#039; = 1:&lt;br /&gt;
##&amp;#039;&amp;#039;x&amp;#039;&amp;#039; ← &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;x&amp;#039;&amp;#039;)&lt;br /&gt;
## &amp;#039;&amp;#039;y&amp;#039;&amp;#039; ← &amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;f&amp;#039;&amp;#039;(&amp;#039;&amp;#039;y&amp;#039;&amp;#039;))&lt;br /&gt;
## &amp;#039;&amp;#039;d&amp;#039;&amp;#039; ← ggT(|&amp;#039;&amp;#039;x&amp;#039;&amp;#039; − &amp;#039;&amp;#039;y&amp;#039;&amp;#039;|, &amp;#039;&amp;#039;n&amp;#039;&amp;#039;)&lt;br /&gt;
# Wenn 1 &amp;amp;lt; &amp;#039;&amp;#039;d&amp;#039;&amp;#039; &amp;amp;lt; &amp;#039;&amp;#039;n&amp;#039;&amp;#039;, dann &amp;#039;&amp;#039;d zurückgeben&amp;#039;&amp;#039;.&lt;br /&gt;
# Falls &amp;#039;&amp;#039;d&amp;#039;&amp;#039; = &amp;#039;&amp;#039;n&amp;#039;&amp;#039;, dann „Fehler“ ausgeben.&lt;br /&gt;
&lt;br /&gt;
Anmerkung: Dieser Algorithmus liefert für alle &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt;, die nur durch 1 und sich selbst teilbar sind, eine Fehlermeldung zurück. Allerdings kann auch für die anderen &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; eine Fehlermeldung zurückgeliefert werden. In diesem Fall wählt man eine andere Funktion &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; und versucht es erneut.&lt;br /&gt;
&lt;br /&gt;
Ist das Ergebnis eine Zahl, so ist diese wirklich auch ein Teiler und damit ein korrektes Ergebnis, wobei dieses im Allgemeinen nicht zwingend eine Primzahl sein muss.&lt;br /&gt;
&lt;br /&gt;
Für &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; wählt man ein Polynom mit einem ganzzahligen Koeffizienten. Eine übliche Funktion &amp;lt;math&amp;gt;f(x)&amp;lt;/math&amp;gt; für diesen Algorithmus hat folgende Form:&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;math&amp;gt;f(x)=x^2+c\hbox{ mod }n,\,c\neq0,-2.&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Abschätzung der Laufzeit ==&lt;br /&gt;
&lt;br /&gt;
Die Zahlenfolgen &amp;lt;math&amp;gt;x_i \bmod p&amp;lt;/math&amp;gt; und &amp;lt;math&amp;gt;x_{2i} \bmod p&amp;lt;/math&amp;gt; können als Pseudo-Zufallsfolgen angesehen werden. Falls ein Zahlenwert erneut auftritt, wiederholen sich zwangsläufig die folgenden Werte. Es können bis zu &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; Werte angenommen werden (bei quadratischem &amp;lt;math&amp;gt;f&amp;lt;/math&amp;gt; wie oben: bis zu &amp;lt;math&amp;gt;\tfrac{p+1}2&amp;lt;/math&amp;gt; Werte). Der [[Erwartungswert]] für die Länge eines Zyklus beträgt &amp;lt;math&amp;gt;\sqrt{p}&amp;lt;/math&amp;gt;. Die Tatsache, dass weit weniger als &amp;lt;math&amp;gt;p&amp;lt;/math&amp;gt; Berechnungen erforderlich sind, wird zuweilen [[Geburtstagsparadoxon]] genannt.&lt;br /&gt;
&lt;br /&gt;
Der ungünstigste Fall tritt ein, wenn &amp;lt;math&amp;gt;n&amp;lt;/math&amp;gt; ein Produkt von zwei Primzahlen gleicher Länge ist. Der Algorithmus terminiert dann nach [[Landau-Symbole|O]](n&amp;lt;sup&amp;gt;1/4&amp;lt;/sup&amp;gt; &amp;#039;&amp;#039;[[Polylogarithmus|polylog]]&amp;#039;&amp;#039;(n)) Schritten mit einer Wahrscheinlichkeit von &amp;lt;math&amp;gt;\tfrac12&amp;lt;/math&amp;gt;. Die Methode ist gut geeignet, um Zahlen mit mehreren kleineren Faktoren zu faktorisieren. Der Algorithmus kann in der gleichen Zeit (mit hoher Wahrscheinlichkeit) eine Zahl mit doppelt so vielen Stellen wie die [[Probedivision]] faktorisieren. Der Algorithmus arbeitet [[exponentiell]] in der Länge der Eingabe und ist damit asymptotisch langsamer als das [[Quadratisches Sieb|Quadratische Sieb]] und das [[Zahlkörpersieb]].&lt;br /&gt;
&lt;br /&gt;
== Zahlenbeispiel ==&lt;br /&gt;
[[Datei:Pollard Rho.png|rechts|Feder]]&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;1. Beispiel&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Gesucht seien die Faktoren der Zahl &amp;lt;math&amp;gt;n=703&amp;lt;/math&amp;gt;. Wir verwenden die Funktion &amp;lt;math&amp;gt;f(x)=x^2+23 \mod n&amp;lt;/math&amp;gt; und den Startwert &amp;lt;math&amp;gt;x_0=431&amp;lt;/math&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|+ Tabelle: Rho-Methode für &amp;#039;&amp;#039;n&amp;#039;&amp;#039; = 703&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;| &amp;lt;math&amp;gt;n=703, \quad f(x)=x^2+c&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;c=23, \quad x_0=431&amp;lt;/math&amp;gt;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe5&amp;quot;&lt;br /&gt;
| &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;x_i=f(x_{i-1})&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;y_i = x_{2 \cdot i} = f(f(y_{i-1}))&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;d={\operatorname{ggT}(|x-y|,n})&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|1 ||192 ||331 ||1&lt;br /&gt;
|-&lt;br /&gt;
|2 ||331 || 49 ||1&lt;br /&gt;
|-&lt;br /&gt;
|3 ||619 ||125 ||&amp;#039;&amp;#039;&amp;#039;19&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
|4 || 49 ||106 ||19&lt;br /&gt;
|-&lt;br /&gt;
|5 ||315 ||144 ||19&lt;br /&gt;
|-&lt;br /&gt;
|6 ||125 ||619 ||19&lt;br /&gt;
|-&lt;br /&gt;
|7 ||182 ||315 ||19&lt;br /&gt;
|-&lt;br /&gt;
|8 ||106 ||182 ||19&lt;br /&gt;
|-&lt;br /&gt;
|9 || 11 || 11 ||703&lt;br /&gt;
|-&lt;br /&gt;
|10 ||144 ||372 ||19&lt;br /&gt;
|-&lt;br /&gt;
|11 ||372 ||49 ||19&lt;br /&gt;
|-&lt;br /&gt;
|12 || 619 ||125 ||19&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Damit ist die Primfaktorzerlegung von &amp;lt;math&amp;gt;703=19\cdot 37&amp;lt;/math&amp;gt; gefunden.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;2. Beispiel&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|+ Tabelle: Rho-Methode für &amp;#039;&amp;#039;n&amp;#039;&amp;#039; = 2717&lt;br /&gt;
|-&lt;br /&gt;
|colspan=&amp;quot;4&amp;quot;|&amp;lt;math&amp;gt;n=2717, \quad f(x)=x^2+c&amp;lt;/math&amp;gt; mit &amp;lt;math&amp;gt;c=4, \quad x_0=2&amp;lt;/math&amp;gt;&lt;br /&gt;
|- class=&amp;quot;hintergrundfarbe5&amp;quot;&lt;br /&gt;
| &amp;lt;math&amp;gt;i&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;x_i=f(x_{i-1})&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;y_i = x_{2 \cdot i} = f(f(y_{i-1}))&amp;lt;/math&amp;gt; || &amp;lt;math&amp;gt;d={\operatorname{ggT}(|x-y|,n})&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|1 ||   8 ||  68 || 1&lt;br /&gt;
|-&lt;br /&gt;
|2 ||  68 || 277 ||&amp;#039;&amp;#039;&amp;#039;209&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
|-&lt;br /&gt;
|3 ||1911 ||2367 ||19&lt;br /&gt;
|-&lt;br /&gt;
|4 ||277  ||68   ||209&lt;br /&gt;
|-&lt;br /&gt;
|5 ||657  ||277  ||19&lt;br /&gt;
|-&lt;br /&gt;
||6 || 2367 || 2367 || 2717&lt;br /&gt;
|-&lt;br /&gt;
||7 || 239 || 68 || 19&lt;br /&gt;
|-&lt;br /&gt;
|8 ||68 || 277 || 209&lt;br /&gt;
|}&lt;br /&gt;
Dieses Beispiel zeigt, dass der gefundene Faktor nicht zwingend eine Primzahl sein muss. Der hier gefundene Faktor ist &amp;lt;math&amp;gt;209=11\cdot 19&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Faktorisierungen ==&lt;br /&gt;
Mit der beschriebenen Methode konnte 1980 die [[Fermat-Zahl]]&lt;br /&gt;
:&amp;lt;math&amp;gt;F_8 = 2^{2^{8}}+1= 2^{256} + 1 = 1238926361552897 \cdot p_{62}&amp;lt;/math&amp;gt;&lt;br /&gt;
faktorisiert werden. &amp;lt;math&amp;gt;p_{62}&amp;lt;/math&amp;gt; bezeichnet dabei eine (Prim)Zahl mit 62 Stellen, von der erst später bewiesen wurde, dass es sich bei ihr um eine Primzahl handelt.&lt;br /&gt;
&lt;br /&gt;
== Implementierungen ==&lt;br /&gt;
Die Rho-Methode ist unter dem Namen &amp;lt;code&amp;gt;rho_factorize()&amp;lt;/code&amp;gt; Bestandteil der Funktionsbibliothek des Programms [[ARIBAS]] von [[Otto Forster]].&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* &amp;#039;&amp;#039;A Monte Carlo Method for Factorization&amp;#039;&amp;#039;, J.M.Pollard, BIT 15 (1975) 331–334&lt;br /&gt;
* &amp;#039;&amp;#039;An Improved Monte Carlo Factorization Algorithm&amp;#039;&amp;#039;, R.P.Brent, BIT 20 (1980) 176–184&lt;br /&gt;
* Otto Forster: &amp;#039;&amp;#039;Algorithmische Zahlentheorie.&amp;#039;&amp;#039; Vieweg, 1996, ISBN 3-528-06580-X&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* [https://mathworld.wolfram.com/PollardRhoFactorizationMethod.html Pollard Rho Methode in der Mathworld]&lt;br /&gt;
* [http://www-fs.informatik.uni-tuebingen.de/~reinhard/krypto/Factor/RhoFac.html Applet für Pollard-Rho Faktorisierung]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Zahlentheoretischer Algorithmus]]&lt;br /&gt;
[[Kategorie:Faktorisierungsverfahren]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>