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: (30000 + 301) mod 6.
Um längere Rechnungen zu vermeiden, rechnen wir:
(30000 + 301) mod 6 ≡ (30000 mod 6 + 301 mod 6) mod 6.
30000 mod 6 ≡ 0 mod 6 kann man relativ leicht bestimmen, weil ja 30000
= 30000
301 mod 6 ≡ 1 mod 6 kann man relativ leicht bestimmen, weil ja 301
= 300
Somit gilt:
(30000 + 301) mod 6 ≡ (0 + 1) mod 6 ≡ 1 mod 6.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (42 ⋅ 34) mod 8.
Um längere Rechnungen zu vermeiden, rechnen wir:
(42 ⋅ 34) mod 8 ≡ (42 mod 8 ⋅ 34 mod 8) mod 8.
42 mod 8 ≡ 2 mod 8 kann man relativ leicht bestimmen, weil ja 42 = 40 + 2 = 5 ⋅ 8 + 2 ist.
34 mod 8 ≡ 2 mod 8 kann man relativ leicht bestimmen, weil ja 34 = 32 + 2 = 4 ⋅ 8 + 2 ist.
Somit gilt:
(42 ⋅ 34) mod 8 ≡ (2 ⋅ 2) mod 8 ≡ 4 mod 8.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 52432 mod 769.
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. 524 -> x
2. mod(x²,769) -> 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: 5241=524
2: 5242=5241+1=5241⋅5241 ≡ 524⋅524=274576 ≡ 43 mod 769
4: 5244=5242+2=5242⋅5242 ≡ 43⋅43=1849 ≡ 311 mod 769
8: 5248=5244+4=5244⋅5244 ≡ 311⋅311=96721 ≡ 596 mod 769
16: 52416=5248+8=5248⋅5248 ≡ 596⋅596=355216 ≡ 707 mod 769
32: 52432=52416+16=52416⋅52416 ≡ 707⋅707=499849 ≡ 768 mod 769
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 39769 mod 523.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 69 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 69 an und zerlegen 69 in eine Summer von 2er-Potenzen:
69 = 64+4+1
1: 3971=397
2: 3972=3971+1=3971⋅3971 ≡ 397⋅397=157609 ≡ 186 mod 523
4: 3974=3972+2=3972⋅3972 ≡ 186⋅186=34596 ≡ 78 mod 523
8: 3978=3974+4=3974⋅3974 ≡ 78⋅78=6084 ≡ 331 mod 523
16: 39716=3978+8=3978⋅3978 ≡ 331⋅331=109561 ≡ 254 mod 523
32: 39732=39716+16=39716⋅39716 ≡ 254⋅254=64516 ≡ 187 mod 523
64: 39764=39732+32=39732⋅39732 ≡ 187⋅187=34969 ≡ 451 mod 523
39769
= 39764+4+1
= 39764⋅3974⋅3971
≡ 451 ⋅ 78 ⋅ 397 mod 523
≡ 35178 ⋅ 397 mod 523 ≡ 137 ⋅ 397 mod 523
≡ 54389 mod 523 ≡ 520 mod 523
Es gilt also: 39769 ≡ 520 mod 523
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 33.
Also bestimme x, so dass 33 ⋅ x ≡ 1 mod 89 gilt:
Berechnung des größten gemeinsamen Teilers von 89 und 33
| =>89 | = 2⋅33 + 23 |
| =>33 | = 1⋅23 + 10 |
| =>23 | = 2⋅10 + 3 |
| =>10 | = 3⋅3 + 1 |
| =>3 | = 3⋅1 + 0 |
also gilt: ggt(89,33)=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-3⋅3 | |||
| 3= 23-2⋅10 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅10 -3⋅(23 -2⋅ 10)
= 1⋅10 -3⋅23 +6⋅ 10) = -3⋅23 +7⋅ 10 (=1) |
| 10= 33-1⋅23 | eingesetzt in die Zeile drüber: | 1 |
= -3⋅23 +7⋅(33 -1⋅ 23)
= -3⋅23 +7⋅33 -7⋅ 23) = 7⋅33 -10⋅ 23 (=1) |
| 23= 89-2⋅33 | eingesetzt in die Zeile drüber: | 1 |
= 7⋅33 -10⋅(89 -2⋅ 33)
= 7⋅33 -10⋅89 +20⋅ 33) = -10⋅89 +27⋅ 33 (=1) |
Es gilt also: ggt(89,33)=1 = -10⋅89 +27⋅33
oder wenn man -10⋅89 auf die linke Seite bringt:
1 +10⋅89 = +27⋅33
Es gilt also: 27⋅33 = 10⋅89 +1
Somit 27⋅33 = 1 mod 89
27 ist also das Inverse von 33 mod 89
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 97 und q = 61. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
