Elementare Zahlentheorie und Kryptographie
Elementare Zahlentheorie und Kryptographie
Elementare Zahlentheorie und Kryptographie
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
für alle x, y ∈ G. Man beachte: Genau dann gilt log G,g (x) = u, wenn g u = x<br />
gilt (x ∈ G, u ∈ Z/|G|Z). Man beachte: Wenn x ∈ G keine Potenz von g ist,<br />
dann ist log G,g (x) nicht definiert!<br />
Besonders wichtig ist der Spezialfall in dem G zyklisch <strong>und</strong> g ein Erzeuger von<br />
G ist. Dann gilt |G| = ord(g) <strong>und</strong><br />
exp G,g : (Z/ord(g)Z, +) → (G, ·), log G,g : (G, ·) → (Z/|G|Z, +)<br />
sind zueinander inverse Isomorphismen.<br />
Wenn klar ist um welche Gruppe es geht, so schreiben wir oft exp g statt exp G,g ,<br />
log g statt log G,g bzw. Log g statt Log G,g .<br />
Folgerung 4.1.6 Jede endliche zyklische Gruppe G ist isomorph zu (Z/|G|Z, +).<br />
Beispiel: Wir wollen diskrete Logarithmen zur Basis [6] in F 13 berechnen. Wir<br />
betrachten die entsprechende Zeile der Potenzierungstafel.<br />
k 0 1 2 3 4 5 6 7 8 9 10 11<br />
[6] k [1] [6] [10] [8] [9] [2] [12] [7] [3] [5] [4] [11] .<br />
Man sieht, daß ord([6]) = 12 = |F × 13 | <strong>und</strong> 〈[6]〉 = F× 13 gilt, d.h. daß [6] ein<br />
Erzeuger von F × 13 ist. Also ist log [6](x) bzw. Log [6] (x) für jedes x ∈ F × 13 definiert.<br />
Was ist Log [6] ([3])? Aus der obigen Tabelle entnimmt man, daß [6] 8 = [3] (<strong>und</strong><br />
[6] k ≠ [3] für 0 ≤ k < 8) gilt. Also gilt Log [6] ([3]) = 8. Ferner muß log [6] ([3])<br />
die Restklasse von Log [6] ([3]) = 8 modulo ord([6]) = 12 sein, d.h. log [6] ([3]) =<br />
[8] 12 . Aus obiger Tabelle entnimmt man in völlig analoger Weise Log [6] (x) bzw.<br />
log [6] (x) für jedes x ∈ F × 13 :<br />
x [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]<br />
Log(x) 0 5 8 10 9 1 7 3 4 2 11 6<br />
log(x) 0 5 8 10 9 1 7 3 4 2 11 6<br />
.<br />
Wir haben hier a statt [a] 12 <strong>und</strong> [a] statt [a] 13 geschrieben.<br />
Genauso können wir nach diskreten Logarithmen zur Basis [8] fragen. Wir betrachten<br />
die entsprechende Zeile der Potenzierungstafel:<br />
k 0 1 2 3 4 5 6 7 8 9 10 11 12<br />
[8] k [1] [8] [12] [5] [1] [8] [12] [5] [1] [8] [12] [5] [1] .<br />
Es folgt ord([8]) = 4 <strong>und</strong> 〈[8]〉 = {[1], [8], [5], [12]}. Insbesondere ist [8] kein Erzeuger<br />
von F × 13 . Nur für x ∈ 〈[8]〉 ist Log [8](x) definiert! Was ist nun Log [ 8]([5])?<br />
Es ist die kleinste nicht-negative ganze Zahl k mit [8] k = [5], also Log [8] ([5]) = 3.<br />
Ferner ist log [8] ([5]) die Restklasse von Log [8] ([5]) modulo ord([8]) = 4, d.h.<br />
log [8] ([5]) = [3] 4 . So kann man Log [8] (x) bzw. log [8] (x) für jedes x ∈ 〈[8]〉 bestimmen:<br />
x [1] [5] [8] [12]<br />
Log(x) 0 3 1 2 .<br />
log(x) [0] 4 [3] 4 [1] 4 [12] 4<br />
62