This article explains zk-SNARKs that Vitalik believes will be as important as the blockchain in the next ten years

What are zk-SNARKs?

Original title: "Is zkSNARK: A Beginner-Friendly Explainer"

Written by: Contributor

Compilation: firefire

For a long time, the impossible triangle of the blockchain (that is, scalability, decentralization, and security) can only be the second of the three), so after Ethereum achieves a higher degree of security and privacy, expansion becomes top priority.

Therefore, Layer 2 came into being. Currently, in the Layer 2 expansion plan, ZK technology is considered by Vitalik Buterin (V God), the co-founder of Ethereum, to be the ultimate solution to the expansion problem.

On May 21, at the non-profit annual global Ethereum conference EDCON 2023 held in Montenegro, V God said that in the next 10 years, zk-SNARK with ZK as the underlying technology will be as important as the blockchain.

So what are the zk-SNARKs recently promoted by V God? What blockchain problems can be solved? Let's take a look at today's introduction.

The following is the text:

##01 What are zk-SNARKs?

**1. Who created zk-SNARKs? **

The term "zk-SNARKs" was coined by a group of cryptographers including Nir Bitansky, Alessandro Chiesa, and Eran Tromer, who initially published the rationale for zk-SNARKs in a paper. As a result, zk-SNARKs have been gradually developed and improved by many different projects and teams.

**2. What does zk-SNARK stand for? **

ZK: zero knowledge zero knowledge

Zero knowledge means that the person who is verifying the claim cannot gain any new information from the verification process. **In other words, in a zero-knowledge proof process, the verifier only knows whether the statement is true or false, and nothing else. **

S: Simplicity Concise

Succinct zk-SNARKs proofs are the shortest and easily verifiable proofs. **This is in contrast to regular zero-knowledge proofs, which can be very long and complex. Typically, zk-SNARK proofs can be verified in milliseconds.

N: non-interactive non-interactive

Non-interactive zk-SNARKs proofs do not require any interaction between the prover and verifier. ** This means that only one result message is sent from the prover to the verifier. **This is in contrast to interactive proofs, where the prover and verifier have to interact back and forth with each other to complete the proof.

AR: argument argument

An argument is a reason or set of reasons in support of a point of view. In the context of zk-SNARKs, an argument is a series of mathematical operations used to prove that a statement is true.

K: knowledge knowledge

Knowledge refers to the idea that the prover knows certain information needed to complete the proof. For example, this could be the account's private key.

**To sum up, zk-SNARKs is a ZK system (Zero-Knowledge Proof System) that allows a user ("prover") to prove something to another party ("verifier"), such as their identity, their ownership of funds, etc., without disclosing any information about those assets. **For example:

  • A user should be able to prove that he has sufficient balance in his account to purchase a product or service without sharing the exact amount he has;
  • User should be able to verify his identity before accessing the application without having to share his personal data.

Taking how to "explain zk-SNARKs to a 5-year-old child" as an example, here is a game to explain what zk-SNARKs are:

Imagine you're playing "Where's the Language Teacher?" with three friends, and the prize is a $1,000 bet to be split equally between the winners. You and your friends sit around a table, and everyone gets a picture of a Chinese teacher.

You must find the Chinese teacher in the picture, once you find the Chinese teacher you need to prove that you found him, but you can't reveal her location or any other information. In other words, you want to demonstrate knowledge of the facts without revealing anything beyond the validity of your claims.

Using zkSNARK, you can take a piece of paper of the same size and mark a point on the position of the Chinese teacher in the picture. The paper can then be hidden in a box, and once your friends solve the puzzle, they can see for themselves where the Chinese teacher you marked is.

In other words, zk-SNARKs allow you to prove the information you need to verify without revealing the exact value of that information. **In the current cross-chain ecosystem, the use of zk-SNARKs technology can maintain the privacy of blockchains and DApps built on its platform. **

In it, the key idea is that it is impossible for the verifier to obtain any information about the proof (hence the name "zero-knowledge" proof).

02zk-SNARKs operating principle

