Zero Knowledge

Common input $x\in L$

Completeness:

$\forall x \in L, Pr\{p ↔ V \rm makes V accept\} > \dfrac{2}{3}$ (some random constant)

Soundness:

$\forall x \in L, \forall P^, Pr\{p^ ↔ \rm V makes V accept\} < 1/3$ (random constant < 2/3)

Probability is over V’s coin flips

$V\in \rm PPT$ (probabilistic polytime)

Zero Knowledge Interactive Proof

$\forall x \in L, \forall V^\in \mathrm{PPT}, \exists \mathrm{expected\,polytime\, simulator}\, S\,s.t. [S_{V^}(x)] = [P \leftrightarrow V^*(x)]$

With probability $(1-\dfrac{1}{2^k})$ runs in 2 steps

With probability $\dfrac{1}{2^k}$, runs in $2^k$ steps

(This is actually polytime since the cost is amortized)

Example Protocol

(Graph isomorphism)

$P, V$

V: Chooses some new $\pi$ and $b$. Computes $H \leftarrow \pi(G_b)$.

H: Receives $H$. Calculates some $b’$. Sends over new permutation $\pi’$.

Repeat this $k$ times; accept if exists at least one $b\neq b’$.