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: (26998 - 45004) mod 9.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(26998 - 45004) mod 9 ≡ (26998 mod 9 - 45004 mod 9) mod 9.

26998 mod 9 ≡ 7 mod 9 kann man relativ leicht bestimmen, weil ja 26998 = 27000-2 = 9 ⋅ 3000 -2 = 9 ⋅ 3000 - 9 + 7.

45004 mod 9 ≡ 4 mod 9 kann man relativ leicht bestimmen, weil ja 45004 = 45000+4 = 9 ⋅ 5000 +4.

Somit gilt:

(26998 - 45004) mod 9 ≡ (7 - 4) mod 9 ≡ 3 mod 9.

Modulo multiplizieren

Beispiel:

Berechne ohne WTR: (96 ⋅ 20) mod 4.

Lösung einblenden

Um längere Rechnungen zu vermeiden, rechnen wir:

(96 ⋅ 20) mod 4 ≡ (96 mod 4 ⋅ 20 mod 4) mod 4.

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

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

Somit gilt:

(96 ⋅ 20) mod 4 ≡ (0 ⋅ 0) mod 4 ≡ 0 mod 4.

modulo Potenzieren einfach

Beispiel:

Berechne möglichst geschickt: 22716 mod 457.

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. 227 -> x
2. mod(x²,457) -> 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: 2271=227

2: 2272=2271+1=2271⋅2271 ≡ 227⋅227=51529 ≡ 345 mod 457

4: 2274=2272+2=2272⋅2272 ≡ 345⋅345=119025 ≡ 205 mod 457

8: 2278=2274+4=2274⋅2274 ≡ 205⋅205=42025 ≡ 438 mod 457

16: 22716=2278+8=2278⋅2278 ≡ 438⋅438=191844 ≡ 361 mod 457

modulo Potenzieren große Zahlen

Beispiel:

Berechne möglichst geschickt: 624145 mod 733.

Lösung einblenden

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

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

145 = 128+16+1

1: 6241=624

2: 6242=6241+1=6241⋅6241 ≡ 624⋅624=389376 ≡ 153 mod 733

4: 6244=6242+2=6242⋅6242 ≡ 153⋅153=23409 ≡ 686 mod 733

8: 6248=6244+4=6244⋅6244 ≡ 686⋅686=470596 ≡ 10 mod 733

16: 62416=6248+8=6248⋅6248 ≡ 10⋅10=100 ≡ 100 mod 733

32: 62432=62416+16=62416⋅62416 ≡ 100⋅100=10000 ≡ 471 mod 733

64: 62464=62432+32=62432⋅62432 ≡ 471⋅471=221841 ≡ 475 mod 733

128: 624128=62464+64=62464⋅62464 ≡ 475⋅475=225625 ≡ 594 mod 733

624145

= 624128+16+1

= 624128⋅62416⋅6241

594 ⋅ 100 ⋅ 624 mod 733
59400 ⋅ 624 mod 733 ≡ 27 ⋅ 624 mod 733
16848 mod 733 ≡ 722 mod 733

Es gilt also: 624145 ≡ 722 mod 733

erweiterter Euklid'scher Algorithmus

Beispiel:

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

Also bestimme x, so dass 40 ⋅ x ≡ 1 mod 71 gilt:

Lösung einblenden

Berechnung des größten gemeinsamen Teilers von 71 und 40

=>71 = 1⋅40 + 31
=>40 = 1⋅31 + 9
=>31 = 3⋅9 + 4
=>9 = 2⋅4 + 1
=>4 = 4⋅1 + 0

also gilt: ggt(71,40)=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= 31-3⋅9 eingesetzt in die Zeile drüber: 1 = 1⋅9 -2⋅(31 -3⋅ 9)
= 1⋅9 -2⋅31 +6⋅ 9)
= -2⋅31 +7⋅ 9 (=1)
9= 40-1⋅31 eingesetzt in die Zeile drüber: 1 = -2⋅31 +7⋅(40 -1⋅ 31)
= -2⋅31 +7⋅40 -7⋅ 31)
= 7⋅40 -9⋅ 31 (=1)
31= 71-1⋅40 eingesetzt in die Zeile drüber: 1 = 7⋅40 -9⋅(71 -1⋅ 40)
= 7⋅40 -9⋅71 +9⋅ 40)
= -9⋅71 +16⋅ 40 (=1)

Es gilt also: ggt(71,40)=1 = -9⋅71 +16⋅40

oder wenn man -9⋅71 auf die linke Seite bringt:

1 +9⋅71 = +16⋅40

Es gilt also: 16⋅40 = 9⋅71 +1

Somit 16⋅40 = 1 mod 71

16 ist also das Inverse von 40 mod 71

Schlüsselpaar für RSA

Beispiel:

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