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: (8001 + 119) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(8001 + 119) mod 4 ≡ (8001 mod 4 + 119 mod 4) mod 4.

8001 mod 4 ≡ 1 mod 4 kann man relativ leicht bestimmen, weil ja 8001 = 8000+1 = 4 ⋅ 2000 +1.

119 mod 4 ≡ 3 mod 4 kann man relativ leicht bestimmen, weil ja 119 = 120-1 = 4 ⋅ 30 -1 = 4 ⋅ 30 - 4 + 3.

Somit gilt:

(8001 + 119) mod 4 ≡ (1 + 3) mod 4 ≡ 4 mod 4 ≡ 0 mod 4.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (45 ⋅ 40) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(45 ⋅ 40) mod 3 ≡ (45 mod 3 ⋅ 40 mod 3) mod 3.

45 mod 3 ≡ 0 mod 3 kann man relativ leicht bestimmen, weil ja 45 = 45 + 0 = 15 ⋅ 3 + 0 ist.

40 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 40 = 39 + 1 = 13 ⋅ 3 + 1 ist.

Somit gilt:

(45 ⋅ 40) mod 3 ≡ (0 ⋅ 1) mod 3 ≡ 0 mod 3.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 6018 mod 773.

Lösung einblenden

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. 601 -> x
2. mod(x²,773) -> 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: 6011=601

2: 6012=6011+1=6011⋅6011 ≡ 601⋅601=361201 ≡ 210 mod 773

4: 6014=6012+2=6012⋅6012 ≡ 210⋅210=44100 ≡ 39 mod 773

8: 6018=6014+4=6014⋅6014 ≡ 39⋅39=1521 ≡ 748 mod 773

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 198201 mod 353.

Lösung einblenden

Wir berechnen zuerst mal alle 2er-Potenzen, die kleiner sind 201 (grauer Kasten).

Dann schauen wir die Binärdarstellung von 201 an und zerlegen 201 in eine Summer von 2er-Potenzen:

201 = 128+64+8+1

1: 1981=198

2: 1982=1981+1=1981⋅1981 ≡ 198⋅198=39204 ≡ 21 mod 353

4: 1984=1982+2=1982⋅1982 ≡ 21⋅21=441 ≡ 88 mod 353

8: 1988=1984+4=1984⋅1984 ≡ 88⋅88=7744 ≡ 331 mod 353

16: 19816=1988+8=1988⋅1988 ≡ 331⋅331=109561 ≡ 131 mod 353

32: 19832=19816+16=19816⋅19816 ≡ 131⋅131=17161 ≡ 217 mod 353

64: 19864=19832+32=19832⋅19832 ≡ 217⋅217=47089 ≡ 140 mod 353

128: 198128=19864+64=19864⋅19864 ≡ 140⋅140=19600 ≡ 185 mod 353

198201

= 198128+64+8+1

= 198128⋅19864⋅1988⋅1981

185 ⋅ 140 ⋅ 331 ⋅ 198 mod 353
25900 ⋅ 331 ⋅ 198 mod 353 ≡ 131 ⋅ 331 ⋅ 198 mod 353
43361 ⋅ 198 mod 353 ≡ 295 ⋅ 198 mod 353
58410 mod 353 ≡ 165 mod 353

Es gilt also: 198201 ≡ 165 mod 353

erweiterter Euklid'scher Algorithmus

Beispiel:

Berechne mit Hilfe des erweiterten Euklid'schen Algorithmus das Modulo-59-Inverse zur Zahl 23.

Also bestimme x, so dass 23 ⋅ x ≡ 1 mod 59 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 59 und 23

=>59 = 2⋅23 + 13
=>23 = 1⋅13 + 10
=>13 = 1⋅10 + 3
=>10 = 3⋅3 + 1
=>3 = 3⋅1 + 0

also gilt: ggt(59,23)=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= 13-1⋅10 eingesetzt in die Zeile drüber: 1 = 1⋅10 -3⋅(13 -1⋅ 10)
= 1⋅10 -3⋅13 +3⋅ 10)
= -3⋅13 +4⋅ 10 (=1)
10= 23-1⋅13 eingesetzt in die Zeile drüber: 1 = -3⋅13 +4⋅(23 -1⋅ 13)
= -3⋅13 +4⋅23 -4⋅ 13)
= 4⋅23 -7⋅ 13 (=1)
13= 59-2⋅23 eingesetzt in die Zeile drüber: 1 = 4⋅23 -7⋅(59 -2⋅ 23)
= 4⋅23 -7⋅59 +14⋅ 23)
= -7⋅59 +18⋅ 23 (=1)

Es gilt also: ggt(59,23)=1 = -7⋅59 +18⋅23

oder wenn man -7⋅59 auf die linke Seite bringt:

1 +7⋅59 = +18⋅23

Es gilt also: 18⋅23 = 7⋅59 +1

Somit 18⋅23 = 1 mod 59

18 ist also das Inverse von 23 mod 59

Schlüsselpaar für RSA

Beispiel:

Berechne mit dem RSA-Verfahren ein Schlüsselpaar zu den beiden Primzahlen p = 73 und q = 53. Aus Sicherheitsgründen sollte der selbst gewählte geheime Schlüssel nicht zu klein sein, hier also mindestens 500.