Aufgabenbeispiele von MGK Klasse 10

Durch Aktualisieren des Browsers (z.B. mit Taste F5) kann man neue Beispielaufgaben sehen


Modulo addieren

Beispiel:

Berechne ohne WTR: (3207 + 76) mod 8.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(3207 + 76) mod 8 ≡ (3207 mod 8 + 76 mod 8) mod 8.

3207 mod 8 ≡ 7 mod 8 kann man relativ leicht bestimmen, weil ja 3207 = 3200+7 = 8 ⋅ 400 +7.

76 mod 8 ≡ 4 mod 8 kann man relativ leicht bestimmen, weil ja 76 = 80-4 = 8 ⋅ 10 -4 = 8 ⋅ 10 - 8 + 4.

Somit gilt:

(3207 + 76) mod 8 ≡ (7 + 4) mod 8 ≡ 11 mod 8 ≡ 3 mod 8.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (16 ⋅ 89) mod 3.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(16 ⋅ 89) mod 3 ≡ (16 mod 3 ⋅ 89 mod 3) mod 3.

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

89 mod 3 ≡ 2 mod 3 kann man relativ leicht bestimmen, weil ja 89 = 87 + 2 = 29 ⋅ 3 + 2 ist.

Somit gilt:

(16 ⋅ 89) mod 3 ≡ (1 ⋅ 2) mod 3 ≡ 2 mod 3.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 27764 mod 401.

Lösung einblenden

Die 64 im Exponent ist ja ein reine 2er-Potenz (26).

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. 277 -> x
2. mod(x²,401) -> 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: 2771=277

2: 2772=2771+1=2771⋅2771 ≡ 277⋅277=76729 ≡ 138 mod 401

4: 2774=2772+2=2772⋅2772 ≡ 138⋅138=19044 ≡ 197 mod 401

8: 2778=2774+4=2774⋅2774 ≡ 197⋅197=38809 ≡ 313 mod 401

16: 27716=2778+8=2778⋅2778 ≡ 313⋅313=97969 ≡ 125 mod 401

32: 27732=27716+16=27716⋅27716 ≡ 125⋅125=15625 ≡ 387 mod 401

64: 27764=27732+32=27732⋅27732 ≡ 387⋅387=149769 ≡ 196 mod 401

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 19070 mod 241.

Lösung einblenden

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

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

70 = 64+4+2

1: 1901=190

2: 1902=1901+1=1901⋅1901 ≡ 190⋅190=36100 ≡ 191 mod 241

4: 1904=1902+2=1902⋅1902 ≡ 191⋅191=36481 ≡ 90 mod 241

8: 1908=1904+4=1904⋅1904 ≡ 90⋅90=8100 ≡ 147 mod 241

16: 19016=1908+8=1908⋅1908 ≡ 147⋅147=21609 ≡ 160 mod 241

32: 19032=19016+16=19016⋅19016 ≡ 160⋅160=25600 ≡ 54 mod 241

64: 19064=19032+32=19032⋅19032 ≡ 54⋅54=2916 ≡ 24 mod 241

19070

= 19064+4+2

= 19064⋅1904⋅1902

24 ⋅ 90 ⋅ 191 mod 241
2160 ⋅ 191 mod 241 ≡ 232 ⋅ 191 mod 241
44312 mod 241 ≡ 209 mod 241

Es gilt also: 19070 ≡ 209 mod 241

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 50 ⋅ x ≡ 1 mod 67 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 67 und 50

=>67 = 1⋅50 + 17
=>50 = 2⋅17 + 16
=>17 = 1⋅16 + 1
=>16 = 16⋅1 + 0

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

Es gilt also: ggt(67,50)=1 = 3⋅67 -4⋅50

oder wenn man 3⋅67 auf die linke Seite bringt:

1 -3⋅67 = -4⋅50

-4⋅50 = -3⋅67 + 1 |+67⋅50

-4⋅50 + 67⋅50 = -3⋅67 + 67⋅50 + 1

(-4 + 67) ⋅ 50 = (-3 + 50) ⋅ 67 + 1

63⋅50 = 47⋅67 + 1

Es gilt also: 63⋅50 = 47⋅67 +1

Somit 63⋅50 = 1 mod 67

63 ist also das Inverse von 50 mod 67

Schlüsselpaar für RSA

Beispiel:

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