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: (88 + 9003) mod 3.
Um längere Rechnungen zu vermeiden, rechnen wir:
(88 + 9003) mod 3 ≡ (88 mod 3 + 9003 mod 3) mod 3.
88 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 88
= 90
9003 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 9003
= 9000
Somit gilt:
(88 + 9003) mod 3 ≡ (1 + 0) mod 3 ≡ 1 mod 3.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (20 ⋅ 66) mod 5.
Um längere Rechnungen zu vermeiden, rechnen wir:
(20 ⋅ 66) mod 5 ≡ (20 mod 5 ⋅ 66 mod 5) mod 5.
20 mod 5 ≡ 0 mod 5 kann man relativ leicht bestimmen, weil ja 20 = 20 + 0 = 4 ⋅ 5 + 0 ist.
66 mod 5 ≡ 1 mod 5 kann man relativ leicht bestimmen, weil ja 66 = 65 + 1 = 13 ⋅ 5 + 1 ist.
Somit gilt:
(20 ⋅ 66) mod 5 ≡ (0 ⋅ 1) mod 5 ≡ 0 mod 5.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 25916 mod 509.
Die 16 im Exponent ist ja ein reine 2er-Potenz (24).
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. 259 -> x
2. mod(x²,509) -> 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: 2591=259
2: 2592=2591+1=2591⋅2591 ≡ 259⋅259=67081 ≡ 402 mod 509
4: 2594=2592+2=2592⋅2592 ≡ 402⋅402=161604 ≡ 251 mod 509
8: 2598=2594+4=2594⋅2594 ≡ 251⋅251=63001 ≡ 394 mod 509
16: 25916=2598+8=2598⋅2598 ≡ 394⋅394=155236 ≡ 500 mod 509
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 22984 mod 461.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 84 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 84 an und zerlegen 84 in eine Summer von 2er-Potenzen:
84 = 64+16+4
1: 2291=229
2: 2292=2291+1=2291⋅2291 ≡ 229⋅229=52441 ≡ 348 mod 461
4: 2294=2292+2=2292⋅2292 ≡ 348⋅348=121104 ≡ 322 mod 461
8: 2298=2294+4=2294⋅2294 ≡ 322⋅322=103684 ≡ 420 mod 461
16: 22916=2298+8=2298⋅2298 ≡ 420⋅420=176400 ≡ 298 mod 461
32: 22932=22916+16=22916⋅22916 ≡ 298⋅298=88804 ≡ 292 mod 461
64: 22964=22932+32=22932⋅22932 ≡ 292⋅292=85264 ≡ 440 mod 461
22984
= 22964+16+4
= 22964⋅22916⋅2294
≡ 440 ⋅ 298 ⋅ 322 mod 461
≡ 131120 ⋅ 322 mod 461 ≡ 196 ⋅ 322 mod 461
≡ 63112 mod 461 ≡ 416 mod 461
Es gilt also: 22984 ≡ 416 mod 461
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-61-Inverse zur Zahl 28.
Also bestimme x, so dass 28 ⋅ x ≡ 1 mod 61 gilt:
Berechnung des größten gemeinsamen Teilers von 61 und 28
| =>61 | = 2⋅28 + 5 |
| =>28 | = 5⋅5 + 3 |
| =>5 | = 1⋅3 + 2 |
| =>3 | = 1⋅2 + 1 |
| =>2 | = 2⋅1 + 0 |
also gilt: ggt(61,28)=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= 5-1⋅3 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅3 -1⋅(5 -1⋅ 3)
= 1⋅3 -1⋅5 +1⋅ 3) = -1⋅5 +2⋅ 3 (=1) |
| 3= 28-5⋅5 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅5 +2⋅(28 -5⋅ 5)
= -1⋅5 +2⋅28 -10⋅ 5) = 2⋅28 -11⋅ 5 (=1) |
| 5= 61-2⋅28 | eingesetzt in die Zeile drüber: | 1 |
= 2⋅28 -11⋅(61 -2⋅ 28)
= 2⋅28 -11⋅61 +22⋅ 28) = -11⋅61 +24⋅ 28 (=1) |
Es gilt also: ggt(61,28)=1 = -11⋅61 +24⋅28
oder wenn man -11⋅61 auf die linke Seite bringt:
1 +11⋅61 = +24⋅28
Es gilt also: 24⋅28 = 11⋅61 +1
Somit 24⋅28 = 1 mod 61
24 ist also das Inverse von 28 mod 61
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 61 und q = 31. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.