zk-SNARKs are especially important in the crypto space, where privacy becomes even more important because many blockchains are public in nature.

The most famous example is Zcash, which is a privacy cryptographic asset. When Zcash is traded on public chains such as Bitcoin and Ethereum, details such as sender and receiver addresses, and input and output values (i.e. how much was and was not spent) are used for verification.

But through zk-SNARKs, Zcash can prove that the transaction is valid without disclosing information such as address and value.

How Zcash uses zkSNARKS to provide a privacy layer for crypto users

Source: Blockchainhub.net

How do zk-SNARKs work? Digital signatures** make up how zk-SNARKs work**. Digital signatures use cryptographic algorithms to protect sensitive information from another party while providing that party with the necessary evidence requested.

So how exactly is it done? Proceed as follows:

  1. The prover first generates a pair of keys, a public key and a private key. He signs transactions with his private key.
  2. The prover then encodes this transaction into zk-SNARKs, which are mathematical proofs that the transaction is valid.
  3. The proof is sent to the verifier along with the public key. The verifier then uses the public key to check that the formula is correct without knowing anything else about the transaction. Since only a small amount of information is verified, this check can be done very quickly to confirm that the transaction is valid.

03 Specific use cases of zk-SNARKs

**1. Which Tokens use zk-SNARKs? **

SNARK encrypted Token is an encrypted asset that uses zk-SNARKs to improve privacy, also known as privacy Token. Examples of such privacy tokens are:

  • Zcash (ZEC)
  • Verges (XVG)
  • Monero (XMR)
  • Dash (DASH)
  • Beam (BEAM)
  • Horizen (ZEN)
  • Bytecoin (BCN)

The main challenge of zk-SNARKs is that if the private key is compromised, fake proofs can be created. This could allow creators of fake proofs to commit fraud, for example, creating and using fake privacy coins.

2. Other applications of zk-SNARKS

Filecoin is a decentralized storage provider, and its operation involves many aspects.

First, storage providers on the Filecoin network (provide storage space in exchange for block rewards), and "certifiers", must prove that they are correctly storing data on-chain.

On the other hand, we have "validators", i.e. nodes, who must verify that storage providers are properly storing and securing data. These verifiers must be satisfied with the attestations given by the storage provider.

**This requires storage providers and nodes to communicate as data changes hands. As you can imagine, this process will be resource intensive. **

The official Filecoin blog post explains: “The amount of data that a single storage provider must prove today in order to validate their storage is enormous and will only grow over time. The Filecoin network has a block time of 30 seconds .In order to keep time constant and enable a scalable approach, Filecoin needs a solution that allows fast, efficient and robust verification,”

With zk-SNARKs, the Filecoin network can improve its scalability and efficiency by reducing the time it takes for parties to verify storage.

For storage providers, zk-SNARKs reduce the amount of data they need to transfer to prove their storage, reducing operational costs.

3. zk-SNARKs can also be used for other things

For example:

  • **Authentication: **Authenticate user credentials without a password, no more documents such as passports, birth certificates to protect sensitive information like place and date of birth.
  • **Voting System: ** Voters’ identities can be verified without identification, even if the ballots are leaked, voters’ identities cannot be identified, thus protecting voters’ privacy.
  • Data Compression: This is an interesting use of zk-SNARKS and deserves its own section.

##04 Summary

Overall, zk-SNARKS has three key takeaways:

  1. zkSNARKS is a zero-knowledge proof system that allows one party to prove to another party that they know a value x without communicating any other information about x.
  2. The key idea is that it is impossible for a verifier to deduce any information about x just from the fact that the prover can prove that they know x. This protects the data privacy of the prover.
  3. Zero-knowledge proof systems are used in a variety of applications, including secure communications, cryptography, and privacy-preserving data analysis.

Although zero-knowledge proof systems are a relatively new field of research, there are still many open questions about their feasibility and practicality. However, they have been used to create some impressive products.

View Original
The content is for reference only, not a solicitation or offer. No investment, tax, or legal advice provided. See Disclaimer for more risks disclosure.
  • Reward
  • Comment
  • Share
Comment
0/400
No comments