Quick Look at Kakarot, the zkEVM Project Backed by Vitalik Buterin

Kakarot, the zkEVM project backed by Vitalik Buterin, explained.

Source: Kakarot

Translation: Karen, Foresight News

Kakarot zkEVM is an Ethereum Virtual Machine (EVM) implementation written in Cairo, a Turing-complete language related to CairoVM. CairoVM enables provable computation through the use of polynomials and the ZK-STARK proof system. zkEVM’s unique feature is the ability to generate provable transactions, resulting in 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 EVM-compatible) on Kakarot, just like on Ethereum or Polygon. Then, their end-users can interact with their DApps using their usual toolchains such as MetaMask, WalletConnect, etc.

Eventually, Kakarot will provide interoperability with the native Starknet protocol and composability between protocols, such as combining TVL in DeFi and user bases in GameFi.

Fractal Scaling

Kakarot zkEVM can exist in different forms. First, it can be deployed as a smart contract on top of Starknet L2, making it appear as an EVM (Ethereum RPC, Ethereum transactions, etc.) on Starknet.

Alternatively, Kakarot can be integrated into the stack to deploy L3 zkEVM. This is where Madara sorter comes into play.

By combining Madara (Starknet full node) and Kakarot (EVM runtime), an L3 zkEVM can be created. The stack includes a Substrate full node using CairoVM as its execution engine, and Kakarot as the runtime for smart contracts.

Transactions on Kakarot can be proven and verified on the settlement layer, enabling EVM-compatible fractal scaling.


Phase 1: Kakarot zkEVM on Starknet – Bringing EVM to Starknet

Kakarot will initially exist as a loaded EVM on Starknet L2, allowing developers to directly deploy their Solidity (or any EVM-compatible) smart contracts on Starknet using their familiar toolkits (Foundry, Hardhat, Wagmi, etc.).

Then, their end-users will be able to interact with their DApps using their usual toolchains (MetaMask, WalletConnect, etc.).

Developers and user experience on Kakarot will be identical to 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 off-chain computation or on-chain verification on the Layer. Validity proof-based L3s (like Kakarot) have an interesting but underrated property: the ability to decouple security from decentralization. Users can benefit from Ethereum L1’s security without requiring the same level of decentralization.

Since computations are done on another layer, Gas costs are significantly lower than L2, and performance (TPS) is 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 be used solely as a proof verification layer, while new DA solutions (such as Celestia or EigenDA) can be used to publish transaction data.

Users can choose 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 more cost-effective.

Phase 3: Kakarot x Madara – type 1 zkEVM

Kakarot and Madara can also be combined to enable type 1 zkEVM.

  • Write Ethereum consensus rules in Cairo within the Madara x Kakarot full node, allowing for L1 consensus proofs.

  • Switch from Pedersen Merkle Patricia Trie (MPT) to Keccak MPT.

Then, Kakarot will become type 1 zkEVM, able to prove 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 the hash function of choice for Ethereum. This will help the zkEVM team become type 1, as zkEVM’s main compatibility barrier is storage layout, i.e., implementing Keccak MPT in a provable and reasonable cheap way.

Other Research Topics

  • Madara enables cross-rollup communication using the Substrate messaging protocol.

  • Substrate’s modularity allows Kakarot chain to innovate using its consensus protocol.

  • Substrate’s non-forking runtime upgrades enable Kakarot chain to upgrade its EVM version without hard forks.