ZKsync Era
View project's detail pageNumber of verifiers
Aggregation
YesTrusted setup
YesList of verifiers
Name | Verifier | Verification status | Last used | |
---|---|---|---|---|
ZKsyncEraVerifier | 0x70F3…9604 | Submit or ask for verification | Today |
Description
ZKsync Era is a ZK-EVM rollup on Ethereum.
zkSync Era utilizes Boojum as the main proving stack for their system. Boojum is an implementation of the Redshift protocol which uses the Plonk IOP with a polynomial commitment scheme based on List Polynomial Commitments (LPCs), which is in turn based on FRI, making the scheme transparent. The scheme makes use of the Goldilocks field, which is much smaller than alt_bn128’s field.
The protocol makes use of recursive proof aggregation via 15 recursive circuits. Some information about the aggregation architecture can be found here. State diffs are published in compressed form on L1.
The final proof is wrapped into a Plonk+KZG proof for cheap verification. The CRS used is the one generated by Aztec ceremony with 176 participations. The instructions to regenerate the verification keys can be found here, with a documentation on their usage here.
Solidity contracts are compiled into Yul using solc
and compiled again using zksolc
to target a LLVM, which is then used to target the EraVM. The ISA spec of the EraVM can be found here. The differences between the zkEVM and the EVM are listed here. The source code of the circuits can be found here.
List of required tools
Tool name | Version | Tool docs |
---|---|---|
Custom tool | v14.2.0 | More informationMore info |