Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Diplomarbeit zu "`Zero-Knowledge Arguments"' - Telle-Online.de
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
7 Berechenbare Zero–<strong>Knowledge</strong> Arguments mit konstanter Run<strong>de</strong>nzahl<br />
Schritt V3: (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 dieses nicht-uniformen Generator Protokolls ist<br />
das Tripel τ = (h, w, r).<br />
Nun wird die Sprache Λ <strong>de</strong>finiert. Sei τ = (h, w, r). Dann gilt τ ∈ Λ, wenn ein<br />
Programm Π existiert, so dass w = Com(h(Π)) gilt und Π(w) eine Ausgabe r innerhalb<br />
log log |r|<br />
log log n<br />
von |r| 5 Schritten erzeugt. Dieses kann in Ntime(n 5 ) verifiziert wer<strong>de</strong>n. Ein<br />
Zeugnis für (h, w, r) ∈ Λ ist ein Tupel (Π, s), so dass w = Com(Π, s) gilt und Π(w) eine<br />
log log |r|<br />
Ausgabe r innerhalb von |r| 5 erzeugt.<br />
Anmerkung: Es kann sein, dass Λ einfach <strong>zu</strong> entschei<strong>de</strong>n ist (tatsächlich könnte<br />
Λ = {0, 1} ∗ sein), aber die Korrektheitsbedingung von Definition 7.6 verlangt lediglich,<br />
dass es unmöglich ist, ein Zeugnis dafür <strong>zu</strong> fin<strong>de</strong>n.<br />
Satz 7.6<br />
Protokoll 7.7 ist ein nicht-uniformes Generator Protokoll in Be<strong>zu</strong>g auf eine Sprache Λ<br />
(entsprechend Definition 7.6).<br />
Beweis:<br />
Zum Beweis, dass Protokoll 7.7 die Definition 7.6 erfüllt, müssen zwei Eigenschaften<br />
erfüllt sein: Die berechenbare Korrektheit und die nicht-uniforme Simulation.<br />
Berechenbare Korrektheit: Sei P ∗ eine n O(log log n) große Strategie für Protokoll 7.7<br />
und bezeichne τ das Kommunikationsprotkoll <strong>de</strong>r Ausführung von P ∗ mit <strong>de</strong>m ehrlichen<br />
Verifier. Dann ist die Wahrscheinlichkeit vernachlässigbar klein, dass P ∗ ein Zeugnis für<br />
τ ∈ Λ auf sein Hilfsband schreibt.<br />
An<strong>de</strong>rnfalls sei angenommen, dass P ∗ ein Zeugnis mit nicht vernachlässigbarer Wahrscheinlichkeit<br />
ε habe. Dann gilt für min<strong>de</strong>stens einen ε<br />
2 Teil von h ∈R Hn, dass P ∗ mit<br />
einer Wahrscheinlichkeit von min<strong>de</strong>stens ε ein Zeugnis für das Kommunikationsprotokoll,<br />
2<br />
welches mit h beginnt, besitzt. Sei ein <strong>de</strong>rartiges h ∈ Hn fest. O.B.d.A. sei angenommen,<br />
dass P ∗ <strong>de</strong>terministisch sei. Dann ist die Nachricht w, welches die Antwort auf h<br />
ist, ebenfalls fest. Mit dieser Annahme und <strong>de</strong>r Wahl von r ∈R {0, 1} n ist <strong>de</strong>r Prover<br />
mit einer Wahrscheinlichkeit von ε in <strong>de</strong>r Lage, ein Programm Π aus<strong>zu</strong>geben (innerhalb<br />
2<br />
log log |r|<br />
von |r| 5 Schritten), so dass w ein Commitment von h(Π) und Π(w) = r ist. Das<br />
be<strong>de</strong>utet, dass bei einer unabhängigen Wahl von r ∈R {0, 1} n und r ′ ∈R {0, 1} n mit einer<br />
Wahrscheinlichkeit von ε2<br />
4 zwei Programme Π, Π′ erlangt wer<strong>de</strong>n, so dass w ein Commitment<br />
sowohl <strong>zu</strong> h(Π) als auch <strong>zu</strong> h(Π ′ ) ist und dass Π(w) = r und Π ′ (w) = r ′ gilt. Da<br />
w ein statistisch ein<strong>de</strong>utiges Commitment–Scheme ist, folgt daraus h(Π) = h(Π ′ ). Da<br />
r = r ′ angenommen wer<strong>de</strong>n kann (mit einer Wahrscheinlichkeit von 1−2−n ), folgt daraus<br />
Π(w) = Π ′ (w) und damit, dass Π und Π ′ unterschiedliche Programme sind. Das be<strong>de</strong>utet<br />
aber, dass Π und Π ′ Kollisionen für h sind. Damit existiert ein nO(log log n) großer<br />
94