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.

70<br />

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

69<br />

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

• βl,m der durchschnittliche Wert, den T e<strong>in</strong>er von PBG generierten m-Bit-Folge zuordnet, wenn<br />

der <strong>Sicherheit</strong>sparameter l ist (wobei der Durchschnitt über die Schlüssel <strong>und</strong> Startwerte gebildet<br />

wird, die beim <strong>Sicherheit</strong>sparameter l erzeugt werden).<br />

echte<br />

Zufallszahl<br />

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

ll<br />

Damit gilt formaler, d.h. bei Umstellung des formalen Parameters m auf beliebiges Polynom Q(l):<br />

Schlüsselgen.<br />

=<br />

Schlüssel- u.<br />

Startwertgen.<br />

n, s<br />

E<strong>in</strong> PBG besteht T gdw.<br />

Für alle Polynome Q <strong>und</strong> alle t > 0 gilt: Für alle genügend großen l liegt βl,Q(l) im Intervall αQ(l) ±<br />

1/lt .<br />

n,s<br />

geheimer Schlüssel =<br />

Schlüssel u. Startwert<br />

Zu dieser „stärksten“ Forderung s<strong>in</strong>d die folgenden 3 äquivalent (aber leichter beweisbar):<br />

Für jede erzeugte endliche Anfangs-Bitfolge, bei der e<strong>in</strong> beliebiges (das rechte, l<strong>in</strong>ke) Bit fehlt,<br />

kann jeder polynomial zeitbeschränkte Algorithmus P (Prädiktor) das fehlende Bit „nur raten“<br />

(d.h. nicht besser voraussagen als mit Wahrsche<strong>in</strong>lichkeit 1/2± 1/lt .).<br />

Klartext<br />

x<br />

Entschlüsselung:<br />

Erzeuge<br />

b b b ...,<br />

0 1 2<br />

addiere<br />

Klartext Verschlüsse- Schlüsseltext<br />

lung: Erzeuge<br />

x<br />

k(x)<br />

b b b ...,<br />

= x x x ... 0 1 2<br />

0 1 2 addiere = x 0 ⊕ b 0 ,<br />

x 1 ⊕ b 1 , …<br />

Beweisideen (<strong>in</strong>direkte Beweise):<br />

Geheimer Bereich<br />

1. (E<strong>in</strong>facher Teil) Jeder Prädiktor ist auch als Test zu verwenden: Man nimmt von der zu testenden<br />

Folge alle Bits bis auf e<strong>in</strong>es, gibt sie als E<strong>in</strong>gabe <strong>in</strong> den Prädiktor <strong>und</strong> vergleicht das Ergebnis mit<br />

dem richtigen Bit aus der Folge. Das Testergebnis ist 1, wenn der Prädiktor richtig geschätzt hat,<br />

<strong>und</strong> 0 sonst. Der Wert αm ist 1/2, denn bei echten Zufallsfolgen kann jeder Prädiktor nur mit<br />

Wahrsche<strong>in</strong>lichkeit 1/2 richtig schätzen. Wenn der Prädiktor also auf PBG-Folgen wesentlich<br />

anders (besser) schätzt, hat der PBG diesen Test nicht bestanden.<br />

Bild 3-18: Pseudo-one-time-pad<br />

Dabei muß statt des langen one-time-pads nur noch der kurze Schlüssel <strong>und</strong> Startwert des PBG<br />

ausgetauscht werden.<br />

Forderung an Pseudo-one-time-pad: Für jeden polynomial beschränkten Angreifer soll das<br />

Pseudo-one-time-pad bis auf e<strong>in</strong>en verschw<strong>in</strong>denden Anteil der Fälle so sicher wie one-time-pad se<strong>in</strong>.<br />

2. (Schwierigerer Teil) Zu zeigen: Aus jeder der 3 schwächeren Forderungen folgt die „stärkste“.<br />

Wir nehmen also an, es gebe irgende<strong>in</strong>en Test T, den PBG nicht besteht, <strong>und</strong> zeigen, daß es<br />

dann auch e<strong>in</strong>en Prädiktor gibt, der e<strong>in</strong> Bit von PBG zu gut voraussagt. Hier wird das für das<br />

l<strong>in</strong>ke Bit gezeigt.<br />

Für e<strong>in</strong> t > 0, e<strong>in</strong> Polynom Q <strong>und</strong> unendlich viele l liegt βl,Q(l) außerhalb, z.B. oberhalb, des<br />

Intervalls αQ(l) ± 1/lt .<br />

Man wirft nun T e<strong>in</strong>e Bitfolge aus 2 Teilen vor, mit den Längen j + k = Q(l), <strong>und</strong> zwar ist der<br />

