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: (8000 - 15998) mod 4.
Um längere Rechnungen zu vermeiden, rechnen wir:
(8000 - 15998) mod 4 ≡ (8000 mod 4 - 15998 mod 4) mod 4.
8000 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 8000
= 8000
15998 mod 4 ≡ 2 mod 4 kann man relativ leicht bestimmen, weil ja 15998
= 15000
Somit gilt:
(8000 - 15998) mod 4 ≡ (0 - 2) mod 4 ≡ -2 mod 4 ≡ 2 mod 4.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (71 ⋅ 72) mod 4.
Um längere Rechnungen zu vermeiden, rechnen wir:
(71 ⋅ 72) mod 4 ≡ (71 mod 4 ⋅ 72 mod 4) mod 4.
71 mod 4 ≡ 3 mod 4 kann man relativ leicht bestimmen, weil ja 71 = 68 + 3 = 17 ⋅ 4 + 3 ist.
72 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 72 = 72 + 0 = 18 ⋅ 4 + 0 ist.
Somit gilt:
(71 ⋅ 72) mod 4 ≡ (3 ⋅ 0) mod 4 ≡ 0 mod 4.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 2478 mod 509.
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. 247 -> x
2. mod(x²,509) -> 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: 2471=247
2: 2472=2471+1=2471⋅2471 ≡ 247⋅247=61009 ≡ 438 mod 509
4: 2474=2472+2=2472⋅2472 ≡ 438⋅438=191844 ≡ 460 mod 509
8: 2478=2474+4=2474⋅2474 ≡ 460⋅460=211600 ≡ 365 mod 509
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 192187 mod 379.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 187 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 187 an und zerlegen 187 in eine Summer von 2er-Potenzen:
187 = 128+32+16+8+2+1
1: 1921=192
2: 1922=1921+1=1921⋅1921 ≡ 192⋅192=36864 ≡ 101 mod 379
4: 1924=1922+2=1922⋅1922 ≡ 101⋅101=10201 ≡ 347 mod 379
8: 1928=1924+4=1924⋅1924 ≡ 347⋅347=120409 ≡ 266 mod 379
16: 19216=1928+8=1928⋅1928 ≡ 266⋅266=70756 ≡ 262 mod 379
32: 19232=19216+16=19216⋅19216 ≡ 262⋅262=68644 ≡ 45 mod 379
64: 19264=19232+32=19232⋅19232 ≡ 45⋅45=2025 ≡ 130 mod 379
128: 192128=19264+64=19264⋅19264 ≡ 130⋅130=16900 ≡ 224 mod 379
192187
= 192128+32+16+8+2+1
= 192128⋅19232⋅19216⋅1928⋅1922⋅1921
≡ 224 ⋅ 45 ⋅ 262 ⋅ 266 ⋅ 101 ⋅ 192 mod 379
≡ 10080 ⋅ 262 ⋅ 266 ⋅ 101 ⋅ 192 mod 379 ≡ 226 ⋅ 262 ⋅ 266 ⋅ 101 ⋅ 192 mod 379
≡ 59212 ⋅ 266 ⋅ 101 ⋅ 192 mod 379 ≡ 88 ⋅ 266 ⋅ 101 ⋅ 192 mod 379
≡ 23408 ⋅ 101 ⋅ 192 mod 379 ≡ 289 ⋅ 101 ⋅ 192 mod 379
≡ 29189 ⋅ 192 mod 379 ≡ 6 ⋅ 192 mod 379
≡ 1152 mod 379 ≡ 15 mod 379
Es gilt also: 192187 ≡ 15 mod 379
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-71-Inverse zur Zahl 65.
Also bestimme x, so dass 65 ⋅ x ≡ 1 mod 71 gilt:
Berechnung des größten gemeinsamen Teilers von 71 und 65
| =>71 | = 1⋅65 + 6 |
| =>65 | = 10⋅6 + 5 |
| =>6 | = 1⋅5 + 1 |
| =>5 | = 5⋅1 + 0 |
also gilt: ggt(71,65)=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= 6-1⋅5 | |||
| 5= 65-10⋅6 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅6 -1⋅(65 -10⋅ 6)
= 1⋅6 -1⋅65 +10⋅ 6) = -1⋅65 +11⋅ 6 (=1) |
| 6= 71-1⋅65 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅65 +11⋅(71 -1⋅ 65)
= -1⋅65 +11⋅71 -11⋅ 65) = 11⋅71 -12⋅ 65 (=1) |
Es gilt also: ggt(71,65)=1 = 11⋅71 -12⋅65
oder wenn man 11⋅71 auf die linke Seite bringt:
1 -11⋅71 = -12⋅65
-12⋅65 = -11⋅71 + 1 |+71⋅65
-12⋅65 + 71⋅65 = -11⋅71 + 71⋅65 + 1
(-12 + 71) ⋅ 65 = (-11 + 65) ⋅ 71 + 1
59⋅65 = 54⋅71 + 1
Es gilt also: 59⋅65 = 54⋅71 +1
Somit 59⋅65 = 1 mod 71
59 ist also das Inverse von 65 mod 71
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 67 und q = 59. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
