Kapitel 6: Restklassenringe und komplexe Zahlen

Werbung
Kapitel 6:
Restklassenringe und komplexe Zahlen
6.1
6.2
6.3
6.4
6.5
Rechnen modulo n
Das RSA-Public-Key-Cryptosystem
Prüfzeichencodierung
Der Chinesische Restsatz
Der Körper der komplexen Zahlen
Invertieren modulo n — Algorithmus 6.1.8
• Eingabe: n ∈ N und a ∈ Z mit ggT(a, n) = 1;
• Ausgabe: y ∈ {1, ..., n − 1} mit ay ≡ 1 mod n;
• wende den erweiterten Euklidischen Algorithmus auf
(a, n) an
und erhalte (α, β) mit αa + βn = 1,
setze y := α mod n,
gebe y aus.
2
Square-and-Multiply —- Algorithmus 6.1.9
• Eingabe: g ∈ Z und n, m ∈ N∗;
• Ausgabe: g m mod n;
• x := 1, y := g, k := m,
(∗ g m ≡ xy k mod n ∗)
while k > 0 do
if k mod 2 = 1
then x := xy mod n, k := k − 1
end-if,
y := y 2 mod n, k := k div 2
(∗ g m ≡ xy k mod n ∗)
end-do,
(∗ g m ≡ xy m mod n, m = 0 ∗)
Ausgabe von x.
Grundlagen des RSA-Systems — 6.2.2
Jeder Schlüssel K hat hier die Form K = (n, a, b, p, q).
1. n = pq;
2. p und q sind zwei verschiedene Primzahlen;
3. ab ≡ 1 mod ϕ(n), wobei ϕ die Euler-Funktion ist.
Demnach müssen a und b invertierbar modulo ϕ(n)
sein.
4. Der öffentliche Teil eK des Schlüssels entspricht dem
Paar (n, b).
5. Der geheime Teil dK entspricht dem Tripel (p, q, a).
6. Will man K eine Nachricht x zukommen lassen, so
sendet man
y = eK (x) := xb mod n.
7. Der Empfänger K entschlüsselt die empfangene Nachricht y zu
dK (y) := y a mod n = xab mod n.
2
Bemerkungen zum RSA-System — 6.2.5
1. Wie kann ein neuer Teilnehmer des Verbundsystems
seinen Schlüssel K = (n, a, b, p, q) wählen?
2. Ist die Berechnung von eK (x) und dK (y) überhaupt
effizient durchführbar?
3. Wie steht es mit der Sicherheit? Ist eK eine Einwegfunktion mit Falltür?
Herunterladen