ZK SNARK

Wiki Powered byIconIQ
ZK SNARK

We've just announced IQ AI.

Check it out

ZK SNARK

ZK SNARK is a privacy-centric proof system that verifies on-chain transactions. It is primarily used in three main areas: scalability solutions, private transactions, and identity protection. [1][2]

ZK SNARK, which stands for "zero-knowledge succinct non-interactive argument of knowledge," is a type of zero-knowledge proof (ZKP) that allows one party (the prover) to prove to another (the verifier) that a certain statement is true without revealing transaction information and without any interaction between the two parties. It is a way for transactions to be private and fully encrypted on a while still being validated using the network's consensus rules. [1][2]

Overview

ZK SNARK is a variant of zero-knowledge proofs (ZKPs). ZKPs emulate zero knowledge, a property of proof systems that verify on-chain interactions without revealing related information. Proof systems are cryptographic auditors that certify that an interaction took place and validate the transaction output correctness. [1]

ZK SNARK requires two parties—the prover and the verifier—to be available and interact repeatedly. The prover passes secret information to a special algorithm to compute a ZKP, and the proof is sent to the verifier to check that the prover knows the secret information using another algorithm. ZK SNARK is mostly used in networks to minimize the scalability problems that are often experienced. [1][3]

History

A succinct non-interactive argument of knowledge (SNARK), which provides a means for non-interactive delegation of computation, was introduced in 2012 by Ran Canetti, Alessandro Chiesa, and Eran Tromer. The authors described that SNARKs construct zero-knowledge (ZK) SNARKs in the common reference string (CRS) model. When ZK SNARK, a zero-knowledge proof (ZKP) protocol, is added to distributed ledger solutions, scalability and privacy are enhanced. Zero-knowledge proofs (ZKPs), first introduced in 1985 by Shafi Goldwasser, , and Charles Rackoff, allow one party to only show that they have a piece of information without revealing the information or any additional information. [2][4][5]

The first application to use ZK SNARK technology is Zcash. Zcash, a privacy-focused based on 's codebase, uses ZK SNARK to create shielded transactions in which the sender, recipient, and amount are kept private. By utilizing ZK SNARK, shielded transactions in Zcash can be fully encrypted on the yet still verified as valid under the network's consensus rules. [5][6]

The concept of ZK SNARK

ZK SNARK stands for "zero-knowledge succinct non-interactive argument of knowledge." In understanding the core logic, there are five concepts involved: [1][3]

Zero-knowledge

Zero-knowledge ensures that only the statement validity is revealed and no other information is provided. [1]

Succinct arguments

This refers to ZKP compactness and verification speed. Since ZKPs are small and require minimal computational power to verify, they can be verified within a few milliseconds. [1][2]

Non-interactive

Non-interactive proof reduces communication between the prover and the verifier, making the proof system more efficient and practical. [1][3]

Argument

In ZK SNARKS, an argument is a series of mathematical operations to prove the truth of a statement. [7]

(of) knowledge

It is the information processed by the prover to generate the proof that is never revealed to the verifier. The argument of knowledge is a cryptographic declaration entailing that the prover has specific information. It may be impossible for a prover to compute a valid ZKP when there is no information. [1][3][8]

Utility

Scalability solutions

ZK SNARK acts as a proof aggregator because it compiles a single proof for multiple transactions present in a batch. This single proof helps reduce storage and congestion on the, which leads to faster transaction throughput and reduced transaction fees. Furthermore, the ZK SNARK proof is succinct, making it easy to quickly verify the correctness of all transactions. Some projects utilizing ZK SNARK's technology to solve’s scalability issues are zkSync and Hermez. [1]

Private transactions

Masking personal details such as the sender and receiver’s addresses and the value of the transaction is a way ZK SNARK facilitates private transactions on the . With on-chain private transactions, traditional money systems are freed from financial surveillance, and institutions can use ZK-SNARK-powered networks to do secure and private business. Some projects utilizing ZK SNARK for privacy are Zcash and . [1]

Identity protection

ZK SNARK enhances personal data privacy and security while curbing identity theft risks. It helps users prove the authenticity of their identity or credentials without revealing personal information. With ZK SNARK, trustless authentication is possible, eliminating the need for service providers to store users' credentials. An example of a project utilizing ZK SNARK identity protection is ZKCreds. [1]

See something wrong?

Edited By

Profile picture of Anonymous uservzbrv

Edited On

August 26, 2023

REFERENCES

[1]

Third Web blog

Aug 12, 2023

[2]

The Motley Fool

Aug 12, 2023

[3]

Ethereum website

Aug 12, 2023

[4]

The paper where zk SNARK was published

Aug 12, 2023

[5]

Chain Link blog

Aug 12, 2023

[6]

Zcash website

Aug 12, 2023

[7]

Golden website

Aug 12, 2023

[8]

Bitso Support

Aug 12, 2023