ForHosting KIT · Mathematik

Schnelle modulare Exponentiation

Erhalten Sie den exakten Rest einer riesigen Potenz ohne Überlauf: 2 hoch 10 modulo 1000 ergibt 24, und 3 hoch 5 modulo 13 ergibt 9. Basis, Exponent und Modul dürfen je bis zu 2048 Stellen haben. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Basis
2
Exponent
10
Betrag
1000
Erhalten Sie
Ergebnis
24

Schnelle modulare Exponentiation beantwortet eine präzise Frage: Was ist der exakte nichtnegative Rest, wenn eine ganzzahlige Basis auf einen ganzzahligen Exponenten erhoben und modulo m reduziert wird? Dieser Rest trägt RSA-Stil-Demonstrationen im Unterricht, Diffie–Hellman-Schlüsselaustausch-Skizzen, Programmierwettbewerbsaufgaben und jedes Produktionsskript, das große Ganzzahlen potenzieren muss, ohne Festbreiten-Typen zu überlaufen oder Präzision jenseits von 2^53 zu verlieren.

Was die schnelle modulare Exponentiation berechnet

Gegeben ganzzahlige base, exponent und Modul m liefert die modulare Exponentiation den eindeutigen Rest r im abgeschlossenen Intervall von null bis m minus eins, sodass die Basis hoch Exponent kongruent zu r modulo m ist. In Symbolen: r ≡ base^exponent (mod m). Ein naiver Ansatz multipliziert die Basis exponent-mal mit sich selbst und reduziert erst danach, was Zwischenwerte weit über Gleitkomma oder Festbreiten-Ganzzahlen aufbläht und stillschweigend scheitert, wenn Präzision verloren geht.

Schnelle modulare Exponentiation reduziert nach jeder Multiplikation und quadriert die laufende Basis, während sie die Exponentenbits vom niedrigst- zum höchstwertigen abtastet, sodass die Gesamtarbeit mit der Bitlänge des Exponenten skaliert und nicht mit seiner Dezimalgröße. Wenn m eins ist, ist jede Ganzzahl kongruent zu null, also ist das Ergebnis stets null. Wenn der Exponent null ist, ist das Ergebnis eins für jede Basis, sofern m größer als eins ist, entsprechend der leeren-Produkt-Konvention der Zahlentheorie und von Programmbibliotheken.

Negative Basen werden zuerst in das nichtnegative Restsystem modulo m reduziert, damit die Multiplikationskette keine vorzeichenbehafteten Reste mischt. Negative Exponenten werden abgelehnt, weil sie modulare Inverse verlangen, die nicht existieren können, wenn base und m nicht teilerfremd sind; dieser Invers-Schritt liegt außerhalb des Umfangs dieses Rechners.

Grenzen, Leistung und Einsatz bei Entwicklern

Binäre modulare Exponentiation führt eine konstante Anzahl modularer Multiplikationen pro Exponentenbit aus, sodass eine Verdopplung des Exponenten die Arbeit grob verdoppelt, während ein größerer Modul die Kosten jeder Multiplikation mit der Ziffernlänge steigert. Lehrkräfte nutzen es, um Handrechnungen von a^b mod m zu prüfen, bevor Studierende Beweise abgeben. Entwickler binden es in Eigenschaftstests ein, die behaupten, dass Protokolle in Restklassen bleiben, in Spiele oder Ranglisten, die große Zähler modulo einer Primzahl falten, und in Skript-Pipelines, die Square-and-Multiply nicht in jeder Sprache neu implementieren sollen.

Wettbewerbs- und Hausaufgaben-Antworten a^b mod m prüfen

Studierende und Tutoren können modulare Potenzen prüfen, ohne riesige Zwischenwerte von Hand zu multiplizieren oder einem Rechner zu vertrauen, der still Präzision jenseits von 2^53 verliert.

Krypto-Demos und Protokoll-Unit-Tests anstoßen

Skripte, die einen deterministischen Schritt base^exp mod m für Spielzeug-RSA, Diffie–Hellman oder Restklassen-Assertionen brauchen, können dies aufrufen statt eigener BigInt-Potenzierung.

Große Zähler in einen festen Restbereich falten

Spiele, Ranking-Systeme und Sharding-Helfer, die eine Ganzzahl potenzieren und dann modulo m reduzieren, erhalten einen exakten Rest ohne Gleitkomma-Rundungsüberraschungen.

Was ist modulare Exponentiation?

Es ist das Erheben der Basis zu einem Exponenten und das Bilden des Rests modulo m, geschrieben base^exponent mod m. Dieser Rechner liefert diesen nichtnegativen Rest als result.

Warum wird ein negativer Exponent abgelehnt?

Negative Exponenten bedeuten reziproke Potenzen und erfordern modulare Inverse, die nicht existieren können, wenn base und m nicht teilerfremd sind.

Wie funktioniert der Rechner für schnelle modulare Exponentiation?

