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: (2107 + 1402) mod 7.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(2107 + 1402) mod 7 ≡ (2107 mod 7 + 1402 mod 7) mod 7.

2107 mod 7 ≡ 0 mod 7 kann man relativ leicht bestimmen, weil ja 2107 = 2100+7 = 7 ⋅ 300 +7.

1402 mod 7 ≡ 2 mod 7 kann man relativ leicht bestimmen, weil ja 1402 = 1400+2 = 7 ⋅ 200 +2.

Somit gilt:

(2107 + 1402) mod 7 ≡ (0 + 2) mod 7 ≡ 2 mod 7.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (76 ⋅ 93) mod 5.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(76 ⋅ 93) mod 5 ≡ (76 mod 5 ⋅ 93 mod 5) mod 5.

76 mod 5 ≡ 1 mod 5 kann man relativ leicht bestimmen, weil ja 76 = 75 + 1 = 15 ⋅ 5 + 1 ist.

93 mod 5 ≡ 3 mod 5 kann man relativ leicht bestimmen, weil ja 93 = 90 + 3 = 18 ⋅ 5 + 3 ist.

Somit gilt:

(76 ⋅ 93) mod 5 ≡ (1 ⋅ 3) mod 5 ≡ 3 mod 5.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 24316 mod 419.

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. 243 -> x
2. mod(x²,419) -> 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: 2431=243

2: 2432=2431+1=2431⋅2431 ≡ 243⋅243=59049 ≡ 389 mod 419

4: 2434=2432+2=2432⋅2432 ≡ 389⋅389=151321 ≡ 62 mod 419

8: 2438=2434+4=2434⋅2434 ≡ 62⋅62=3844 ≡ 73 mod 419

16: 24316=2438+8=2438⋅2438 ≡ 73⋅73=5329 ≡ 301 mod 419

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 273219 mod 719.

Lösung einblenden

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

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

219 = 128+64+16+8+2+1

1: 2731=273

2: 2732=2731+1=2731⋅2731 ≡ 273⋅273=74529 ≡ 472 mod 719

4: 2734=2732+2=2732⋅2732 ≡ 472⋅472=222784 ≡ 613 mod 719

8: 2738=2734+4=2734⋅2734 ≡ 613⋅613=375769 ≡ 451 mod 719

16: 27316=2738+8=2738⋅2738 ≡ 451⋅451=203401 ≡ 643 mod 719

32: 27332=27316+16=27316⋅27316 ≡ 643⋅643=413449 ≡ 24 mod 719

64: 27364=27332+32=27332⋅27332 ≡ 24⋅24=576 ≡ 576 mod 719

128: 273128=27364+64=27364⋅27364 ≡ 576⋅576=331776 ≡ 317 mod 719

273219

= 273128+64+16+8+2+1

= 273128⋅27364⋅27316⋅2738⋅2732⋅2731

317 ⋅ 576 ⋅ 643 ⋅ 451 ⋅ 472 ⋅ 273 mod 719
182592 ⋅ 643 ⋅ 451 ⋅ 472 ⋅ 273 mod 719 ≡ 685 ⋅ 643 ⋅ 451 ⋅ 472 ⋅ 273 mod 719
440455 ⋅ 451 ⋅ 472 ⋅ 273 mod 719 ≡ 427 ⋅ 451 ⋅ 472 ⋅ 273 mod 719
192577 ⋅ 472 ⋅ 273 mod 719 ≡ 604 ⋅ 472 ⋅ 273 mod 719
285088 ⋅ 273 mod 719 ≡ 364 ⋅ 273 mod 719
99372 mod 719 ≡ 150 mod 719

Es gilt also: 273219 ≡ 150 mod 719

erweiterter Euklid'scher Algorithmus

Beispiel:

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

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

Lösung einblenden

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

=>73 = 3⋅23 + 4
=>23 = 5⋅4 + 3
=>4 = 1⋅3 + 1
=>3 = 3⋅1 + 0

also gilt: ggt(73,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= 4-1⋅3
3= 23-5⋅4 eingesetzt in die Zeile drüber: 1 = 1⋅4 -1⋅(23 -5⋅ 4)
= 1⋅4 -1⋅23 +5⋅ 4)
= -1⋅23 +6⋅ 4 (=1)
4= 73-3⋅23 eingesetzt in die Zeile drüber: 1 = -1⋅23 +6⋅(73 -3⋅ 23)
= -1⋅23 +6⋅73 -18⋅ 23)
= 6⋅73 -19⋅ 23 (=1)

Es gilt also: ggt(73,23)=1 = 6⋅73 -19⋅23

oder wenn man 6⋅73 auf die linke Seite bringt:

1 -6⋅73 = -19⋅23

-19⋅23 = -6⋅73 + 1 |+73⋅23

-19⋅23 + 73⋅23 = -6⋅73 + 73⋅23 + 1

(-19 + 73) ⋅ 23 = (-6 + 23) ⋅ 73 + 1

54⋅23 = 17⋅73 + 1

Es gilt also: 54⋅23 = 17⋅73 +1

Somit 54⋅23 = 1 mod 73

54 ist also das Inverse von 23 mod 73

Schlüsselpaar für RSA

Beispiel:

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