Klasse 5-6
Klasse 7-8
Klasse 9-10
Kursstufe
cosh
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: (14007 + 347) mod 7.
Um längere Rechnungen zu vermeiden, rechnen wir:
(14007 + 347) mod 7 ≡ (14007 mod 7 + 347 mod 7) mod 7.
14007 mod 7 ≡ 0 mod 7 kann man relativ leicht bestimmen, weil ja 14007
= 14000
347 mod 7 ≡ 4 mod 7 kann man relativ leicht bestimmen, weil ja 347
= 350
Somit gilt:
(14007 + 347) mod 7 ≡ (0 + 4) mod 7 ≡ 4 mod 7.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (45 ⋅ 40) mod 10.
Um längere Rechnungen zu vermeiden, rechnen wir:
(45 ⋅ 40) mod 10 ≡ (45 mod 10 ⋅ 40 mod 10) mod 10.
45 mod 10 ≡ 5 mod 10 kann man relativ leicht bestimmen, weil ja 45 = 40 + 5 = 4 ⋅ 10 + 5 ist.
40 mod 10 ≡ 0 mod 10 kann man relativ leicht bestimmen, weil ja 40 = 40 + 0 = 4 ⋅ 10 + 0 ist.
Somit gilt:
(45 ⋅ 40) mod 10 ≡ (5 ⋅ 0) mod 10 ≡ 0 mod 10.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 72564 mod 929.
Die 64 im Exponent ist ja ein reine 2er-Potenz (26).
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. 725 -> x
2. mod(x²,929) -> 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: 7251=725
2: 7252=7251+1=7251⋅7251 ≡ 725⋅725=525625 ≡ 740 mod 929
4: 7254=7252+2=7252⋅7252 ≡ 740⋅740=547600 ≡ 419 mod 929
8: 7258=7254+4=7254⋅7254 ≡ 419⋅419=175561 ≡ 909 mod 929
16: 72516=7258+8=7258⋅7258 ≡ 909⋅909=826281 ≡ 400 mod 929
32: 72532=72516+16=72516⋅72516 ≡ 400⋅400=160000 ≡ 212 mod 929
64: 72564=72532+32=72532⋅72532 ≡ 212⋅212=44944 ≡ 352 mod 929
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 69097 mod 827.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 97 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 97 an und zerlegen 97 in eine Summer von 2er-Potenzen:
97 = 64+32+1
1: 6901=690
2: 6902=6901+1=6901⋅6901 ≡ 690⋅690=476100 ≡ 575 mod 827
4: 6904=6902+2=6902⋅6902 ≡ 575⋅575=330625 ≡ 652 mod 827
8: 6908=6904+4=6904⋅6904 ≡ 652⋅652=425104 ≡ 26 mod 827
16: 69016=6908+8=6908⋅6908 ≡ 26⋅26=676 ≡ 676 mod 827
32: 69032=69016+16=69016⋅69016 ≡ 676⋅676=456976 ≡ 472 mod 827
64: 69064=69032+32=69032⋅69032 ≡ 472⋅472=222784 ≡ 321 mod 827
69097
= 69064+32+1
= 69064⋅69032⋅6901
≡ 321 ⋅ 472 ⋅ 690 mod 827
≡ 151512 ⋅ 690 mod 827 ≡ 171 ⋅ 690 mod 827
≡ 117990 mod 827 ≡ 556 mod 827
Es gilt also: 69097 ≡ 556 mod 827
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-97-Inverse zur Zahl 86.
Also bestimme x, so dass 86 ⋅ x ≡ 1 mod 97 gilt:
Berechnung des größten gemeinsamen Teilers von 97 und 86
| =>97 | = 1⋅86 + 11 |
| =>86 | = 7⋅11 + 9 |
| =>11 | = 1⋅9 + 2 |
| =>9 | = 4⋅2 + 1 |
| =>2 | = 2⋅1 + 0 |
also gilt: ggt(97,86)=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= 9-4⋅2 | |||
| 2= 11-1⋅9 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅9 -4⋅(11 -1⋅ 9)
= 1⋅9 -4⋅11 +4⋅ 9) = -4⋅11 +5⋅ 9 (=1) |
| 9= 86-7⋅11 | eingesetzt in die Zeile drüber: | 1 |
= -4⋅11 +5⋅(86 -7⋅ 11)
= -4⋅11 +5⋅86 -35⋅ 11) = 5⋅86 -39⋅ 11 (=1) |
| 11= 97-1⋅86 | eingesetzt in die Zeile drüber: | 1 |
= 5⋅86 -39⋅(97 -1⋅ 86)
= 5⋅86 -39⋅97 +39⋅ 86) = -39⋅97 +44⋅ 86 (=1) |
Es gilt also: ggt(97,86)=1 = -39⋅97 +44⋅86
oder wenn man -39⋅97 auf die linke Seite bringt:
1 +39⋅97 = +44⋅86
Es gilt also: 44⋅86 = 39⋅97 +1
Somit 44⋅86 = 1 mod 97
44 ist also das Inverse von 86 mod 97
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 97 und q = 89. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
