TL;DR: In this article, we unpack the recently launched L3s on Taiko. We discuss the role of L3s in scaling Ethereum, the new use cases that L3s allow us to have, and some details on Taiko's specific approach.
Meme inspired by ex_scxr.
When we talk about scaling Ethereum, we usually mean rollups that execute transactions off-chain and confirm (i) the proof of a transaction batch correct execution and (ii) “batch transactions summary” (block hash) on-chain.
However, for the Ethereum endgame, one rollup isn’t enough. Even several rollups are not enough. For the Ethereum endgame scaling, we need limitless scaling capabilities: tens of rollups? Hundreds of rollups? Thousands of rollups? 🙀
L2 for general purpose scaling, L3 for customized scaling. That is, the scaling mechanism on L3 is different from the scaling mechanism on L2. L2 is a “classic” EVM and L3 is non-EVM (e.g., separating "data" from "proofs" and replacing proofs with a single SNARK per block entirely);
L2 for trustless scaling, L3 for weakly-trusted scaling solutions (e.g., validium);
L2 for general purpose scaling, L3 for compatibility (e.g., Kakarot, a general purpose EVM is emulated on the Starkware EVM);
L2 for scaling, L3 for customized functions, that is L3 doesn’t attempt to provide "scalability squared” rather it is a layer aimed at a specific function (e.g., privacy).
An ecosystem of L2s and L3s for permissionless cross-domain operations: a three-layer model allows for an entire sub-ecosystem to exist within a single rollup, enabling cheap cross-domain operations without going through the expensive L1.
Disclaimer: all the mentioned use cases can be implemented as L2s. However, to get the same efficiency level, they will probably need to opt into some shared systems, giving up some sovereignty.
L3s can solve the trade-off between (i) ux (batch intervals + withdrawal time) and (ii) cost per tx. Imagine numerous L2s. Making L2 block building profitable can be problematic because there might be not too many transactions on each L2. A block builder can wait until having enough transactions (wait an hour?) to build a large block or just make a smaller block. However, this smaller block should still be profitable for the block builder.
A ZK rollup on top of a ZK rollup would have fixed costs of only ~8,000 layer-1 gas (500 bytes for the proof). That (i) makes the gas cost per transaction for the 12s batch interval ~20x lower on L3 than on L2 and (ii) changes the gas cost difference for 12s and 1h batch interval from ~25x on L2 to less than 2x on L3.
On L2:
On L3:
Table source: Vitalik’s article.
Taiko is a type-1 (Ethereum-equivalent) ZK-EVM. It allows the same rollup protocol to be deployed on Ethereum or Taiko without requiring any changes in the code. That is, one can deploy Taiko on Ethereum as an L2, or Taiko on Taiko as an L3. Or one can deploy Taiko protocol as multiple L2s, multiple L3s, multiple L4s, etc. limitlessly scaling Ethereum.
This approach
Allows anyone to seamlessly deploy their L2/L3s with minimal costs. Furthermore, Taiko's L2 solution can be easily modified to support centralized/permissioned L2/L3s to suit for enterprise's special needs;
Minimizes R&D costs;
Enjoys using cross-chain messaging functionality that allows users to send arbitrary messages from any Layer 2/3 to any other Taiko Layer 2/3. This follows from the ability for one type-1 to read merkle proofs from another. It combats the downside of having multiple chains and reduces costs even further;
Offers maximum reusability and simplicity as the L3:L2 relationship maps closely to the L2:L1 relationship thanks to Ethereum-equivalence;
However, as Taiko is a Based Rollup, if L3 block proposing is fully permissionless, transactions will probably stay longer in the L3 mempool before being successfully proposed into a block.
Inception Layers were launched on Taiko as the core of Alpha-4 testnet Eldfell a week ago. Everyone is welcome to join as a user, prover, proposer, or a regular node runner to battle-test the Taiko network and bring it one step closer to the Mainnet! Check the guides on how to participate here.
If you’d like to build your own app-chain using Taiko’s Inception Layers (L3s), reach out to bd@taiko.xyz and check out the Taiko Grant Program.
Explore open positions on our job board.
To stay updated on the latest from Taiko:
Website: https://taiko.xyz
Discord: https://discord.gg/taikoxyz
GitHub: https://github.com/taikoxyz
Twitter: https://twitter.com/taikoxyz
Contribute to Taiko and earn a GitPOAP! You will also be featured as a contributor on our README. Get started with the contributing guide.