Modulo-Rechner mit modularer Inverse
Modulo-Rechner für große Zahlen: Rest, modulares Potenzieren, modulare Inverse und erweiterter euklidischer Algorithmus mit Rechenweg.
| Schritt | r | q | s | t |
|---|
Alles läuft in Ihrem Browser. Eingaben verlassen Ihr Gerät nicht.
Modulare Arithmetik mit BigInt
Der Modulo-Rechner rechnet mit Restklassen: a mod m ist der Rest bei der Division von a durch m, immer als Zahl zwischen 0 und m − 1. Dazu kommen die wichtigsten Operationen der Zahlentheorie: modulares Potenzieren (a^b mod m) mit dem Verfahren „Square and Multiply“, die modulare Inverse und der erweiterte euklidische Algorithmus, der neben dem ggT auch die Bézout-Koeffizienten s und t mit s·a + t·m = ggT(a, m) liefert.
Alle Rechnungen laufen mit BigInt, also ohne Rundung und mit beliebig vielen Stellen. Damit lassen sich auch Werte aus der Kryptografie nachrechnen. Das Beispiel RSA lädt die Lehrbuchwerte p = 61, q = 53: Mit n = 3233, φ(n) = 3120 und e = 17 ergibt die modulare Inverse den privaten Exponenten d = 2753. Die Tabelle zeigt jeden Schritt des erweiterten euklidischen Algorithmus mit Rest r, Quotient q und den Koeffizienten s und t.
Grenzen: Negative Exponenten werden als Potenz der Inversen gerechnet, das geht nur, wenn die Inverse existiert. Sehr große Exponenten sind schnell, sehr große Moduln mit Tausenden Stellen können aber einige Sekunden dauern. Für Primzahltests nutzen Sie den Rechner Primzahl prüfen.
Anleitung: Modulo-Rechner in 4 Schritten
- Geben Sie die Zahl
a, den Exponenten oder zweiten Operandenbund den Modulmein; beliebig große ganze Zahlen sind erlaubt. - Wählen Sie unter „Rechenart“ zum Beispiel „Potenz a^b mod m“ oder „Inverse a⁻¹ mod m“.
- Lesen Sie das Ergebnis oben ab; darunter steht bei Inverse und ggT die Tabelle des erweiterten euklidischen Algorithmus.
- Mit „Kopieren“ übernehmen Sie das Ergebnis, mit „Beispiel RSA“ laden Sie ein kleines RSA-Lehrbeispiel.
Typische Anwendungsfälle
- RSA im Unterricht nachrechnen: privaten Exponenten d als Inverse von e modulo φ(n) bestimmen.
- Prüfziffern und Hash-Funktionen nachvollziehen, die mit Resten modulo einer Primzahl arbeiten.
- Ergebnisse eigener Implementierungen von modpow oder Inverse in Python, Java oder JavaScript gegenprüfen.
- Lineare Kongruenzen wie 7x ≡ 1 (mod 40) lösen.
Häufige Fragen
Wie berechne ich die modulare Inverse?
Mit dem erweiterten euklidischen Algorithmus. Er findet s und t mit s·a + t·m = 1. Dann ist s mod m die Inverse von a. Für 17 modulo 3120 ist das 2753.
Was ist modulares Potenzieren?
Die Berechnung von a^b mod m, ohne a^b vollständig auszurechnen. Nach jedem Quadrieren und Multiplizieren wird sofort modulo m reduziert, daher bleibt die Rechnung klein und schnell.
Was sind Restklassen?
Alle ganzen Zahlen, die bei Division durch m denselben Rest lassen, bilden eine Restklasse. Modulo 5 gehören etwa 2, 7, 12 und −3 zur selben Klasse.
Warum BigInt statt normaler Zahlen?
JavaScript-Zahlen sind nur bis 2^53 exakt. In der Kryptografie sind Zahlen mit Hunderten Stellen üblich, dafür ist BigInt nötig.
Warum liefert -7 % 3 in JavaScript -1 und nicht 2?
Der Operator % in JavaScript, Java und C ist ein Rest mit dem Vorzeichen des Dividenden. Mathematisch üblich ist der kleinste nichtnegative Rest; der Rechner gibt diesen aus, also 2.
Wann gibt es keine modulare Inverse?
Nur wenn ggT(a, m) = 1 ist, existiert eine Inverse. Bei a = 6 und m = 9 ist der ggT 3, daher gibt es keine Zahl x mit 6x ≡ 1 (mod 9).
Das könnte auch helfen
IBAN prüfen
IBAN-Prüfziffer (Mod 97) und Kreditkartennummer (Luhn) formal prüfen, ohne Speicherung.
ÖffnenZahlensysteme umrechnen
Dezimal, Binär, Oktal, Hexadezimal und jede Basis von 2 bis 36, auch sehr große Zahlen.
ÖffnenBit-Byte-Umrechner
Bit, Byte, Kilobit, Megabit, Gigabit und Mbit/s in MB/s umrechnen, dezimal und binär.
ÖffnenDateigröße umrechnen
KB, MB, GB, TB und KiB, MiB, GiB umrechnen, mit Erklärung zu SI- und IEC-Einheiten.
ÖffnenBitweise Operationen
AND, OR, XOR, NOT und Shifts mit Bitdarstellung für 8, 16, 32 und 64 Bit rechnen.
ÖffnenRömische Zahlen umrechnen
Zahlen in römische Ziffern und zurück umrechnen, 1 bis 3999, mit Prüfung der Schreibweise.
Öffnen