Der chinesische Restsatz mit Anwendung

Werbung
Der chinesische Restsatz mit
Anwendung
Nike Garath
[email protected]
Martrikelnummer: 423072
Seminar: Verschlüsslungs- und Codierungstheorie
Dozent: Dr. Thomas Timmermann
Sommersemester 2017
Inhaltsverzeichnis
1
Einleitung
3
2
Vorkenntnisse
4
3
Lineare Kongruenzen
5
4
Der chinesische Restsatz
8
5
Anwendung des chinesischen Restsatzes auf die Bestimmung der Eulerschen
ϕ-Funktion
12
2
1 Einleitung
In dieser Arbeit beschäftigen wir uns mit dem chinesischen Restsatz und seiner Anwendung auf die Bestimmung der Eulerschen
ϕ-Funktion.
In der Einleitung werden zunächst ausgewählte, für diese Arbeit relevante Vorkenntnisse aus den vorherigen Seminarvorträgen wiederholt. Im Weiteren werden erst lineare
Kongruenzen deniert und dann der chinesische Restsatz eingeführt und bewiesen. Im
Anschluss daran wird seine Anwendung auf die Bestimmung der Eulerschen
ϕ-Funktion
erklärt.
Die folgende Arbeit bezieht sich dabei auf die Bücher Einführung in die Kryptographie
von Johannes Buchmann, Einführung in die algebraische Zahlentheorie von Alexander
Schmidt und die Vorlesung Zahlentheorie von Prof. Dr. Urs Hartl aus dem Sommersemester 2016.
3
2 Vorkenntnisse
Denition 2.0.1 (Teilbarkeit). Eine ganze Zahl a teilt eine ganze Zahl b, wenn es eine
ganze Zahl c gibt mit b = a · c. Dann heiÿt die Zahl a Teiler von b und wir schreiben a|b.
Denition 2.0.2 (gröÿte gemeinsame Teiler). Der gröÿte gemeinsame Teiler zweier von
Null verschiedener ganzer Zahlen a, b ist die gröÿte natürliche Zahl d ∈ N mit d|a und
d|b. Wir schreiben dann d = ggT (a, b). Die ganzen Zahlen a und b heiÿen teilerfremd,
falls ggT (a, b) = 1.
Lemma 2.0.3. Für alle a, b, c, m, n ∈ Z gilt
i)aus a|b und a|c folgt a|(b + c),
ii)aus a|b folgt a|bc,
iii)aus a|n und b|m folgt ab|nm.
Satz 2.0.4. Seien a1 , a2 ∈ Z. Wir denieren dann qi , ai ∈ Z für i ≥ 3 durch ai−2 =
ai−1 · qi + ai mit 0 ≤ ai ≤ |ai−1 | durch Teilen mit Rest. Dann gibt es einen Index m mit
am+1 = 0, aber am 6= 0 und am = ggT (a1 , a2 ). Setzt man b1 = 1 = c2 und b2 = 0 = c1 ,
auÿerdem bi = bi−2 − qi · bi−1 , ci = ci−2 − qi · ci−1 , so gilt
am = a1 · b m + a2 · c m .
Der erweiterte Euklidische Algorithmus ermöglicht es demnach den ggT zweier Zahlen als
Linearkombination ebendieser darzustellen und die Inversen von
Denition 2.0.5
a1 und a2 zu berechnen.
. Zwei ganze Zahlen a, b ∈ Z heiÿen
(Kongruenz)
m für eine Zahl m ∈ N, falls m|(a − b). Wir schreiben dann
kongruent modulo
a ≡ b mod m.
Beispiel 2.0.6. Es gilt 17 ≡ 5 mod 12, denn 12|(17 − 5).
Sei
m
fest und
a, b ∈ Z.
Dann ist
1.
symmetrisch:
2.
reexiv: a ≡ a mod m.
3.
transitiv:
aus
falls
a ≡ b mod m
a ≡ b mod m
a ≡ b mod m
folgt
und
eine Äquivalenzrelation, also
b ≡ a mod m.
b ≡ c mod m,
dann
a ≡ c mod m.
Bei einer solchen Äquivalenzrelation kann man die Äquivalenzklasse
{b ∈ Z|a ≡ b mod m} = a + mZ
von einer Zahl
a∈Z
Denition 2.0.7
betrachten.
. Die Äquivalenzklassen der Äquivalenzrelation a ≡ b
(Restklassen)
mod m heiÿen Restklassen modulo m. Die Menge aller Restklassen modulo m wird mit
Z/mZ bezeichnet.
4
3 Lineare Kongruenzen
Der chinesische Restsatz bietet ein Verfahren zum Lösen von simultanen Kongruenzen,
welche ein System von linearen Kongruenzen sind. Daher beschäftigen wir uns in diesem Kapitel zunächst mit dem Lösen von linearen Kongruenzen, um dann, mittels des
chinesischen Restsatzes, auf das Lösen von simultanen Kongruenzen zu kommen.
Eine lineare Kongruenz ist eine Kongruenz der Form
ax ≡ b mod m.
Einstieg:
1. Wir haben x Gummibärchen und verteilen diese gleichmäÿig an 5 Personen. Es bleibt
1
übrig. Wie ist unser
x
deniert?
Schreibt man die Aufgabenstellung in Form einer linearen Kongruenz auf, erhält man
x≡1
mod 5.
Alle Lösungen dieser linearen Kongruenz bietet uns
x = 1 + 5z
mit
z ∈ Z.
2. Wir verteilen zweimal x Gummibärchen gleichmäÿig an 5 Personen. Es bleibt 1 übrig.
Wie ist unser
x
deniert?
Schreibt man die Aufgabenstellung in Form einer linearen Kongruenz auf, erhält man
2x ≡ 1
mod 5.
Alle Lösungen dieser linearen Kongruenz bietet uns
x = 3 + 5z
mit
z ∈ Z.
Im weiteren Verlauf stellt sich uns die Frage: Wie berechnet man eine Lösung
x ∈ Z von
linearen Kongruenzen und wann existiert diese ?
Satz 3.0.1. Seien a, b ganze Zahlen. Eine lineare Kongruenz ax ≡ b mod m hat genau
dann eine Lösung x ∈ Z, wenn ggT (a, m)|b.
Beweis. ” ⇒ ” Sei x eine ganze Zahl mit ax ≡ b mod m. Dann gibt es eine ganze Zahl
y mit ax = b + ym. Mit Hilfe von Lemma 2.0.3. folgt daraus, dass ggT (a, m) die Zahl
b = ax − ym teilt.
” ⇐ ”Gelte nun ggT (a, m)|b. Mit Hilfe des erweiterten euklidischen Algorithmus nden
b
, so erhält
wir Zahlen c, d ∈ Z mit ac + md = ggT (a, m). Erweitert man dies um
ggT (a,m)
man
ac
b
b
+ md
= b.
ggT (a, m)
ggT (a, m)
5
Betrachtet man die Gleichung modulo
ac
m,
so ergibt sich
b
= b mod m.
ggT (a, m)
Daraus folgt, dass
x=c
b
ggT (a, m)
eine Lösung der linearen Kongruenz ist.
Gegenbeispiel 3.0.2. Wir wollen die lineare Kongruenz 18x ≡ 3 mod 12 lösen.
Es gilt a = 18, b = 3, m = 18, ggT (18, 12) = 2 - 3. Damit sind die Bedingungen von
Satz 3.0.1. nicht erfüllt und es existiert keine Lösung der linearen Kongruenz.
Beispiel 3.0.3. Wir wollen die lineare Kongruenz 18x ≡ 2 mod 5 lösen.
Es gilt a = 18, b = 2, m = 5, ggT (18, 5) = 1|2. Damit sind die Bedingungen von Satz
3.0.1. erfüllt und es existiert eine Lösung der linearen Kongruenz.
Da 18 ≡ 3 mod 5 ist, ist die zu lösende lineare Kongruenz äquivalent zu 3x ≡ 2 mod 5.
Durch Ausprobieren kommt man schnell auf eine Lösung x = 4.
Bei höheren Zahlen kann es schnell schwierig werden, durch Ausprobieren auf eine Lösung zu kommen. Eine alternative Lösungsmethode bietet der erweiterte euklidische Algorithmus mit dessen Hilfe wir das Inverse von 3 modulo 5 bestimmen können. Die
folgende Tabelle veranschaulicht die Berechnungsschritte des erweiterten euklidischen
Algorithmus.
i
1
2
3
4
5
ai−2
ai−1
5
3
2
5
3
2
1
ai
5
3
3
1
0
qi
1
1
1
bi
ci
1 0
0 1
1 -1
-1 2
Es folgt, dass 2 das Inverse zu 3 modulo 5 ist und man kann schreiben
2 · 3x ≡ 2 · 2 mod 5
⇔ x ≡ 2 · 2 mod 5
⇔ x ≡ 4 mod 5.
Somit ist x = 4 eine Lösung der linearen Kongruenz und dies ist dieselbe, wie beim
ersten Lösungsverfahren.
Es fällt auf, dass x = 4 nicht die einzige Lösung der linearen Kongruenz ist. Die Zahlen
9, 14, 19... bieten ebenfalls eine Lösung. Jede Lösung hat also die Form x = 4 + 5 · z mit
z ∈ Z. Es gibt also unendlich viele Lösungen modulo 5, welche diese lineare Kongruenz
erfüllen.
6
Beispiel 3.0.4. Wir wollen die lineare Kongruenz 33x ≡ 3 mod 27 lösen. Es gilt a =
33, b = 3, m = 27, ggT (27, 33) = 3|3. Damit sind die Bedingungen von Satz 3.0.1. erfüllt
und es existiert eine Lösung der linearen Kongruenz.
Da 33 ≡ 6 mod 27 ist, ist die zu lösende lineare Kongruenz äquivalent zu 6x ≡ 3
mod 27. Weil der ggT (27, 6) 6= 1 ist, kann man das Inverse von 6 modulo 27 noch nicht
berechnen. Man teilt zunächst die lineare Kongruenz durch den gröÿten gemeinsamen
Teiler 3. Dabei erhält man
2x ≡ 1
mod 9.
Nun gilt, dass der ggT (2, 9) = 1 ist. Mit Hilfe des erweiterten euklidischen Algorithmus,
folgt, dass −4 das Inverse von 2 modulo 9 ist und man kann schreiben
2x ≡ 1 mod 9
⇔ 2 · (−4) ≡ 1 · (−4) mod 9
⇔ x ≡ −4 mod 9
⇔ x ≡ 5 mod 9.
Jede Lösung hat die Form x = 5 + 9z mit z ∈ Z.
7
4 Der chinesische Restsatz
In diesem Abschnitt wird der chinesische Restsatz vorgestellt und bewiesen. Der chinesische Restsatz ist ein Verfahren zum Lösen von simultanen Kongruenzen. Er erlaubt,
gewisse Probleme in einfachere zu zerlegen. Er hat auch wichtige Anwendungen in der
Praxis, etwa bei der Bestimmung der Eulerschen
ϕ-Funktion.
Einstieg
Wir haben
1
x
Gummibärchen und verteilen diese gleichmäÿig an
5
Personen. Es bleibt
übrig. Verteile ich die gleiche Anzahl an Gummibärchen gleichmäÿig an
bleiben
2
übrig. Wie ist unser
x
4
Personen
deniert?
Schreibt man die Aufgabenstellung in Form einer simultanen Kongruenz auf, erhält man
x≡1
x≡2
mod 5
mod 4.
Formuliert man dieses allgemein für eine simultane Kongruenz mit zwei linearen Kongruenzen, erhält man
x ≡ a1
x ≡ a2
mod m1
mod m2 .
Im Folgenden wird in drei Schritten ein Lösungsverfahren zum Lösen von simultanen
Kongruenzen mit zwei linearen Kongruenzen formuliert. Die allgemeine Form wird parallel anhand eines Beispieles hergeleitet.
1. Schritt: Inverses Element von beiden Restklassen für die jeweilige andere nden:
m2 · x1 ≡ 1 mod m1
m1 · x2 ≡ 1 mod m2 .
Um das Inverse von beiden Restklassen für die jeweilige andere zu bestimmen muss der
ggT (m1 , m2 ) = 1 sein.
Da der ggT (4, 5) = 1 ist,
kann für unser Beispiel das Inverse bestimmt werden. Es gilt
4 · x1 ≡ 1
5 · x2 ≡ 1
mod 5 ⇒ x1 = 4
mod 4 ⇒ x2 = 1.
8
2. Schritt: Eine Lösung nden:
x = a1 m 2 x 1 + a2 m 1 x 2 ,
x = 1 · 4 · 4 + 2 · 5 · 1 = 26.
An dieser Stelle stellt sich uns die Frage, warum und ob man
x
so bestimmen kann.
Beweis:
x ≡ a1 m2 x1 + a2 m1 x2 ≡ a1 m2 x1 ≡ a1
x ≡ a1 m2 x1 + a2 m1 x2 ≡ a2 m1 x2 ≡ a2
x≡1·4·4+2·5·1≡1·4·4≡1
x≡1·4·4+2·5·1≡2·5·1≡2
mod m1
mod m2 ,
mod 5
mod 4.
3. Schritt: Alle Lösungen nden:
x = x + zm1 m2
x = 6 + 20z
mit
mit
z ∈ Z,
z ∈ Z.
Wie kommt man nun auf das allgemeine Lösen von simultanen Kongruenzen?
Satz 4.0.1 (Chinesischer Restsatz). Seien a1 , . . . , an ∈ Z und m1 , . . . , mn ∈ N paarweise
teilerfremd. Dann hat die simultane Kongruenz
x ≡ a1
x ≡ a2
x ≡ an