l<strong>in</strong>ke Teil echt zufällig <strong>und</strong> der rechte von PBG generiert. Man vergleicht immer zwei benachbarte<br />

Typen von Folgen.<br />

Die Idee dazu ist, daß wenn ke<strong>in</strong> polynomialer Test (also auch ke<strong>in</strong> polynomialer Angreifer) die<br />

Pseudo-one-time-pads <strong>und</strong> die echten one-time-pads unterscheiden kann, es dann bzgl. polynomialer<br />

Angreifer auch ke<strong>in</strong>en Unterschied machen kann, ob man mit e<strong>in</strong>em Pseudo-one-time-pad oder e<strong>in</strong>em<br />

echten one-time-pad verschlüsselt.<br />

echt zufällig____<br />

Aj+1 = {r1 ... rj rj +1 b1 ... bk } ergibt Testergebnisse näher bei αQ(l) Aj = {r1 ... rj b0 b1 ... bk } ergibt Testergebnisse weiter weg, z.B. höher.<br />

von PBG generiert<br />

Obiges muß m<strong>in</strong>destens für e<strong>in</strong> j gelten, da A0 die PBG-Folgen s<strong>in</strong>d <strong>und</strong> AQ(l) die echten Zufallsfolgen<br />

Daraus konstruiert man e<strong>in</strong>en Prädiktor für die Bitfolge b1 ... bk folgendermaßen: Man wählt sich<br />

e<strong>in</strong>e echte Zufallsfolge r1 ... rj dazu <strong>und</strong> wendet zweimal den Test T an, nämlich<br />

T auf {r1 ... rj 0 b1 ... bk }: Nenne das Ergebnis α0 T auf {r1 ... rj 1 b1 ... bk }: Nenne das Ergebnis α1 Rate b0 = 0 mit Wahrsche<strong>in</strong>lichkeit 1/2 + 1/2 (α0 - α1 ).<br />

(Genauer: [BlBS_86 Seite 375f])<br />

3.4.3 Der s 2 -mod-n-Generator<br />

Forderungen an PBG<br />

„Stärkste“ Forderung: PBG besteht jeden probabilistischen Test T polynomialer Laufzeit.<br />

Dabei heißt „besteht“: Der Test kann Folgen, die der PBG erzeugt, nicht mit signifikanter<br />

Wahrsche<strong>in</strong>lichkeit von echten Zufallsbitfolgen unterscheiden.<br />

E<strong>in</strong> probabilistischer Test T polynomialer Laufzeit ist e<strong>in</strong> probabilistischer, polynomial<br />

zeitbeschränkter Algorithmus, der jeder E<strong>in</strong>gabe aus {0, 1} * (also e<strong>in</strong>er endlichen Folge, die er<br />

testen soll) e<strong>in</strong>e reelle Zahl aus [0, 1] zuordnet. (Der Wert hängt im allgeme<strong>in</strong>en von den<br />

Zufallsentscheidungen <strong>in</strong> T ab.)<br />

Die Gr<strong>und</strong>idee ist nun, daß nicht jede e<strong>in</strong>zelne Folge betrachtet wird (denn jede e<strong>in</strong>zelne endliche<br />

Folge kann ja mit gleicher Wahrsche<strong>in</strong>lichkeit von e<strong>in</strong>em echten Zufallsgenerator erzeugt werden,<br />

d.h. von der Zufälligkeit e<strong>in</strong>er e<strong>in</strong>zelnen Folge zu sprechen, ist für die Kryptographie s<strong>in</strong>nlos). Statt<br />

dessen vergleicht man den Durchschnittswert des Tests für die PBG-Folgen mit dem Durchschnittswert<br />

für echte Folgen. Wenn im Mittel bei beiden Sorten von Folgen dasselbe herauskommt,<br />

kann der Test nicht helfen, die PBG-Folgen von den echten Zufallsfolgen zu unterscheiden.<br />

Sei dazu<br />

• αm der durchschnittliche Wert, den T e<strong>in</strong>er echt zufälligen m-Bit-Folge zuordnet (d.h. der<br />

Erwartungswert bei Gleichverteilung über alle m-Bit-Folgen überhaupt), <strong>und</strong><br />

Der s2-mod-n-Generator ist e<strong>in</strong> bestimmter Pseudozufallsbitfolgengenerator, der mit Quadraten (<strong>und</strong><br />

der Schwierigkeit des Wurzelziehens bzw. des Entscheidens, ob etwas e<strong>in</strong> Quadrat ist) arbeitet.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!