Kakarot:当今以太坊的未来

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/436433.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python与FPGA——局部二值化

文章目录 前言一、局部二值化二、Python局部二值化三、FPGA局部二值化总结 前言 局部二值化较全局二值化难,我们将在此实现Python与FPGA的局部二值化处理。 一、局部二值化 局部二值化就是使用一个窗口,在图像上进行扫描,每扫出9个像素求平均…

Android耗电分析之Battery Historian工具使用

Battery-Historian是谷歌推出的一款专门分析Bugreport的工具,是谷歌在2015年I/O大会上推出的一款检测运行在android5.0(Lollipop)及以后版本的设备上电池的相关信息和事件的工具,是一款对于分析手机状态,历史运行情况很好的可视化分析工具。 …

基于单片机的电子秤设计

目 录 摘 要 I Abstract II 引 言 1 1 系统总体设计方案 4 1.1 设计目标与要求 5 1.2 方案论证与选择 6 2 硬件电路设计 7 2.1 单片机型号选择 7 2.2 显示模块电路设计 8 2.3 传感器模块电路设计 9 2.4 按键模块电路设计 11 2.5 报警模块电路设计 12 2.6 模数转换电路设计 12 …

Java | 一维数组的声明与使用

一维数组的声明 Java中声明数组的方法&#xff1a; <变量类型>[] <变量名>;示例&#xff1a; int[] a;上述代码中a是一个数组&#xff0c;可以保存int类型的值。 注意方括号在变量类型与名称之间。 声明数组后&#xff0c;必须为数组分配内存。内存将定义数组可…

C switch 语句

一个 switch 语句允许测试一个变量等于多个值时的情况。每个值称为一个 case&#xff0c;且被测试的变量会对每个 switch case 进行检查。 语法 C 语言中 switch 语句的语法&#xff1a; switch(expression){case constant-expression :statement(s);break; /* 可选的 */ca…

【CSP试题回顾】201703-1-分蛋糕

CSP-201703-1-分蛋糕 解题代码 #include <iostream> using namespace std;int n, k, sumCake, cake, friendNum;int main() {cin >> n >> k;for (int i 0; i < n; i){cin >> cake;sumCake cake;if (sumCake > k || i n - 1) {friendNum;sum…

【C++庖丁解牛】模版初阶

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 1. 泛型编程2. 函数模…

BurpSuite2024.2.1

1.更新介绍 此版本引入了特定的API 扫描功能&#xff0c;并将 Bambdas 合并到 Logger 捕获过滤器中。我们还改进了 DOM Invader 和 Burp Suite 导航记录器的功能&#xff0c;并进行了许多其他改进和错误修复。 API扫描 我们引入了特定的 API 扫描功能。您现在可以上传 OpenAP…

DR模式下LVS负载均衡聚集部署实验

1、实验准备 DR 服务器&#xff1a;192.168.80.9Web 服务器1&#xff1a;192.168.80.11 Web 服务器2&#xff1a;192.168.80.12 nfs 服务器&#xff1a; 192.168.80.10 客户端&#xff1a;192.168.80.100 vip&#xff1a;192.168.80.188 2、配置负载调度器&#xff08;ens33&am…

ICVQUANTUMCHINA报告:《2024全球量子精密测量产业发展展望》

3月4日&#xff0c;《2024量子精密测量产业发展展望》的中文版报告通过光子盒官方平台发布&#xff0c;英文版报告通过ICV官方平台发布。 中文版报告获取地址&#xff1a;量子精密测量-QuantumChina 英文版获取地址&#xff1a;https://www.icvtank.com/newsinfo/899889.html …

DevExpress报表-->更换数据库连接

今天遇到了一个问题&#xff0c;因公司更换IP地址&#xff0c;原先连接报表数据库的IP地址也因此更改。但是&#xff0c;我不知道如何直接修改连接报表的数据。为了解决这个问题&#xff0c;我决定给大家演示一下具体的操作步骤。 换句话说: 将DevExpress报表直接从一个电脑的…

【翻译】零信任架构准则(五)Don‘t trust any network

将监控重点放在用户&#xff0c;设备和服务上 全面监控必不可少&#xff0c;因为设备和服务更容易受到网络攻击。在零信任架构中&#xff0c;随着设备&#xff0c;服务和用户行为的持续评估&#xff0c;我们的监控策略很可能发生改变。我们应该持续进行监控&#xff0c;并将用…

AMDGPU KFD Test 编译使用

ROCT-Thunk-Interface是一个用于在ROCm软件堆栈中提供设备无关性的层。它是ROCm的一部分&#xff0c;允许不同的硬件平台&#xff08;如AMD GPU和Intel CPU&#xff09;使用相同的API进行计算。 要安装ROCT-Thunk-Interface&#xff0c;首先需要创建一个新的目录&#xff0c;并…

Android视角看鸿蒙第三课(module.json中的各字段含义之nametype)

Android视角看鸿蒙第三课(module.json中的各字段含义) 前言 上篇文章我们试图找到鸿蒙app的程序入口&#xff0c;确定了在鸿蒙工程中,由AppScope下的app.json5负责应用程序的图标及名称,由entry->src->main-module.json5负责桌面图标及名称的展示。 AppScope下的app.js…

2.26-3.6

2.26 下面是项目vue脚手架 下面是node环境文件夹 2.27 npm config get prefix npm config set prefix "D:\software\nodejs"得到下面 创建脚手架 npm i vue/cli -g在项目脚手架里 vue create vue-project-1where npx vue使用vue cli创建前端工程 https://reg…

无编制教师和有编制教师区别在哪

走进教育的世界&#xff0c;我们常常听到“编制教师”与“非编制教师”的说法&#xff0c;这两者之间的区别&#xff0c;犹如一道隐形的鸿沟&#xff0c;隔开了两种不同的教育生涯。今天&#xff0c;就让我们一起来探讨一下&#xff0c;这两者之间的差异究竟体现在哪里。 教育系…

【学习资源】对比说明三个通过作者查找文献数据库(一)

最近博主在阅读相关文献的时候&#xff0c;想针对一些作者的科研文献做一个详细的了解&#xff0c;于是涉及到“如何已知作者与其所在单位&#xff0c;查找其研究成果”的问题&#xff0c;博主尝试了在Google Scholar、Web of Science、CRS核心论文库这三个地方通过作者查找文献…

Jmeter之Ramp-up Period(in seconds)

1、Ramp-up Period概念 &#xff08;in seconds&#xff09;–并发用户启动周期&#xff0c;告知JMeter 要在多长时间内启动全部Vuser用户。 2、为什么需要有“ramp-up period”&#xff0c;立即启动所有的并发用户数不是更好&#xff1f; 对于绝大多数的网址或应用&#xf…

vulhub中ThinkPHP5 SQL注入漏洞 敏感信息泄露

漏洞原理 传入的某参数在绑定编译指令的时候又没有安全处理&#xff0c;预编译的时候导致SQL异常报错。然而thinkphp5默认开启debug模式&#xff0c;在漏洞环境下构造错误的SQL语法会泄漏数据库账户和密码 启动后&#xff0c;访问http://your-ip/index.php?ids[]1&ids[]2…

C++椭圆检测论文复现 Ubuntu 22.04+Vscode+opencv3.4

复现的代码 本博客旨在复现论文《An Efficient High-quality Ellipse Detection》&#xff0c;该文章本来只有Matlab的代码实现&#xff0c;后来被islands翻译成了c 库&#xff0c;大家可以参考islands发在知乎上的文章高质量椭圆检测库&#xff0c;C的代码链接。 使用环境 U…