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 />

von m<strong>in</strong>destens k Teilen die effiziente Rekonstruktion des Geheimnisses erlaubt, k − 1 Teile aber<br />

ke<strong>in</strong>e Information über das Geheimnis liefern.<br />

Adi Shamirs Polynom<strong>in</strong>terpolation:<br />

Das Geheimnis G sei Element von Zp, p sei Primzahl. 73<br />

Der Eigentümer wählt e<strong>in</strong> Polynom q(x) des Grades k − 1 folgendermaßen:<br />

Er wählt die Koeffizienten a1, a2, . . . , ak−1 zufällig, gleichmäßig <strong>und</strong> unabhängig <strong>in</strong> Zp.<br />

Er def<strong>in</strong>iert q(x) := G + a1x + a2x 2 + · · · + ak−1x k−1 , wobei alle Operationen <strong>in</strong> Zp erfolgen.<br />

Er berechnet <strong>in</strong> Zp die n Teile (i, q(i)) mit 1 ≤ i ≤ n wobei n < p gelten muß.<br />

Aus k Teilen (x j, q(x j))( j = 1, . . . , k) kann das Polynom q(x) folgendermaßen berechnet werden<br />

(Lagrange-Polynom<strong>in</strong>terpolation [Denn_82, Seite 180]):<br />

q(x) =<br />

k<br />

q(x j)<br />

j=1<br />

Das Geheimnis G erhält man dann als q(0).<br />

Beweisskizze:<br />

k<br />

m=1,m j<br />

(x − xm)<br />

(x j − xm)<br />

mod p<br />

1. Das Schwellwertschema liefert bei Kenntnis von lediglich k − 1 Teilen ( j, q( j)) ke<strong>in</strong>erlei<br />

Information über G, da es für jeden Wert von G immer noch genau e<strong>in</strong> Polynom vom Grad<br />

k − 1 gibt, das durch die <strong>in</strong>sgesamt k Punkte ( j, q( j)) <strong>und</strong> (0, G) geht.<br />

2. Obige Formel berechnet das richtige Polynom, da es sowohl den richtigen Grad k − 1 hat<br />

(jeder Produktteil hat den Grad k − 1 <strong>und</strong> durch Summation bleibt dies erhalten) <strong>und</strong> für<br />

jedes Argument x j den Wert q(x j) liefert: Setzt man im Produktteil für x e<strong>in</strong> x j e<strong>in</strong>, so<br />

ist das Produkt genau 1, wenn der Summations<strong>in</strong>dex den Wert j hat (denn dann hat jeder<br />

e<strong>in</strong>zelne Quotient den Wert 1, also ist ihr Produkt 1) <strong>und</strong> 0 sonst (denn dann ist e<strong>in</strong> Faktor<br />

0). Diese 1 multipliziert mit q(x j) ergibt als Gesamtwert der Summe q(x j).<br />

Anmerkung Es ist nicht zw<strong>in</strong>gend, daß die Teile als Werte des Polynoms an den Stellen 1 bis n<br />

gewählt werden. Jede andere Wahl von n verschiedenen Stellen ( 0) tut es auch.<br />

Ist das Geheimnis groß <strong>und</strong> möchte man nicht modulo e<strong>in</strong>em großen p rechnen, so zerschneidet<br />

man das Geheimnis <strong>in</strong> mehrere Stücke <strong>und</strong> führt obiges Schema mit jedem der Stücke durch.<br />

Oftmals sollen Geheimnisse nicht nur vertraulich bleiben, sondern sie müssen auch für ihren Eigentümer<br />

über lange Zeit verfügbar se<strong>in</strong>. Möchte sich der Eigentümer e<strong>in</strong>es Geheimnisses G vor<br />

73 Vorsicht Falle: p darf nicht <strong>in</strong> starker Abhängigkeit von G gewählt werden. Also auf ke<strong>in</strong>en Fall: Wähle zu G die<br />

nächst größere Primzahl p. Sonst erhält e<strong>in</strong> Angreifer durch Kenntnis des öffentlich werdenden p schon sehr, sehr<br />

viel Information über G.<br />

172

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!