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: (148 - 11999) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(148 - 11999) mod 3 ≡ (148 mod 3 - 11999 mod 3) mod 3.

148 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 148 = 150-2 = 3 ⋅ 50 -2 = 3 ⋅ 50 - 3 + 1.

11999 mod 3 ≡ 2 mod 3 kann man relativ leicht bestimmen, weil ja 11999 = 12000-1 = 3 ⋅ 4000 -1 = 3 ⋅ 4000 - 3 + 2.

Somit gilt:

(148 - 11999) mod 3 ≡ (1 - 2) mod 3 ≡ -1 mod 3 ≡ 2 mod 3.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (83 ⋅ 50) mod 6.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(83 ⋅ 50) mod 6 ≡ (83 mod 6 ⋅ 50 mod 6) mod 6.

83 mod 6 ≡ 5 mod 6 kann man relativ leicht bestimmen, weil ja 83 = 78 + 5 = 13 ⋅ 6 + 5 ist.

50 mod 6 ≡ 2 mod 6 kann man relativ leicht bestimmen, weil ja 50 = 48 + 2 = 8 ⋅ 6 + 2 ist.

Somit gilt:

(83 ⋅ 50) mod 6 ≡ (5 ⋅ 2) mod 6 ≡ 10 mod 6 ≡ 4 mod 6.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 5378 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. 537 -> 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: 5371=537

2: 5372=5371+1=5371⋅5371 ≡ 537⋅537=288369 ≡ 40 mod 773

4: 5374=5372+2=5372⋅5372 ≡ 40⋅40=1600 ≡ 54 mod 773

8: 5378=5374+4=5374⋅5374 ≡ 54⋅54=2916 ≡ 597 mod 773

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 31666 mod 877.

Lösung einblenden

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

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

66 = 64+2

1: 3161=316

2: 3162=3161+1=3161⋅3161 ≡ 316⋅316=99856 ≡ 755 mod 877

4: 3164=3162+2=3162⋅3162 ≡ 755⋅755=570025 ≡ 852 mod 877

8: 3168=3164+4=3164⋅3164 ≡ 852⋅852=725904 ≡ 625 mod 877

16: 31616=3168+8=3168⋅3168 ≡ 625⋅625=390625 ≡ 360 mod 877

32: 31632=31616+16=31616⋅31616 ≡ 360⋅360=129600 ≡ 681 mod 877

64: 31664=31632+32=31632⋅31632 ≡ 681⋅681=463761 ≡ 705 mod 877

31666

= 31664+2

= 31664⋅3162

705 ⋅ 755 mod 877
532275 mod 877 ≡ 813 mod 877

Es gilt also: 31666 ≡ 813 mod 877

erweiterter Euklid'scher Algorithmus

Beispiel:

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

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

Lösung einblenden

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

=>59 = 1⋅51 + 8
=>51 = 6⋅8 + 3
=>8 = 2⋅3 + 2
=>3 = 1⋅2 + 1
=>2 = 2⋅1 + 0

also gilt: ggt(59,51)=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= 8-2⋅3 eingesetzt in die Zeile drüber: 1 = 1⋅3 -1⋅(8 -2⋅ 3)
= 1⋅3 -1⋅8 +2⋅ 3)
= -1⋅8 +3⋅ 3 (=1)
3= 51-6⋅8 eingesetzt in die Zeile drüber: 1 = -1⋅8 +3⋅(51 -6⋅ 8)
= -1⋅8 +3⋅51 -18⋅ 8)
= 3⋅51 -19⋅ 8 (=1)
8= 59-1⋅51 eingesetzt in die Zeile drüber: 1 = 3⋅51 -19⋅(59 -1⋅ 51)
= 3⋅51 -19⋅59 +19⋅ 51)
= -19⋅59 +22⋅ 51 (=1)

Es gilt also: ggt(59,51)=1 = -19⋅59 +22⋅51

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

1 +19⋅59 = +22⋅51

Es gilt also: 22⋅51 = 19⋅59 +1

Somit 22⋅51 = 1 mod 59

22 ist also das Inverse von 51 mod 59

Schlüsselpaar für RSA

Beispiel:

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