Equation
I claim that I know the solutions and they are
How do I prove that I know the solutions without revealing them? A zero-knowledge proof!
Translate the equation to a circuit
\(x\)
\(\ast\)
\(\ast\)
\(-23\)
\(\ast\)
\(\ast\)
\(142\)
\(+\)
\(+\)
\(120\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(a_2\)
\(a_1\)
\(a_0\)
\(c_3\)
\(c_5\)
\(c_4\)
\(c_6\)
\(c_7\)
\(c_8\)
\(a_9\)
\(a_3\)
\(a_5\)
\(a_4\)
\(a_6\)
\(a_7\)
\(a_8\)
\(b_8\)
\(b_7\)
\(b_4\)
\(b_6\)
\(b_5\)
\(b_3\)
\(x\)
\(\ast\)
\(\ast\)
\(-23\)
\(\ast\)
\(\ast\)
\(142\)
\(+\)
\(+\)
\(120\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(a_2\)
\(a_1\)
\(a_0\)
\(c_3\)
\(c_5\)
\(c_4\)
\(c_6\)
\(c_7\)
\(c_8\)
\(a_9\)
\(a_3\)
\(a_5\)
\(a_4\)
\(a_6\)
\(a_7\)
\(a_8\)
\(b_8\)
\(b_7\)
\(b_4\)
\(b_6\)
\(b_5\)
\(b_3\)
For \(i\)-th gate where \(i \in \{0, 1, \dots, 9\}\), we can write
\(x\)
\(\ast\)
\(\ast\)
\(-23\)
\(\ast\)
\(\ast\)
\(142\)
\(+\)
\(+\)
\(120\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(a_2\)
\(a_1\)
\(a_0\)
\(c_3\)
\(c_5\)
\(c_4\)
\(c_6\)
\(c_7\)
\(c_8\)
\(a_9\)
\(a_3\)
\(a_5\)
\(a_4\)
\(a_6\)
\(a_7\)
\(a_8\)
\(b_8\)
\(b_7\)
\(b_4\)
\(b_6\)
\(b_5\)
\(b_3\)
A constant-gate for \(i = 0,\) set \(Q_{L_i} = 1, \ Q_{C_i} = -142\)
\(x\)
\(\ast\)
\(\ast\)
\(-23\)
\(\ast\)
\(\ast\)
\(142\)
\(+\)
\(+\)
\(120\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(a_2\)
\(a_1\)
\(a_0\)
\(c_3\)
\(c_5\)
\(c_4\)
\(c_6\)
\(c_7\)
\(c_8\)
\(a_9\)
\(a_3\)
\(a_5\)
\(a_4\)
\(a_6\)
\(a_7\)
\(a_8\)
\(b_8\)
\(b_7\)
\(b_4\)
\(b_6\)
\(b_5\)
\(b_3\)
A multiplication-gate for \(i =5,\) set \(Q_{O_i} = -1, \ Q_{M_i} = 1\)
\(x\)
\(\ast\)
\(\ast\)
\(-23\)
\(\ast\)
\(\ast\)
\(142\)
\(+\)
\(+\)
\(120\)
\(0\)
\(1\)
\(2\)
\(3\)
\(4\)
\(5\)
\(6\)
\(7\)
\(8\)
\(9\)
\(a_2\)
\(a_1\)
\(a_0\)
\(c_3\)
\(c_5\)
\(c_4\)
\(c_6\)
\(c_7\)
\(c_8\)
\(a_9\)
\(a_3\)
\(a_5\)
\(a_4\)
\(a_6\)
\(a_7\)
\(a_8\)
\(b_8\)
\(b_7\)
\(b_4\)
\(b_6\)
\(b_5\)
\(b_3\)
An addition-gate for \(i = 8\)
\(Q_L\)
\(Q_L\)
\(\cdot \ a\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(\cdot \ b\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(\cdot \ b\)
\(Q_O\)
\(\cdot \ c\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(\cdot \ b\)
\(Q_O\)
\(\cdot \ c\)
\(Q_M \cdot ab\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(\cdot \ b\)
\(Q_O\)
\(\cdot \ c\)
\(Q_M \cdot ab\)
\(Q_C\)
\(+\)
\(+\)
\(+\)
\(+\)
\(=\)
\(0\)
\(Q_L\)
\(\cdot \ a\)
\(Q_R\)
\(\cdot \ b\)
\(Q_O\)
\(\cdot \ c\)
\(Q_M \cdot ab\)
\(Q_C\)
\(+\)
\(+\)
\(+\)
\(+\)
\(=\)
\(0\)
Selector polynomials
Wire polynomials
\(Q_C(X)\)
Coke from Bottle
Coke from Can
Victor
Peter
\(x\)
\(V\)
\(P\)
Coke from Can
Victor
Peter
Guess?
Bottle!
Coke from Bottle
Coke from Can
Victor
Peter
Try again!
Coke from Bottle
Victor
Peter
Can!
If \(P\) actually knows the taste, \( \Pr[ \langle P,V \rangle(x) = 1 ]\) = 1
If \(P\)'s claim is wrong, \( \Pr[ \langle P,V \rangle(x) = 1 ] = \left(\frac{1}{2}\right)^2 \)
\(\implies\) Completeness!
\(\implies\) Soundness!
Reveal!
Reveal!
On repeating the experiment a number of times,
\(\text{Completeness,}\)
\(\text{Soundness,}\)
\(\text{Zero-Knowledge!}\)