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.

92<br />

A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />

91<br />

A. Pfitzmann: Datensicherheit <strong>und</strong> Kryptographie; TU Dresden, WS2000/2001, 15.10.2000, 15:52 Uhr<br />

Zufallszahl<br />

l<br />

<strong>Sicherheit</strong>sparameter<br />

Für fm (x) mit x fest <strong>und</strong> E<strong>in</strong>gabe m, schreiben wir kurz h(m) <strong>und</strong> nennen h e<strong>in</strong>e kollisionsresistente<br />

Hashfunktion (konstruiert aus e<strong>in</strong>er kollisionsresistenten Permutationenfamilie).<br />

Schlüsselgenerierung:<br />

Effizientere, aber nicht beweisbar sichere kollisionsresistente Hashfunktionen können beispielsweise<br />

aus Blockchiffren konstruiert werden, vgl. §3.8.3.<br />

p, q Primzahlen<br />

n := p•q<br />

c mit ggT(c, (p-1)(q-1)) = 1<br />

d ≡ c -1 mod (p-1)(q-1)<br />

c, n<br />

3.6.4.1 RSA als asymmetrisches Konzelationssystem<br />

Chiffrierschlüssel,<br />

öffentlich bekannt<br />

d, n<br />

RSA wird zu e<strong>in</strong>em <strong>in</strong>determ<strong>in</strong>istisch verschlüsselnden Konzelationssystem, <strong>in</strong>dem mit jedem<br />

