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: (7006 + 2104) mod 7.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(7006 + 2104) mod 7 ≡ (7006 mod 7 + 2104 mod 7) mod 7.

7006 mod 7 ≡ 6 mod 7 kann man relativ leicht bestimmen, weil ja 7006 = 7000+6 = 7 ⋅ 1000 +6.

2104 mod 7 ≡ 4 mod 7 kann man relativ leicht bestimmen, weil ja 2104 = 2100+4 = 7 ⋅ 300 +4.

Somit gilt:

(7006 + 2104) mod 7 ≡ (6 + 4) mod 7 ≡ 10 mod 7 ≡ 3 mod 7.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (95 ⋅ 23) mod 8.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(95 ⋅ 23) mod 8 ≡ (95 mod 8 ⋅ 23 mod 8) mod 8.

95 mod 8 ≡ 7 mod 8 kann man relativ leicht bestimmen, weil ja 95 = 88 + 7 = 11 ⋅ 8 + 7 ist.

23 mod 8 ≡ 7 mod 8 kann man relativ leicht bestimmen, weil ja 23 = 16 + 7 = 2 ⋅ 8 + 7 ist.

Somit gilt:

(95 ⋅ 23) mod 8 ≡ (7 ⋅ 7) mod 8 ≡ 49 mod 8 ≡ 1 mod 8.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 573128 mod 827.

Lösung einblenden

Die 128 im Exponent ist ja ein reine 2er-Potenz (27).

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. 573 -> x
2. mod(x²,827) -> 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: 5731=573

2: 5732=5731+1=5731⋅5731 ≡ 573⋅573=328329 ≡ 10 mod 827

4: 5734=5732+2=5732⋅5732 ≡ 10⋅10=100 ≡ 100 mod 827

8: 5738=5734+4=5734⋅5734 ≡ 100⋅100=10000 ≡ 76 mod 827

16: 57316=5738+8=5738⋅5738 ≡ 76⋅76=5776 ≡ 814 mod 827

32: 57332=57316+16=57316⋅57316 ≡ 814⋅814=662596 ≡ 169 mod 827

64: 57364=57332+32=57332⋅57332 ≡ 169⋅169=28561 ≡ 443 mod 827

128: 573128=57364+64=57364⋅57364 ≡ 443⋅443=196249 ≡ 250 mod 827

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 380168 mod 607.

Lösung einblenden

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

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

168 = 128+32+8

1: 3801=380

2: 3802=3801+1=3801⋅3801 ≡ 380⋅380=144400 ≡ 541 mod 607

4: 3804=3802+2=3802⋅3802 ≡ 541⋅541=292681 ≡ 107 mod 607

8: 3808=3804+4=3804⋅3804 ≡ 107⋅107=11449 ≡ 523 mod 607

16: 38016=3808+8=3808⋅3808 ≡ 523⋅523=273529 ≡ 379 mod 607

32: 38032=38016+16=38016⋅38016 ≡ 379⋅379=143641 ≡ 389 mod 607

64: 38064=38032+32=38032⋅38032 ≡ 389⋅389=151321 ≡ 178 mod 607

128: 380128=38064+64=38064⋅38064 ≡ 178⋅178=31684 ≡ 120 mod 607

380168

= 380128+32+8

= 380128⋅38032⋅3808

120 ⋅ 389 ⋅ 523 mod 607
46680 ⋅ 523 mod 607 ≡ 548 ⋅ 523 mod 607
286604 mod 607 ≡ 100 mod 607

Es gilt also: 380168 ≡ 100 mod 607

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 31 ⋅ x ≡ 1 mod 59 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 59 und 31

=>59 = 1⋅31 + 28
=>31 = 1⋅28 + 3
=>28 = 9⋅3 + 1
=>3 = 3⋅1 + 0

also gilt: ggt(59,31)=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= 28-9⋅3
3= 31-1⋅28 eingesetzt in die Zeile drüber: 1 = 1⋅28 -9⋅(31 -1⋅ 28)
= 1⋅28 -9⋅31 +9⋅ 28)
= -9⋅31 +10⋅ 28 (=1)
28= 59-1⋅31 eingesetzt in die Zeile drüber: 1 = -9⋅31 +10⋅(59 -1⋅ 31)
= -9⋅31 +10⋅59 -10⋅ 31)
= 10⋅59 -19⋅ 31 (=1)

Es gilt also: ggt(59,31)=1 = 10⋅59 -19⋅31

oder wenn man 10⋅59 auf die linke Seite bringt:

1 -10⋅59 = -19⋅31

-19⋅31 = -10⋅59 + 1 |+59⋅31

-19⋅31 + 59⋅31 = -10⋅59 + 59⋅31 + 1

(-19 + 59) ⋅ 31 = (-10 + 31) ⋅ 59 + 1

40⋅31 = 21⋅59 + 1

Es gilt also: 40⋅31 = 21⋅59 +1

Somit 40⋅31 = 1 mod 59

40 ist also das Inverse von 31 mod 59

Schlüsselpaar für RSA

Beispiel:

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