Taiko
Key Takeaways
- Taiko is a Ethereum-based zkEVM rollup, aiming to achieve full Ethereum equivalency (Type-1).
- Taiko sequences transactions using the Based Rollup scheme.
- Taiko uses the Halo2 proof system based on the KZG polynomial commitment scheme.
1. Overview
Taiko is a Ethereum-based zkEVM rollup, aiming to achieve full Ethereum equivalency (Type-1). Taiko is actively developing the full Ethereum zkEVM circuits in collaboration with the community, under the guidance of the Ethereum Foundation's Privacy and Scaling Explorations (PSE) team.
2. Execution
2.1 Type 1 zkEVM
Taiko's Type 1 zkEVM mirrors Ethereum completely, utilizing its hash function, state trees, and gas pricing without changes. Yet, starting with Type 2 zkEVM, modifications are introduced, like adjusting the gas costs for operations that aren't zk-friendly and opting for a zk-friendly hash function, such as Poseidon, over Ethereum's Keccak. Such modifications can pose potential issues.
2.2 Sequencing
Taiko sequences transactions using the Based Rollup scheme on the Ethereum network, which serves as the base layer of Taiko.
- L2 Searchers bundle L2 transactions and send them to L2’s Block Builders.
- L2 Block builders create L2 Blocks, which are then sent to L1 Searchers and can be used as part of L1 Bundles.
- Note that L2 blocks must be sent in a private order flow when sent to L1, otherwise the MEV can be stolen.
Taken together, if L1 Searchers are watching both L2 and L1 mempools, they can extract cross-chain MEV between Ethereum and L2 with Based Rollups, and the value of L2’s MEV can be accumulated in Ethereum.
3. Settlement
Taiko employs the PLONKish zk-SNARK proof system. Specifically, it uses the Halo2 proof system based on the KZG polynomial commitment scheme.
In Taiko, there are three finalized states for a block:
- Proposed: This state is reached when a proposer submits a block to the TaikoL1 contract, and the block-level intrinsic validity tests have been passed.
- Proved: At this stage, a validity proof for the state transition has been submitted. However, due to the parallel nature of the proving process in Taiko, if a parent block's validity proof isn't provided, the block attains the 'Proved' status.
- Verified: Blocks that are in the 'Proved' state, and whose parent block is also 'Proved', are considered 'Verified'.
4. Data Availability
Taiko utilizes Ethereum network as a data availability layer.
5. Team
- Daniel Wang (Co-founder, CEO)
- Lisa A. (Research)