Skip to content
Kriptofoni
Crypto GlossaryBlockchain & Technology

What Is zk-SNARK?

Also known as: zkSNARK, SNARK, Succinct Non-Interactive Argument of Knowledge

In short

A zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) is a type of zero-knowledge proof that shows a statement is true with a single-message, very short proof and without revealing additional information. It is used in Zcash and many ZK-Rollups.

Each word in the name describes a property. Zero-knowledge means that the verifier learns nothing beyond the truth of the statement; succinct means that the size of the proof and the verification time stay small no matter how large the computation being proven; and non-interactive means that a single proof is enough, without back-and-forth messaging between the prover and the verifier. These properties make it possible for a smart contract to verify the proof at low cost.

The first major blockchain application of zk-SNARKs was Zcash, which began in 2016; the validity of the transaction is proven while the sender, recipient and amount stay hidden. Today, ZK-Rollups, privacy protocols and identity solutions also use SNARK-based proof systems. Groth16 and PLONK are common proof systems of this family.

Many zk-SNARK systems require an initial ceremony called a trusted setup. If the secret values generated in this ceremony are not destroyed, it may be possible to produce fake proofs; for this reason, ceremonies are held with many participants, where it is enough for at least one to be honest. In addition, because most common SNARKs rely on elliptic curve cryptography, they are not considered resistant to future quantum computers.

Last updated: · This content is for information purposes only and is not investment advice.

Related terms