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: (87 - 903) mod 3.
Um längere Rechnungen zu vermeiden, rechnen wir:
(87 - 903) mod 3 ≡ (87 mod 3 - 903 mod 3) mod 3.
87 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 87
= 90
903 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 903
= 900
Somit gilt:
(87 - 903) mod 3 ≡ (0 - 0) mod 3 ≡ 0 mod 3.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (83 ⋅ 99) mod 5.
Um längere Rechnungen zu vermeiden, rechnen wir:
(83 ⋅ 99) mod 5 ≡ (83 mod 5 ⋅ 99 mod 5) mod 5.
83 mod 5 ≡ 3 mod 5 kann man relativ leicht bestimmen, weil ja 83 = 80 + 3 = 16 ⋅ 5 + 3 ist.
99 mod 5 ≡ 4 mod 5 kann man relativ leicht bestimmen, weil ja 99 = 95 + 4 = 19 ⋅ 5 + 4 ist.
Somit gilt:
(83 ⋅ 99) mod 5 ≡ (3 ⋅ 4) mod 5 ≡ 12 mod 5 ≡ 2 mod 5.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 50132 mod 827.
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. 501 -> x
2. mod(x²,827) -> 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: 5011=501
2: 5012=5011+1=5011⋅5011 ≡ 501⋅501=251001 ≡ 420 mod 827
4: 5014=5012+2=5012⋅5012 ≡ 420⋅420=176400 ≡ 249 mod 827
8: 5018=5014+4=5014⋅5014 ≡ 249⋅249=62001 ≡ 803 mod 827
16: 50116=5018+8=5018⋅5018 ≡ 803⋅803=644809 ≡ 576 mod 827
32: 50132=50116+16=50116⋅50116 ≡ 576⋅576=331776 ≡ 149 mod 827
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 344185 mod 467.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 185 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 185 an und zerlegen 185 in eine Summer von 2er-Potenzen:
185 = 128+32+16+8+1
1: 3441=344
2: 3442=3441+1=3441⋅3441 ≡ 344⋅344=118336 ≡ 185 mod 467
4: 3444=3442+2=3442⋅3442 ≡ 185⋅185=34225 ≡ 134 mod 467
8: 3448=3444+4=3444⋅3444 ≡ 134⋅134=17956 ≡ 210 mod 467
16: 34416=3448+8=3448⋅3448 ≡ 210⋅210=44100 ≡ 202 mod 467
32: 34432=34416+16=34416⋅34416 ≡ 202⋅202=40804 ≡ 175 mod 467
64: 34464=34432+32=34432⋅34432 ≡ 175⋅175=30625 ≡ 270 mod 467
128: 344128=34464+64=34464⋅34464 ≡ 270⋅270=72900 ≡ 48 mod 467
344185
= 344128+32+16+8+1
= 344128⋅34432⋅34416⋅3448⋅3441
≡ 48 ⋅ 175 ⋅ 202 ⋅ 210 ⋅ 344 mod 467
≡ 8400 ⋅ 202 ⋅ 210 ⋅ 344 mod 467 ≡ 461 ⋅ 202 ⋅ 210 ⋅ 344 mod 467
≡ 93122 ⋅ 210 ⋅ 344 mod 467 ≡ 189 ⋅ 210 ⋅ 344 mod 467
≡ 39690 ⋅ 344 mod 467 ≡ 462 ⋅ 344 mod 467
≡ 158928 mod 467 ≡ 148 mod 467
Es gilt also: 344185 ≡ 148 mod 467
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-59-Inverse zur Zahl 45.
Also bestimme x, so dass 45 ⋅ x ≡ 1 mod 59 gilt:
Berechnung des größten gemeinsamen Teilers von 59 und 45
| =>59 | = 1⋅45 + 14 |
| =>45 | = 3⋅14 + 3 |
| =>14 | = 4⋅3 + 2 |
| =>3 | = 1⋅2 + 1 |
| =>2 | = 2⋅1 + 0 |
also gilt: ggt(59,45)=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= 3-1⋅2 | |||
| 2= 14-4⋅3 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅3 -1⋅(14 -4⋅ 3)
= 1⋅3 -1⋅14 +4⋅ 3) = -1⋅14 +5⋅ 3 (=1) |
| 3= 45-3⋅14 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅14 +5⋅(45 -3⋅ 14)
= -1⋅14 +5⋅45 -15⋅ 14) = 5⋅45 -16⋅ 14 (=1) |
| 14= 59-1⋅45 | eingesetzt in die Zeile drüber: | 1 |
= 5⋅45 -16⋅(59 -1⋅ 45)
= 5⋅45 -16⋅59 +16⋅ 45) = -16⋅59 +21⋅ 45 (=1) |
Es gilt also: ggt(59,45)=1 = -16⋅59 +21⋅45
oder wenn man -16⋅59 auf die linke Seite bringt:
1 +16⋅59 = +21⋅45
Es gilt also: 21⋅45 = 16⋅59 +1
Somit 21⋅45 = 1 mod 59
21 ist also das Inverse von 45 mod 59
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 41 und q = 67. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