Klartextblock m e<strong>in</strong>e neue Zufallszahl z (sie hat nichts zu tun mit der Zufallszahl für die Schlüsselgenerierung,<br />

deshalb als Zufallszahl' <strong>in</strong> Bild 3-31 bezeichnet) verschlüsselt wird.<br />

Dechiffrierschlüssel,<br />

geheimgehalten<br />

Klartextblock<br />

Entschlüsselung:<br />

Schlüsseltextblock<br />

c<br />

Verschlüsselung:<br />

Klartextblock<br />

m<br />

c d<br />

(z,m, h(z,m))<br />

( • ) mod n =:<br />

mod n mod n z,m, y;<br />

h(z,m) = y ?<br />

(z,m, h(z,m))<br />

m<br />

= 2. Komponente von<br />

((z,m, h(z,m)) c d<br />

)<br />

mod n nach Red<strong>und</strong>anzprüfung<br />

mittels h<br />

z<br />

Zufallszahl'<br />

Geheimer Bereich<br />

Aktive Angriffe werden verh<strong>in</strong>dert, <strong>in</strong>dem vor der Verschlüsselung jedem Klartextblock Red<strong>und</strong>anz<br />

zugefügt wird, die vom Entschlüsseler nach der Entschlüsselung geprüft wird. Dies Zufügen von<br />

Red<strong>und</strong>anz muß natürlich so geschehen, daß das modulare Multiplizieren zweier Klartextblöcke mit<br />

Red<strong>und</strong>anz ke<strong>in</strong>en dritten Klartextblock mit passender Red<strong>und</strong>anz ergibt.<br />

Die Red<strong>und</strong>anz kann beispielsweise erzeugt werden, <strong>in</strong>dem auf den Klartextblock e<strong>in</strong>e kollisionsresistente<br />

Hashfunktion angewandt <strong>und</strong> das Ergebnis an den Klartextblock gehängt wird. Natürlich<br />

muß die Hashfunktion dann so gewählt werden, daß sie, falls überhaupt, e<strong>in</strong>e andere multiplikative<br />

Struktur hat als das RSA, dessen multiplikative Struktur sie gerade neutralisieren soll. Dies kann<br />

beispielsweise geschehen, <strong>in</strong>dem bei Wahl der Permutationen aus §3.5.3 e<strong>in</strong> vom RSA-Modulus<br />

unabhängig gewählter Modulus verwendet wird.<br />

Bild 3-31: Sicherer E<strong>in</strong>satz von RSA als asymmetrisches Konzelationssystem: Red<strong>und</strong>anzprüfung<br />

mittels kollisionsresistenter Hashfunktion h sowie <strong>in</strong>determ<strong>in</strong>istische Verschlüsselung<br />

Bild 3-31 veranschaulicht das Gesamtsystem, wenn <strong>in</strong>determ<strong>in</strong>istische Verschlüsselung <strong>und</strong><br />

Red<strong>und</strong>anz mittels kollisionsresistenter Hashfunktion komb<strong>in</strong>iert werden.<br />

Kompliziertere <strong>und</strong> dafür <strong>in</strong> e<strong>in</strong>em gewissen S<strong>in</strong>n beweisbar sichere Konstruktionen zur Komb<strong>in</strong>ation<br />

von Red<strong>und</strong>anz mit <strong>in</strong>determ<strong>in</strong>istischer Verschlüsselung s<strong>in</strong>d <strong>in</strong> [BeRo_95] beschrieben. Diese<br />

Konstruktionen gelten nicht nur für RSA, sondern für jedes asymmetrische Kryptosystem, das e<strong>in</strong>e<br />

Permutation (sprich: längentreue Blockchiffre, vgl. §3.8.2 <strong>und</strong> §3.8.2.7) ist.<br />

Verschlüsselung e<strong>in</strong>es Klartextblocks erfolgt durch Voranstellen e<strong>in</strong>er Zufallszahl, Anwenden<br />

e<strong>in</strong>er kollisionsresistenten Hashfunktion h auf Zufallszahl <strong>und</strong> Klartextblock, deren Ergebnis<br />

dah<strong>in</strong>ter gehängt wird, sowie modulare Exponentiation mit c aller drei Komponenten geme<strong>in</strong>sam.<br />

Dies ergibt für Klartextblock m <strong>und</strong> Zufallszahl z: (z,m, h(z,m)) c mod n.<br />

3.6.4.2 RSA als digitales Signatursystem<br />

Entschlüsselung erfolgt durch modulare Exponentiation mit d. Sie ergibt drei Komponenten.<br />

Danach wird geprüft, ob die Hashfunktion h, angewandt auf die ersten beiden Komponenten, die<br />

dritte Komponente ergibt. Nur dann wird die zweite Komponente ausgegeben.<br />

Dies ergibt für Schlüsseltextblock (z,m, y) c mod n : ((z,m, y) c ) d mod n =: z,m, y. h(z,m) = y ?<br />

Gegebenenfalls Ausgabe: m.<br />

Um das Rückwärtsrechnen zu vereiteln <strong>und</strong> auch die multiplikative Struktur von RSA zu neutralisieren,<br />

wird auf den Textblock vor der modularen Exponentiation e<strong>in</strong>e kollisionsresistente Hashfunktion<br />

angewandt. Wenn die Hashfunktion Argumente beliebiger Länge als Argument akzeptiert,<br />

hat dies zusätzlich den Vorteil, daß dann auch Texte beliebiger Länge <strong>in</strong> e<strong>in</strong>em Stück signiert werden<br />

können. Das Blockungsproblem ist dann für das digitale Signatursystem gelöst.<br />

Ist die Hashfunktion zusätzlich schneller zu berechnen als RSA, br<strong>in</strong>gt ihre Anwendung bei<br />

längeren Nachrichten auch e<strong>in</strong>en Geschw<strong>in</strong>digkeitsvorteil des Gesamtsystems gegenüber der <strong>in</strong><br />

§3.6.2.2 beschriebenen Anwendung von RSA.<br />

Signieren erfolgt durch Anwenden der Hashfunktion <strong>und</strong> modulare Exponentiation des<br />

Hashwertes mit s.<br />

Dies ergibt für Textblock m: (h(m)) s mod n.<br />

Testen erfolgt durch modulare Exponentiation der Signatur mit t <strong>und</strong> anschließendem Vergleich<br />

des Ergebnisses mit dem Hashwert des zugehörigen Textblocks.<br />

Dies ergibt für Textblock m mit Signatur (h(m)) s : ((h(m)) s ) t mod n =: y, h(m) = y ?<br />

Bild 3-32 veranschaulicht das Gesamtsystem.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!