On the Way to Decentralization - zkSync Era Proving System Research
May 17th, 2023

How the ZKSync Era Proving System Works

ZKPool is dedicated to building the infrastructure for Ethereum zkEVM projects. One important zkEVM project is ZKSync Era.

ZKSync Era has published the source code on GitHub. Below is the diagram of how ZKSync Era's proving system works.

Proving System of zkSync Era
Proving System of zkSync Era
  1. The "Metadata calculator" fetches the current blocked numbers and their storage logs, stores the metadata as witness inputs in the Postgres DB, and stores the witness input data as Merkel treepath data in Google Cloud Storage, which are the inputs to the witness generator.

  2. The “Witness Generator” component generates prover jobs and stores artifacts needed for the next round of proof aggregation. It can skip blocks if there are too many for the system to handle. This step itself is pretty complex. On closer inspection, there are four steps: Basic Circuits, Leaf Aggregation, Node Aggregation, and Scheduler.

  3. The "Circuit Synthesizer" takes the prover jobs from the Postgres DB, synthesizes them into assemblies, and then distributes them to the prover to generate proof. Assembly here is a concept in Bellman Plonk.

  4. "Prover" takes the assembly as input via a TCP connection from Circuit Synthesizer, generates the zero-knowledge proof, and stores it in the Postgres DB.

  5. "EthTxAggregator" is a standalone program that scans proofs in the Postgres DB and forwards them to the chain.

The path to decentralization

From the above flow at a high level, we can see:

  1. The database plays a central role in the system: most components interact with the database.

  2. The "Assembly" file sent by the "Circuit Synthesizer" to the prover is large. It contains all the witness data that the proof needs.

  3. ZKSync has made many efforts to develop its proof generation system, from GPU groups, well-defined basic circuits, and proof aggregation mechanisms to circuit generation.

We appreciate and look forward to zkSync's vision for decentralization, especially the ZK-Prover part, as in this Twitter post:

Decentralization = Freedom

Our vision for decentralization is clear: The sequencer, ZK prover, zkPorter, community governance – and all other critical pieces of the zkSync Era network – will be decentralized once the core virtual machine and prover are solidified and stable.

zkSync Era + ZKPool

zkEVM projects need a lot of computational power to generate ZK proofs. ZKPool has a vision to accumulate ZK provers for Ethereum Layer2 zkRollup projects and mainly focuses on an optimized Prover task scheduling system and a Layer 2 fee/reward sharing mechanism. Eventually, the accumulated computing power and competition will reduce the proof cost. Meanwhile, the zkEVM projects achieve the decentralization of prover and high performance of proving.

ZKPool is looking forward to supporting the decentralization of zkSync Era and also the entire Ethereum Scaling world.

Subscribe to ZKPool
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.
More from ZKPool

Skeleton

Skeleton

Skeleton