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: (4506 - 445) mod 9.
Um längere Rechnungen zu vermeiden, rechnen wir:
(4506 - 445) mod 9 ≡ (4506 mod 9 - 445 mod 9) mod 9.
4506 mod 9 ≡ 6 mod 9 kann man relativ leicht bestimmen, weil ja 4506
= 4500
445 mod 9 ≡ 4 mod 9 kann man relativ leicht bestimmen, weil ja 445
= 450
Somit gilt:
(4506 - 445) mod 9 ≡ (6 - 4) mod 9 ≡ 2 mod 9.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (97 ⋅ 27) mod 3.
Um längere Rechnungen zu vermeiden, rechnen wir:
(97 ⋅ 27) mod 3 ≡ (97 mod 3 ⋅ 27 mod 3) mod 3.
97 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 97 = 96 + 1 = 32 ⋅ 3 + 1 ist.
27 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 27 = 27 + 0 = 9 ⋅ 3 + 0 ist.
Somit gilt:
(97 ⋅ 27) mod 3 ≡ (1 ⋅ 0) mod 3 ≡ 0 mod 3.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 2318 mod 457.
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. 231 -> x
2. mod(x²,457) -> 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: 2311=231
2: 2312=2311+1=2311⋅2311 ≡ 231⋅231=53361 ≡ 349 mod 457
4: 2314=2312+2=2312⋅2312 ≡ 349⋅349=121801 ≡ 239 mod 457
8: 2318=2314+4=2314⋅2314 ≡ 239⋅239=57121 ≡ 453 mod 457
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 598127 mod 659.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 127 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 127 an und zerlegen 127 in eine Summer von 2er-Potenzen:
127 = 64+32+16+8+4+2+1
1: 5981=598
2: 5982=5981+1=5981⋅5981 ≡ 598⋅598=357604 ≡ 426 mod 659
4: 5984=5982+2=5982⋅5982 ≡ 426⋅426=181476 ≡ 251 mod 659
8: 5988=5984+4=5984⋅5984 ≡ 251⋅251=63001 ≡ 396 mod 659
16: 59816=5988+8=5988⋅5988 ≡ 396⋅396=156816 ≡ 633 mod 659
32: 59832=59816+16=59816⋅59816 ≡ 633⋅633=400689 ≡ 17 mod 659
64: 59864=59832+32=59832⋅59832 ≡ 17⋅17=289 ≡ 289 mod 659
598127
= 59864+32+16+8+4+2+1
= 59864⋅59832⋅59816⋅5988⋅5984⋅5982⋅5981
≡ 289 ⋅ 17 ⋅ 633 ⋅ 396 ⋅ 251 ⋅ 426 ⋅ 598 mod 659
≡ 4913 ⋅ 633 ⋅ 396 ⋅ 251 ⋅ 426 ⋅ 598 mod 659 ≡ 300 ⋅ 633 ⋅ 396 ⋅ 251 ⋅ 426 ⋅ 598 mod 659
≡ 189900 ⋅ 396 ⋅ 251 ⋅ 426 ⋅ 598 mod 659 ≡ 108 ⋅ 396 ⋅ 251 ⋅ 426 ⋅ 598 mod 659
≡ 42768 ⋅ 251 ⋅ 426 ⋅ 598 mod 659 ≡ 592 ⋅ 251 ⋅ 426 ⋅ 598 mod 659
≡ 148592 ⋅ 426 ⋅ 598 mod 659 ≡ 317 ⋅ 426 ⋅ 598 mod 659
≡ 135042 ⋅ 598 mod 659 ≡ 606 ⋅ 598 mod 659
≡ 362388 mod 659 ≡ 597 mod 659
Es gilt also: 598127 ≡ 597 mod 659
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-67-Inverse zur Zahl 48.
Also bestimme x, so dass 48 ⋅ x ≡ 1 mod 67 gilt:
Berechnung des größten gemeinsamen Teilers von 67 und 48
| =>67 | = 1⋅48 + 19 |
| =>48 | = 2⋅19 + 10 |
| =>19 | = 1⋅10 + 9 |
| =>10 | = 1⋅9 + 1 |
| =>9 | = 9⋅1 + 0 |
also gilt: ggt(67,48)=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= 10-1⋅9 | |||
| 9= 19-1⋅10 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅10 -1⋅(19 -1⋅ 10)
= 1⋅10 -1⋅19 +1⋅ 10) = -1⋅19 +2⋅ 10 (=1) |
| 10= 48-2⋅19 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅19 +2⋅(48 -2⋅ 19)
= -1⋅19 +2⋅48 -4⋅ 19) = 2⋅48 -5⋅ 19 (=1) |
| 19= 67-1⋅48 | eingesetzt in die Zeile drüber: | 1 |
= 2⋅48 -5⋅(67 -1⋅ 48)
= 2⋅48 -5⋅67 +5⋅ 48) = -5⋅67 +7⋅ 48 (=1) |
Es gilt also: ggt(67,48)=1 = -5⋅67 +7⋅48
oder wenn man -5⋅67 auf die linke Seite bringt:
1 +5⋅67 = +7⋅48
Es gilt also: 7⋅48 = 5⋅67 +1
Somit 7⋅48 = 1 mod 67
7 ist also das Inverse von 48 mod 67
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 73 und q = 37. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
