nach Aufgabentypen suchen

Aufgabentypen anhand von Beispielen durchstöbern

Browserfenster aktualisieren (F5), um neue Beispiele bei den Aufgabentypen zu sehen

Modulo addieren

Beispiel:

Berechne ohne WTR: (1497 + 120) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(1497 + 120) mod 3 ≡ (1497 mod 3 + 120 mod 3) mod 3.

1497 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 1497 = 1500-3 = 3 ⋅ 500 -3 = 3 ⋅ 500 - 3 + 0.

120 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 120 = 120+0 = 3 ⋅ 40 +0.

Somit gilt:

(1497 + 120) mod 3 ≡ (0 + 0) mod 3 ≡ 0 mod 3.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (40 ⋅ 28) mod 11.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(40 ⋅ 28) mod 11 ≡ (40 mod 11 ⋅ 28 mod 11) mod 11.

40 mod 11 ≡ 7 mod 11 kann man relativ leicht bestimmen, weil ja 40 = 33 + 7 = 3 ⋅ 11 + 7 ist.

28 mod 11 ≡ 6 mod 11 kann man relativ leicht bestimmen, weil ja 28 = 22 + 6 = 2 ⋅ 11 + 6 ist.

Somit gilt:

(40 ⋅ 28) mod 11 ≡ (7 ⋅ 6) mod 11 ≡ 42 mod 11 ≡ 9 mod 11.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 54716 mod 673.

Lösung einblenden

Die 16 im Exponent ist ja ein reine 2er-Potenz (24).

Deswegen quadrieren wir einfach mit jedem Schritt das Ergebnis und kommen so immer eine 2er-Potenz im Exponenten höher:

Zur technischen Durchführung mit einem TI-WTR bietet sich folgende Vorgehensweise an:
1. 547 -> x
2. mod(x²,673) -> x

  • den Pfeil "->" erhält man durch Drücken der [sto->]-Taste
  • die x-Taste ist direkt darüber
  • "mod" erhält man durch [math]->NUM->8:mod
  • das Komma "," erhält man durch Drücken von [2nd][.]

1: 5471=547

2: 5472=5471+1=5471⋅5471 ≡ 547⋅547=299209 ≡ 397 mod 673

4: 5474=5472+2=5472⋅5472 ≡ 397⋅397=157609 ≡ 127 mod 673

8: 5478=5474+4=5474⋅5474 ≡ 127⋅127=16129 ≡ 650 mod 673

16: 54716=5478+8=5478⋅5478 ≡ 650⋅650=422500 ≡ 529 mod 673

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 625137 mod 863.

Lösung einblenden

Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 137 (grauer Kasten).

Dann schauen wir die Binärdarstellung von 137 an und zerlegen 137 in eine Summer von 2er-Potenzen:

137 = 128+8+1

1: 6251=625

2: 6252=6251+1=6251⋅6251 ≡ 625⋅625=390625 ≡ 549 mod 863

4: 6254=6252+2=6252⋅6252 ≡ 549⋅549=301401 ≡ 214 mod 863

8: 6258=6254+4=6254⋅6254 ≡ 214⋅214=45796 ≡ 57 mod 863

16: 62516=6258+8=6258⋅6258 ≡ 57⋅57=3249 ≡ 660 mod 863

32: 62532=62516+16=62516⋅62516 ≡ 660⋅660=435600 ≡ 648 mod 863

64: 62564=62532+32=62532⋅62532 ≡ 648⋅648=419904 ≡ 486 mod 863

128: 625128=62564+64=62564⋅62564 ≡ 486⋅486=236196 ≡ 597 mod 863

625137

= 625128+8+1

= 625128⋅6258⋅6251

597 ⋅ 57 ⋅ 625 mod 863
34029 ⋅ 625 mod 863 ≡ 372 ⋅ 625 mod 863
232500 mod 863 ≡ 353 mod 863

Es gilt also: 625137 ≡ 353 mod 863

erweiterter Euklid'scher Algorithmus

Beispiel:

Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 72.

Also bestimme x, so dass 72 ⋅ x ≡ 1 mod 89 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 89 und 72

=>89 = 1⋅72 + 17
=>72 = 4⋅17 + 4
=>17 = 4⋅4 + 1
=>4 = 4⋅1 + 0

also gilt: ggt(89,72)=1

Jetzt formen wir jede Zeile von unten nach oben um indem wir das Prokukt auf die andere Seite bringen.
Wir starten mit der zweitletzten Zeile:

1= 17-4⋅4
4= 72-4⋅17 eingesetzt in die Zeile drüber: 1 = 1⋅17 -4⋅(72 -4⋅ 17)
= 1⋅17 -4⋅72 +16⋅ 17)
= -4⋅72 +17⋅ 17 (=1)
17= 89-1⋅72 eingesetzt in die Zeile drüber: 1 = -4⋅72 +17⋅(89 -1⋅ 72)
= -4⋅72 +17⋅89 -17⋅ 72)
= 17⋅89 -21⋅ 72 (=1)

Es gilt also: ggt(89,72)=1 = 17⋅89 -21⋅72

oder wenn man 17⋅89 auf die linke Seite bringt:

1 -17⋅89 = -21⋅72

-21⋅72 = -17⋅89 + 1 |+89⋅72

-21⋅72 + 89⋅72 = -17⋅89 + 89⋅72 + 1

(-21 + 89) ⋅ 72 = (-17 + 72) ⋅ 89 + 1

68⋅72 = 55⋅89 + 1

Es gilt also: 68⋅72 = 55⋅89 +1

Somit 68⋅72 = 1 mod 89

68 ist also das Inverse von 72 mod 89

Schlüsselpaar für RSA

Beispiel:

Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 47 und q = 73. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.