How often have you spent precious minutes trying to transact on Ethereum or spent a lot of gas ($) when there was too much traffic? But fear not. There is a solution to the slow transactions and high gas cost, introducing zero-knowledge proofs (ZKP).

History

The concept of ZKP is a fascinating application of cryptography that allows one party to prove to another party that a statement is true without revealing any additional information beyond the validity of the statement itself.

The first paper introducing the concept of ZKP was published in 1985 by Shafi Goldwasser and Silvio Micali of the Massachusetts Institute of Technology (MIT). Their article "Probabilistic Encryption" demonstrated that it was possible to prove specific properties of a number without revealing the number itself or any additional information about it. This groundbreaking finding paved the way for developing ZKPs as a critical tool in modern cryptography.

How it works (ELI5)

Concept: provers and verifiers

In zero-knowledge proofs, the fundamental roles are the provers and verifiers. The provers aim to convince the verifiers that they possess knowledge of a particular secret, without revealing the secret itself. The verifiers, in turn, attempt to verify the provers' claims without learning the secret. This is done by asking provers to perform tasks that can only be completed if they possess the secret. The simplest way to prove that you know something without giving it away can be shown with the often-used “Where’s Waldo?” example.

You and a friend want to find Waldo. You know where Waldo is in the image, but your friend doesn’t believe you. How do you prove to your friend that you know where Waldo is without giving away his location?

You take a massive piece of paper to cover up the entire image, showing your friend the image of Waldo through a cutout. You can prove that you know Waldo's location, yet your friend will not gain knowledge of where Waldo is since the exact coordinates of Waldo relative to the image would still be unknown to him.

This is a simple analogy of a ZKP. Anyone seeing Waldo through the hole has proof that Waldo exists, and that the prover knows where he is, without giving away any other information.

ZKPs in Blockchain

While blockchain has brought us great advantages like transparency, immutability, and decentralization, current public blockchains totally lack any privacy which would be “nice to have” at times. However, by combining ZKPs with blockchain technology, projects can now process more transactions quickly, while at the same time keeping user data safe and secure. It also allows for complex computations to be carried out without revealing any sensitive data. ZKPs provide flexibility and choice to users who want control and freedom over their information. Therefore, it makes sense that, when combined, blockchain and ZKPs have multiple uses.

Use cases of ZKPs are:

  • ZKP increases users' privacy by avoiding revealing personal information in public blockchains.

  • ZKP strengthens the security of information by replacing ineffective authentication methods. ZKP eliminates many weaknesses by allowing users to prove ownership or access to data without revealing sensitive information.

  • ZKP increases blockchain throughput and scalability. ZKP addresses some scalability challenges associated with blockchain technology by allowing faster and more secure transactions.

Examples of Leading ZK-based Blockchain Projects

Here are some of the most popular blockchain protocols that employ ZK technology:

Decentralized storage using zk-SNARK

  • Filecoin: Filecoin is the largest deployed zk-SNARK network to date. Filecoin uses SNARKs for both Proof of Replication (PoRep) and Proof of Space-time (PoSt), which are the core cryptographic protocols on which the network depends. Filecoin has raised a total of $258.2M in funding over 7 rounds. Their latest funding was a $205.8 million Initial Coin Offering. Filecoin’s token FIL is currently trading at $7 and has a market cap of $ 2.7 billion. Filecoin’s storage is live and Developers use the APIs or libraries to send data to storage helpers. Behind the scenes, storage helpers receive the data and handle the underlying processes to store it in a reliable and decentralized way.

Privacy Projects

  • Aztec Network: Aztec Network is the first private ZK-rollup on the Ethereum network. It is a privacy engine that DApps use to gain access to privacy and scalability. Aztec has raised $119.1M in funding over 4 rounds. Their latest funding was $100 million from a Series B round led by A16z. Aztec Connect, which allows users to interact with Ethereum DeFi Dapps, is live on the Ethereum mainnet. There is no token for Aztec, but an airdrop is possible.

Zk-rollups

The main challenge that Ethereum faces is scalability. This is a critical issue as it limits the number of people who can use the network, and it also makes transactions more expensive due to the high demand for on-chain storage and computational resources.

Rollup technology is gaining traction at a rapid pace. Rollups are smart contracts that reduce Ethereum’s computing and storage requirements for validating a transaction block. Rollups do so by rolling up a bunch of transactions into one; It is the job of the roll-up smart contract to disassemble them and verify all of those transfers held in a single transaction before it is sent as a new block to Ethereum. There are two main categories of L2 rollups – Optimistic Rollups (OP Rollups) and Zero-knowledge rollups (ZK-rollups).

  • Optimistic - Assumes transactions are valid by default , but would need to rollback transactions from up to 7 days ago if somebody can prove that a transaction was not valid.

  • ZK - runs computation off-chain and submits a validity proof to the chain. It uses advanced cryptography to prove there’s no fraud.

There are complex tradeoffs between the two flavors of rollups.

ZK-rollups can greatly increase Ethereum's transaction throughput while maintaining security and decentralization. They use two contracts, the main and verifier contracts, and an off-chain virtual machine to process batches of transactions and validate zero-knowledge proofs.

The correctness of validity proofs in zk-rollups can be guaranteed with mathematical proof with no delays in transaction finality. Therefore, ZK-rollups are seen as a potential final solution to Ethereum scaling by many.

  • zkSync: zkSync is a trustless scaling and privacy solution for Ethereum based on ZK Roll-up, designed to bring a VISA-scale throughput of thousands of transactions per second to Ethereum while keeping the funds as secure as in the underlying L1 accounts and maintaining a high degree of censorship-resistance. Matter Labs is the company behind zkSync. Overall, Matter Labs has raised $458 million. Their latest funding was a $200 Million Series C round led by Blockchain Capital. zkSync public testnet is currently live. There is no zkSync token, but there are numerous rumors of an airdrop coming.

  • Polygon has emerged as one of the most notable blockchain scaling solutions. Polygon, first known as an Ethereum Sidechain, has developed into a household scaling Solution. Polygon has raised $451.5M in funding over 8 rounds. Their latest round was a $450 million Series D round led by Sequoia Capital. Polygon's token Matic has a market cap of $11 billion and is currently trading at $1.22. Polygon has become a Swiss Army knife for fixing Ethereum’s scalability problems. Polygon’s zkEVM is a decentralized Ethereum Layer 2 scalability solution that uses cryptographic zero-knowledge proofs. It is planned to launch at the end of this March and promises to offer Ethereum compatible smart contract execution at higher speed and lower cost. Stay tuned