Kakarot 是在 Cairo 中开发的 L2 zkEVM。它专注于扩展 Ethereum 并引入社区驱动的功能,如原生账户抽象。Elias Tazartes 和 Clement Walter 是 Kakarot 的联合创始人、联合 CEO 和联合 CTO。 [1]
Kakarot 创建于 2022 年 10 月,是一个用 Cairo 实现的 zkEVM,Cairo 是 Starknet 和 StarknetOS 链(也称为 CairoVM 链或 Starknet appchains)使用的可证明语言。作为与 Ethereum 兼容的 Layer 2 解决方案或 zkRollup,Kakarot 优先考虑兼容性,并旨在 L2 领域内进行创新。它将原生账户抽象引入 EVM,利用 Cairo 生成执行轨迹和 Stark 证明的能力。这使得 Kakarot 能够处理大量交易,将它们合并成一个单一的证明,并在 Ethereum 上验证它们,从而有效地作为 L2 zkEVM 运行。[1][2]
在 Kakarot zkEVM 中,核心 EVM 实现运行在由 CairoVM 驱动的 StarknetOS 链上,其中 EVM 智能合约 被部署为唯一的 Starknet 智能合约。用户通过与 Ethereum 兼容的 RPC 层与 Kakarot 交互,从而屏蔽了底层 CairoVM 链的直接用户交互。这种设计确保了所有 Cairo 执行轨迹都是可证明的,允许 Kakarot 批量处理区块,并使用 Starkware Shared Prover (SHARP) 将证明提交给 Ethereum Layer 1。像 Lambdaclass 的 Stark Platinum Prover 这样的未来实现承诺通过多重证明能力来增强安全性。[1][2]
在底层,Kakarot 中的每个 EVM 智能合约 和用户拥有的账户 (EOA) 都表示为一个 Starknet 智能合约,具有对用户透明的特定映射和功能。交易被包装在 Starknet 交易中,通过 Cairo 的签名验证进行可证明的处理,从而保持完整性。虽然 Kakarot 采用 Pedersen 哈希用于状态根和 MPT 计算,以提高效率和 zk 友好性,但这些细节不会影响功能级别的 EVM 兼容性。[1][2]
CairoVM 是一个为可证明执行而设计的虚拟机。它是 Starknet 的核心,Starknet 是 Ethereum 上的 Layer 2 有效性 rollup。通过用多项式表示执行,CairoVM 使得 Starknet 上的每笔交易都可以使用 STARK 进行验证。这要求开发人员使用相关的编程语言 Cairo 来构建 去中心化应用程序 (dApps)。[1][2]
Kakarot 中的预编译是具有特定地址的预定义 智能合约,提供专门的功能。与常规 EVM 字节码不同,这些合约由 Kakarot 客户端使用 Cairo 直接执行,旨在高效地处理计算密集型任务。它们启用复杂的功能,并促进 Ethereum 的 Layer 1 (L1) 和 Layer 2 (L2) 之间的交互。Kakarot 支持现有的 Ethereum 预编译,并引入为 L2 操作量身定制的额外预编译,允许 智能合约 像 Solidity 函数调用一样调用它们。[3]
Kakarot 在 pre-seed 轮融资中筹集了 100 万美元,Starkware 和 Lambda Ventures 领投。著名的天使投资人包括 Vitalik Buterin、Nicolas Bacca(Ledger 联合创始人)和 Rand Hindi(Zama 首席执行官)。[4]
2024 年 5 月 20 日,Viper Network 宣布通过与 Kakarot zkEVM 的战略合作伙伴关系进行首次链集成。此次合作旨在通过 Viper 的去中心化基础设施网络,提供对 Kakarot 的 zkRollup 技术的无需信任和高性能的访问。[5]