Der kleine Satz von Fermat Luisa-Marie Hartmann 5. Mai 2017 Inhaltsverzeichnis 1 Einleitung 2 Hauptteil 2.1 Prime Restklassengruppen . . . . 2.2 Ordnung von Gruppenelementen 2.3 Untergruppen . . . . . . . . . . . 2.4 Der kleine Satz von Fermat . . . 3 . . . . . . . . 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 4 5 7 9 1 Einleitung Die Primzahlen sind natürliche Zahlen, wie zum Beispiel 2,3,5,7,11,13,..., die nur von sich selbst und der 1 geteilt werden. Die Primzahlen spielen im kleinen Satz von Fermat eine elementare Rolle. Wir können uns die Frage stellen: Wann ist eine gegebene natürliche Zahl eine Primzahl? Genau mit dieser Frage hat sich Pierre de Fermat im 17. Jahrhundert beschäftigt und somit den kleinen Satz von Fermat formuliert, der nicht nur als Folgerung der Frage nachgeht, wann eine Zahl eine Primzahl ist, sondern sich vor allem mit den Eigenschaften von Primzahlen beschäftigt. Außerdem hat der kleine Satz von Fermat auch eine große Bedeutung für den Datenschutz in der heutigen Zeit. In Zeiten von Online-Banking, Online-Shopping, Social Media und vielen weiteren Aktivitäten im Internet, ist der Schutz der Daten ein großes Thema. Zum Schutz dieser Daten werden verschiedenste kryptographische Verfahren verwendet, wie zum Beispiel das RSA-Verfahren. Insbesondere in diesem Verfahren findet der kleine Satz von Fermat Anwendung: Beispielsweise wollen Anna und Niklas sich geheime Nachrichten schicken, das heißt die Nachrichten sollen verschlüsselt sein, jeder kann sie mitlesen, aber nur Niklas und Anna können ihre Nachrichten entschlüsseln. Die Idee ist nun, dass Niklas einen Verschlüsselungsschlüssel q veröffentlicht, mit dem Anna ihre Nachrichten an ihn verschlüsselt. Niklas hat dazu den passenden Entschlüsselungsschlüssel p, mit dem er die mit q verschlüsselte Nachricht lesen kann. Auch wenn eine dritte Person, sowohl q als auch die verschlüsselte Nachricht kennt, kann diese die Originalnachricht nicht rekonstruieren, da sie den Entschlüsselungsschlüssel p nicht kennt. Hierzu benötigen wir die Mathematik. Die Grundlage für dieses Verschlüsselungsverfahren, den kleinen Satz von Fermat, werden wir im Folgenden erarbeiten. Die Ausarbeitung orientiert sich an den Kapiteln 2, 2.8-2.12 aus [1]. Natürlich gibt es viele verschiedene Wege den kleinen Satz von Fermat zu beweisen. Diese Ausarbeitung beschäftigt sich mit nur einem dieser Wege. 3 2 Hauptteil 2.1 Prime Restklassengruppen Zu Beginn beschäftigen wir uns mit den primen Restklassengruppen. In diesem Abschnitt soll klar werden, was eine prime Restklassengruppe ist und wie ihre Ordnung mittels der Eulerschen ϕ -Funktion berechnet wird: Definition 2.1.1: Prime Restklasse Eine Restklasse a + mZ heißt prim, falls sie in Z/mZ ein multiplikatives Inverses hat, d.h. wenn die Kongruenz ab ≡ 1 mod m eine Lösung b ∈ Z hat. Aus der Definition folgt folgender Satz: Satz 2.1.1 Die Restklasse a + mZ ist genau dann in Z/mZ prim, wenn ggT (a, m) = 1 gilt. In diesem Fall ist das Inverse von a + mZ eindeutig bestimmt. Folgender Satz ist in der Kryptographie von besonderer Bedeutung: Satz 2.1.2 Die Menge aller primen Restklassen modulo m bildet eine endliche abelsche Gruppe bezüglich der Multiplikation. Beweis. Behauptung folgt aus Satz 2.1.1. 4 2 Hauptteil Diese Gruppe heißt prime Restklassengruppe modulo m und wird mit (Z/mZ)∗ bezeichnet. Ihre Ordnung bezeichnet man mit ϕ(m). Die Abbildung ϕ : N → N, m 7→ ϕ(m) heißt Eulersche ϕ -Funktion. Man beachte, dass ϕ(m) die Anzahl der Zahlen a ∈ {1, ..., m} ist mit ggT (a, m) = 1. Beispiel 1 (Bestimmung einer Restklassengruppe). (Z/4Z)∗ = {1 + 4Z, 3 + 4Z} ist die Prime Restklassengruppe modulo 4 mit ϕ(4) = 2. Beispiel 2 (Bestimmung der Werte der Eulerschen ϕ -Funktion). m 1 2 3 4 5 6 7 8 9 ϕ(m) 1 1 2 2 4 2 6 4 6 Man sieht in der Tabelle, dass ϕ(p) = p − 1 für die Primzahlen p gilt. Dies liegt daran, dass für eine Primzahl p alle Zahlen zwischen 1 und p − 1 zu p teilerfremd sind, weshalb folgender Satz gilt: Satz 2.1.3 Falls p eine Primzahl ist, gilt ϕ(p) = p − 1. 2.2 Ordnung von Gruppenelementen Nachdem wir nun die Ordnung der primen Restklassengruppen ϕ(m) kennengelernt haben, kommen wir jetzt zu der Ordnung eines Gruppenelements. In diesem Kapitel sei G eine Gruppe, die multiplikativ geschrieben ist mit dem neutralen Element 1. Die Ordnung einer Gruppe G ist definiert als ord(G) = |G|. Definition 2.2.1: Ordnung Sei g ∈ G. Existiert eine Zahl e ∈ N mit g e = 1, dann heißt die kleinste solche Zahl Ordnung von g in G. Andernfalls sagt man, dass die Ordnung von g in G unendlich ist. Die Ordnung von g in G wird mit ordG (g) bezeichnet. Wenn es klar ist, um welche Gruppe es sich handelt, schreiben wir ord(g). 5 2 Hauptteil Beispiel 3 (Bestimmung der Ordnung von Gruppenelementen). Bestimme die Ordnung von 2 + 13Z in (Z/13Z)∗ : k 0 1 2 3 4 5 6 7 8 9 10 11 12 2k 1 2 4 8 3 6 12 11 9 5 10 7 1 Die Ordnung von 2 + 13Z in (Z/13Z)∗ ist also 12. In diesem Fall ist die Ordnung gleich der Gruppenordnung. Allerdings muss dies nicht immer zutreffen, wie man im folgenden Beispiel sieht: Beispiel 4 (Bestimmung der Ordnung von Gruppenelementen). Bestimmung der Ordnung von 4 + 13Z in (Z/13Z)∗ : k 0 1 2 3 4 5 6 7 8 9 10 11 12 4k 1 4 3 12 9 10 1 4 3 12 9 10 1 Die Ordnung von 4 + 13Z in (Z/13Z)∗ ist also 6. In diesem Fall ist die Ordnung ungleich der Gruppenordnung. Satz 2.2.1 Sei g ∈ G und e ∈ Z. Dann gilt g e = 1 genau dann, wenn e durch die Ordnung von g in G teilbar ist. Beweis. Sei n = ord(g) und k ∈ Z. Wenn e = kn ist, dann folgt g e = g kn = (g n )k = 1k = 1. Sei umgekehrt g e = 1. Schreibe weiterhin e = qn + r mit 0 ≤ r < n. Dann folgt g r = g e−qn = g e (g n )−q = 1. Weil n die kleinste natürliche Zahl ist mit g n = 1, und weil 0 ≤ r < n ist, muss r = 0 und damit e = qn sein. Also ist n ein Teiler von e, wie behauptet. 6 2 Hauptteil 2.3 Untergruppen Der letzte Teil, der uns noch zur Formulierung des kleinen Satzes von Fermat fehlt, sind die Untergruppen. Im Folgenden bezeichnen wir mit G eine Gruppe. Definition 2.3.1: Untergruppe Eine Teilmenge U von G heißt Untergruppe von G, wenn U mit der Verknüpfung von G selbst eine Gruppe ist. Beispiel 5 (Überprüfung einer Untergruppe). Wir wollen nun zeigen, dass B = {0, 4, 8} eine Untergruppe von A = (Z/12Z) ist: Die Elemente 0+0=0 0+4=4 0+8=8 4+4=8 8 + 8 = 16 ≡ 4 4 + 8 = 12 ≡ 0 − 4 ≡ 8 − 8 ≡ 4 liegen alle in B. Daraus folgt, dass B eine Untergruppe von A ist. Im Gegensatz dazu ist {4, 6, 7} keine Untergruppe von A. Beispiel 6. Die von 2 + 13Z erzeugte Untergruppe von (Z/13Z)∗ ist die ganze Gruppe (Z/13Z)∗ (vgl. Beispiel 3). Die von 4+13Z erzeugte Untergruppe hat die Ordnung 6. Sie ist {k+13Z : k = 1, 4, 3, 12, 9, 10} (vgl. Beispiel 4). Für jedes g ∈ G bildet die Menge {g k : k ∈ Z} eine Untergruppe von G. Sie heißt die von g erzeugte Untergruppe und wir schreiben G =< g >. Hat g endliche Ordnung e, dann ist < g >= {g k : 0 ≤ k < e}: Sei x eine ganze Zahl. Dann gilt g x = g x mod e und dass e die Ordnung von < g > ist. Definition 2.3.2: zyklische Gruppe und Erzeuger Wenn G =< g > für ein g ∈ G ist, so heißt G zyklisch und g heißt Erzeuger von G. Die Gruppe G ist dann die von g erzeugte Gruppe. 7 2 Hauptteil Beispiel 7. (Z/13Z)∗ ist die von 2 + 13Z erzeugte Untergruppe in Z/13Z (vgl. Beispiel 3). Beispiel 8. Die additive Gruppe (Z, +) ist zyklisch mit zwei Erzeugern 1 und -1: Durch eine additive Verknüpfung können wir jede ganze Zahl zyklisch erzeugen. Der folgende Satz gibt uns ein Kriterium, um zu überprüfen, ob eine gegebene Gruppe zyklisch ist: Satz 2.3.1 Eine endliche Gruppe G mit |G| Elementen ist dann und nur dann zyklisch, wenn sie ein Element der Ordnung |G| enthält. Genauer gilt für jedes g ∈ G die Äquivalenz: g erzeugt G ⇔ ord(g) = |G| Beweis. Die von g erzeugte Untergruppe < g > besteht aus ord(g) Elementen. Sie ist also genau dann gleich ganz G, wenn ord(g) = |G|. Beispiel 9. Die Gruppe (Z/8Z)∗ ist eine nicht zyklische Gruppe. Dies kann man wie folgt sehen: Die Gruppe (Z/8Z)∗ hat genau die vier Elemente 1, 3, 5, 7. Da aber gilt: 32 = 9 ≡ 1 mod 8 52 = 25 ≡ 1 mod 8 72 = 49 ≡ 1 mod 8 folgt, dass (Z/8Z)∗ nicht zyklisch ist, da alle von 1 verschiedenen Elemente nur eine Untergruppe der Ordnung 2 erzeugen. Satz 2.3.2 Ist G eine endliche Gruppe, so teilt die Ordnung jeder Untergruppe die Ordnung von G. 8 2 Hauptteil Beweis. Sei H eine Untergruppe von G. Wir sagen, dass zwei Elemente a und b aus G äquivalent sind, wenn a/b = ab−1 zu H gehört. Dies ist eine Äquivalenzrelation: Es ist nämlich a/a = 1 ∈ H, daher ist die Relation reflexiv. Außerderm folgt aus a/b ∈ H, dass auch das Inverse b/a ∈ H, weil H eine Gruppe ist. Daher ist die Relation symmetrisch. Ist schließlich a/b ∈ H und b/c ∈ H, so ist auch a/c = (a/b)(b/c) ∈ H. Also ist die Relation auch transitiv. Wir zeigen, dass die Äquivalenzklassen alle die gleiche Anzahl von Elementen haben. Die Äquivalenzklasse von a ∈ G ist {ha : h ∈ H}. Seien a,b zwei Elemente aus G. Betrachte die Abbildung {ha : h ∈ H} → {hb : h ∈ H}, ha → hb. Die Abbildung ist injektiv, weil in H die Kürzungsregel gilt. Die Abbildung ist außerdem offensichtlich surjektiv. Daher haben beide Äquivalenzklassen gleich viele Elemente. Es ist damit gezeigt, dass alle Äquivalenzklassen die gleiche Anzahl von Elementen haben. Eine solche Äquivalenzklasse ist aber die Äquivalenzklasse von 1 und die ist H. Die Anzahl der Elemente in den Äquivalenzklassen ist somit |H|. Weil G aber die disjunkte Vereinigung aller Äquivalenzklassen ist, ist |G| ein Vielfaches von |H|. 2.4 Der kleine Satz von Fermat Abschließend haben wir uns nun alle Bestandteile erarbeitet, die wir zur Formulierung und zum Beweis des kleinen Satzes von Fermat benötigen. In diesem Abschnitt wollen wir sowohl den kleinen Satz von Fermat selbst, als auch einige Anwendungen, die aus diesem Satz folgen, kennenlernen: Satz 2.4.1: Der kleine Satz von Fermat Wenn ggT (a, m) = 1 ist, dann folgt aϕ(m) ≡ 1 mod m. Dieses Theorem eröffnet zum Beispiel eine neue Methode, prime Restklassen zu invertieren. Es impliziert nämlich, dass aus ggT (a, m) = 1 die Kongruenz aϕ(m)−1 a ≡ 1(m) folgt. Das bedeutet, dass aϕ(m)−1 + mZ die inverse Restklasse von a + mZ ist. Eine Verallgemeinerung des kleinen Satzes von Fermat ist das folgende Korollar: Korollar 2.4.1. Es gilt g |G| = 1 für jedes g ∈ G. 9 2 Hauptteil Zum Beweis der Verallgemeinerung benötigen wir den folgenden Satz: Satz 2.4.2 Die Ordnung eines Gruppenelements teilt die Gruppenordnung. Wir beweisen nun die vorangegangenen Aussagen in umgekehrter Reihenfolge: Beweis von Satz 2.4.2. Die Ordnung eines Gruppenelements g ist die Ordnung der von g erzeugten Untergruppe. Deshalb folgt die Behauptung aus dem Satz 2.3.2. Beweis von Korollar 2.4.1. Die Behauptung folgt aus dem Satz 2.4.2 und aus dem Satz 2.2.1. Beweis von Satz 2.4.1. Da (Z/mZ)∗ eine endliche abelsche Gruppe der Ordnung ϕ(m) ist, folgt der Satz 2.4.1 aus dem Korollar 2.4.1. In den folgenden Beispielen wollen wir zwei praktische Anwendungen, die aus dem kleinen Satz von Fermat folgen, kennenlernen: Beispiel 10 (Berechnung von 444 mod 7). ggT (4, 7) = 1 und ϕ(7) = 6 und 44 ≡ 2 mod 6 444 ≡ 42 ≡ 16 ≡ 2 mod 7 Beispiel 11 (Bestimmung der letzten beiden Ziffern von 3403 ). Dazu ist zu berechnen 3403 mod 100: ggT (3, 100) = 1 und ϕ(100) = ϕ(22 ∗ 52 ) = 2 ∗ 20 = 40 403 ≡ 3 mod 40. Daraus folgt, dass 3403 ≡ 27 mod 100, d.h. die Zahl 3403 endet mit den beiden Ziffern 2 und 7. 10 Literaturverzeichnis [1] Buchmann, Johannes: Einführung in die Kryptographie. 6. Aufl. Springer-Verlag, Darmstadt, 2016 [2] Schmidt, Alexander: Einführung in die algebraische Zahlentheorie. Springer-Verlag, Berlin, Heidelberg, 2007 [3] Bauer, Tim: Vorkurs Mathematik 2007 7. Vorlesung Universität Münster https://wwwmath.uni-muenster.de/u/tbauer/vorkurs2007/lecture7.pdf (20.04.2017) [4] Scharlau, Rudolf: Diskrete Geometrie Kapitel 2.2 TU Dortmund http://www.mathematik.tu-dortmund.de/ algebra/DiskrGeom201112/MaterialienDG/dg-kap2-2.pdf (20.04.2017) 11