Er nutzt binäres Square-and-Multiply über BigInt: für jedes Bit des Exponenten wird die laufende Basis modulo m quadriert und bei gesetztem Bit in das Ergebnis multipliziert.

Was passiert, wenn der Modul 1 oder der Exponent 0 ist?

Bei Modul 1 lässt jede Zahl den Rest 0, das Ergebnis ist also immer 0. Bei Exponent 0 ist das Ergebnis für jede Basis 1, solange der Modul größer als 1 ist: 7 hoch 0 modulo 5 ergibt 1.

Wie groß dürfen die Zahlen sein?

Basis, Exponent und Modul dürfen jeweils bis zu 2048 Dezimalstellen haben. Das reicht für Wettbewerbsaufgaben, Hausaufgaben und viele Beispiele in kryptografischer Größenordnung, und die Berechnung bleibt dabei interaktiv.

Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.

POSThttps://api.kit.forhosting.com/dev/modular-exponentiation

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/dev/modular-exponentiation \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"base":"2","exponent":"10","modulus":"1000"}'
{
  "base": "2",
  "exponent": "10",
  "modulus": "1000"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "dev.modular_exponentiation",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Dieser Rechner für schnelle modulare Exponentiation führt den binären Square-and-Multiply-Algorithmus über BigInt aus, sodass Zwischenprodukte in jedem Schritt reduziert bleiben, die Antwort deterministisch ist und Sie denselben reinen Kern kostenlos im Browser testen können, bevor Sie den API-Pfad aufrufen, der nur erfolgreiche Aufgaben abrechnet.

Was die schnelle modulare Exponentiation berechnet

Der Modul muss mindestens eins sein; null oder negative Moduln definieren keinen standardmäßigen nichtnegativen Rest und liefern invalid_input statt einer erfundenen Antwort.

API aufrufen und das Ergebnis lesen

Senden Sie einen JSON-Körper mit drei Pflichtfeldern: base, exponent und modulus. Jedes kann eine dezimale Ganzzahlzeichenkette oder eine JSON-Zahl sein; die Zeichenkettenform wird für Werte jenseits des sicheren Ganzzahlbereichs von JavaScript bevorzugt, weil darüber nicht jede Ganzzahl exakt darstellbar ist. Alias a für base, exp oder e oder power für exponent sowie m oder mod für modulus werden akzeptiert, damit Formulare und handgeschriebene Clients einen gemeinsamen Vertrag teilen, ohne Schlüssel umzubenennen. Bei Erfolg spiegelt die Antwort base, exponent und modulus als normalisierte Dezimalzeichenketten wider und fügt result als den nichtnegativen Rest von base^exponent mod modulus hinzu. Klassische Prüfungen, die Sie sofort ausführen können: base 2, exponent 10, modulus 1000 liefert result 24; base 3, exponent 5, modulus 13 liefert 9; base 7, exponent 0, modulus 5 liefert 1. Fehlgeschlagene Validierung—fehlende Felder, Nicht-Ganzzahlen, Brüche, Modul unter eins, negativer Exponent oder ein Wert länger als das veröffentlichte Ziffernlimit—liefert invalid_input und wird nie vom Prepaid-Guthaben abgebucht. Der Preis ist pauschal $0.002 pro erfolgreicher Anfrage unter der Einheit item.

Grenzen, Leistung und Einsatz bei Entwicklern

Diese Fähigkeit begrenzt base, exponent und modulus jeweils auf 2048 Dezimalziffern—groß genug für Wettbewerbe, Hausaufgaben und viele Demos im kryptografischen Maßstab—und klein genug, dass reines Worker-BigInt interaktiv bleibt, ohne einen schweren Multipräzisionsstapel oder einen Container. Wenn Sie Moduln mit Millionen Ziffern, Zerlegungen nach dem chinesischen Restsatz oder zeitkonstante, seitenkanalfeste Krypto-Primitive brauchen, benötigen Sie eine dedizierte Kryptobibliothek; dieses leichte Parse-Werkzeug ist absichtlich der gemeinsame Rechner und API-Schritt für exakte modulare Potenzen in Entwicklungsabläufen. Kombinieren Sie es mit Faktorisierungs- oder modularen Invers-Tools, wenn der Ablauf das volle modulare Werkzeugset braucht; dieser Endpoint beantwortet nur die Frage nach Potenzieren und Reduzieren, damit die Suchintention klar und die Antwort minimal und vorhersehbar bleibt.

Was passiert, wenn der Modul kleiner als 1 ist?

Der Modul muss mindestens 1 sein. Null oder negative Moduln definieren hier nicht den üblichen nichtnegativen Rest und liefern invalid_input.

Ist der Rechner für schnelle modulare Exponentiation kostenlos?

Das Browser-Tool ist kostenlos und läuft lokal. API-Aufrufe nutzen Prepaid-KIT-Guthaben zu $0.002 pro erfolgreicher Anfrage; fehlgeschlagene Aufgaben werden nicht berechnet.

Vollständige KIT-Dokumentation lesen →