- 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: (123 + 36) mod 4.
Um längere Rechnungen zu vermeiden, rechnen wir:
(123 + 36) mod 4 ≡ (123 mod 4 + 36 mod 4) mod 4.
123 mod 4 ≡ 3 mod 4 kann man relativ leicht bestimmen, weil ja 123
= 120
36 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 36
= 40
Somit gilt:
(123 + 36) mod 4 ≡ (3 + 0) mod 4 ≡ 3 mod 4.
Modulo multiplizieren
Beispiel:
Berechne ohne WTR: (78 ⋅ 26) mod 3.
Um längere Rechnungen zu vermeiden, rechnen wir:
(78 ⋅ 26) mod 3 ≡ (78 mod 3 ⋅ 26 mod 3) mod 3.
78 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 78 = 78 + 0 = 26 ⋅ 3 + 0 ist.
26 mod 3 ≡ 2 mod 3 kann man relativ leicht bestimmen, weil ja 26 = 24 + 2 = 8 ⋅ 3 + 2 ist.
Somit gilt:
(78 ⋅ 26) mod 3 ≡ (0 ⋅ 2) mod 3 ≡ 0 mod 3.
modulo Potenzieren einfach
Beispiel:
Berechne möglichst geschickt: 19032 mod 347.
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. 190 -> x
2. mod(x²,347) -> 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: 1901=190
2: 1902=1901+1=1901⋅1901 ≡ 190⋅190=36100 ≡ 12 mod 347
4: 1904=1902+2=1902⋅1902 ≡ 12⋅12=144 ≡ 144 mod 347
8: 1908=1904+4=1904⋅1904 ≡ 144⋅144=20736 ≡ 263 mod 347
16: 19016=1908+8=1908⋅1908 ≡ 263⋅263=69169 ≡ 116 mod 347
32: 19032=19016+16=19016⋅19016 ≡ 116⋅116=13456 ≡ 270 mod 347
modulo Potenzieren große Zahlen
Beispiel:
Berechne möglichst geschickt: 601110 mod 941.
Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 110 (grauer Kasten).
Dann schauen wir die Binärdarstellung von 110 an und zerlegen 110 in eine Summer von 2er-Potenzen:
110 = 64+32+8+4+2
1: 6011=601
2: 6012=6011+1=6011⋅6011 ≡ 601⋅601=361201 ≡ 798 mod 941
4: 6014=6012+2=6012⋅6012 ≡ 798⋅798=636804 ≡ 688 mod 941
8: 6018=6014+4=6014⋅6014 ≡ 688⋅688=473344 ≡ 21 mod 941
16: 60116=6018+8=6018⋅6018 ≡ 21⋅21=441 ≡ 441 mod 941
32: 60132=60116+16=60116⋅60116 ≡ 441⋅441=194481 ≡ 635 mod 941
64: 60164=60132+32=60132⋅60132 ≡ 635⋅635=403225 ≡ 477 mod 941
601110
= 60164+32+8+4+2
= 60164⋅60132⋅6018⋅6014⋅6012
≡ 477 ⋅ 635 ⋅ 21 ⋅ 688 ⋅ 798 mod 941
≡ 302895 ⋅ 21 ⋅ 688 ⋅ 798 mod 941 ≡ 834 ⋅ 21 ⋅ 688 ⋅ 798 mod 941
≡ 17514 ⋅ 688 ⋅ 798 mod 941 ≡ 576 ⋅ 688 ⋅ 798 mod 941
≡ 396288 ⋅ 798 mod 941 ≡ 127 ⋅ 798 mod 941
≡ 101346 mod 941 ≡ 659 mod 941
Es gilt also: 601110 ≡ 659 mod 941
erweiterter Euklid'scher Algorithmus
Beispiel:
Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-73-Inverse zur Zahl 34.
Also bestimme x, so dass 34 ⋅ x ≡ 1 mod 73 gilt:
Berechnung des größten gemeinsamen Teilers von 73 und 34
=>73 | = 2⋅34 + 5 |
=>34 | = 6⋅5 + 4 |
=>5 | = 1⋅4 + 1 |
=>4 | = 4⋅1 + 0 |
also gilt: ggt(73,34)=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= 5-1⋅4 | |||
4= 34-6⋅5 | eingesetzt in die Zeile drüber: | 1 |
= 1⋅5 -1⋅(34 -6⋅ 5)
= 1⋅5 -1⋅34 +6⋅ 5) = -1⋅34 +7⋅ 5 (=1) |
5= 73-2⋅34 | eingesetzt in die Zeile drüber: | 1 |
= -1⋅34 +7⋅(73 -2⋅ 34)
= -1⋅34 +7⋅73 -14⋅ 34) = 7⋅73 -15⋅ 34 (=1) |
Es gilt also: ggt(73,34)=1 = 7⋅73 -15⋅34
oder wenn man 7⋅73 auf die linke Seite bringt:
1 -7⋅73 = -15⋅34
-15⋅34 = -7⋅73 + 1 |+73⋅34
-15⋅34 + 73⋅34 = -7⋅73 + 73⋅34 + 1
(-15 + 73) ⋅ 34 = (-7 + 34) ⋅ 73 + 1
58⋅34 = 27⋅73 + 1
Es gilt also: 58⋅34 = 27⋅73 +1
Somit 58⋅34 = 1 mod 73
58 ist also das Inverse von 34 mod 73
Schlüsselpaar für RSA
Beispiel:
Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 43 und q = 67. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.