Klasse 5-6
Klasse 7-8
Klasse 9-10
Kursstufe
cosh
nach Aufgabentypen suchen
Aufgabentypen anhand von Beispielen durchstöbern
Browserfenster aktualisieren (F5), um neue Beispiele bei den Aufgabentypen zu sehen
Modulo addieren
Beispiel:
Berechne ohne WTR: (1598 + 400) mod 4.
Um längere Rechnungen zu vermeiden, rechnen wir:
(1598 + 400) mod 4 ≡ (1598 mod 4 + 400 mod 4) mod 4.
1598 mod 4 ≡ 2 mod 4 kann man relativ leicht bestimmen, weil ja 1598
= 1500
400 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 400
= 400
Somit gilt:
(1598 + 400) mod 4 ≡ (2 + 0) mod 4 ≡ 2 mod 4.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (36 ⋅ 33) mod 4.
Um längere Rechnungen zu vermeiden, rechnen wir:
(36 ⋅ 33) mod 4 ≡ (36 mod 4 ⋅ 33 mod 4) mod 4.
36 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 36 = 36 + 0 = 9 ⋅ 4 + 0 ist.
33 mod 4 ≡ 1 mod 4 kann man relativ leicht bestimmen, weil ja 33 = 32 + 1 = 8 ⋅ 4 + 1 ist.
Somit gilt:
(36 ⋅ 33) mod 4 ≡ (0 ⋅ 1) mod 4 ≡ 0 mod 4.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 766128 mod 991.
Die 128 im Exponent ist ja ein reine 2er-Potenz (27).
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. 766 -> x
2. mod(x²,991) -> 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: 7661=766
2: 7662=7661+1=7661⋅7661 ≡ 766⋅766=586756 ≡ 84 mod 991
4: 7664=7662+2=7662⋅7662 ≡ 84⋅84=7056 ≡ 119 mod 991
8: 7668=7664+4=7664⋅7664 ≡ 119⋅119=14161 ≡ 287 mod 991
16: 76616=7668+8=7668⋅7668 ≡ 287⋅287=82369 ≡ 116 mod 991
32: 76632=76616+16=76616⋅76616 ≡ 116⋅116=13456 ≡ 573 mod 991
64: 76664=76632+32=76632⋅76632 ≡ 573⋅573=328329 ≡ 308 mod 991
128: 766128=76664+64=76664⋅76664 ≡ 308⋅308=94864 ≡ 719 mod 991
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 28588 mod 509.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 88 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 88 an und zerlegen 88 in eine Summer von 2er-Potenzen:
88 = 64+16+8
1: 2851=285
2: 2852=2851+1=2851⋅2851 ≡ 285⋅285=81225 ≡ 294 mod 509
4: 2854=2852+2=2852⋅2852 ≡ 294⋅294=86436 ≡ 415 mod 509
8: 2858=2854+4=2854⋅2854 ≡ 415⋅415=172225 ≡ 183 mod 509
16: 28516=2858+8=2858⋅2858 ≡ 183⋅183=33489 ≡ 404 mod 509
32: 28532=28516+16=28516⋅28516 ≡ 404⋅404=163216 ≡ 336 mod 509
64: 28564=28532+32=28532⋅28532 ≡ 336⋅336=112896 ≡ 407 mod 509
28588
= 28564+16+8
= 28564⋅28516⋅2858
≡ 407 ⋅ 404 ⋅ 183 mod 509
≡ 164428 ⋅ 183 mod 509 ≡ 21 ⋅ 183 mod 509
≡ 3843 mod 509 ≡ 280 mod 509
Es gilt also: 28588 ≡ 280 mod 509
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-89-Inverse zur Zahl 46.
Also bestimme x, so dass 46 ⋅ x ≡ 1 mod 89 gilt:
Berechnung des größten gemeinsamen Teilers von 89 und 46
| =>89 | = 1⋅46 + 43 |
| =>46 | = 1⋅43 + 3 |
| =>43 | = 14⋅3 + 1 |
| =>3 | = 3⋅1 + 0 |
also gilt: ggt(89,46)=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= 43-14⋅3 | |||
| 3= 46-1⋅43 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅43 -14⋅(46 -1⋅ 43)
= 1⋅43 -14⋅46 +14⋅ 43) = -14⋅46 +15⋅ 43 (=1) |
| 43= 89-1⋅46 | eingesetzt in die Zeile drüber: | 1 |
= -14⋅46 +15⋅(89 -1⋅ 46)
= -14⋅46 +15⋅89 -15⋅ 46) = 15⋅89 -29⋅ 46 (=1) |
Es gilt also: ggt(89,46)=1 = 15⋅89 -29⋅46
oder wenn man 15⋅89 auf die linke Seite bringt:
1 -15⋅89 = -29⋅46
-29⋅46 = -15⋅89 + 1 |+89⋅46
-29⋅46 + 89⋅46 = -15⋅89 + 89⋅46 + 1
(-29 + 89) ⋅ 46 = (-15 + 46) ⋅ 89 + 1
60⋅46 = 31⋅89 + 1
Es gilt also: 60⋅46 = 31⋅89 +1
Somit 60⋅46 = 1 mod 89
60 ist also das Inverse von 46 mod 89
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 53 und q = 79. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
