Modulo

Aus Xinux Wiki
Version vom 20. Oktober 2026, 05:29 Uhr von Thomas.will (Diskussion | Beiträge) (Uhr-Beispiel, Tabellen, Beispiele für Hash und Netz, Potenz-Zyklus, Link zur Animation)
Zur Navigation springen Zur Suche springen

Schaubild

modulo

Animation: Modulo: Rechnen im Kreis

Modulo (Restklassenrechnung)

Bedeutung

Die Modulo-Operation liefert den Rest einer Division. Sie ist ein zentrales Werkzeug in der Kryptografie, der Informatik und bei Netzwerkberechnungen.

Die Uhr

Jeder rechnet täglich modulo, meist ohne es zu merken:

  • Es ist 9 Uhr. In 5 Stunden ist es nicht 14 Uhr auf dem Zifferblatt, sondern 2 Uhr.
  • Nach der 12 fängt der Zeiger wieder von vorn an.
  • Genau das ist Modulo: 9 + 5 = 14, und 14 mod 12 = 2.

Auch beliebig viele Stunden passen auf die Uhr: 100 Stunden sind 8 volle Runden (96) und 4 Stunden übrig, also 100 mod 12 = 4.

Grundprinzip

a mod n = r
  • r ist der Rest, der entsteht, wenn a durch n geteilt wird.
  • Man kann sich eine Uhr mit n Feldern vorstellen, beschriftet mit 0 bis n−1.
  • Der Zeiger läuft a Schritte. Wo er stehen bleibt, ist das Ergebnis.
  • Wie viele volle Runden er dabei gedreht hat, spielt keine Rolle.

Beispielrechnungen

Rechnung als Division auf der Uhr
17 mod 5 = 2 17 / 5 = 3 Rest 2 3 volle Runden, 2 Schritte übrig
29 mod 7 = 1 29 / 7 = 4 Rest 1 4 volle Runden, 1 Schritt übrig
100 mod 10 = 0 100 / 10 = 10 Rest 0 genau 10 Runden, der Zeiger steht wieder auf 0

Geht eine Division ohne Rest auf, ist das Ergebnis 0.

Modulo und periodisches Verhalten

Modulo erzeugt immer einen Wertebereich zwischen 0 und n−1. Beispiel für n = 5:

a 0 1 2 3 4 5 6 7 8 9 10 11
a mod 5 0 1 2 3 4 0 1 2 3 4 0 1

Zählt man hoch, kommen die Ergebnisse immer in derselben Reihenfolge wieder. Dadurch entstehen wiederkehrende Muster: Die Uhr läuft im Kreis.

Warum Modulo wichtig ist

  • Kryptografie: Modulo erzeugt Zyklen, die sich für Schlüsselräume und mathematische Gruppen eignen (RSA, Diffie-Hellman, ECC).
  • Hashfunktionen und Prüfsummen: Modulo bringt beliebig große Werte in einen festen Bereich. Beispiel: Ein Hashwert 1 234 567 soll auf eine Tabelle mit 8 Fächern verteilt werden: 1 234 567 mod 8 = 7, also Fach 7.
  • Netzwerke: Modulo hilft, Bereiche zu adressieren. Beispiel: Wo liegt 10.0.0.77 in Blöcken zu 64 Adressen (/26)? 77 mod 64 = 13, also Host 13 im Block, der Block beginnt bei 77 − 13 = 64, das Netz ist 10.0.0.64/26.

Anwendung in der Kryptografie

Nimmt man eine Zahl immer wieder mal sich selbst und rechnet jedes Mal modulo, läuft auch das im Kreis. Beispiel mit n = 14:

Potenz 21 22 23 24 25 26 27
mod 14 2 4 8 2 4 8 2

Auf solchen Zyklen beruhen die asymmetrischen Verfahren, nur mit Zahlen, die Hunderte Stellen lang sind:

  • RSA rechnet „hoch, dann mod n“ mit n = p · q aus zwei großen Primzahlen, siehe RSA Beispiel (dort mit n = 14).
  • Diffie-Hellman rechnet „g hoch a, dann mod p“ in einer zyklischen Gruppe.
  • ECC rechnet auf einer elliptischen Kurve modulo einer Primzahl.

Allen gemeinsam: Vorwärts ist die Rechnung leicht, rückwärts kommt man ohne das Geheimnis praktisch nicht hin.