mod m1 


mod m2 
(∗)
..

.


mod mn 
eine Lösung x ∈ Z. Diese ist eindeutig modulo m =
Beweis.
Qn
i=1
mi .
x ∈ Z. Zuerst konstruieren
wir eine Lösung der simultanen Kongruenz (∗). Sei dazu 1 6 i 6 n und i 6= j . Wir setzen
Zunächst beweisen wir die Existenz von einer Lösung
m=
n
Y
mi ,
Mi = m/mi .
i=1
Da alle
mi
paarweise teilerfremd sind, gilt
ggT (mi , Mi ) = 1.
9
Mit dem erweiterten euklidischen Algorithmus berechnen wir Zahlen
yi Mi ≡ 1
yi ∈ Z
mit
mod mi .
Wir zeigen, dass
x=
n
X
ai yi Mi
i=1
eine Lösung der simultanen Kongruenz (∗) ist.
Da
yi Mi ≡ 1 mod mi
ist, gilt
ai yi Mi ≡ ai
und weil für alle
i 6= j
die Zahl
mi
mod mi ,
ein Teiler von
aj yj Mj ≡ 0
Mj
ist, gilt für
1 6 i, j 6 n
mod mi .
Aus den vorangegangenen Bedingungen folgt
x ≡ ai yi Mi +
n
X
aj yj Mj ≡ ai
mod mi .
j=1,j6=i
Also ist
x
eine Lösung der simultanen Kongruenz
(∗).
Nachdem nun die Existenz von x ∈ Z bewiesen ist, fehlt noch der Beweis der Eindeutig0
keit. Sei x eine weitere Lösungen der simultanen Kongruenz (∗). Es gilt sowohl x ≡ ai
mod mi , als auch x0 ≡ ai mod mi . Daher gilt x ≡ x0 mod mi . Weil die mi paarweise
0
teilerfremd sind, folgt dass x ≡ x mod m ist. Somit ist die Eindeutigkeit bewiesen.
Die Eindeutigkeit sagt aus, dass es nicht nur eine Lösung für
viele, welche alle äquivalent modulo
m
x
gibt, sondern unendlich
sind.
Beispiel 4.0.2. Gesucht ist ein x ∈ Z, welches die simultane Kongruenz
x≡2
x≡1
x≡0
mod 4
mod 3
mod 5
löst. Wir setzen a1 = 2, a2 = 1, a3 = 0, m1 = 4, m2 = 3, m3 = 5. Dann ist
m = 4 · 3 · 5 = 60, M1 = 60/4 = 15, M2 = 60/3 = 20, M3 = 60/5 = 12. Da alle
mi teilerfremd zueinander sind, kann man den chinesischen Restsatz anwenden.
Wir lösen mittels erweiterten euklidischen Algorithmus die Kongruenz y1 M1 ≡ 1 mod m1 .
Durch Einsetzen erhalten wir
15y1 ≡ 1
⇔ −1y1 ≡ 1
10
mod 4
mod 4.
Die betragsmäÿig kleinste Lösung ist y1 = −1.
Wir lösen mittels erweiterten euklidischen Algorithmus die Kongruenz y2 M2 ≡ 1 mod m2 .
Durch Einsetzen erhalten wir
20y2 ≡ 1 mod 3
⇔ −1y2 ≡ 1 mod 3.
Die betragsmäÿig kleinste Lösung ist y2 = −1.
Wir lösen mittels erweiterten euklidischen Algorithmus die Kongruenz y3 M3 ≡ 1 mod m3 .
Durch Einsetzen erhalten wir
12y3 ≡ 1
⇔ 2y3 ≡ 1
mod 5
mod 5.
Die kleinste nicht negative Lösung ist y3 = 3.
Damit erhalten wir x ≡ 2 · (−1) · 15 + 1 · (−1) · 20 ≡ −50 mod 60 ≡ 10 mod 60. Somit
ist x = 10 eine Lösung der simultanen Kongruenz.
11
5 Anwendung des chinesischen
Restsatzes auf die Bestimmung
der Eulerschen
Bisher haben wir die Eulersche
ϕ-Funktion
ϕ-Funktion ϕ : N → N
deniert durch
ϕ(m) = |{x ∈ N|1 ≤ x ≤ m ∧ ggT (x, m) = 1}|
für alle
m ∈ N.
Das heiÿt,
ϕ(m)
zählt die Anzahl der zu
m
teilerfremden Zahlen.
Beispiel 5.0.1. Es gilt:
ϕ(6) = 2 = {1, 5},
ϕ(9) = 6 = {1, 2, 4, 5, 7, 8}.
Satz 5.0.2. Falls p eine Primzahl ist, gilt ϕ(p) = p − 1.
Beispiel 5.0.3. Es gilt ϕ(11) = 10.
Falls
m groÿ ist und keine Primzahl beziehungsweise keine Potenz einer Primzahl ist, ist
ϕ(m)
aktuell noch schwierig zu bestimmen. In diesem Abschnitt leiten wir mittels chi-
nesischem Restsatz die Formel zur allgemeinen Bestimmung der Eulerschen
ϕ-Funktion
her.
Satz 5.0.4. Sei p eine Primzahl und m ∈ N. Dann gilt ϕ(pm ) = pm − pm−1 .
Theorem 5.0.5. Seien m1 , ..., mn paarweise teilerfremde natürliche Zahlen und m =
Q
n
i=1 mi . Dann gilt ϕ(m) = ϕ(m1 )ϕ(m2 )...ϕ(mn ).
Beweis.
Für jedes
i ∈ {1, ..., n}
seien
ai,1 , ..., ai,ϕ(mi )
mi
die zu
teilerfremden natürlichen Zahlen zwischen
Zur Bestimmung von
1
und
m gibt, die zu
ggT (b, m) = 1
Es gilt
ϕ(m) wollen wir zählen,
m teilerfremd sind.
genau dann, wenn
ggT (b, mi ) = 1,
12
1
und
mi .
wie viele natürliche Zahlen
b
es zwischen
und das wiederum genau dann, wenn für jedes
i
von
1
m
bis
ein
ji ∈ {1, ..., ϕ(mi )}
existiert mit
b ≡ ai,j1
mod m1
.
.
.
b ≡ ai,jn
Für die Wahl der
j1 , ..., jn
gibt es genau
mod mn .
ϕ(mi ) · ... · ϕ(mn )
verschiedene Möglichkeiten.
b zwischen 1 und
ϕ(m1 ) · ... · ϕ(mn ) zu m
Nach dem chinesischen Restsatz gibt es für jede solche Wahl genau ein
m,
welches die obigen Kongruenzen löst. Also gibt es genau
teilerfremden Zahlen.
Beispiel 5.0.6. Es gilt ϕ(30) = ϕ(2 · 3 · 5) = ϕ(2) · ϕ(3) · ϕ(5) = 1 · 2 · 4 = 8.
Theorem 5.0.7. Sei m eine natürliche Zahl und m =
Q
gung. Dann gilt
p|m
pe(p) ihre Primfaktorzerle-
Y
Y
1
e(p)−1
ϕ(m) =
.
(p − 1)p
=m
1−
p
p|m
Beweis.
Sei
Q
m=
p|m
pe(p)
p|m
die Primfaktorzerlegung von

