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: (2805 - 212) mod 7.
Um längere Rechnungen zu vermeiden, rechnen wir:
(2805 - 212) mod 7 ≡ (2805 mod 7 - 212 mod 7) mod 7.
2805 mod 7 ≡ 5 mod 7 kann man relativ leicht bestimmen, weil ja 2805
= 2800
212 mod 7 ≡ 2 mod 7 kann man relativ leicht bestimmen, weil ja 212
= 210
Somit gilt:
(2805 - 212) mod 7 ≡ (5 - 2) mod 7 ≡ 3 mod 7.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (97 ⋅ 96) mod 11.
Um längere Rechnungen zu vermeiden, rechnen wir:
(97 ⋅ 96) mod 11 ≡ (97 mod 11 ⋅ 96 mod 11) mod 11.
97 mod 11 ≡ 9 mod 11 kann man relativ leicht bestimmen, weil ja 97 = 88 + 9 = 8 ⋅ 11 + 9 ist.
96 mod 11 ≡ 8 mod 11 kann man relativ leicht bestimmen, weil ja 96 = 88 + 8 = 8 ⋅ 11 + 8 ist.
Somit gilt:
(97 ⋅ 96) mod 11 ≡ (9 ⋅ 8) mod 11 ≡ 72 mod 11 ≡ 6 mod 11.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 65532 mod 829.
Die 32 im Exponent ist ja ein reine 2er-Potenz (25).
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. 655 -> x
2. mod(x²,829) -> 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: 6551=655
2: 6552=6551+1=6551⋅6551 ≡ 655⋅655=429025 ≡ 432 mod 829
4: 6554=6552+2=6552⋅6552 ≡ 432⋅432=186624 ≡ 99 mod 829
8: 6558=6554+4=6554⋅6554 ≡ 99⋅99=9801 ≡ 682 mod 829
16: 65516=6558+8=6558⋅6558 ≡ 682⋅682=465124 ≡ 55 mod 829
32: 65532=65516+16=65516⋅65516 ≡ 55⋅55=3025 ≡ 538 mod 829
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 457133 mod 787.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 133 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 133 an und zerlegen 133 in eine Summer von 2er-Potenzen:
133 = 128+4+1
1: 4571=457
2: 4572=4571+1=4571⋅4571 ≡ 457⋅457=208849 ≡ 294 mod 787
4: 4574=4572+2=4572⋅4572 ≡ 294⋅294=86436 ≡ 653 mod 787
8: 4578=4574+4=4574⋅4574 ≡ 653⋅653=426409 ≡ 642 mod 787
16: 45716=4578+8=4578⋅4578 ≡ 642⋅642=412164 ≡ 563 mod 787
32: 45732=45716+16=45716⋅45716 ≡ 563⋅563=316969 ≡ 595 mod 787
64: 45764=45732+32=45732⋅45732 ≡ 595⋅595=354025 ≡ 662 mod 787
128: 457128=45764+64=45764⋅45764 ≡ 662⋅662=438244 ≡ 672 mod 787
457133
= 457128+4+1
= 457128⋅4574⋅4571
≡ 672 ⋅ 653 ⋅ 457 mod 787
≡ 438816 ⋅ 457 mod 787 ≡ 457 ⋅ 457 mod 787
≡ 208849 mod 787 ≡ 294 mod 787
Es gilt also: 457133 ≡ 294 mod 787
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-79-Inverse zur Zahl 35.
Also bestimme x, so dass 35 ⋅ x ≡ 1 mod 79 gilt:
Berechnung des größten gemeinsamen Teilers von 79 und 35
| =>79 | = 2⋅35 + 9 |
| =>35 | = 3⋅9 + 8 |
| =>9 | = 1⋅8 + 1 |
| =>8 | = 8⋅1 + 0 |
also gilt: ggt(79,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= 9-1⋅8 | |||
| 8= 35-3⋅9 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅9 -1⋅(35 -3⋅ 9)
= 1⋅9 -1⋅35 +3⋅ 9) = -1⋅35 +4⋅ 9 (=1) |
| 9= 79-2⋅35 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅35 +4⋅(79 -2⋅ 35)
= -1⋅35 +4⋅79 -8⋅ 35) = 4⋅79 -9⋅ 35 (=1) |
Es gilt also: ggt(79,35)=1 = 4⋅79 -9⋅35
oder wenn man 4⋅79 auf die linke Seite bringt:
1 -4⋅79 = -9⋅35
-9⋅35 = -4⋅79 + 1 |+79⋅35
-9⋅35 + 79⋅35 = -4⋅79 + 79⋅35 + 1
(-9 + 79) ⋅ 35 = (-4 + 35) ⋅ 79 + 1
70⋅35 = 31⋅79 + 1
Es gilt also: 70⋅35 = 31⋅79 +1
Somit 70⋅35 = 1 mod 79
70 ist also das Inverse von 35 mod 79
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 43 und q = 37. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
