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: (20000 + 804) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(20000 + 804) mod 4 ≡ (20000 mod 4 + 804 mod 4) mod 4.

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

804 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 804 = 800+4 = 4 ⋅ 200 +4.

Somit gilt:

(20000 + 804) mod 4 ≡ (0 + 0) mod 4 ≡ 0 mod 4.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (52 ⋅ 100) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(52 ⋅ 100) mod 4 ≡ (52 mod 4 ⋅ 100 mod 4) mod 4.

52 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 52 = 52 + 0 = 13 ⋅ 4 + 0 ist.

100 mod 4 ≡ 0 mod 4 kann man relativ leicht bestimmen, weil ja 100 = 100 + 0 = 25 ⋅ 4 + 0 ist.

Somit gilt:

(52 ⋅ 100) mod 4 ≡ (0 ⋅ 0) mod 4 ≡ 0 mod 4.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 43532 mod 809.

Lösung einblenden

Die 32 im Exponent ist ja ein reine 2er-Potenz (25).

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. 435 -> x
2. mod(x²,809) -> 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: 4351=435

2: 4352=4351+1=4351⋅4351 ≡ 435⋅435=189225 ≡ 728 mod 809

4: 4354=4352+2=4352⋅4352 ≡ 728⋅728=529984 ≡ 89 mod 809

8: 4358=4354+4=4354⋅4354 ≡ 89⋅89=7921 ≡ 640 mod 809

16: 43516=4358+8=4358⋅4358 ≡ 640⋅640=409600 ≡ 246 mod 809

32: 43532=43516+16=43516⋅43516 ≡ 246⋅246=60516 ≡ 650 mod 809

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 31162 mod 599.

Lösung einblenden

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

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

62 = 32+16+8+4+2

1: 3111=311

2: 3112=3111+1=3111⋅3111 ≡ 311⋅311=96721 ≡ 282 mod 599

4: 3114=3112+2=3112⋅3112 ≡ 282⋅282=79524 ≡ 456 mod 599

8: 3118=3114+4=3114⋅3114 ≡ 456⋅456=207936 ≡ 83 mod 599

16: 31116=3118+8=3118⋅3118 ≡ 83⋅83=6889 ≡ 300 mod 599

32: 31132=31116+16=31116⋅31116 ≡ 300⋅300=90000 ≡ 150 mod 599

31162

= 31132+16+8+4+2

= 31132⋅31116⋅3118⋅3114⋅3112

150 ⋅ 300 ⋅ 83 ⋅ 456 ⋅ 282 mod 599
45000 ⋅ 83 ⋅ 456 ⋅ 282 mod 599 ≡ 75 ⋅ 83 ⋅ 456 ⋅ 282 mod 599
6225 ⋅ 456 ⋅ 282 mod 599 ≡ 235 ⋅ 456 ⋅ 282 mod 599
107160 ⋅ 282 mod 599 ≡ 538 ⋅ 282 mod 599
151716 mod 599 ≡ 169 mod 599

Es gilt also: 31162 ≡ 169 mod 599

erweiterter Euklid'scher Algorithmus

Beispiel:

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

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

Lösung einblenden

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

=>61 = 1⋅48 + 13
=>48 = 3⋅13 + 9
=>13 = 1⋅9 + 4
=>9 = 2⋅4 + 1
=>4 = 4⋅1 + 0

also gilt: ggt(61,48)=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= 9-2⋅4
4= 13-1⋅9 eingesetzt in die Zeile drüber: 1 = 1⋅9 -2⋅(13 -1⋅ 9)
= 1⋅9 -2⋅13 +2⋅ 9)
= -2⋅13 +3⋅ 9 (=1)
9= 48-3⋅13 eingesetzt in die Zeile drüber: 1 = -2⋅13 +3⋅(48 -3⋅ 13)
= -2⋅13 +3⋅48 -9⋅ 13)
= 3⋅48 -11⋅ 13 (=1)
13= 61-1⋅48 eingesetzt in die Zeile drüber: 1 = 3⋅48 -11⋅(61 -1⋅ 48)
= 3⋅48 -11⋅61 +11⋅ 48)
= -11⋅61 +14⋅ 48 (=1)

Es gilt also: ggt(61,48)=1 = -11⋅61 +14⋅48

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

1 +11⋅61 = +14⋅48

Es gilt also: 14⋅48 = 11⋅61 +1

Somit 14⋅48 = 1 mod 61

14 ist also das Inverse von 48 mod 61

Schlüsselpaar für RSA

Beispiel:

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