Aufgabenbeispiele von MGK Klasse 10
Durch Aktualisieren des Browsers (z.B. mit Taste F5) kann man neue Beispielaufgaben sehen
Modulo addieren
Beispiel:
Berechne ohne WTR: (29998 - 301) mod 6.
Um längere Rechnungen zu vermeiden, rechnen wir:
(29998 - 301) mod 6 ≡ (29998 mod 6 - 301 mod 6) mod 6.
29998 mod 6 ≡ 4 mod 6 kann man relativ leicht bestimmen, weil ja 29998
= 30000
301 mod 6 ≡ 1 mod 6 kann man relativ leicht bestimmen, weil ja 301
= 300
Somit gilt:
(29998 - 301) mod 6 ≡ (4 - 1) mod 6 ≡ 3 mod 6.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (21 ⋅ 27) mod 6.
Um längere Rechnungen zu vermeiden, rechnen wir:
(21 ⋅ 27) mod 6 ≡ (21 mod 6 ⋅ 27 mod 6) mod 6.
21 mod 6 ≡ 3 mod 6 kann man relativ leicht bestimmen, weil ja 21 = 18 + 3 = 3 ⋅ 6 + 3 ist.
27 mod 6 ≡ 3 mod 6 kann man relativ leicht bestimmen, weil ja 27 = 24 + 3 = 4 ⋅ 6 + 3 ist.
Somit gilt:
(21 ⋅ 27) mod 6 ≡ (3 ⋅ 3) mod 6 ≡ 9 mod 6 ≡ 3 mod 6.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 69464 mod 937.
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. 694 -> x
2. mod(x²,937) -> 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: 6941=694
2: 6942=6941+1=6941⋅6941 ≡ 694⋅694=481636 ≡ 18 mod 937
4: 6944=6942+2=6942⋅6942 ≡ 18⋅18=324 ≡ 324 mod 937
8: 6948=6944+4=6944⋅6944 ≡ 324⋅324=104976 ≡ 32 mod 937
16: 69416=6948+8=6948⋅6948 ≡ 32⋅32=1024 ≡ 87 mod 937
32: 69432=69416+16=69416⋅69416 ≡ 87⋅87=7569 ≡ 73 mod 937
64: 69464=69432+32=69432⋅69432 ≡ 73⋅73=5329 ≡ 644 mod 937
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 435143 mod 569.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 143 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 143 an und zerlegen 143 in eine Summer von 2er-Potenzen:
143 = 128+8+4+2+1
1: 4351=435
2: 4352=4351+1=4351⋅4351 ≡ 435⋅435=189225 ≡ 317 mod 569
4: 4354=4352+2=4352⋅4352 ≡ 317⋅317=100489 ≡ 345 mod 569
8: 4358=4354+4=4354⋅4354 ≡ 345⋅345=119025 ≡ 104 mod 569
16: 43516=4358+8=4358⋅4358 ≡ 104⋅104=10816 ≡ 5 mod 569
32: 43532=43516+16=43516⋅43516 ≡ 5⋅5=25 ≡ 25 mod 569
64: 43564=43532+32=43532⋅43532 ≡ 25⋅25=625 ≡ 56 mod 569
128: 435128=43564+64=43564⋅43564 ≡ 56⋅56=3136 ≡ 291 mod 569
435143
= 435128+8+4+2+1
= 435128⋅4358⋅4354⋅4352⋅4351
≡ 291 ⋅ 104 ⋅ 345 ⋅ 317 ⋅ 435 mod 569
≡ 30264 ⋅ 345 ⋅ 317 ⋅ 435 mod 569 ≡ 107 ⋅ 345 ⋅ 317 ⋅ 435 mod 569
≡ 36915 ⋅ 317 ⋅ 435 mod 569 ≡ 499 ⋅ 317 ⋅ 435 mod 569
≡ 158183 ⋅ 435 mod 569 ≡ 1 ⋅ 435 mod 569
≡ 435 mod 569
Es gilt also: 435143 ≡ 435 mod 569
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 42.
Also bestimme x, so dass 42 ⋅ x ≡ 1 mod 89 gilt:
Berechnung des größten gemeinsamen Teilers von 89 und 42
| =>89 | = 2⋅42 + 5 |
| =>42 | = 8⋅5 + 2 |
| =>5 | = 2⋅2 + 1 |
| =>2 | = 2⋅1 + 0 |
also gilt: ggt(89,42)=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= 5-2⋅2 | |||
| 2= 42-8⋅5 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅5 -2⋅(42 -8⋅ 5)
= 1⋅5 -2⋅42 +16⋅ 5) = -2⋅42 +17⋅ 5 (=1) |
| 5= 89-2⋅42 | eingesetzt in die Zeile drüber: | 1 |
= -2⋅42 +17⋅(89 -2⋅ 42)
= -2⋅42 +17⋅89 -34⋅ 42) = 17⋅89 -36⋅ 42 (=1) |
Es gilt also: ggt(89,42)=1 = 17⋅89 -36⋅42
oder wenn man 17⋅89 auf die linke Seite bringt:
1 -17⋅89 = -36⋅42
-36⋅42 = -17⋅89 + 1 |+89⋅42
-36⋅42 + 89⋅42 = -17⋅89 + 89⋅42 + 1
(-36 + 89) ⋅ 42 = (-17 + 42) ⋅ 89 + 1
53⋅42 = 25⋅89 + 1
Es gilt also: 53⋅42 = 25⋅89 +1
Somit 53⋅42 = 1 mod 89
53 ist also das Inverse von 42 mod 89
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 43 und q = 73. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
