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: (403 - 152) mod 8.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(403 - 152) mod 8 ≡ (403 mod 8 - 152 mod 8) mod 8.

403 mod 8 ≡ 3 mod 8 kann man relativ leicht bestimmen, weil ja 403 = 400+3 = 8 ⋅ 50 +3.

152 mod 8 ≡ 0 mod 8 kann man relativ leicht bestimmen, weil ja 152 = 160-8 = 8 ⋅ 20 -8 = 8 ⋅ 20 - 8 + 0.

Somit gilt:

(403 - 152) mod 8 ≡ (3 - 0) mod 8 ≡ 3 mod 8.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (20 ⋅ 25) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(20 ⋅ 25) mod 3 ≡ (20 mod 3 ⋅ 25 mod 3) mod 3.

20 mod 3 ≡ 2 mod 3 kann man relativ leicht bestimmen, weil ja 20 = 18 + 2 = 6 ⋅ 3 + 2 ist.

25 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 25 = 24 + 1 = 8 ⋅ 3 + 1 ist.

Somit gilt:

(20 ⋅ 25) mod 3 ≡ (2 ⋅ 1) mod 3 ≡ 2 mod 3.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 2728 mod 347.

Lösung einblenden

Die 8 im Exponent ist ja ein reine 2er-Potenz (23).

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. 272 -> x
2. mod(x²,347) -> 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: 2721=272

2: 2722=2721+1=2721⋅2721 ≡ 272⋅272=73984 ≡ 73 mod 347

4: 2724=2722+2=2722⋅2722 ≡ 73⋅73=5329 ≡ 124 mod 347

8: 2728=2724+4=2724⋅2724 ≡ 124⋅124=15376 ≡ 108 mod 347

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 565217 mod 601.

Lösung einblenden

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

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

217 = 128+64+16+8+1

1: 5651=565

2: 5652=5651+1=5651⋅5651 ≡ 565⋅565=319225 ≡ 94 mod 601

4: 5654=5652+2=5652⋅5652 ≡ 94⋅94=8836 ≡ 422 mod 601

8: 5658=5654+4=5654⋅5654 ≡ 422⋅422=178084 ≡ 188 mod 601

16: 56516=5658+8=5658⋅5658 ≡ 188⋅188=35344 ≡ 486 mod 601

32: 56532=56516+16=56516⋅56516 ≡ 486⋅486=236196 ≡ 3 mod 601

64: 56564=56532+32=56532⋅56532 ≡ 3⋅3=9 ≡ 9 mod 601

128: 565128=56564+64=56564⋅56564 ≡ 9⋅9=81 ≡ 81 mod 601

565217

= 565128+64+16+8+1

= 565128⋅56564⋅56516⋅5658⋅5651

81 ⋅ 9 ⋅ 486 ⋅ 188 ⋅ 565 mod 601
729 ⋅ 486 ⋅ 188 ⋅ 565 mod 601 ≡ 128 ⋅ 486 ⋅ 188 ⋅ 565 mod 601
62208 ⋅ 188 ⋅ 565 mod 601 ≡ 305 ⋅ 188 ⋅ 565 mod 601
57340 ⋅ 565 mod 601 ≡ 245 ⋅ 565 mod 601
138425 mod 601 ≡ 195 mod 601

Es gilt also: 565217 ≡ 195 mod 601

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 35 ⋅ x ≡ 1 mod 53 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 53 und 35

=>53 = 1⋅35 + 18
=>35 = 1⋅18 + 17
=>18 = 1⋅17 + 1
=>17 = 17⋅1 + 0

also gilt: ggt(53,35)=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= 18-1⋅17
17= 35-1⋅18 eingesetzt in die Zeile drüber: 1 = 1⋅18 -1⋅(35 -1⋅ 18)
= 1⋅18 -1⋅35 +1⋅ 18)
= -1⋅35 +2⋅ 18 (=1)
18= 53-1⋅35 eingesetzt in die Zeile drüber: 1 = -1⋅35 +2⋅(53 -1⋅ 35)
= -1⋅35 +2⋅53 -2⋅ 35)
= 2⋅53 -3⋅ 35 (=1)

Es gilt also: ggt(53,35)=1 = 2⋅53 -3⋅35

oder wenn man 2⋅53 auf die linke Seite bringt:

1 -2⋅53 = -3⋅35

-3⋅35 = -2⋅53 + 1 |+53⋅35

-3⋅35 + 53⋅35 = -2⋅53 + 53⋅35 + 1

(-3 + 53) ⋅ 35 = (-2 + 35) ⋅ 53 + 1

50⋅35 = 33⋅53 + 1

Es gilt also: 50⋅35 = 33⋅53 +1

Somit 50⋅35 = 1 mod 53

50 ist also das Inverse von 35 mod 53

Schlüsselpaar für RSA

Beispiel:

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