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: (160 + 20001) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(160 + 20001) mod 4 ≡ (160 mod 4 + 20001 mod 4) mod 4.

160 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 160 = 160+0 = 4 ⋅ 40 +0.

20001 mod 4 ≡ 1 mod 4 kann man relativ leicht bestimmen, weil ja 20001 = 20000+1 = 4 ⋅ 5000 +1.

Somit gilt:

(160 + 20001) mod 4 ≡ (0 + 1) mod 4 ≡ 1 mod 4.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (36 ⋅ 68) mod 10.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(36 ⋅ 68) mod 10 ≡ (36 mod 10 ⋅ 68 mod 10) mod 10.

36 mod 10 ≡ 6 mod 10 kann man relativ leicht bestimmen, weil ja 36 = 30 + 6 = 3 ⋅ 10 + 6 ist.

68 mod 10 ≡ 8 mod 10 kann man relativ leicht bestimmen, weil ja 68 = 60 + 8 = 6 ⋅ 10 + 8 ist.

Somit gilt:

(36 ⋅ 68) mod 10 ≡ (6 ⋅ 8) mod 10 ≡ 48 mod 10 ≡ 8 mod 10.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 478128 mod 863.

Lösung einblenden

Die 128 im Exponent ist ja ein reine 2er-Potenz (27).

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. 478 -> x
2. mod(x²,863) -> 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: 4781=478

2: 4782=4781+1=4781⋅4781 ≡ 478⋅478=228484 ≡ 652 mod 863

4: 4784=4782+2=4782⋅4782 ≡ 652⋅652=425104 ≡ 508 mod 863

8: 4788=4784+4=4784⋅4784 ≡ 508⋅508=258064 ≡ 27 mod 863

16: 47816=4788+8=4788⋅4788 ≡ 27⋅27=729 ≡ 729 mod 863

32: 47832=47816+16=47816⋅47816 ≡ 729⋅729=531441 ≡ 696 mod 863

64: 47864=47832+32=47832⋅47832 ≡ 696⋅696=484416 ≡ 273 mod 863

128: 478128=47864+64=47864⋅47864 ≡ 273⋅273=74529 ≡ 311 mod 863

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 719166 mod 809.

Lösung einblenden

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

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

166 = 128+32+4+2

1: 7191=719

2: 7192=7191+1=7191⋅7191 ≡ 719⋅719=516961 ≡ 10 mod 809

4: 7194=7192+2=7192⋅7192 ≡ 10⋅10=100 ≡ 100 mod 809

8: 7198=7194+4=7194⋅7194 ≡ 100⋅100=10000 ≡ 292 mod 809

16: 71916=7198+8=7198⋅7198 ≡ 292⋅292=85264 ≡ 319 mod 809

32: 71932=71916+16=71916⋅71916 ≡ 319⋅319=101761 ≡ 636 mod 809

64: 71964=71932+32=71932⋅71932 ≡ 636⋅636=404496 ≡ 805 mod 809

128: 719128=71964+64=71964⋅71964 ≡ 805⋅805=648025 ≡ 16 mod 809

719166

= 719128+32+4+2

= 719128⋅71932⋅7194⋅7192

16 ⋅ 636 ⋅ 100 ⋅ 10 mod 809
10176 ⋅ 100 ⋅ 10 mod 809 ≡ 468 ⋅ 100 ⋅ 10 mod 809
46800 ⋅ 10 mod 809 ≡ 687 ⋅ 10 mod 809
6870 mod 809 ≡ 398 mod 809

Es gilt also: 719166 ≡ 398 mod 809

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 18 ⋅ x ≡ 1 mod 61 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 61 und 18

=>61 = 3⋅18 + 7
=>18 = 2⋅7 + 4
=>7 = 1⋅4 + 3
=>4 = 1⋅3 + 1
=>3 = 3⋅1 + 0

also gilt: ggt(61,18)=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= 4-1⋅3
3= 7-1⋅4 eingesetzt in die Zeile drüber: 1 = 1⋅4 -1⋅(7 -1⋅ 4)
= 1⋅4 -1⋅7 +1⋅ 4)
= -1⋅7 +2⋅ 4 (=1)
4= 18-2⋅7 eingesetzt in die Zeile drüber: 1 = -1⋅7 +2⋅(18 -2⋅ 7)
= -1⋅7 +2⋅18 -4⋅ 7)
= 2⋅18 -5⋅ 7 (=1)
7= 61-3⋅18 eingesetzt in die Zeile drüber: 1 = 2⋅18 -5⋅(61 -3⋅ 18)
= 2⋅18 -5⋅61 +15⋅ 18)
= -5⋅61 +17⋅ 18 (=1)

Es gilt also: ggt(61,18)=1 = -5⋅61 +17⋅18

oder wenn man -5⋅61 auf die linke Seite bringt:

1 +5⋅61 = +17⋅18

Es gilt also: 17⋅18 = 5⋅61 +1

Somit 17⋅18 = 1 mod 61

17 ist also das Inverse von 18 mod 61

Schlüsselpaar für RSA

Beispiel:

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