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: (1497 - 3000) mod 3.
Um längere Rechnungen zu vermeiden, rechnen wir:
(1497 - 3000) mod 3 ≡ (1497 mod 3 - 3000 mod 3) mod 3.
1497 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 1497
= 1500
3000 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 3000
= 3000
Somit gilt:
(1497 - 3000) mod 3 ≡ (0 - 0) mod 3 ≡ 0 mod 3.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (100 ⋅ 97) mod 11.
Um längere Rechnungen zu vermeiden, rechnen wir:
(100 ⋅ 97) mod 11 ≡ (100 mod 11 ⋅ 97 mod 11) mod 11.
100 mod 11 ≡ 1 mod 11 kann man relativ leicht bestimmen, weil ja 100 = 99 + 1 = 9 ⋅ 11 + 1 ist.
97 mod 11 ≡ 9 mod 11 kann man relativ leicht bestimmen, weil ja 97 = 88 + 9 = 8 ⋅ 11 + 9 ist.
Somit gilt:
(100 ⋅ 97) mod 11 ≡ (1 ⋅ 9) mod 11 ≡ 9 mod 11.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 6638 mod 929.
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. 663 -> 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: 6631=663
2: 6632=6631+1=6631⋅6631 ≡ 663⋅663=439569 ≡ 152 mod 929
4: 6634=6632+2=6632⋅6632 ≡ 152⋅152=23104 ≡ 808 mod 929
8: 6638=6634+4=6634⋅6634 ≡ 808⋅808=652864 ≡ 706 mod 929
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 86291 mod 911.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 91 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 91 an und zerlegen 91 in eine Summer von 2er-Potenzen:
91 = 64+16+8+2+1
1: 8621=862
2: 8622=8621+1=8621⋅8621 ≡ 862⋅862=743044 ≡ 579 mod 911
4: 8624=8622+2=8622⋅8622 ≡ 579⋅579=335241 ≡ 904 mod 911
8: 8628=8624+4=8624⋅8624 ≡ 904⋅904=817216 ≡ 49 mod 911
16: 86216=8628+8=8628⋅8628 ≡ 49⋅49=2401 ≡ 579 mod 911
32: 86232=86216+16=86216⋅86216 ≡ 579⋅579=335241 ≡ 904 mod 911
64: 86264=86232+32=86232⋅86232 ≡ 904⋅904=817216 ≡ 49 mod 911
86291
= 86264+16+8+2+1
= 86264⋅86216⋅8628⋅8622⋅8621
≡ 49 ⋅ 579 ⋅ 49 ⋅ 579 ⋅ 862 mod 911
≡ 28371 ⋅ 49 ⋅ 579 ⋅ 862 mod 911 ≡ 130 ⋅ 49 ⋅ 579 ⋅ 862 mod 911
≡ 6370 ⋅ 579 ⋅ 862 mod 911 ≡ 904 ⋅ 579 ⋅ 862 mod 911
≡ 523416 ⋅ 862 mod 911 ≡ 502 ⋅ 862 mod 911
≡ 432724 mod 911 ≡ 910 mod 911
Es gilt also: 86291 ≡ 910 mod 911
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 37.
Also bestimme x, so dass 37 ⋅ x ≡ 1 mod 89 gilt:
Berechnung des größten gemeinsamen Teilers von 89 und 37
| =>89 | = 2⋅37 + 15 |
| =>37 | = 2⋅15 + 7 |
| =>15 | = 2⋅7 + 1 |
| =>7 | = 7⋅1 + 0 |
also gilt: ggt(89,37)=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= 15-2⋅7 | |||
| 7= 37-2⋅15 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅15 -2⋅(37 -2⋅ 15)
= 1⋅15 -2⋅37 +4⋅ 15) = -2⋅37 +5⋅ 15 (=1) |
| 15= 89-2⋅37 | eingesetzt in die Zeile drüber: | 1 |
= -2⋅37 +5⋅(89 -2⋅ 37)
= -2⋅37 +5⋅89 -10⋅ 37) = 5⋅89 -12⋅ 37 (=1) |
Es gilt also: ggt(89,37)=1 = 5⋅89 -12⋅37
oder wenn man 5⋅89 auf die linke Seite bringt:
1 -5⋅89 = -12⋅37
-12⋅37 = -5⋅89 + 1 |+89⋅37
-12⋅37 + 89⋅37 = -5⋅89 + 89⋅37 + 1
(-12 + 89) ⋅ 37 = (-5 + 37) ⋅ 89 + 1
77⋅37 = 32⋅89 + 1
Es gilt also: 77⋅37 = 32⋅89 +1
Somit 77⋅37 = 1 mod 89
77 ist also das Inverse von 37 mod 89
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 37 und q = 53. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
