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