Seminar „Verschlüsselungs- und Codierungstheorie“ Der Chinesische Restsatz mit Anwendung Valentin Schulz Matrikelnummer: 421 589 Sommersemester 2017 15.05.2017 Dozent: PD Dr. Timmermann Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie Inhaltsverzeichnis 1. Lösen von linearen Kongruenzen ................................................................................................ 3 2. Lösen von simultanen Kongruenzen ........................................................................................... 5 3. Die Eulersche 𝝋-Funktion............................................................................................................ 7 4. Literaturverzeichnis ..................................................................................................................... 9 2 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie 1. Lösen von linearen Kongruenzen Lineare Kongruenzen beschränken sich ausschließlich auf ganzzahlige Lösungen in einem Restklassenring. Um bei einem gegebenen 𝑚 der Form 𝑎 ≡ 𝑏 𝑚𝑜𝑑 𝑚 sollen die beiden Zahlen 𝑎 und 𝑏 als gleich angegeben werden. Der formale Weg, dies zu tun, ist der Übergang zu Äquivalenzklassen, bezüglich einer Äquivalenzrelation. Damit also zwei Zahlen 𝑎 und 𝑏 modulo 𝑚 in ℤ gleich sind, müssen sie der gleichen Äquivalenzklasse angehören, was im ersten Vortrag in Bezug auf Restklassenringe geklärt wurde. Die Äquivalenzklasse, bezüglich der Relation 𝑎~𝑏 ⟺ 𝑎 ≡ 𝑏 𝑚𝑜𝑑 𝑚 heißen Restklassen modulo 𝑚. Bei fixiertem 𝑚 wird die Restklasse einer ganzen Zahl 𝑎 mit 𝑎̅ bezeichnet. Die Menge aller Restklassen modulo 𝑚 wird mit ℤ/𝑚ℤ bezeichnet. Innerhalb eines Restklassenrings kann man rechnen, wobei man ein Inverses zu einer bestimmten Zahl nur dann finden kann, wenn diese teilerfremd zu 𝑚 in ℤ/𝑚ℤ ist. Wir betrachten nun eine Kongruenz der Form 𝑎 ∙ 𝑥 ≡ 𝑏 mod 𝑚 und versuchen, durch Umformungen ganzzahlige Lösungen für 𝑥 bei festem 𝑎, 𝑏, 𝑚 ∈ ℤ zu finden. Satz 1.1. Es seien 𝑎, 𝑏 ∈ ℤ gegeben. Die Kongruenz 𝑎 ∙ 𝑥 ≡ 𝑏 mod 𝑚 ist genau dann in ℤ lösbar, wenn 𝑔𝑔𝑇(𝑎, 𝑚)|𝑏 gilt. Beweis: "⟹" Sei 𝑎𝑥 ≡ 𝑏 𝑚𝑜𝑑 𝑚 mit 𝑥 ∈ ℤ. Dann existiert 𝑦 ∈ ℤ mit 𝑎𝑥 = 𝑏 + 𝑦𝑚. Umgeformt ergibt sich folgendes: 𝑏 = 𝑎𝑥 − 𝑦𝑚 𝑔𝑔𝑇(𝑎, 𝑚)|𝑎 ∙ 𝑥 und 𝑔𝑔𝑇(𝑎, 𝑚)|𝑚 ∙ 𝑦 " ⟸" Gelte 𝑔𝑔𝑡(𝑎, 𝑚)|𝑏. Nach dem Euklidischen Algorithmus finden wir ganze Zahlen 𝑐, 𝑑 mit 𝑎𝑐 + 𝑚𝑑 = 𝑔𝑔𝑇(𝑎, 𝑚) ⟺ ac 𝑏 𝑏 𝑏 + 𝑚𝑑 = 𝑔𝑔𝑇(𝑎, 𝑚) 𝑔𝑔𝑇(𝑎, 𝑚) 𝑔𝑔𝑇(𝑎, 𝑚) 𝑔𝑔𝑇(𝑎, 𝑚) 𝑏 𝑏 ⟺ ac + 𝑚𝑑 =𝑏 𝑔𝑔𝑇(𝑎, 𝑚) 𝑔𝑔𝑇(𝑎, 𝑚) Rechnet man diese Gleichung mod 𝑚 ergibt sich: 𝑏 𝑏 ac 𝑔𝑔𝑇(𝑎,𝑚) + 𝑚𝑑 𝑔𝑔𝑇(𝑎,𝑚) ≡ 𝑏 mod 𝑚 𝑏 𝑎 ∙ c 𝑔𝑔𝑇(𝑎,𝑚) ≡ 𝑏 mod 𝑚 3 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie und folglich ist 𝑥=𝑐 𝑏 𝑔𝑔𝑇(𝑎, 𝑚) ∎ eine Lösung der Kongruenz. Beispiel 1.2 𝑎 = 10, 𝑏 = 4, 𝑚 = 7 ∶ 𝑔𝑔𝑇(𝑎, 𝑚) = 1 Betrachte die Kongruenz 10𝑥 ≡ 4 mod 7. Sie ist wegen 10 ≡ 3 𝑚𝑜𝑑 7 äquivalent zu der Kongruenz 3𝑥 ≡ 4 mod 7. Lösung: Durch Ausprobieren der Zahlen von 1 bis 7 kommt man zu dem Schluss, dass 6 eine Lösung ist, denn 3 ∙ 6 ≡ 18 ≡ 4 mod 7. Beispiel 1.3 Wir betrachten die Kongruenz 6𝑥 ≡ 10 mod 8. 6 Hier ist 𝑔𝑔𝑇(8,6) = 2; also 6𝑥 ≡ 10 mod 8 genau dann, wenn 2 𝑥 = 10 2 8 mod 2. Wir lösen die Kongruenz 3𝑥 ≡ 5 mod 4 mittels des erweiterten Euklidischen Algorithmus, in dem wir das Inverse von 3 mod 4 suchen. 4 ∙ 𝑥3 + 3 ∙ 𝑦3 = 1 Dafür sei 𝑔𝑔𝑇(𝑎, 𝑏) = 𝑎 ∙ 𝑥𝑖 + 𝑏 ∙ 𝑦𝑖 𝑖 1 2 3 4 𝑎𝑖−2 4 3 𝑎𝑖−1 4 3 1 𝑎𝑖 4 3 1 0 𝑞𝑖 1 3 𝑥𝑖 1 0 1 𝑦𝑖 0 1 -1 Hieraus folgt, dass −1 das Inverse von 3 mod 4 ist. Man kann also beide Seiten der Kongruenz mit −1 multiplizieren und erhält das Ergebnis: 3𝑥 ≡ 5 mod 4 ⟺ 3 ∙ (−1) ∙ 𝑥 = 5 ∙ (−1) mod 4 ⟺ 𝑥 ≡ −5 mod 4 ⟺ 𝑥 ≡ 3 mod 4 4 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie 2. Lösen von simultanen Kongruenzen Eine simultane Kongruenz ist ein System von linearen Kongruenzen 𝑥 ≡ 𝑟1 mod 𝑚1 𝑥 ≡ 𝑟2 mod 𝑚2 ⋮ 𝑥 ≡ 𝑟𝑛 mod 𝑚𝑛 für die alle 𝑥 bestimmt werden sollen, die sämtliche Kongruenzen gleichzeitig lösen. Beispiel 2.1: Gummibärchen aus einer Tüte werden gleichmäßig auf 4 Leute verteilt und es bleiben 2 über. Wenn dieselbe Anzahl an Gummibärchen auf 7 Leute verteilt werden, bleiben 3 über. Wie viele Gummibärchen können in der Tüte sein? Die Anzahl 𝑥 löst dann die Kongruenzen 𝑥 ≡ 2 mod 4, 𝑥 ≡ 3 mod 7. 1. Schritt: Inverses Element von beiden Restklassen für die jeweilige andere zu finden: 7 ∙ 𝑥1 ≡ 1 mod 4 ⟹ 𝑥1 ≡ 3 mod 4 4 ∙ 𝑥2 ≡ 1 mod 7 ⟹ 𝑥2 ≡ 3 mod 7 2. Schritt: Finde die erste Lösung: 2 ∙ 7 ∙ 3 + 3 ∙ 2 ∙ 4 = 42 + 24 = 66 Dies ist genau eine Lösung der beiden Kongruenzen, da modulo 4 gerechnet der erste Summand die Lösung der ersten Kongruenz ist, aufgrund der vorkommenden 2 multipliziert mit 7 ∙ 3, was modulo 4 genau 1 ergibt. Der zweite Summand wird durch die Multiplikation mit 4 gerade 0. Modulo 7 gerechnet wird der erste Summand 0 und der zweite Summand gibt die Lösung 3 an, zumal das Produkt von 4 und 2 modulo 7 wieder 1 ergibt. 3. Schritt: Finde alle Lösungen: Alle Lösungen unterscheiden sich vom obigen Ergebnis nur um gemeinsame Vielfache von 4 und 7. 7 ∙ 4 = 28 66 ≡ 10 mod 28 𝐿 = {𝑥 ∈ ℤ ∶ 𝑥 ≡ 10 mod 28} 5 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie Beispiel 2.2. Gegeben seien folgende 3 Kongruenzen 𝑥 ≡ 3 mod 5, 𝑥 ≡ 5 mod 7, 𝑥 ≡ 7 mod 9. 𝑥 = 3 ∙ 7 ∙ 9 ∙ 𝑥1 + 5 ∙ 5 ∙ 9 ∙ 𝑥2 + 7 ∙ 5 ∙ 7 ∙ 𝑥3 7 ∙ 9 ∙ 𝑥1 ≡ 1 mod 5 ⟹ 𝑥1 ≡ 2 mod 5 5 ∙ 9 ∙ 𝑥2 ≡ 1 mod 7 ⟹ 𝑥2 ≡ 5 mod 5 5 ∙ 7 ∙ 𝑥1 ≡ 1 mod 5 ⟹ 𝑥3 ≡ 8 mod 5 𝑥 = 3 ∙ 7 ∙ 9 ∙ 2 + 5 ∙ 5 ∙ 9 ∙ 5 + 7 ∙ 5 ∙ 7 ∙ 8 = 3463 Alle Lösungen sind dann 𝑥 ≡ 3463 mod 5 ∙ 7 ∙ 9 𝑥 ≡ 3463 mod 315 𝑥 ≡ 313 mod315 𝐿 = {𝑥 ∈ ℤ ∶ 𝑥 ≡ 313 𝑚𝑜𝑑 315} Beispiel 2.3. Ein Bauer möchte alle seine Kühe stolz auf dem Volksfestauszug präsentieren. Wenn er sie aber in 3er-Reihen aufstellt, bleiben 2 Kühe übrig. Stellt er sie in 4er-Reihen auf, bleibt 1 Kuh übrig. Erst mit 7er-Reihen bleibt keine Kuh mehr übrig. Wie viele Kühe hat der Bauer mindestens? Die Anzahl 𝑥 löst dann die Kongruenzen 𝑥 ≡ 2 mod 3, 𝑥 ≡ 1 mod 4, 𝑥 ≡ 0 mod 7. Die Zahlen 𝑚1 = 3, 𝑚2 = 4, 𝑚3 = 7 sind paarweise teilerfremd. Demzufolge kann man den Chinesischen Restsatz anwenden. Dazu lösen wir die Kongruenzen 4 ∙ 7 ∙ 𝑥1 ≡ 1 mod 3 ⟹ 𝑥1 ≡ 1 mod 3, 3 ∙ 7 ∙ 𝑥2 ≡ 1 mod 4 ⟹ 𝑥2 ≡ 1 mod 4, 3 ∙ 4 ∙ 𝑥3 ≡ 1 mod 7 ⟹ 𝑥3 ≡ 3 mod 7. Dementsprechend wäre eine Lösung: 𝑥 = 2 ∙ 4 ∙ 7 ∙ 1 + 1 ∙ 3 ∙ 7 ∙ 1 + 0 ∙ 3 ∙ 4 ∙ 3 = 77 Die Menge aller Lösungen ist dann 𝐿 = {𝑥 ∈ ℤ: 𝑥 ≡ 77 mod 84}. 6 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie Satz 2.4. (Chinesischer Restklassensatz) Seien 𝑟1 , … , 𝑟𝑘 ∈ ℤ und seien 𝑚1 , … , 𝑚𝑘 paarweise teilerfremde natürliche Zahlen größer als 1. Dann hat das System von Kongruenzen 𝑥 ≡ 𝑟1 mod 𝑚1 𝑥 ≡ 𝑟2 mod 𝑚2 ⋮ 𝑥 ≡ 𝑟𝑘 mod 𝑚𝑘 eine Lösung 𝑥 ∈ ℤ und ist 𝑥 𝑚𝑜𝑑 ∏𝑘𝑙=1 𝑚𝑙 und jede weitere Lösung 𝑦 ist kongruent zu 𝑥 mod ∏𝑘𝑙=1 𝑚𝑙 . Beweis: 𝑚 Wir bilden 𝑘𝑖 = 𝑚 , wobei 𝑚 = ∏𝑘𝑙=1 𝑚𝑙 . Dann gilt 𝑔𝑔𝑇(𝑘𝑖 , 𝑚𝑖 ) = 1. Es existiert also ein 𝑥𝑖 mit 𝑖 𝑘𝑖 ∙ 𝑥𝑖 ≡ 1 mod 𝑚𝑖 . Nun bilden wir 𝑛 𝑥 = ∑ 𝑘𝑗 ∙ 𝑥𝑗 ∙ 𝑟𝑗 . (2.4.1. ). 𝑗=1 Anschließend betrachten wir die Gleichung 2.4.1. in ℤ/𝑚𝑖 ℤ. 𝑘𝑗 ≡ 0 mod 𝑚𝑖 für 𝑖 ≠ 𝑗 Daraus folgt, dass 𝑥 = 𝑘𝑖 ∙ 𝑥𝑖 ∙ 𝑟𝑖 ≡ 𝑟𝑖 ∙ 1 mod 𝑚𝑖 Sei 𝑦 ∈ ℤ eine weitere Lösung. Dann gilt 𝑦 ≡ 𝑟𝑖 mod 𝑚𝑖 , aber auch 𝑥 ≡ 𝑟𝑖 mod 𝑚𝑖 und vor allem 𝑦 ≡ 𝑥 mod 𝑚𝑖 . Also teilt 𝑚𝑖 gerade (𝑦 − 𝑥). Weil der 𝑔𝑔𝑇(𝑚𝑖 , 𝑚𝑗 ) = 1 mit 𝑖 ≠ 𝑗 ist, gilt sogar 𝑚|(𝑦 − 𝑥) und daraus folgt 𝑦 ≡ 𝑥 mod 𝑚 ∎ 3. Die Eulersche 𝝋-Funktion Zur Berechnung des öffentlichen Schlüssels vom RSA-Verschlüsselungsverfahren haben wir 𝜑(𝑚) bestimmt. 𝑚 hat sich aus dem Produkt zweier sehr großen Primzahlen 𝑝 und 𝑞 ergeben und damit konnte man 𝜑(𝑚) leicht durch 𝜑(𝑝) ∙ 𝜑(𝑞) bestimmen. Sätze und Beweise zur Bestimmung der Eulerschen 𝜑-Funktion werden im Folgenden gezeigt. Theorem 3.1. Seien 𝑚1 , … , 𝑚𝑛 paarweise teilerfremde natürliche Zahlen und 𝑚 = ∏𝑛𝑖=1 𝑚𝑖 . Dann gilt 𝜑(𝑚) = 𝜑(𝑚1 ) ∙ 𝜑(𝑚2 ) ∙ … ∙ 𝜑(𝑚𝑛 ). 7 Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie Beweis: Seien 𝑚1 , … , 𝑚𝑛 paarweise teilerfremd und 𝑚 = 𝑚1 ∙ … ∙ 𝑚𝑛 . Für jedes 𝑖 ∈ {1, … , 𝑛} seien 𝑎𝑖,1 , … , 𝑎𝑖,𝜑(𝑚𝑖) die zu 𝑚𝑖 teilerfremden natürlichen Zahlen zwischen 1 und 𝑚𝑖 . Zur Bestimmung von φ(m) wollen wir zählen, wieviel natürliche Zahlen a zwischen 1 und m es gibt, die zu m teilerfremd sind. Nun gilt 𝑔𝑔𝑇(𝑎, 𝑚) = 1 genau dann, wenn 𝑔𝑔𝑇(𝑎, 𝑚𝑖 ) = 1 für alle 𝑖 = 1, … , 𝑛, und das gilt wiederum genau dann, wenn 𝑗𝑖 ∈ {1, … , 𝜑(𝑚𝑖 )} existieren mit 𝑎 ≡ 𝑎𝑖,𝑗1 mod 𝑚1 , … , 𝑎 ≡ 𝑎𝑖,𝑗𝑛 mod 𝑚𝑛 Nun gibt es für die Wahl der 𝑗1 , … , 𝑗𝑛 genau 𝜑(𝑚1 ) ∙ … ∙ 𝜑(𝑚𝑛 ) verschiedene Möglichkeiten, und für jede solche Wahl nach dem CRS genau ein 𝑎 zwischen 1, … , 𝑚, welches die obigen Kongruenzen löst. Also gibt es genau 𝜑(𝑚1 ) ∙ … ∙ 𝜑(𝑚𝑛 ) zu 𝑚 teilerfremde Zahlen. ∎ Theorem 3.2. Sei 𝑛 = ∏𝑟𝑖=1 𝑝𝑖 𝑘𝑖 mit 𝑘𝑖 ≥ 1 und seien 𝑝𝑖 Primzahlen. Dann ist 𝑟 𝜑(𝑛) = 𝑛 ∙ ∏ (1 − 𝑖=1 1 ). 𝑝𝑖 Beispiel 3.3. Wir wollen die Eulersche 𝜑-Funktion von 90 bestimmen. 90 = 21 ∙ 32 ∙ 51 1 1 1 1 2 4 𝜑(90) = 90 (1 − ) (1 − ) (1 − ) = 90 ∙ ∙ ∙ = 24 2 3 5 2 3 5 Lemma 3.4. Sei 𝑝 eine Primzahl und 𝑒 eine natürliche Zahl. Dann gilt 𝜑(𝑝𝑒 ) = 𝑝𝑒 − 𝑝𝑒−1 . Beweis: Alle Vielfachen von 𝑝 bis 𝑝𝑒 lauten 𝑝 ∙ 1, 𝑝 ∙ 2, 𝑝 ∙ 3, … , 𝑝 ∙ 𝑝𝑒−1. Sie sind die einzigen Teiler von 𝑝𝑒 . Die Mächtigkeit dieser Menge beträgt 𝑝𝑒−1 . Um die Eulersche 𝜑-Funktion zu bestimmen, benötigen wir alle anderen Elemente von {1,2, … , 𝑝𝑒 }. |{1,2, … , 𝑝𝑒 }| = 𝑝𝑒 𝑒) 𝑒 𝑒−1 Also ist 𝜑(𝑝 = 𝑝 − 𝑝 . ∎ Beweis von Theorem 3.2.: 𝑟 𝑟 𝑟 𝑘𝑖 𝑘𝑖 𝜑(𝑛) = 𝜑 (∏ 𝑝𝑖 ) = ∏ 𝜑(𝑝𝑖 ) = ∏(𝑝𝑖 𝑖=1 𝑟 𝑖=1 𝑟 = ∏ 𝑝𝑖 𝑘𝑖 ∏ (1 − 𝑖=1 𝑖=1 𝑖=1 𝑟 𝑘𝑖 − 𝑝𝑖 𝑟 𝑘𝑖 −1 ) = ∏ 𝑝𝑖 𝑘𝑖 (1 − 𝑖=1 1 ) 𝑝𝑖 1 1 ) = 𝑛 ∙ ∏ (1 − ) 𝑝𝑖 𝑝𝑖 𝑖=1 8 ∎ Name: Valentin Schulz Der chinesische Restsatz mit Anwendung Dozent: PD. Dr. Timmermann Seminar: Verschlüsselungsund Codierungstheorie 4. Literaturverzeichnis [1] Buchmann, Johannes: Einführung in die Kyptographie. 6. Aufl. Springer Spektrum-Verlag. Berlin, Heidelberg 2016 [2] Schmidt, Alexander: Einführung in die algebraische Zahlentheorie. 2. Aufl. Springer-Verlag. Berlin Heidelberg 2007 9