Mathematische Grundlagen 3: Unterschied zwischen den Versionen

Aus RMG-Wiki
Wechseln zu: Navigation, Suche
 
Zeile 142: Zeile 142:
 
<u>Beweis:</u><br>
 
<u>Beweis:</u><br>
 
Es bezeichnet <math>\varphi(n)</math> die eulersche <math>\varphi-Funktion</math>, die zu einer Zahl <math>n \in \N</math> die entsprechende Anzahl der zu n teilerfremden Zahlen angibt, wobei <math>z_k\ </math> die <math>\varphi(n)</math> verschiedenen  Repräsentanten dieser Restklasse bezeichnen.<br>
 
Es bezeichnet <math>\varphi(n)</math> die eulersche <math>\varphi-Funktion</math>, die zu einer Zahl <math>n \in \N</math> die entsprechende Anzahl der zu n teilerfremden Zahlen angibt, wobei <math>z_k\ </math> die <math>\varphi(n)</math> verschiedenen  Repräsentanten dieser Restklasse bezeichnen.<br>
<math>[z_k]\ =\ \{z_1, z_2, z_3,...,z_{\varphi(n)} \}</math><br>
 
 
<br>
 
<br>
Da <math>a\cdot z_i\ \not\equiv \ a\cdot z_j\ mod\ n</math> für <math>i \ne j</math>, ist es möglich jeden Repräsentanten von <math>[z_k]</math> mit dem konstanten Faktor a zu multiplizieren und dabei erneut Repräsentanten der Restklasse zu erhalten.<br>
+
Da <math>a\cdot z_i\ \not\equiv \ a\cdot z_j\ mod\ n</math> für <math>i \ne j</math>, ist es möglich einen Repräsentanten <math>z_l\ </math> mit dem konstanten Faktor a zu multiplizieren und dabei erneut Repräsentanten der Restklasse zu erhalten.<br>
 
<br>
 
<br>
Daher gehört auch diese Menge zur Restklasse:
+
Daher muss gelten:
 
<br>
 
<br>
<br><math>[z_k]\ =\ \{az_1, az_2, az_3,...,az_{\varphi(n)} \}</math><br>
+
<br><math>az_1\cdot az_2\cdot az_3\cdot...\cdot az_{\varphi(n)} \equiv z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)} \ mod\ n</math><br>
<br>
+
<br><math>( z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)} ) \cdot a^{\varphi(n)} \equiv z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)}\ mod\ n</math><br>
Weiterhin muss deshalb gelten:
+
<br>
+
<br><math>\{az_1\cdot az_2\cdot az_3\cdot...\cdot az_{\varphi(n)} \} \equiv \{z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)} \}\ mod\ n</math><br>
+
<br><math>( \{z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)} \} ) \cdot a^{\varphi(n)} \equiv \{z_1\cdot z_2\cdot z_3\cdot...\cdot z_{\varphi(n)}\}\ mod\ n</math><br>
+
 
Hieraus folgt somit:<br>
 
Hieraus folgt somit:<br>
 
<br>
 
<br>

Aktuelle Version vom 23. Dezember 2010, 09:00 Uhr

Buch.PNG Fachwortverzeichnis

Modulare Inverse

In der 6. Klasse hast du dich schon einmal mit Kehrwerten beschäftigt. Bei der Zahl 2 ist der Kehrwert bezüglich der Multiplikation 0,5.  2\cdot 0,5 =1, den Kehrwert kann man auch als multiplikative Inverse bezeichnen. Im Folgenden gilt es zu untersuchen, ob auch modulare Inversen existieren und, wenn ja, unter welchen Bedingungen, wenn wir nur ganzzahlige Inverse betrachten möchten. Aus den Angaben von Alice folgt: a = 13, n = 24, x \in \Z Wie für den Kehrwert, so gilt auch für die modulare Inverse, dass das Resultat 1 ergeben muss.


Allgemein gilt also: Alternative Schreibweise für die modulare Inverse:
a\cdot x\ mod\ n =1 a^{-1}\equiv x\ mod\ n


