Kakarot Three-Phase Roadmap: How It Will Empower the Starknet and Ethereum Ecosystem
Source: Kakarot
Compiled by: Karen, Foresight News
Kakarot zkEVM is an implementation of the Ethereum Virtual Machine (EVM) written in Cairo. Cairo is a Turing-complete language associated with CairoVM.
CairoVM achieves provable computation by utilizing polynomials and the ZK-STARK proof system. The characteristic of zkEVM is its ability to generate provable transactions, thereby producing provable blocks. Kakarot is built on top of CairoVM, and every transaction executed on Kakarot is provable.
Kakarot zkEVM enables teams to build and deploy EVM applications. Developers can deploy any Solidity (or any EVM-compatible language) on Kakarot just like on Ethereum or Polygon. Then, their end users can interact with the DApp using their familiar toolchain (MetaMask, Wallet Connect, etc.).
Ultimately, Kakarot will provide interoperability with the native Starknet protocol and composability between protocols, such as combining TVL in DeFi and user bases in GameFi.
I. Fractal Scaling
Kakarot zkEVM can exist in different forms. First, it can be deployed as a smart contract on Starknet L2, thereby exposing EVM (Ethereum RPC, Ethereum transactions, etc.) on Starknet.
Alternatively, Kakarot can be integrated into the stack to deploy L3 zkEVM. This is where the Madara sequencer comes into play.
By combining Madara (Starknet full node) and Kakarot (EVM runtime), an L3 zkEVM can be created. The stack is as follows: a Substrate full node using CairoVM as its execution engine, with Kakarot as the runtime for smart contracts.
Transactions on Kakarot can be proven and verified on the settlement layer, achieving EVM-compatible fractal scaling.
II. Roadmap
Phase 1: Kakarot zkEVM on Starknet ------ Bringing EVM to Starknet
Kakarot will first exist as a loaded EVM within Starknet L2, enabling developers to deploy their Solidity (or any EVM-compatible language) smart contracts directly on Starknet using their familiar toolbox (Foundry, Hardhat, Wagmi, etc.).
Then, their end users will be able to interact with their DApp using their usual toolchain (MetaMask, Wallet Connect, etc.).
The developer and user experience on Kakarot will be identical to that of Polygon, Scroll, or Ethereum L1.
Phase 2: Kakarot x Madara ------ L3 zkEVM
Kakarot and Madara will merge into a unified stack to support L3 zkEVM, as well as L4, L5, etc. The team will be able to deploy their zkEVM application chains and settle transactions on Starknet using validity proofs.
Why L3? Why provability?
Provability enables the following functionalities: off-chain computation, or computation on Layer, on-chain verification.
L3 (like Kakarot) utilizing validity proofs has an interesting but underappreciated property: the ability to decouple security and decentralization. Users can benefit from the security of Ethereum L1 without the same level of decentralization.
Due to computation being performed on another layer, gas costs are significantly lower than L2, and performance (TPS) will be higher. L2 is already much cheaper than L1. The scalability of rollups will stack and multiply.
To further reduce gas costs, proof verification and data availability (DA) can be separated. Starknet L2 can serve solely as a proof verification layer, while new data availability solutions (like Celestia or EigenDA) can be used to publish transaction data.
Users can choose to adopt either option depending on their security requirements. Publishing proofs and transaction data on Starknet is the more secure option, while using DA solutions to publish transaction data is the more cost-effective choice.
Phase 3: Kakarot x Madara ------ Type 1 zkEVM
Kakarot and Madara can also be combined to enable type 1 zkEVM.
- Writing Ethereum consensus rules in Cairo within the Madara x Kakarot full node, thereby enabling proof of L1 consensus.
- Switching from Pedersen Merkle Patricia Trie (MPT) to Keccak MPT.
Then, Kakarot will become a type 1 zkEVM capable of proving L1 blocks. This is a more advanced use case, depending on Ethereum's roadmap (most notably Verge). After Verge, Keccak may be replaced by Poseidon as Ethereum's chosen hash function. This will help the zkEVM team become type 1, as the main compatibility barrier for zkEVM is the storage layout, i.e., implementing Keccak MPT in a provable and reasonably inexpensive manner.
III. Other Research Topics
- Madara enables the Kakarot chain to utilize the Substrate messaging protocol for cross-rollup communication.
- The modularity of Substrate allows the Kakarot chain to innovate using its consensus protocol.
- Substrate's non-fork runtime upgrades enable the Kakarot chain to upgrade its EVM version without hard forks.