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 />
Schritt P1: (Erzeugung eines wahllosen Commitments) Der Prover berechnet<br />
w ∈R Com(0 3n ) 31 und sen<strong>de</strong>t w an <strong>de</strong>n Verifier.<br />
Schritt V2: (Versen<strong>de</strong>n einer Zufallszeichenkette) Der Verifier wählt eine Zeichenkette<br />
r ∈R {0, 1} n und sen<strong>de</strong>t diese.<br />
Das Kommunikationsprotokoll diese uniformen Generator Protokoll ist das<br />
Tupel τ = (w, r).<br />
Es erfolgt jetzt die Spezifikation <strong>de</strong>r Sprache Λ. Es sei nochmal darauf hingewiesen,<br />
dass für eine Zeichenkette y die Funktion Com −1 (y) das ein<strong>de</strong>utige x <strong>de</strong>rart bezeichnet,<br />
für dass das y das Commitment für x o<strong>de</strong>r für 0 3n ist, falls es kein entsprechen<strong>de</strong>s x gibt.<br />
Das heißt x = Com −1 (y), falls es ein s gibt, so dass Com(x, s) = y gilt. Die Entscheidung,<br />
ob x = Com −1 (y) gilt, erfolgt dabei in N P.<br />
Λ wird nun wie folgt <strong>de</strong>finiert: Seien τ = (w, r) und Π = Com −1 (w). Dann ist τ ∈ Λ,<br />
wenn die Turing Maschine, die durch Π beschrieben wird, und w als Eingabe erhält, ein<br />
log log |r|<br />
r innerhalb von |r| 5 Schritten ausgibt. 32<br />
Es ist offensichtlich, dass Λ ∈ Ntime(n log log n ) gilt. Nicht<strong>de</strong>terministisch ist es mög-<br />
lich, Π = Com −1 (w) <strong>zu</strong> erhalten, womit dann genug Zeit vorhan<strong>de</strong>n ist, die Turing<br />
log log n<br />
Maschine, die durch Π beschrieben wird, in n 5 Schritten <strong>zu</strong> simulieren.<br />
Damit kann nun <strong>de</strong>r folgen<strong>de</strong> Satz beschrieben wer<strong>de</strong>n.<br />
Satz 7.4<br />
Protokoll 7.3 ist ein uniformes Generator Protokoll (gemäß Definition 7.5).<br />
Beweis:<br />
Um Satz 7.4 <strong>zu</strong> beweisen, müssen die Korrektheitseigenschaft und die uniforme Simulierbarkeit<br />
<strong>de</strong>s Protokolls 7.3 bewiesen wer<strong>de</strong>n.<br />
Lemma 7.1<br />
Sei P ∗ ein beliebiger (möglicherweise täuschen<strong>de</strong>r) Prover für das Protokoll 7.3 und<br />
bezeichne τ das Kommunikationsprotokoll von P ∗ ’s Ausführung mit einem ehrlichen<br />
Verifier. Dann ist Pr[τ ∈ Λ] ≤ 2 −n .<br />
Beweis:<br />
Für je<strong>de</strong> erste Nachricht w <strong>de</strong>s Provers sei Πw = Com −1 (w) und sei f(w) die Ausgabe<br />
<strong>de</strong>r von Πw beschriebenen Turing Maschine bei Eingabe von w nach n<br />
log log n<br />
5 Schritten,<br />
wenn die Maschine hält, und 0 n sonst. Für je<strong>de</strong> Zeichenkette w beträgt die Wahrscheinlichkeit,<br />
dass ein <strong>zu</strong>fälliges r ∈R {0, 1} n equivalent <strong>zu</strong> f(w) ist, höchstens 2 −n . Daher<br />
31 Com bezeichnet das statistisch ein<strong>de</strong>utige Bit–Commitment–Scheme aus Definition 7.1, Seite 75<br />
32 Es wird nochmals darauf hingewiesen, dass |r| log log |r|<br />
5 willkürlich gewählt wur<strong>de</strong>. Es ist lediglich<br />
sicher<strong>zu</strong>stellen, dass Λ in Ntime(n log log n ) liegt.<br />
85