Diese Gleichungen sind äquivalent zu:
a\cdot x = r\cdot n +1\ ;\ r\in\Z diese Schreibweise erinnert an Lemma 1.4, wonach man vermuten kann, dass die Gleichung nur für ggT(a,n) = 1 gilt.

Für die Aufgabe von Alice gilt somit:

13\cdot x\ mod\ 24 =1


Falls eine Lösung existiert, soll nun eine ganze Zahl x gefunden werden, so dass die Gleichung erfüllt ist. Wie du anhand von Alices Beispiel selbst überprüfen kannst, ist dies bereits bei so kleinen Zahlen ziemlich schwierig.
Deshalb betrachten wir nun den Satz von der modularen Inversen und werden darauf einen Algorithmus kennen lernen, mithilfe dessen sich die modulo Inverse, die auch als multiplikative Inverse bezeichnet werden kann, relativ einfach berechnen lässt.

Satz 2.3[1] (Satz von der modularen Inversen) Es sei a,x \in \Z und n \in \N mit ggT(a,n) = 1, so ist x die modulare Inverse zu a, wenn gilt:

a\cdot x\ mod\ n =1



Wie du bereits aus Abschnitt 1 weißt, lässt sich der ggT zweier Zahlen mithilfe des Euklidischen Algorithmus bestimmen.

Algorithmus 2.4[1] (Berechnung der modularen Inverse) Es seien a,n \in \Z mit ggT(a,n) = 1. Man berechne zunächst die Vielfachsummendarstellung 1=a\cdot x+y\cdot n. Dann ist x die modulare Inverse von a modulo n.


Bei den von Alice gewählten Zahlen gilt ggT(13,24) = 1, also existiert eine modulare Inverse, da 13,24 \in\Z lässt sich obiger Algorithmus hier anwenden, um die modulare Inverse zu 13 mod 24 zu bestimmen.
Gesucht sind x und y, für die gilt: x,y \in \Z
1 = 13x + 24y

Aufgabe:

Bestimme mithilfe des Euklidischen Algorithmus die Vielfachsummendarstellung von 13 und 24 und ermittle daraus die modulare Inverse zu 13 mod 24.


Alice beschäftigt sich jetzt mit dem Satz von Fermat, sowie dem Satz von Euler, weil sie gelesen hat, dass diese Sätze elementar für das RSA-Kryptosystem sind. Folglich solltest auch du diese beiden Sätze kennenlernen, bevor du dich dem RSA-Kryptosystem zuwendest.

Kleiner Satz von Fermat


Satz 2.5[2] (Der kleine Satz von Fermat) Es sei p eine Primzahl, so gilt für alle a \in \Z mit ggT(a,p) = 1:

a^{p-1}\equiv 1\ mod\ p



Alice wählt sich p = 5 und a = 4, um den Satz zu testen.
Somit gilt nach dem kleinen Satz von Fermat:
4^4\ mod\ 5 = 256\ mod\ 5 = 1

Beim Satz von Fermat handelt es sich lediglich um einen Sonderfall des Satzes von Euler:

Satz von Euler


Satz 2.6[2] (Satz von Euler) Es sei n \in \N, so gilt für jedes a mit ggT(a,n) = 1:


a^{\varphi(n)} \equiv 1\ mod\ n


Hierbei bezeichnet \varphi(n) die Anzahl der zu n teilerfremden Zahlen aus der Menge {1,2,...,n-1}. Wenn p eine Primzahl ist, so gilt: \varphi(p)= p-1, für zwei voneinander verschiedene Primzahlen p,q gilt folglich: \varphi(p\cdot q)=(p-1)\cdot (q-1)


weiter weiter zum RSA-Algorithmus

zurück zur Übersicht


  1. 1,0 1,1 [2, S.107]
  2. 2,0 2,1 Satz 2.5, der zugehörige Beweis und Satz 2.6 wurden [10, S.5] entnommen. Der Beweis zu Satz 2.6 wurde analog zum Beweis von Satz 2.5 entwickelt.

siehe dazu Literaturverzeichnis