Mathematische Grundlagen Blatt 11

Werbung
Mathematische Grundlagen
Blatt 11
I. Köster
WS 2015/2016
F. Stoll
Gruppenübungen am 13.01.2016
Alle Aufgaben sollen schriftlich bearbeitet und am 13. Januar 2016 in der Übung abgegeben werden. Jeder
Student muss eine eigene Version abgeben!
Ziel ist es, das sogenannte RSA-Verfahren herzuleiten.
Das RSA-Verfahren ist ein kryptographisches Verfahren, das 1977/1978 am MIT von Rivest, Shamir und
Adelmann entwickelt wurde. Kryptographie findet beispielsweise Anwendung bei der Verschlüsselung von
Nachrichten, digitalen Signaturen oder Bezahlungen mit Kreditkarten.
Definition: ϕ : N → N, definiert durch
ϕ(n) := |{ a ∈ N : 1 ≤ a ≤ n ∧ ggT(a, n) = 1 }|,
heißt eulersche ϕ-Funktion. Sie gibt zu jeder natürlichen Zahl n ∈ N an, wie viele teilerfremde Zahlen es
gibt, die kleiner als n sind. Für Primzahlen p ∈ N gilt ϕ(p) = p − 1.
Aufgabe S 11.1
Seien p, q ∈ N Primzahlen mit p 6= q. Zeigen Sie, dass ϕ(p · q) = (p − 1) · (q − 1) gilt.
Geben Sie die Ordnung der Einheitengruppe (Z/pqZ)× := { a ∈ Z/pqZ : ∃b ∈ Z/pqZ : ab = ba = 1 } an.
Zur Berechnung des größten gemeinsamen Teilers von zwei natürlichen Zahlen verwendet man den sogenannten euklidischen Algorithmus:
1
2
3
4
5
6
Input : a, b ∈ N0
h := 0; x := b, ggt := a;
while x 6= 0 do
h := ggt mod x;
ggt := x;
x := h.
end
Output : ggt
Aufgabe S 11.2
Zeigen Sie die Korrektheit des Algorithmus, d.h. zeigen Sie, dass ggt = ggT(a, b).
Die Bank B wählt zwei (große) Primzahlen p, q mit p 6= q und berechnet n = p · q. B wählt eine zu ϕ(n)
teilerfremde Zahl e mit 1 < e < ϕ(n). Danach bestimmt man ein d ∈ N mit ed = 1 mod ϕ(n).
Aufgabe S 11.3
Warum existiert ein solches d? Geben Sie einen Algorithmus zur Berechnung von d
an.
B gibt das Paar (n, e) (auch Public Key genannt) öffentlich bekannt. Unter Verwendung des Public Keys
kann jeder folgendermaßen eine Nachricht an B senden:
Der Kunde K sendet an B eine Nachricht mit Elementen aus (Z/nZ)× , mittels der Chiffrierfunktion
ψ : (Z/nZ)× → (Z/nZ)× , x 7→ xe .
Die Bank entschlüsselt dann die Nachricht mittels der Dechiffrierfunktion
ξ : (Z/nZ)× → (Z/nZ)× , xe 7→ xed .
Sei G eine Gruppe der Ordnung n und sei x ∈ G. Zeigen Sie, dass xn = 1 gilt. Zeigen
Sie insbesondere, dass xed = x für x ∈ (Z/nZ)× gilt.
Aufgabe S 11.4
Man benötigt d, und um d zu berechnen, benötigt man ϕ(n), also p und q. Die Zerlegung einer Zahl in das
Produkt zweier Primzahlen ist i.A. für große Primzahlen schwer.
Aufgabe S 11.5
Zeigen Sie: Die Kenntnis von n und ϕ(n) ist äquivalent zur Kenntnis von p und q.
Aufgabe S 11.6
a) Verschlüsseln Sie die Zahl 8 mithilfe des RSA-Verfahrens mit n = 55, e=7.
b) Finden Sie d ∈ N mit ed ≡ 1 mod ϕ(n) und verifizieren Sie, dass die Entschlüsselung funktioniert.
Herunterladen