The acronym zk-SNARK stands for “Zero-Knowledge Succinct Non-Interactive Argument of Knowledge” and refers to a zero-knowledge proof construction. In a zero-knowledge proof construction, one can prove possession of certain information without revealing that information, and without any interaction between the prover and verifier.
The basis of a zk-SNARK relies on the theory of a zero-knowledge proof and the three conditions that must be satisfied: completeness, soundness, and zero-knowledge. Completeness is that if the statement is true, an honest prover will be convinced of this truth by that honest verifier. Soundness requires that if the statement is false, the honest verifier cannot be persuaded by any cheating prover that it is true except with a tiny probability. Zero-knowledge requires that if the statement is true, no verifier knows anything other than that the declaration is true. Once all three of these conditions are met, the prover can validate a statement made by a second party.
For a more in-depth look into zk-SNARKs and how they are generated, click here.