ϕ(m) = ϕ 
Y
ϕ(p
p|m
Da
Q
5.0.4.
p|m
e(p)
Wegen Theorems
5.0.5.
gilt

Y
pe(p)  =
p|m
Nach Satz
m.
Y
ϕ(pe(p) ).
p|m
gilt
Y
Y
Y
Y
1
1
e(p)
e(p)−1
e(p)
e(p)
)=
(p
−p
)=
p · 1−
=
p
·
.
1−
p
p
p|m
pe(p) = m,
p|m
p|m
p|m
ist die Behauptung bewiesen.
Beispiel 5.0.8. Es gilt:
1
1
1 4
ϕ(100) = ϕ(2 · 5 ) = 100 · 1 −
· 1−
= 100 · · = 40,
2
5
2 5
1
1
1
1 2 4
1
2
1
ϕ(90) = ϕ(2 · 3 · 5 ) = 90 · 1 −
· 1−
· 1−
= 90 · · · = 24.
2
3
5
2 3 5
2
2
Wir haben nun ein Verfahren kennengelernt, um die Eulersche
ϕ-Funktion zu berechnen.
Allerdings ist diese Berechnung beim praktischen Rechnen schwierig anzuwenden, da
man schnell daran scheitern kann, eine groÿe natürliche Zahl in ihre Primfaktoren zu
zerlegen. Die Schwierigkeit dieser Zerlegung hat aber auch seinen Vorteil. Die Sicherheit
des RSA-Verfahrens basiert darauf.
13
Literaturverzeichnis
[1] Buchmann, Johannes:
Einführung in die Kryptographie.
6. Au.
Springer
Spektrum-Verlag, Berlin Heidelberg, 2016.
[2] Prof. Dr. Hartl, Urs:
[3] Schmidt, Alexander:
Zahlentheorie.
Vorlesung Sommersemester 2016.
Einführung in die algebraische Zahlentheorie.
ger Verlag, 2007.
14
2. Au. Sprin-
Herunterladen