In the paper "Simulation-Sound NIZK Proofs for a Practical Language and Constant Size Group Signatures" from Groth, the section 6 describes a NIZK proof for pairing product equations.

I only know the basics in the domain of zero knowledge proofs and I saw some basic algorithm. What I would like to know is if there is a way to implement the prover and verifier algorithm ? By using some already existing implmentation like the Schnorr one or another one that I could adapt ?

In summary, I would like to know if there are ways to implement the algorithms shown in the paper. Or is it just a theoretical state at the moment?

  • $\begingroup$ It is definitely implementable. It only uses conventional primitives. $\endgroup$ – Changyu Dong Jul 26 '18 at 14:33
  • $\begingroup$ libsnark on github? $\endgroup$ – Vadym Fedyukovych Jul 27 '18 at 11:28

I have read some part of above paper, definitely you can find implementations of such prover and verifier algorithms, even more complicated ones. For example, you can find implementations of prover and verifier in several zero-knowledge proofs in Libsnrak library.

By the way, you can also find implementation of Groth-Maller simulation-extractable zk-SNARK from Crypto 2017 in Libsnark that considers quite similar concept to the paper that you have mentioned.

I would also recommend to look at implementation of Pinocchio, a practical verifiable computation system, that has implementation of a prover and a verifier in a zero-knowledge SNARK that are particular type of none-interactive zero-knowledge proofs.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.