Seminar zum Thema Kryptographie

Werbung
Seminar zum Thema Kryptographie
Michael Hampton
11. Mai 2017
Inhaltsverzeichnis
1 Einleitung
3
1.1
Konventionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
1.2
Wiederholung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3
2 Hauptteil
6
2.1
Gruppen/ Untergruppen und Ordnung . . . . . . . . . . . . . . . . . . . .
6
2.2
Prime Restklassengruppen . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
2.3
Eulersche phi-Funktion und kleine Satz von Euler . . . . . . . . . . . . . .
10
2
1 Einleitung
Diese Ausarbeitung handelt vom Satz von Euler und dessen Beweis. Dazu wird vorher
ein kleiner Teil der Gruppentheorie wiederholt. Als Quellen wurden aus dem Kapitel 2
des Buches Einführung in die Kryptographie
von Johannes Buchmann die Sätze und
Denitionen 2.8-2.12 und das Kapitel 1.2 aus dem Buch Lineare Algebra
von Gerd
Fischer, sowie eigene Unterlagen verwendet.
1.1 Konventionen
In diesem Abschnitt gehe ich auf Konventionen ein, die ich in dieser Arbeit verwende. Ich
schreibe
für die
N = {1, 2, 3, 4, ...} für die natürlichen Zahlen
ohne 0 und
Z = {0, ±1, ±2, ±3, ...}
ganzen Zahlen.
1.2 Wiederholung
Dieser Abschnitt dient dazu, die wichtigsten Begrie in Erinnerung zu rufen.
Dention 1.2.1: Teiler und Vielfaches
Seien
a, b ∈ Z.
Man sagt
a teilt b (geschrieben
Das Element
a
ist dann ein
Wenn kein solches
c
a|b),
c ∈ Z existiert mit b = ac.
b ein Vielfaches von a.
a - b.
falls ein
Teiler von
b
und
existiert schreibt man
Beispiel 1. Es gilt 6|30, da 30 = 5 · 6 ist.
Beispiel 2. Sei a ∈ Z. Für alle a gilt: a|0 weil 0 = a · 0 für alle a ist.
Dention 1.2.2: gemeinsamer Teiler/ Teilerfremd
a, b, c ∈ Z.
Das Element c
Seien
ist ein
gemeinsamer Teiler von
c|a
und
a
und
b,
c|b
Unter allen gemeinsamen Teilern zweier ganzen Zahlen
gleich
0
sind, gibt es genau einen gröÿten. Dieser heiÿt
Teiler (ggT)
von
a
und
b
und wird mit
3
wenn gilt:
ggT (a, b)
a
und
b,
die nicht beide
gröÿter gemeinsamer
bezeichnet. Weiterhin wird der
gröÿte gemeinsame Teiler von 0 und 0 auf 0 gesetzt. Also
Falls
ggT (a, b) = 1,
sagen wir,
a
und
b
sind
ggT (0, 0) = 0.
teilerfremd.
An dieser Stelle möchten wir uns kurz klarmachen, dass auch wirklich ein gröÿter gemeinsamer Teiler existiert.
a, b ∈ Z, und a 6= 0.
a durch |a| beschränkt
Seien dazu
Da alle Teiler von
sind, muss es unter allen Teilern von
a
damit unter allen gemeinsamen Teilern von
und
b
a
und
einen gröÿten geben.
Beispiel 3. Zum Beispiel gilt:
1. ggt(18,30)=6,
2. ggt(-10,20)=10,
3. ggt(-20,-14)=2.
Dention 1.2.3: Kongruenz
Sei
m∈N
a, b ∈ Z.
a ist kongruent zu b modulo m
b − a teilt.
und
Wir sagen,
Dierenz
und schreiben
a ≡ b mod m,
wenn
m
die
Dention 1.2.4: Ring
Eine Menge
R
zusammen mit zwei Verknüpfungen
+ :R × R → R, (a, b) 7→ a + b,
und
· :R × R → R, (a, b) 7→ a · b,
heiÿt
Ring, wenn folgendes gilt:
R1) Die Menge
R
ist mit der Addition + eine abelsche Gruppe.
R2) Die Multiplikation
·
ist assoziativ.
R3) Es gelten die Distributivgesetze, also für alle
• a · (b + c) = a · b + a · c
a, b, c ∈ R
gilt:
und
• (a + b) · c = a · c + b · c.
Der Ring heiÿt
kommutativ, wenn die Halbgruppe
(R, ·)
kommutativ ist.
Beispiel 4. (Z, +, ·) ist ein kommutativer Ring mit Einselement 1 und daraus leitet man
ab, dass
(Z/mZ, +, ·) ein kommutativer Ring mit Einselement 1 + mZ ist. Der letzere
Ring heiÿt Restklassenring modulo m.
4
Dention 1.2.5: nullteilerfrei
Ein Ring heiÿt
nullteilerfrei, falls für
a, b ∈ R
a·b=0⇒a=0
gilt:
oder
b = 0.
Dention 1.2.6: Einheit
Sei
R
ein nullteilerfreier kommutativer Ring mit 1.
u ∈ R heiÿt Einheit, falls es ein v ∈ R gibt mit u · v = 1.
∗
schreiben R = {u ∈ R|u ist eine Einheit} für die Menge aller Einheiten
Ein Element
Wir
in
R.
Dention 1.2.7: prim
Sei
R
wieder ein nullteilerfreier kommutativer Ring mit 1.
p ∈ R \ (R∗ ∪ {0}).
Das Element p heiÿt prim oder Primelement, wenn für alle a, b ∈ R mit p|a · b immer
p|a oder p|b folgt.
Weiter sei
5
2 Hauptteil
Zur Motivation dieses Vortrages:
3160
Wir möchten die Restklasse von
modulo
10
bestimmen.
Durch geschicktes Anwenden von Potenzgesetzen erhalten wir folgende Lösung:
3160 ≡ 32·80 ≡ (32 )80 ≡ 980 ≡ (−1)80 ≡ 1
ein ähnliches Beispiel ist
3161
modulo
8.
mod 10.
Eine mögliche Lösung ist:
3161 ≡ 3 · 3160 ≡ 3 · 980 ≡ 3 · 180 ≡ 3
mod 8.
Hierbei kann man sich schon denken, dass es nicht leicht ist, solche Arten von Aufgaben
zu lösen. Beispielsweise ist
11182
modulo
19
schon nicht mehr so leicht zu rechnen. Nun
wäre es hilfreich Sätze oder Regeln zu kennen, die einem dabei helfen. Vorher sollte man
sich nochmal ein paar Denitionen in Erinnerung rufen.
2.1 Gruppen/ Untergruppen und Ordnung
Dention 2.1.1: Gruppe
Eine Menge
G
zusammen mit einer Verknüpfung
◦
heiÿt
Gruppe,
wenn folgende
Axiome erfüllt sind:
G1) (Assoziativgesetz) Es gilt
(a ◦ b) ◦ c = a ◦ (b ◦ c)
G2) (neutrales Element) Es existiert ein
G3) (inverses Element) Zu jedem
a∈G
e∈G
gibt es ein
Gilt zusätzlich das Kommutativgesetz, also
Gruppe
mit
für alle
e◦a=a
a0 ∈ G
a◦b = b◦a
a, b, c ∈ G.
für alle
mit
a ∈ G.
a0 ◦ a = e.
für alle
a, b, ∈ G,
heiÿt die
abelsch.
Gilt nur G1, dann nennen wir
(G, ◦)
eine
Halbgruppe.
Beispiel 5. Folgende Menge mit deren Verknüpfungen sind Gruppen, Halbgruppen bzw.
keine Gruppen:
1.
(Z, +) ist eine abelsche Gruppe
2.
(Z, ·) ist eine Halbgruppe, da nicht jedes Element ein Inverses besitzt.
3.
(Z/9Z, ·) ist keine Gruppe, da die 0,3,6 kein inverses in der Menge besitzen.
6
G eine
Als nächstes führen wir Elementordnungen und ihre Eigenschaften ein. Dazu sei
Gruppe, die multiplikativ geschrieben ist, mit neutralem Element 1.
Dention 2.1.2: Ordnung
g ∈ G.
Sei
e
Wenn es eine natürliche Zahl
Zahl
Ordnung von g in G.
gibt mit
g e = 1,
dann heiÿt die kleinste solche
Andernfalls sagt man, dass die Ordnung von
g
unendlich ist. Die Ordnung von
in
G
wird mit
ordG (g)
ist, um welche Gruppe es sich handelt, schreibt man auch
g
in
G
bezeichnet. Wenn es klar
ord(g).
Beispiel 6. Sei G := (Z/4Z, +).
OrdG (1) = 4, da 14 = 1 + 1 + 1 + 1 = 0, und
OrdG (2) = 2, da 22 = 2 + 2 = 0.
Dann ist
Satz 2.1.1
g∈G
Sei
e
Dann gilt g
Beweis. Sei
e ∈ Z.
= 1 genau
und
n = ord(g)
dann, wenn
und
k ∈ Z.
e
durch die Ordnung von
Wenn
e = kn
g
in
G
teilbar ist.
ist, dann folgt
g e = g kn = (g n )k = 1k = 1.
Sei umgekehrt
g e = 1.
Sei weiterhin
e = qn + r
mit
0 ≤ r < n.
Dann folgt
g r = g e−qn = g e (g n )−q = 1.
Weil
n
g n = 1, und weil 0 ≤ r < n
Teiler von e, wie behauptet.
die kleinste natürliche Zahl ist mit
und damit
e = qn
sein. Also ist
n
ein
ist, muss
r=0
Korollar 2.1.1. Sei g ∈ G und seien k, l ∈ Z.
Dann gilt:
g l = g k ⇔ l ≡ k mod ord(g).
Beweis. Folgt direkt mit
e=l−k
aus Satz 2.1.1.
Dention 2.1.3: Untergruppe
Eine Teilmenge
von
G
U ⊆G
heiÿt
Untergruppe von G,
selbst eine Gruppe ist.
7
wenn
U
mit der Verknüpfung
Beispiel 7. 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 wird mit < g > bezeichnet.
g endliche Ordnung e, dann ist < g >= {g k : 0 ≤ k < e} und e die Ordnung von
< g >. Ist nämlich x eine ganze Zahl, dann gilt g x = g x mod e .
Hat
Wenn man nun beispielsweise
Die Gruppe
(Z/11Z)*
(Z/11Z)*
untersucht, stellt man folgendes fest:
besteht aus der Menge
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}.
Wir schauen uns
dabei die 3 näher an und multiplizieren 3 immer wieder mit sich selbst.
31 = 3
32 = 9
33 = 27 ≡ 5
34 = 33 · 3 = 5 · 3 = 15 ≡ 4
35 = 4 · 3 = 12 ≡ 1
36 = 1 · 3 = 3
Dabei fällt auf, dass man nicht alle Elemente der Gruppe trit. Wenn man allerdings die
2 untersucht, stellt man fest, dass alle Element der Gruppe getroen werden.
Dention 2.1.4: zyklische Gruppe und Erzeuger
Wenn
G.
G =< g > für ein g ∈ G ist, so heiÿt G zyklisch
G ist dann die von g erzeugte Gruppe.
und
g
heiÿt
Erzeuger von
Die Gruppe
Beispiel 8. Die additive Gruppe (Z, +) ist zyklisch mit 2 Erzeugern 1 und -1, denn durch
eine additive Verknüpfung können wir jede ganze Zahl zyklisch erzeugen (ebenfalls durch
-1).
Beispiel 9. Beispiel für eine nicht Zyklische Gruppe:
(Z/8Z)∗ ist eine nicht zyklische Gruppe, denn:
Die Gruppe (Z/8Z)∗ hat genau 4 Elemente.
Es gilt: (Z/8Z)∗ = {1, 3, 5, 7}.
Da aber gilt:
32 = 9 ≡ 1
mod 8,
2
5 = 25 ≡ 1
mod 8,
72 = 49 ≡ 1
mod 8,
8
folgt, dass
(Z/8Z)∗ nicht zyklisch ist, da jedes von 1 verschiedene Element nur eine Un-
tergruppe der Ordnung 2 erzeugt.
Bemerkung 2.1.2. In den Vorträgen zu dem diskretem Logarithmus werden wir die zyklischen Gruppen nochmal brauchen.
Satz 2.1.2
sie ein Element der Ordnung
|G| Elementen
|G| enthält.
g∈G
die Äquivalenz:
Eine endliche Gruppe
Genauer gilt für jedes
G
mit
g
Beweis. Die Untergruppe
dann gleich ganz
G,
wenn
erzeugt
ist dann und nur dann zyklisch, wenn
G ⇔ ord(g) = |G|
< g > besteht
m = |G|.
aus
m = ord(g)
Elementen. Sie ist also genau
Satz 2.1.3
Ist G eine endliche Gruppe, so teilt die Ordnung jeder Untergruppe die Ordnung von
G.
Beweis. Sei
H
eine Untergruppe von
G.
Wir sagen, dass 2 Elemente
a
und
b
aus
G
ab−1 zu
a/b =
H gehört. Dies ist eine Äquivalenzrelation:
a/a = 1 ∈ H , daher ist die Relation reexiv.
folgt aus a/b ∈ H , dass auch b/a ∈ H , weil H eine Gruppe ist. Daher
äquivalent sind, wenn
Es ist nämlich
Auÿerdem
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
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
Äquivalenzklasse von
oensichtlich 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
Anzahl der Elemente in den Äquivalenzklassen ist somit
Vereinigung aller Äquivalenzklassen ist, ist
|G|
9
|H|.
G aber
|H|.
Weil
ein Vielfaches von
H.
Die
die disjunkte
2.2 Prime Restklassengruppen
Dention 2.2.1: Prime Restklasse
Eine Restklasse
a + mZ in Z/mZ heiÿt prim, falls sie in Z/mZ
b ∈ Z mit ab ≡ 1 mod m existiert.
ein multiplikatives
Inverses hat, also ein
Im Vortrag 1 wurde folgender Satz gezeigt, den wir für den Beweis vom Satz 2.2.2
benötigen.
Satz 2.2.1
Die Restklasse
a + mZ
ist genau dann in
genau dann lösbar, wenn
von
a + mZ
Z/mZ invertierbar, d.h. die Kongruenz ist
ggT (a, m) = 1 gilt. Ist ggT (a, m) = 1, dann ist das Inverse
eindeutig bestimmt.
Die Gruppe der primen Restklassen modulo
modulo m
und wird mit
(Z/mZ)∗
m
heiÿt
prime Restklassengruppe
bezeichnet. Ihre Ordnung bezeichnet man mit
ϕ(m).
Satz 2.2.2
Sei
m ∈ N.
Die Menge aller primen Restklassen modulo
m
bildet eine endliche abelsche Gruppe
bezüglich der Multiplikation.
Beweis. Nach Satz 2.2.1 ist diese Menge die Einheitengruppe des Restklassenringes mod
m.
2.3 Eulersche phi-Funktion und kleine Satz von Euler
Bei dem Problem am Anfang von Kapitel 2 hilft uns nun genau der folgende Satz von
Leonhard Euler.
Vorher eine kurze Erinnerung zu Teilbarkeit in Restklassenringen.
Eine Restklasse
a + mZ oder a mod
Die Abbildung
m ist genau dann invertierbar, wenn,
N → N; m 7→ ϕ(m)
heiÿt Eulersche
ϕ
-Funktion. Es gilt
ϕ(m) = |{x ∈ N|1 ≤ x ≤ m ∧ ggT (x, m) = 1}|.
10
ggT (a, m) = 1.
Beispiel 10.
Beispielsweise gilt:
ϕ(6) = |{1, 5}| = 2,
ϕ(9) = |{1, 2, 4, 5, 7, 8}| = 6,
ϕ(17) = |{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16}| = 16.
Satz 2.3.1
Falls
p
eine Primzahl ist, gilt
Beweis. Da
p
ϕ(p) = p − 1.
eine Primzahl ist, und deshalb nur durch sich selbst und 1 teilbar ist, ist
sie zu den Zahlen
1
bis
p−1
teilerfremd. Weil sie gröÿer als 1 ist, ist sie auÿerdem nicht
zu sich selbst teilerfremd.
Beispiel 11. Wir wollen ϕ(35 ) bestimmen. Jetzt kann man sich überlegen, ob man alle
teilerfremden Zahlen zählt oder alle nicht teilerfremden.
Dabei ist es ab Besten, wenn man alle Zahlen zählt, deren Primfaktorzerlegung eine Drei
enthält, denn alle Vielfachen von 3 sind nicht teilerfremd zu
Vielfache der 3 sind die Zahlen:
35 .
3 · 1, 3 · 2, 3 · 3, ..., 3 · (34 − 1), 3 · 34 .
|
{z
}
34 Vielfache der 3
Daraus folgt: ϕ(35 )
=
35
−
34
= 162.
Satz 2.3.2
Sei
p
eine Primzahl und
m ∈ N.
Dann ist
ϕ(pm ) = pm − pm−1 .
Falls
m
groÿ und keine Primzahl bzw. Potenz einer Primzahl ist, ist
ϕ(m)
aktuell
noch schwer zu bestimmen. Im Vortrag über den Chinesischen Restsatz wird eine Formel
hergeleitet, die es ermöglicht,
ϕ(m)
im Allgemeinen zu bestimmen.
Satz 2.3.3: Satz von Euler
a, m ∈ N.
Wenn ggT (a, m) = 1
Seien
ist, dann folgt
aϕ(m) ≡ 1 mod m.
Beweis. Es gelte
Die Funktion
gleich
m
ggT (a, m) = 1.
ϕ(m) gibt die Anzahl
der zu
m
sind.
11
teilerfremden Zahlen wieder, die kleiner
k1 , k2 , ..., kϕ(m) . Jetzt können wir zu den einzelnen ki die Zahl a dran multiplizieren, also a · k1 , a · k2 , ..., a · kϕ(m) , damit bleiben die
Zahlen weiterhin teilerfremd, da a zu m teilerfremd ist. Daraus folgt ggT (aki , m) = 1.
Es entsteht lediglich eine Permutation der ki .
Wenn wir nun alle ki mit einander multiplizieren, erhalten wir folgende Kongruenz:
Die einzelnen Elemente bezeichnen wir als
k1 · k2 · ... · kϕ(m) ≡ a · k1 · a · k2 · ... · a · kϕ(m)
⇒ 1 ≡ |a · a {z
· ... · a}
mod
⇒ 1 ≡ aϕ(m)
m.
mod
m
m
ϕ(m)−mal
mod
Der Satz von Euler dient der Reduktion groÿer Exponenten modulo m, wie im folgendem Beispiel:
Beispiel 12
(Anwendung des Satzes von Euler).
Als Beispiel möchten wir die letzte Dezimalstelle von
und
7222 wissen. Es gilt ggT (7, 10) = 1
ϕ(10) = 4. Der Satz von Euler liefert:
74 ≡ 1
mod 10
und wir erhalten
7222 = 74·55+2 = (74 )55 · 72 = 155 · 72 ≡ 49 ≡ 9
12
mod 10.
Literaturverzeichnis
[1]
Buchmann, Johannes:
Einführung in die Kryptographie. 6. Au. Springer-Verlag,
Darmstadt, 2016
[2]
Fischer,Gert: Lineare Algebra. 18. Au. Springer-Verlag, München, 2013
13
Herunterladen