I am not exactly sure what is the difference between zk-SNARK and NIZK? Are NIZK not succinct? If so, why Pinocchio protocol considered itself a NIZK although they have succinct proof?

I tried Google but couldn't find the exact difference.


A ZK-SNARK is a NIZK (more precisely, a non-interactive zero-knowledge argument of knowledge in the common reference string model) which is succinct, meaning that both the proof size and the verification time grow sublinearly with the witness size.

Therefore, every ZK-SNARK is in particular a NIZK (but not all NIZKs are ZK-SNARKs).

Pinocchio provide a ZK-SNARK (using their general scheme that targets arbitrary NP computation), which is therefore also a NIZK.


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.