1. 引言
前序博客:
- Kakarot:部署在Starknet上的ZK-EVM type 3
随着 Kakarot zkEVM 即将发布测试网,想重申下 Kakarot zkEVM 的愿景为:
- 为什么在rollup空间中还需要另一个 zkEVM?
开源代码见:
- https://github.com/kkrt-labs/kakarot(Cairo + Python)
本文旨在通过讨论:
- Kakarot 的独特之处、
- Kakarot如何提供最简单且面向未来(future-proof)的架构
- 为什么Kakarot对最终用户和开发人员如此重要
来回答"为什么在rollup空间中还需要另一个 zkEVM?"这个问题。
Kakarot将为:
- 扩展 UX 设计空间的颠覆性 EVM builder 提供一个温馨的环境。
2. 何为Kakarot?
Kakarot 是在Cairo内构建的 zkEVM ,Cairo是一种为Starknet和所有 StarknetOS 链(也称为 CairoVM 链或 Starknet 应用程序链)提供支持的可证明语言。
Kakarot 是一个与以太坊兼容的zkRollup。Kakarot 的目标为:
- 随着时间的推移实现与以太坊完全等效,而不做出任何妥协。
除了兼容性之外,Kakarot 还致力于将更多创新推向 L2 空间,并向 EVM 添加原生帐户抽象等新功能。
Kakarot 的驱动精神是:
- 证明Prove
- 扩容Scale
- 创新Innovate
详细Kakarot技术文档参看:Quick start - 5 minutes overview。
3. Kakarot的愿景
本文将介绍 Kakarot 的与众不同之处,以及它为何对最终用户和构建者如此重要。经过以太坊生态系统多年的发展,形成了三个坚定的信念,并希望通过卡卡罗特来解决这些信念:
- 1)TPS高于某个阈值之后就不再重要。用户希望获得与 web2 应用程序和高速 web3 dApp 相当的响应能力。换句话说,用户想要亚秒级的交易速度。这通常意味着达到 10k TPS 需要等待几年(与此同时,仍需共同解决状态增长问题)。
- 2)交易成本是应用的主要障碍。正如Vitalik 2023年12月博文Make Ethereum Cypherpunk Again所述:“我将这种转变(web3 开放性下降)的根本原因归咎于交易费用的上涨。” 交易成本最终应低于sub-penny,以便人们自由实验和创新。
- 3)大规模应用的另一个重要障碍是用户体验。Kakarot团队认为 web3 用户体验 的当前状态需要提高一个数量级。如,Kakarot团队的目标是为那些不想管理种子短语的人或那些寻求大多数 dApp 的一键体验(即多重调用)的人提供替代方案。
基于以上三点,Kakarot 可以向用户做出承诺,以及它在以太坊rollup的当前(无论多么饱和)舞台中的立场:
- 在提供廉价且快速的交易的同时,Kakarot 的目标是引领以用户为中心的创新,围绕账户抽象(多重调用、安全飞地签名者等)和快节奏的功能发布(如new EIPs earlier than most)。
4. Kakarot的设计
Kakarot的设计:
- 密码学和工程不可避免的分离
从某种意义上说,Kakarot架构是不可避免的,因为它是根据第一原理构建的。Kakarot 的核心是:
- 使用中间可证明的高级语言Cairo构建的。
这使得Kakarot成为唯一真正将密码学与工程分离的zkEVM,即zkEVM中的“zk”和“EVM”(除了目前处于研究阶段的zeth和SP1的Reth )。Kakarot 的联合创始人兼生态系统负责人 Danilo 在2024年1月25日 The Kakarot zkEVM Journey Through 2023文章中对此进行了更详细的解释。
这种关注点分离对Kakarot团队意味着什么?这意味着:
- 更快的开发
- 更少的代码(比定制电路编写的行数少一个数量级)
- 更容易的维护
- 接触Cairo在证明软件和开源软件方面的所有创新
构建 zkEVM:两种不同的方式
分离关注点不仅很优雅,而且是唯一可以随着时间的推移而扩展的方法。对于构建定制电路的 zkEVM 来说,支持主网硬分叉并通过提前集成新的 EIP 进行创新被证明是极其困难的。
Kakarot团队相信,该领域的更多参与者将转向可证明的中间虚拟机。如今,编写可证明且适应性强的软件的两种选择是:
- 使用 LLVM 语言并证明它,如 Rust 到 LLVM,使用RISC-ZERO zkVM 证明的 Risc-V(如revm的 Rust 代码变得可证明的zeth)
- 使用 Cairo,这是为 CairoVM 构建的“provable by design”编程语言。
Kakarot团队相信 Cairo 将始终具有更高的性能(而其他 zkVM 可能更方便),因为Cairo 是在构建时考虑到证明的,而不是其它支持non-provable languages to be proven的 zkVM。未来几年,Cairo 将被证明是编写可验证软件的最实用、最高效的工具。
注意:Kakarot 大约有 1万行代码,数量级更小且更易于维护:
5. Kakarot:致力于以用户为中心的方法
虽然构建简单且最小化的软件当然很好,但终端用户并不关心。终端用户最终并不关心 Whatsapp 的后端是在 AWS 还是在自己的云上运行,也不关心 Telegram 是用什么编程语言编写的。终端用户期望明显的附加值。
Kakarot 面临的挑战是将这一巨大的工程优势(一种中间高级可证明语言)转化为社区的附加值!
Kakarot的目标是:
- 展示对以太坊变化的快速适应能力。
Kakarot为社区提供的前两个明显的好处是:
- 1)Dencun主网硬分叉在 Kakarot zkEVM 上的 Day-0 集成:所有新的操作码和更改都将被合并(tstore 等)。
- 2)与用户一起迭代构建和测试的协作产品路线图。
其中第二点好处是指:
- 我们的手是自由的(摆脱了密码学⛓️),
因此能够比任何人更快地实现重要的功能(因为社区会选择它们)。在测试网阶段,Kakarot将发布新功能,并要求社区选择最有用的功能。很高兴在测试网中尝试一些想法:
- 原生multi-call
- 通过faceID(或硬件签名者)增强的EOA
- 手机优先的原生帐户抽象
- EOF 早期集成等等
当Kakarot与构建者和最终用户社区一起探索新功能时,请记住Cairo及其生态系统正在后台积极发展!Starkware 的 100 多名员工正在努力为Cairo打造下一代provers。与此同时,500 多个 Cairo 开发人员和基础设施参与者社区正在开发新的库并实现 Kakarot 能够集成的突破(如并行执行)。
Starkware 与 Polygon Labs 合作推出的最新证明改进研究是Kakarot竞争优势的一个很好的例子:Circle STARK。Cairo正在不断变得更加强大!
Circle STARK——新STARK协议发布:更快、更便宜
Kakarot 既可以利用充满活力的 Cairo 生态系统的创新(证明速度的提高,支持 secp256r1 等开源库),又可以高速且具有很强的灵活性(适应硬分叉和 EIP)进行开发。
构建 zkEVM 的权衡空间:
6. Kakarot最新动态
本着纯粹一致性的精神和“it just works”的座右铭,Kakarot 的目标是通过 100% 的Ethereum tests(官方以太坊基金会 EVM 测试)。实现这一里程碑将确认Kakarot与以太坊的完全兼容性。它还将使开发人员不必担心 EVM 碎片。
这样,Kakarot 将提供无缝的开发者体验,EVM 构建者可以期望一切“just work”,与以太坊主网相比不会有任何不兼容性。Kakarot希望开发者专注于对他们来说重要的事情:
- 开发者的协议或 dApp。
如今,Kakarot 通过了 90% 以上的测试 (即超过 1.8万个 测试)。已经对 Kakarot EVM 实现建立了信心,现在是时候面对现实世界了。
Kakarot 的最新消息是:
- 即将进入测试网阶段!
为了实现这一目标,正在与Karnot和Starkware合作,他们将协助Kakarot运行。
在 2024 年接下来的两个季度,将与社区一起验证Kakarot技术。目前,测试网是私有的。
7. Kakarot架构图
8. 小结
Kakarot 的最新消息是:
- 2024 年第二季度和第三季度的测试网
Kakarot 的与众不同之处在于它的设计:
- 站在密码学巨人的肩膀上(Starkware 人发明了 STARKs),专注于工程。
利用这一优势,打造一支适应性更强、交付速度更快的团队(约 6 名人员和贡献者在不到一年的时间里构建了 2 个独特的 zkEVM 实现)。
Kakarot 的目标是:
- 与以太坊主网 100% 兼容。
通过完全符合以太坊基金会测试,可以向构建者社区保证这一点。截至今天,Kakarot通过了超过 90% 的以太坊测试。Kakarot的目标是让开发人员在兼容性和功能对等方面实现零精神负担。
Kakarot 的使命是:
- 为 L2 空间带来更多创新(多重调用、安全 enclave 签名、paymaster、并行执行等),同时进行长期规划(type 1 zkEVM、proving主网、pure equivalence等)。
想象下:通过利用 Cairo,Kakarot 既稳定又快速发展。因此:
- Kakarot不可避免的即将到来
参考资料
[1] Kakarot: The Future of Ethereum, Today