I am wondering if the Ethereum Virtual Machine can verify a proof generated from a certain statement? Are there any precompiled contracts for verifying a proof?


Yes! There is a project called Zokrates, it allows you to create the algebraic circuit necessary for your proof and creates the smart contract that verifies it. You can find the toolbox you can get Zokrates in github.

Also, there is a nice tutorial for this here

hope this helps.

  • Does it support RSA Signing algorithm? – Mohamed Mar 28 '19 at 15:55
  • Could you add some explanation regarding the common reference string, and more specifically, the elements required for verification? I guess that's too much information to be saved on the blockchain – Snoop Catt Apr 29 '19 at 6:15

ZoKrates is a very good toolbox for zkSNARKs on Ethereum. It helps you use verifiable computation in your DApp, from the specification of your program in a high level language to generating proofs of computation to verifying those proofs in Solidity. In addition to Zokrates, now we have a set of interesting and useful tools for generating ZK-SNARK programs, arithmetic circuits and verification contracts.

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.