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: (117 + 2401) mod 6.
Um längere Rechnungen zu vermeiden, rechnen wir:
(117 + 2401) mod 6 ≡ (117 mod 6 + 2401 mod 6) mod 6.
117 mod 6 ≡ 3 mod 6 kann man relativ leicht bestimmen, weil ja 117
= 120
2401 mod 6 ≡ 1 mod 6 kann man relativ leicht bestimmen, weil ja 2401
= 2400
Somit gilt:
(117 + 2401) mod 6 ≡ (3 + 1) mod 6 ≡ 4 mod 6.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (95 ⋅ 69) mod 6.
Um längere Rechnungen zu vermeiden, rechnen wir:
(95 ⋅ 69) mod 6 ≡ (95 mod 6 ⋅ 69 mod 6) mod 6.
95 mod 6 ≡ 5 mod 6 kann man relativ leicht bestimmen, weil ja 95 = 90 + 5 = 15 ⋅ 6 + 5 ist.
69 mod 6 ≡ 3 mod 6 kann man relativ leicht bestimmen, weil ja 69 = 66 + 3 = 11 ⋅ 6 + 3 ist.
Somit gilt:
(95 ⋅ 69) mod 6 ≡ (5 ⋅ 3) mod 6 ≡ 15 mod 6 ≡ 3 mod 6.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 2228 mod 359.
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. 222 -> x
2. mod(x²,359) -> 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: 2221=222
2: 2222=2221+1=2221⋅2221 ≡ 222⋅222=49284 ≡ 101 mod 359
4: 2224=2222+2=2222⋅2222 ≡ 101⋅101=10201 ≡ 149 mod 359
8: 2228=2224+4=2224⋅2224 ≡ 149⋅149=22201 ≡ 302 mod 359
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 314204 mod 521.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 204 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 204 an und zerlegen 204 in eine Summer von 2er-Potenzen:
204 = 128+64+8+4
1: 3141=314
2: 3142=3141+1=3141⋅3141 ≡ 314⋅314=98596 ≡ 127 mod 521
4: 3144=3142+2=3142⋅3142 ≡ 127⋅127=16129 ≡ 499 mod 521
8: 3148=3144+4=3144⋅3144 ≡ 499⋅499=249001 ≡ 484 mod 521
16: 31416=3148+8=3148⋅3148 ≡ 484⋅484=234256 ≡ 327 mod 521
32: 31432=31416+16=31416⋅31416 ≡ 327⋅327=106929 ≡ 124 mod 521
64: 31464=31432+32=31432⋅31432 ≡ 124⋅124=15376 ≡ 267 mod 521
128: 314128=31464+64=31464⋅31464 ≡ 267⋅267=71289 ≡ 433 mod 521
314204
= 314128+64+8+4
= 314128⋅31464⋅3148⋅3144
≡ 433 ⋅ 267 ⋅ 484 ⋅ 499 mod 521
≡ 115611 ⋅ 484 ⋅ 499 mod 521 ≡ 470 ⋅ 484 ⋅ 499 mod 521
≡ 227480 ⋅ 499 mod 521 ≡ 324 ⋅ 499 mod 521
≡ 161676 mod 521 ≡ 166 mod 521
Es gilt also: 314204 ≡ 166 mod 521
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 38.
Also bestimme x, so dass 38 ⋅ x ≡ 1 mod 89 gilt:
Berechnung des größten gemeinsamen Teilers von 89 und 38
| =>89 | = 2⋅38 + 13 |
| =>38 | = 2⋅13 + 12 |
| =>13 | = 1⋅12 + 1 |
| =>12 | = 12⋅1 + 0 |
also gilt: ggt(89,38)=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= 13-1⋅12 | |||
| 12= 38-2⋅13 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅13 -1⋅(38 -2⋅ 13)
= 1⋅13 -1⋅38 +2⋅ 13) = -1⋅38 +3⋅ 13 (=1) |
| 13= 89-2⋅38 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅38 +3⋅(89 -2⋅ 38)
= -1⋅38 +3⋅89 -6⋅ 38) = 3⋅89 -7⋅ 38 (=1) |
Es gilt also: ggt(89,38)=1 = 3⋅89 -7⋅38
oder wenn man 3⋅89 auf die linke Seite bringt:
1 -3⋅89 = -7⋅38
-7⋅38 = -3⋅89 + 1 |+89⋅38
-7⋅38 + 89⋅38 = -3⋅89 + 89⋅38 + 1
(-7 + 89) ⋅ 38 = (-3 + 38) ⋅ 89 + 1
82⋅38 = 35⋅89 + 1
Es gilt also: 82⋅38 = 35⋅89 +1
Somit 82⋅38 = 1 mod 89
82 ist also das Inverse von 38 mod 89
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 83 und q = 47. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
