Non-interactive zero-knowledge proof

The key advantage of non-interactive zero-knowledge proofs is that they can be used in situations where there is no possibility of interaction between the prover and verifier, such as in online transactions where the two parties are not able to communicate in real time.

This makes non-interactive zero-knowledge proofs particularly useful in decentralized systems like blockchains, where transactions are verified by a network of nodes and there is no central authority to oversee the verification process.

[1] Blum, Feldman, and Micali[2] showed in 1988 that a common reference string shared between the prover and the verifier is sufficient to achieve computational zero-knowledge without requiring interaction.

Goldreich and Oren[3] gave impossibility results[clarification needed] for one shot zero-knowledge protocols in the standard model.

[citation needed] In 2012, Alessandro Chiesa et al developed the zk-SNARK protocol, an acronym for zero-knowledge succinct non-interactive argument of knowledge.

[14] Unlike the first generation of zk-SNARKs, zk-STARKs, by default, do not require a trusted setup, which makes them particularly useful for decentralized applications like blockchains.

[17] A list of zero-knowledge proof protocols and libraries is provided below along with comparisons based on transparency, universality, and plausible post-quantum security.

Using different commitment schemes, this idea was used to build zero-knowledge proof systems under the sub-group hiding[38] and under the decisional linear assumption.

The size of the common reference string and the proofs is relatively small; however, transforming a statement into a boolean circuit incurs considerable overhead.

A comparison of the most widely used proof systems [ citation needed ]