Kryptanalyse - CITS - Ruhr

Werbung
Ruhr-Universität Bochum
Lehrstuhl für Kryptologie und IT-Sicherheit
Prof. Dr. Alexander May
Mathias Herrmann, Alexander Meurer
Lösungsblatt zur Vorlesung
Kryptanalyse
WS 2009/2010
Blatt 1 / 16. Oktober 2009 / Abgabe bis spätestens 28. Oktober 2009, 10
Uhr, entweder vor der Übung oder in NA 5/74
AUFGABE 1 (4 Punkte):
Sei N = pq mit p 6= q prim. Zeigen Sie, dass ord(Z∗N ) = (p − 1)(q − 1).
Lösungsvorschlag:
Z∗N = {x ∈ ZN |gcd(x, N ) = 1}. Es sind also gerade die Elemente aus ZN nicht in Z∗N , die
einen gemeinsamen Teiler > 1 mit N besitzen. Das sind zum einen die Vielfachen von p, d.h.
0, p, 2p, . . . , (q −1)p und zum anderen die Vielfachen von q, d.h. 0, q, 2q, . . . , (p−1)q. Die erste
Menge hat eine Größe von genau q, die zweite hat eine Größe von p und in beiden Mengen
kommt der Wert 0 vor, wir zählen ihn also doppelt. Insgesamt ergibt sich die Größe von Z∗N
als
ord(Z∗N ) = |ZN | − p − q + 1 = N − p − q + 1 = (p − 1)(q − 1)
.
AUFGABE 2 (6 Punkte):
(a) Sei N ∈ N und x ∈ Z∗N mit ord(x) = k ∈ N. Zeigen Sie , dass mit a, b ∈ Z gilt:
xa ≡ x b
(mod N ) ⇔ a ≡ b (mod k).
(b) Seien a, b ∈ Z mit a ≡ b (mod ϕ(N )). Zeigen Sie, dass dann für alle x ∈ Z∗N gilt:
xa ≡ xb
(mod N ).
(c) Berechnen Sie 52222211 (mod 19).
(d) Bestimmen Sie das Inverse zu 52222225 (mod 19).
Lösungsvorschlag:
(a) Sei ord(x) = k. Dann gilt
xm = 1 ⇔ k|m
Hiermit folgt
xa ≡ xb
⇔ xa x−b ≡ 1
mod N
mod N
a−b
⇔x
≡ 1 mod N
⇔ k|a − b
⇔ a ≡ b mod k
(b) Nach dem Satz von Lagrange gilt: ord(x)|ϕ(N ), da ϕ(N ) gerade die Gruppenordnung
von Z∗N ist. Sei also
a ≡ b mod ϕ(N )
Das bedeutet: ϕ(N )|a − b und somit ord(x)|a − b, also
a ≡ b mod ord(x)
Mit Teil a) folgt dann die Behauptung.
(c) Wir wissen: Weil 19 Primzahl ist, gilt 5 ∈ Z∗19 und wir dürfen im Exponenten mod ϕ(N )
rechnen. Es gilt ϕ(19) = 18 und wegen 2222211 ≡ 3 mod 18 erhält man also
52222211 ≡ 53 ≡ 125 ≡ 11
mod 19
(d) Wie zuvor berechnen wir zunächst 2222225 ≡ 17 ≡ −1 mod 18 und somit gilt
52222225 ≡ 5−1
mod 19
Daher ist (52222225 )−1 = 5 in Z∗19 .
AUFGABE 3 (4 Punkte):
Sei G eine zyklische Gruppe. Zeigen Sie, dass es ϕ(ord(G)) viele Generatoren in G gibt.
Lösungsvorschlag:
Wir gehen davon aus, dass es sich um eine endliche Gruppe der Ordnung n handelt. Sei also
G =< g >= {1, g, g 2 , . . . , g n−1 }
Es seien ki := ord(g i ) für i = 0, . . . , n − 1 die Ordnungen der Gruppenelemente. Nach dem
Satz von Lagrange gilt: ki |ord(G). Wegen
1 = (g i )ki = g ki ·i
gilt aber auch: ord(G)|i · ki . Wir unterscheiden nun zwei Fälle
i) Ist ggT(i, ord(G)) = 1 so gilt ord(G)|ki = ord(g i ), also ord(G) = ord(g i ) nach dem Satz
von Lagrange und somit erzeugt g i die ganze Gruppe G.
ii) Ist ggT(i, ord(G)) = s > 1 so faktorisiere i = is · s und ord(G) = gs · s mit 1 ≤ is < i
und 1 ≤ gs < ord(G). Damit folgt
(g i )gs = g is ·s·gs = g i·ord(G) = (g ord(G) )i = 1i = 1
Da gs < ord(G) gilt, kann g i nicht ganz G erzeugen.
Damit gilt: Alle g i mit ggT(i, ord(G)) = 1 sind genau die Generatoren. Dies sind aber gerade
die Elemente aus Z∗ord(G) und davon gibt es genau ϕ(ord(G)) viele.
AUFGABE 4 (6 Punkte):
Zeigen Sie den verallgemeinerten Chinesischen Restsatz:
Seien m1 , m2 , . . . , mn teilerfremde natürliche Zahlen. Es existiert genau eine Lösung
x mod m1 m2 . . . mn des Gleichungssystems
x = a1 mod m1 x = a2 mod m2 .
..
.
x = an mod mn Lösungsvorschlag:
1. Direkte Lösung:
Q
Wir definieren M := ni=1 mi und Mi := M/mi , i = 1, . . . , n. Weiterhin sei ui , i =
1, . . . , n das Inverse von Mi modulo mi , das man mit dem erweiterten Euklidischen
Algorithmus berechnen kann (nach Voraussetzung gilt ggT(Mi , mi ) = 1). Schließlich
setzen wir
n
X
x :=
ai ui Mi mod M.
i=1
Wegen ui Mi = 1 mod mi und Mi = 0 mod mj für j 6= i ist x eine Lösung des Gleichungssystems.
Eindeutigkeit: Angenommen, x0 sei eine weitere Lösung. Dann gilt mi | x − x0 für
1 ≤ i ≤ n. Weil die mi nach Voraussetzung teilerfremd sind, folgt hieraus M | x − x0 ,
insbesondere sind also x und x0 gleich modulo M , was zu zeigen war.
2. Alternative Lösung:
Wir beweisen die Aussagen per Induktion über n. Für n = 1 ist die Aussage trivial
(und für n = 2 entspricht Sie gerade der einfachen Version des CRT aus der Vorlesung).
Seien nun m1 , . . . , mn+1 paarweise teilerfremde Zahlen (d.h. ggT(mi , mj ) = 1 für i 6= j)
und seien a1 , . . . , an+1 die verlangten Lösungen des Gleichungssystems.
Q
Nach Induktionsvoraussetzung existiert eine Lösung x mod ni=1 mi des Gleichungssystems
x = ai
mod mi für 1 ≤ i ≤ n
Q
Wegen der paarweisen Teilerfremdheit der mi gilt außerdem ggT( ni=1 mi , mn+1 ) =
1 undQmit dem einfachen CRT aus der Vorlesung finden wir genau eine Lösung x̃
mod n+1
i=1 mi mit
x̃ = an+1
mod mn+1
n
Y
x̃ = x mod
mi
i=1
und somit löst x̃ die simultanen Kongruenzen
x̃ = ai
mod mi für 1 ≤ i ≤ n + 1
Herunterladen