03.08.2013 Aufrufe

Sicherheit in Rechnernetzen - Professur Datenschutz und ...

Sicherheit in Rechnernetzen - Professur Datenschutz und ...

Sicherheit in Rechnernetzen - Professur Datenschutz und ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

3 Kryptografische Gr<strong>und</strong>lagen<br />

bestimmen, <strong>und</strong> es gilt:<br />

y ≡ f (x) (mod n) ⇔ y ≡ yp (mod p) ∧ y ≡ yq (mod q).<br />

Wir müssen also nur noch schauen, ob wir aus yp <strong>und</strong> yq effizient y zusammensetzen können.<br />

Das tut der „Ch<strong>in</strong>esische Restealgorithmus (CRA)“ (der eigentliche Ch<strong>in</strong>esische Restsatz besagt<br />

nur, daß e<strong>in</strong> solches y für beliebige yp, yq existiert):<br />

Zunächst bestimmt man mit dem erweiterten Euklidschen Algorithmus ganze Zahlen u, v mit<br />

Die Behauptung ist, daß<br />

u · p + v · q = 1. 31<br />

y = CRA(yp, yq) := u · p · yq + v · q · yp (mod n).<br />

Wir müssen also y ≡ yp (mod p) ∧ y ≡ yq (mod q) zeigen. Dies sieht man am besten mit<br />

folgender Tabelle:<br />

(mod p) (mod q)<br />

u · p 0 1<br />

v · q 1 0<br />

up yq + vq yp 0 · yq + 1 · yp 1 · yq + 0 · yp<br />

≡ yp ≡ yq<br />

(Die oberen beiden Zeilen folgen aus u · p + v · q = 1 <strong>und</strong> besagen, daß u · p <strong>und</strong> v · q <strong>in</strong> Zn<br />

etwas wie zwei „Basisvektoren“ darstellen, wenn man Zn aus Zp <strong>und</strong> Zn zusammensetzt. Die<br />

Berechnung von u· p <strong>und</strong> v·q kann e<strong>in</strong> für allemal bei Erzeugung des Geheimnisses geschehen.)<br />

3.4.1.4 Quadrate <strong>und</strong> Wurzeln allgeme<strong>in</strong><br />

Aus §3.4.1.3 wissen wir, wie e<strong>in</strong> Geheimnis p, q helfen kann, e<strong>in</strong>e Funktion f (mod n) auszurechnen,<br />

wenn sie modulo Primzahlen viel leichter zu berechnen ist. E<strong>in</strong>e solche Funktion wird<br />

modulares Wurzelziehen se<strong>in</strong>. Man wird also das Geheimnis benötigen, um Wurzeln mod n zu<br />

ziehen, während jeder andere alle<strong>in</strong> anhand von n Quadrieren kann, also die <strong>in</strong>verse Operation<br />

ausführen. Dazu betrachten wir zunächst Wurzeln <strong>und</strong> Quadrate <strong>in</strong> Restklassenr<strong>in</strong>gen genauer.<br />

• Def<strong>in</strong>iert s<strong>in</strong>d sie genau wie man sich das vorstellen würde, außer daß man sich meistens<br />

nur um <strong>in</strong>vertierbare Elemente kümmert:<br />

QR n := {x ∈ Z ∗ n|∃y ∈ Z ∗ n : y 2 ≡ x (mod n)}.<br />

Die x’e aus dieser Menge heißen quadratische Reste (also das, was <strong>in</strong> N die Quadratzahlen<br />

s<strong>in</strong>d), <strong>und</strong> e<strong>in</strong> entsprechendes y heißt Wurzel aus x.<br />

31 Zwei verschiedene Primzahlen haben ja den ggT = 1. Es ist leicht zu sehen, daß der CRA auch funktioniert, wenn<br />

p <strong>und</strong> q ke<strong>in</strong>e Primzahlen, aber weiterh<strong>in</strong> teilerfremd s<strong>in</strong>d. Durch wiederholte Anwendung des CRA kann der<br />

Ch<strong>in</strong>esische Restsatz auch für Produkte bestehend aus mehr als zwei Faktoren abgedeckt werden.<br />

92

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!