# ZK-SNARKs

### ZK-SNARKs

ZK-SNARK stands for **Zero-Knowledge Succinct Non-Interactive Argument of Knowledge**. The ZK-SNARK protocol is characterized by the following attributes:

* **Zero-knowledge:** A verifier can authenticate a statement's validity without gaining any insight into the statement itself. The sole understanding the verifier obtains pertains to whether the statement holds true or false.
* **Succinct:** The zero-knowledge proof occupies a smaller size compared to the underlying witness and can be swiftly verified.
* **Non-interactive:** The proof is categorized as 'non-interactive' since the prover and verifier partake in a single interaction, in contrast to interactive proofs necessitating multiple communication rounds.
* **Argument:** The proof adheres to the 'soundness' criterion, considerably diminishing the likelihood of fraudulent behavior.
* **(Of) Knowledge:** Constructing the zero-knowledge proof necessitates access to confidential data (witness). It remains arduous, if not infeasible, for a prover lacking the witness to generate a valid zero-knowledge proof.

Trusted setups necessitate users to place trust in the entities engaged in parameter generation. Nevertheless, the advancement of ZK-STARKs has facilitated the establishment of proving protocols that function without relying on a trusted setup.

Learn more about [ZK-SNARKs](https://eprint.iacr.org/2011/443.pdf).

***
