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: (2496 - 5003) mod 5.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(2496 - 5003) mod 5 ≡ (2496 mod 5 - 5003 mod 5) mod 5.

2496 mod 5 ≡ 1 mod 5 kann man relativ leicht bestimmen, weil ja 2496 = 2400+96 = 5 ⋅ 480 +96.

5003 mod 5 ≡ 3 mod 5 kann man relativ leicht bestimmen, weil ja 5003 = 5000+3 = 5 ⋅ 1000 +3.

Somit gilt:

(2496 - 5003) mod 5 ≡ (1 - 3) mod 5 ≡ -2 mod 5 ≡ 3 mod 5.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (72 ⋅ 68) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(72 ⋅ 68) mod 4 ≡ (72 mod 4 ⋅ 68 mod 4) mod 4.

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

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

Somit gilt:

(72 ⋅ 68) mod 4 ≡ (0 ⋅ 0) mod 4 ≡ 0 mod 4.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 67216 mod 797.

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. 672 -> x
2. mod(x²,797) -> 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: 6721=672

2: 6722=6721+1=6721⋅6721 ≡ 672⋅672=451584 ≡ 482 mod 797

4: 6724=6722+2=6722⋅6722 ≡ 482⋅482=232324 ≡ 397 mod 797

8: 6728=6724+4=6724⋅6724 ≡ 397⋅397=157609 ≡ 600 mod 797

16: 67216=6728+8=6728⋅6728 ≡ 600⋅600=360000 ≡ 553 mod 797

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 36480 mod 457.

Lösung einblenden

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

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

80 = 64+16

1: 3641=364

2: 3642=3641+1=3641⋅3641 ≡ 364⋅364=132496 ≡ 423 mod 457

4: 3644=3642+2=3642⋅3642 ≡ 423⋅423=178929 ≡ 242 mod 457

8: 3648=3644+4=3644⋅3644 ≡ 242⋅242=58564 ≡ 68 mod 457

16: 36416=3648+8=3648⋅3648 ≡ 68⋅68=4624 ≡ 54 mod 457

32: 36432=36416+16=36416⋅36416 ≡ 54⋅54=2916 ≡ 174 mod 457

64: 36464=36432+32=36432⋅36432 ≡ 174⋅174=30276 ≡ 114 mod 457

36480

= 36464+16

= 36464⋅36416

114 ⋅ 54 mod 457
6156 mod 457 ≡ 215 mod 457

Es gilt also: 36480 ≡ 215 mod 457

erweiterter Euklid'scher Algorithmus

Beispiel:

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

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

Lösung einblenden

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

=>61 = 3⋅19 + 4
=>19 = 4⋅4 + 3
=>4 = 1⋅3 + 1
=>3 = 3⋅1 + 0

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

Es gilt also: ggt(61,19)=1 = 5⋅61 -16⋅19

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

1 -5⋅61 = -16⋅19

-16⋅19 = -5⋅61 + 1 |+61⋅19

-16⋅19 + 61⋅19 = -5⋅61 + 61⋅19 + 1

(-16 + 61) ⋅ 19 = (-5 + 19) ⋅ 61 + 1

45⋅19 = 14⋅61 + 1

Es gilt also: 45⋅19 = 14⋅61 +1

Somit 45⋅19 = 1 mod 61

45 ist also das Inverse von 19 mod 61

Schlüsselpaar für RSA

Beispiel:

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