∞

Erweiterter-Euklid-Rechner

GGT · Bézout-Koeffizienten · Modulares Inverses

Berechne GGT(a, b) zusammen mit den ganzen Zahlen s und t, die s·a + t·b = GGT erfüllen. Komplette Iterationstabelle und modulares Inverses, wenn teilerfremd.

Schnellbeispiele

Was ist der erweiterte euklidische Algorithmus?

Der erweiterte euklidische Algorithmus ist eine leistungsstarke Erweiterung des klassischen euklidischen Algorithmus, der vom antiken griechischen Mathematiker Euklid entdeckt wurde. Während der grundlegende Algorithmus den größten gemeinsamen Teiler (GGT) zweier ganzer Zahlen durch wiederholte Division findet, berechnet die erweiterte Version gleichzeitig zwei ganzzahlige Koeffizienten s und t — genannt Bézout-Koeffizienten.

s · a + t · b = GCD(a, b)

Diese Identität, bekannt als Bézout-Identität, garantiert, dass solche ganzzahligen Koeffizienten für jedes Paar ganzer Zahlen existieren.

Die Identität von Bézout erklärt

Das Lemma von Bézout (oder Bézout-Identität) besagt: Für beliebige ganze Zahlen a und b mit dem GGT(a, b) = d existieren ganze Zahlen s und t, sodass s · a + t · b = d.

Die Bézout-Koeffizienten sind nicht eindeutig. Wenn (s, t) ein Paar ist, dann ist (s + k · (b/d), t − k · (a/d)) ein weiteres gültiges Paar für eine beliebige ganze Zahl k.

Wie der Algorithmus Schritt für Schritt funktioniert

Der Algorithmus durchläuft dieselbe Divisionsschleife wie der Basis-GGT, verfolgt aber zwei zusätzliche Sequenzen (si) und (ti), die bei jedem Schritt ri = si · a + ti · b erfüllen.

  • ri+1 = ri-1 − qi × ri  (standard GCD step)
  • si+1 = si-1 − qi × si
  • ti+1 = ti-1 − qi × ti

Ausgehend von (r₀, s₀, t₀) = (a, 1, 0) und (r₁, s₁, t₁) = (b, 0, 1) endet der Algorithmus, wenn ri = 0.

Zeitkomplexität — Satz von Lamé

Der erweiterte euklidische Algorithmus hat die Zeitkomplexität O(log min(a, b)). Der Schlüsselsatz ist der Satz von Lamé (1844).

Im Vergleich dazu wäre eine naive Suche nach Bézout-Koeffizienten exponentiell. Die logarithmische Komplexität macht ihn sogar für die riesigen Zahlen in der modernen Kryptographie (1024–4096 Bit) praktikabel.

Modulares Inverses via erweitertem euklidischem Algorithmus

Die wichtigste Anwendung ist die Berechnung modularer Inverser. Das modulare Inverse von a modulo m existiert genau dann, wenn GGT(a, m) = 1.

Wenn GGT(a, m) = 1, liefert der Algorithmus s · a + t · m = 1. Reduziert modulo m: s · a ≡ 1 (mod m), also a⁻¹ mod m = s mod m.

Referenztabelle: GGT, Bézout s, t für gängige Paare

a b GCD s (Bézout) t (Bézout) Verification
25210521-25-2×252 + 5×105 = 21 ✓
351551-21×35 + (-2)×15 = 5 ✓
17131-34-3×17 + 4×13 = 1 ✓
48186-13-1×48 + 3×18 = 6 ✓
10075251-11×100 + (-1)×75 = 25 ✓
107146221-921-9×1071 + 21×462 = 21 ✓

Anwendungen in Informatik und Kryptographie

  • RSA-Verschlüsselung: Die Ableitung des privaten Schlüssels erfordert die Berechnung von d = e⁻¹ mod λ(n).
  • Chinesischer Restsatz (CRT): Die Rekonstruktion von Lösungen erfordert bei jedem Schritt modulare Inverse.
  • Diffie-Hellman / ElGamal: Entschlüsselungsoperationen in diesen Schemata stützen sich auf modulare Inverse.
  • Lineare diophantische Gleichungen: Jede Gleichung ax + by = c mit ganzzahligen Lösungen kann mithilfe von Bézout-Koeffizienten gelöst werden.
  • Bruchkürzung in der modularen Arithmetik: Berechnung von a/b mod m als a × b⁻¹ mod m.
  • Fehlerkorrektur-Codes: Reed-Solomon- und BCH-Codes verwenden polynomielle GGTs über endlichen Körpern.

Häufig gestellte Fragen

Was ist der erweiterte euklidische Algorithmus?
Der erweiterte euklidische Algorithmus erweitert die klassische GGT-Berechnung, um auch ganzzahlige Bézout-Koeffizienten s und t zu finden, die s · a + t · b = GGT(a,b) erfüllen.
Was sind Bézout-Koeffizienten?
Bézout-Koeffizienten sind ganze Zahlen s und t, sodass s · a + t · b = GGT(a, b). Ihre Existenz wird durch die Bézout-Identität garantiert.
Wie findet man das modulare Inverse mit dem erweiterten GGT?
Wenn GGT(a, m) = 1 (a und m teilerfremd sind), führe den Algorithmus auf a und m aus, um s · a + t · m = 1 zu erhalten.
Was ist die Identität von Bézout?
Die Bézout-Identität besagt, dass für zwei beliebige ganze Zahlen a und b mit d = GGT(a, b) ganze Zahlen s und t existieren mit s · a + t · b = d.
Wann existiert das modulare Inverse nicht?
Das modulare Inverse von a modulo m existiert genau dann, wenn GGT(a, m) = 1 (a und m haben keinen gemeinsamen Teiler außer 1).
Wie wird der erweiterte GGT in der RSA-Verschlüsselung verwendet?
Bei der RSA-Schlüsselerzeugung wird der private Exponent d als d = e⁻¹ mod φ(n) mithilfe des erweiterten euklidischen Algorithmus berechnet.
Was ist die Zeitkomplexität des erweiterten euklidischen Algorithmus?
Der Algorithmus läuft in O(log min(a, b)) Zeit — genauso wie der standardmäßige euklidische Algorithmus.