Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
7 Berechenbare Zero–<strong>Knowledge</strong> Arguments mit konstanter Run<strong>de</strong>nzahl<br />
2. S(V ∗ , x1, . . . , xn)<br />
Das hier vorgestellte Protokoll ist ein FLS’ Protokoll und benutzt ein nicht-uniformes<br />
Generator Protokoll, welches <strong>de</strong>m von Protokoll 7.7 ähnelt. Tatsächlich ist <strong>de</strong>r einzige<br />
Unterschied zwischen <strong>de</strong>n Generator Protokollen <strong>de</strong>s Protokolls aus diesem Abschnitt<br />
und <strong>de</strong>s Protokolls 7.7, dass eine längere Zeichenkette r als Nachricht <strong>de</strong>s Verifiers<br />
(Schritt V2) benutzt wird. Das heißt, dass r ∈R {0, 1} n4 statt r ∈R {0, 1} n benutzt<br />
wird. 35 Protokoll 7.9 ist das modifizeirte Generator Protokoll.<br />
Protokoll 7.9 (Nicht-Uniformes Generator Protokoll)<br />
(für beschränkt simultanes Zero–<strong>Knowledge</strong>)<br />
Gemeinsame Eingabe:<br />
1 n : Sicherheitsparameter<br />
Schritt V1: (Auswahl einer Hashfunktion) Der Verifier wählt eine <strong>zu</strong>fällige<br />
Hashfunktion h ∈R Hn und sen<strong>de</strong>t h <strong>de</strong>m Prover.<br />
Schritt P2: (Erzeugung eines wahllosen Commitments eines Hashes) Der Prover<br />
berechnet ein <strong>zu</strong>fälliges w ∈R Com(h(0 3n )) und sen<strong>de</strong>t w an <strong>de</strong>n Verifier.<br />
Schritt V3: (Versen<strong>de</strong>n einer langen Zufallszeichenkette) Der Verifier wählt eine<br />
Zeichenkette r ∈R {0, 1} n4 und sen<strong>de</strong>t diese.<br />
Das Kommunikationsprotokoll dieses nicht-uniformen Generator Protokolls ist<br />
das Tripel τ = (h, w, r).<br />
Darüber hinaus wird auch die Definition <strong>de</strong>r Sprache Λ verän<strong>de</strong>rt. Sei τ = (h, w, r).<br />
Dann gilt τ ∈ Λ, wenn ein Programm Π existiert, so dass w = Com(h(Π)) gilt und eine<br />
Zeichenkette y existiert mit |y| ≤ |r|<br />
2<br />
log log |r|<br />
und Π(w, y) eine Ausgabe r innerhalb von |r| 5<br />
log log n<br />
5 ) verifiziert wer<strong>de</strong>n. Ein Zeugnis für<br />
Schritten erzeugt. Dieses kann in Ntime(n<br />
(h, w, r) ∈ Λ ist ein Tripel (Π, s, y), so dass w = Com(Π, s) und |y| ≤ |r|<br />
gilt sowie<br />
2<br />
log log |r|<br />
Π(w, y) eine Ausgabe r innerhalb von |r| 5 erzeugt. Das be<strong>de</strong>utet, dass die Sprache<br />
so verän<strong>de</strong>rt wird, dass das verschlüsselte Programm Π, welches r ausgibt, nicht nur<br />
das w als Eingabe erhält son<strong>de</strong>rn darüber hinaus eine <strong>zu</strong>sätzliche Eingabe y bekommen<br />
kann, solange diese nicht <strong>zu</strong> lang ist (genauer nicht länger als |y| ≤ |r|<br />
2 ).<br />
Das modifizierte Protokoll ist weiterhin ein nicht-uniformes Generator Protokoll, wie<br />
folgen<strong>de</strong>r Satz zeigt:<br />
Satz 7.7<br />
Protokoll 7.9 ist ein nicht-uniformes Generator Protokoll in Be<strong>zu</strong>g auf Λ.<br />
35 Der Wert n 4 ist ebenfalls ein bisschen willkürlich. Es wur<strong>de</strong> nicht versucht, die Relation zwischen <strong>de</strong>r<br />
Kommunikationskomplexität und <strong>de</strong>r Anzahl <strong>de</strong>r simultanen Sit<strong>zu</strong>ngen <strong>zu</strong> optimieren.<br />
97