| Publish date: 04/09/2018 (Last updated: April 09, 2018 11:26 AM)
Share

What are zkSNARKs?

zkSNARK, which stands for “Zero-knowledge Succinct Non-interactive Argument of
Knowledge”, is a protocol that allows one party to demonstrate, or prove, to a different party that
given a statement is true, without having to communicate anything other than the fact that the
statement is indeed true.

zkSNARKs are a variant of zero-knowledge proofs, where no interaction is required between prover and verifier.

Zero-knowledge proofs must have these characteristics to function correctly:

  1. Complete: If the given statement is true, an honest prover will be able to convince an
    honest verifier of the validity of the statement.
  2. Sound: If the proving party is dishonest, he or she cannot convince the verifier that the
    statement is sound by lying.
  3. Zero-knowledge: If the given statement is true, the verifier will be able to tell that the
    statement is indeed true, but still have no knowledge of what the statement actually is.

zkSNARKs are “succinct”, meaning that the zero-knowledge proofs are verifiable within
milliseconds. This is because the proof length only needs to be a few hundred bytes, even for
statements about programs or systems that are by nature very large. In addition, zkSNARKs are
“non-interactive”, meaning that the proof is just a single message sent from the prover to the
verifier.

What are zkSNARKs Used For?

  1. To verify any relation with having to disclose in puts or leak private information.
  2. As the backbone of the Zcash blockchain; they let users make shielded, private
    transactions. zkSNARKs play a vital role in decentralized anonymous payment schemes,
    which let users pay each other directly and privately.
  3. As a building block to help scale the Ethereum blockchain. In this case, zkSNARKs will
    be used to create a verification algorithm that will trigger on-chain activity, though the
    generator is run off-chain.
Share

Related Posts

Utility Token Definition
Utility tokens enable a user to purchase future access…
Bitcoin ETF Definition
What is Bitcoin ETF? A Bitcoin Exchange-Traded Fund (ETF)…
Decentralized Application Definition
What is dApp? A decentralized app (dApp) is a…