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: (32003 + 39995) mod 8.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(32003 + 39995) mod 8 ≡ (32003 mod 8 + 39995 mod 8) mod 8.

32003 mod 8 ≡ 3 mod 8 kann man relativ leicht bestimmen, weil ja 32003 = 32000+3 = 8 ⋅ 4000 +3.

39995 mod 8 ≡ 3 mod 8 kann man relativ leicht bestimmen, weil ja 39995 = 39000+995 = 8 ⋅ 4875 +995.

Somit gilt:

(32003 + 39995) mod 8 ≡ (3 + 3) mod 8 ≡ 6 mod 8.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (37 ⋅ 84) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(37 ⋅ 84) mod 3 ≡ (37 mod 3 ⋅ 84 mod 3) mod 3.

37 mod 3 ≡ 1 mod 3 kann man relativ leicht bestimmen, weil ja 37 = 36 + 1 = 12 ⋅ 3 + 1 ist.

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

Somit gilt:

(37 ⋅ 84) mod 3 ≡ (1 ⋅ 0) mod 3 ≡ 0 mod 3.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 5938 mod 761.

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. 593 -> x
2. mod(x²,761) -> 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: 5931=593

2: 5932=5931+1=5931⋅5931 ≡ 593⋅593=351649 ≡ 67 mod 761

4: 5934=5932+2=5932⋅5932 ≡ 67⋅67=4489 ≡ 684 mod 761

8: 5938=5934+4=5934⋅5934 ≡ 684⋅684=467856 ≡ 602 mod 761

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 473192 mod 911.

Lösung einblenden

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

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

192 = 128+64

1: 4731=473

2: 4732=4731+1=4731⋅4731 ≡ 473⋅473=223729 ≡ 534 mod 911

4: 4734=4732+2=4732⋅4732 ≡ 534⋅534=285156 ≡ 13 mod 911

8: 4738=4734+4=4734⋅4734 ≡ 13⋅13=169 ≡ 169 mod 911

16: 47316=4738+8=4738⋅4738 ≡ 169⋅169=28561 ≡ 320 mod 911

32: 47332=47316+16=47316⋅47316 ≡ 320⋅320=102400 ≡ 368 mod 911

64: 47364=47332+32=47332⋅47332 ≡ 368⋅368=135424 ≡ 596 mod 911

128: 473128=47364+64=47364⋅47364 ≡ 596⋅596=355216 ≡ 837 mod 911

473192

= 473128+64

= 473128⋅47364

837 ⋅ 596 mod 911
498852 mod 911 ≡ 535 mod 911

Es gilt also: 473192 ≡ 535 mod 911

erweiterter Euklid'scher Algorithmus

Beispiel:

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

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

Lösung einblenden

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

=>59 = 2⋅24 + 11
=>24 = 2⋅11 + 2
=>11 = 5⋅2 + 1
=>2 = 2⋅1 + 0

also gilt: ggt(59,24)=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= 11-5⋅2
2= 24-2⋅11 eingesetzt in die Zeile drüber: 1 = 1⋅11 -5⋅(24 -2⋅ 11)
= 1⋅11 -5⋅24 +10⋅ 11)
= -5⋅24 +11⋅ 11 (=1)
11= 59-2⋅24 eingesetzt in die Zeile drüber: 1 = -5⋅24 +11⋅(59 -2⋅ 24)
= -5⋅24 +11⋅59 -22⋅ 24)
= 11⋅59 -27⋅ 24 (=1)

Es gilt also: ggt(59,24)=1 = 11⋅59 -27⋅24

oder wenn man 11⋅59 auf die linke Seite bringt:

1 -11⋅59 = -27⋅24

-27⋅24 = -11⋅59 + 1 |+59⋅24

-27⋅24 + 59⋅24 = -11⋅59 + 59⋅24 + 1

(-27 + 59) ⋅ 24 = (-11 + 24) ⋅ 59 + 1

32⋅24 = 13⋅59 + 1

Es gilt also: 32⋅24 = 13⋅59 +1

Somit 32⋅24 = 1 mod 59

32 ist also das Inverse von 24 mod 59

Schlüsselpaar für RSA

Beispiel:

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