Pedersen Proof
protocol for proving that Pedersen commitment c was constructed correctly which is the same as proof of knowledge of (m,r) such that c = mG + rH.
witness: (m,r)
statement: c
The Relation R outputs 1 if c = mG + rH.
G is the generator point, H is another generator point of elliptic curves.
The protocol:
- Prover chooses \( A_1 = s_1*G , A_2 = s_2*H \) for random \( s_1,s_2 \)
- Prover calculates challenge \( e = Hash(G,H,c,A_1,A_2) \)
- Prover calculates \( z_1 = s_1 + em, z_2 = s_2 + er \)
- Prover sends \( proof = {e, A_1,A_2,c, z_1,z_2} \)
- Verifier checks that \( z_1*G + z_2*H = A_1 + A_2 + ec \)
The correctless proof
- \( lhs= z_1G + z_2H = (s_1+em)G + (s_2+er)H \)
- \( rhs= A_1+A_2+ec = s_1G + s_2H + e(mG+rH) \)
- check if lhs==rhs