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: (162 + 392) mod 8.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(162 + 392) mod 8 ≡ (162 mod 8 + 392 mod 8) mod 8.

162 mod 8 ≡ 2 mod 8 kann man relativ leicht bestimmen, weil ja 162 = 160+2 = 8 ⋅ 20 +2.

392 mod 8 ≡ 0 mod 8 kann man relativ leicht bestimmen, weil ja 392 = 400-8 = 8 ⋅ 50 -8 = 8 ⋅ 50 - 8 + 0.

Somit gilt:

(162 + 392) mod 8 ≡ (2 + 0) mod 8 ≡ 2 mod 8.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (28 ⋅ 85) mod 10.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(28 ⋅ 85) mod 10 ≡ (28 mod 10 ⋅ 85 mod 10) mod 10.

28 mod 10 ≡ 8 mod 10 kann man relativ leicht bestimmen, weil ja 28 = 20 + 8 = 2 ⋅ 10 + 8 ist.

85 mod 10 ≡ 5 mod 10 kann man relativ leicht bestimmen, weil ja 85 = 80 + 5 = 8 ⋅ 10 + 5 ist.

Somit gilt:

(28 ⋅ 85) mod 10 ≡ (8 ⋅ 5) mod 10 ≡ 40 mod 10 ≡ 0 mod 10.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 60616 mod 1009.

Lösung einblenden

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. 606 -> x
2. mod(x²,1009) -> 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: 6061=606

2: 6062=6061+1=6061⋅6061 ≡ 606⋅606=367236 ≡ 969 mod 1009

4: 6064=6062+2=6062⋅6062 ≡ 969⋅969=938961 ≡ 591 mod 1009

8: 6068=6064+4=6064⋅6064 ≡ 591⋅591=349281 ≡ 167 mod 1009

16: 60616=6068+8=6068⋅6068 ≡ 167⋅167=27889 ≡ 646 mod 1009

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 476187 mod 661.

Lösung einblenden

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

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

187 = 128+32+16+8+2+1

1: 4761=476

2: 4762=4761+1=4761⋅4761 ≡ 476⋅476=226576 ≡ 514 mod 661

4: 4764=4762+2=4762⋅4762 ≡ 514⋅514=264196 ≡ 457 mod 661

8: 4768=4764+4=4764⋅4764 ≡ 457⋅457=208849 ≡ 634 mod 661

16: 47616=4768+8=4768⋅4768 ≡ 634⋅634=401956 ≡ 68 mod 661

32: 47632=47616+16=47616⋅47616 ≡ 68⋅68=4624 ≡ 658 mod 661

64: 47664=47632+32=47632⋅47632 ≡ 658⋅658=432964 ≡ 9 mod 661

128: 476128=47664+64=47664⋅47664 ≡ 9⋅9=81 ≡ 81 mod 661

476187

= 476128+32+16+8+2+1

= 476128⋅47632⋅47616⋅4768⋅4762⋅4761

81 ⋅ 658 ⋅ 68 ⋅ 634 ⋅ 514 ⋅ 476 mod 661
53298 ⋅ 68 ⋅ 634 ⋅ 514 ⋅ 476 mod 661 ≡ 418 ⋅ 68 ⋅ 634 ⋅ 514 ⋅ 476 mod 661
28424 ⋅ 634 ⋅ 514 ⋅ 476 mod 661 ≡ 1 ⋅ 634 ⋅ 514 ⋅ 476 mod 661
634 ⋅ 514 ⋅ 476 mod 661
325876 ⋅ 476 mod 661 ≡ 3 ⋅ 476 mod 661
1428 mod 661 ≡ 106 mod 661

Es gilt also: 476187 ≡ 106 mod 661

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 58 ⋅ x ≡ 1 mod 71 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 71 und 58

=>71 = 1⋅58 + 13
=>58 = 4⋅13 + 6
=>13 = 2⋅6 + 1
=>6 = 6⋅1 + 0

also gilt: ggt(71,58)=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= 13-2⋅6
6= 58-4⋅13 eingesetzt in die Zeile drüber: 1 = 1⋅13 -2⋅(58 -4⋅ 13)
= 1⋅13 -2⋅58 +8⋅ 13)
= -2⋅58 +9⋅ 13 (=1)
13= 71-1⋅58 eingesetzt in die Zeile drüber: 1 = -2⋅58 +9⋅(71 -1⋅ 58)
= -2⋅58 +9⋅71 -9⋅ 58)
= 9⋅71 -11⋅ 58 (=1)

Es gilt also: ggt(71,58)=1 = 9⋅71 -11⋅58

oder wenn man 9⋅71 auf die linke Seite bringt:

1 -9⋅71 = -11⋅58

-11⋅58 = -9⋅71 + 1 |+71⋅58

-11⋅58 + 71⋅58 = -9⋅71 + 71⋅58 + 1

(-11 + 71) ⋅ 58 = (-9 + 58) ⋅ 71 + 1

60⋅58 = 49⋅71 + 1

Es gilt also: 60⋅58 = 49⋅71 +1

Somit 60⋅58 = 1 mod 71

60 ist also das Inverse von 58 mod 71

Schlüsselpaar für RSA

Beispiel:

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