读懂 Taiko:EVM 等效的 ZK Rollup

团队介绍

Taiko 在今年第一季度推出,由 Loopring 创始人王东和前 Loopring 首席架构师 Brecht Devo 联合创立。Taiko 大多数团队成员都曾在可扩展性和 ZK Rollup 领域工作过。

什么是taiko

taiko 的目标是成为一个完全等同于以太坊的 ZK Rollup,并通过在技术层面和协议层面以太坊本身的运行方式来扩展以太坊。

ZK Rollups 是通过在链下执行、聚合和证明交易来扩展计算,并依靠以太坊进行数据可用性和有效性证明验证。目前开发中的 ZK Rollups 存在的最大缺点是它们不能完全支持 EVM 的广义计算,而是主要用于特定应用程序,这就导致破坏了现有以太坊 L1 智能合约和 dapp 的兼容性的结果,并且使构建提供相同类型的可组合、体验更好的新合约变得更难。

与以太坊等效的 ZK Rollups,有时也称为 ZK-EVM,因其不会在安全性或兼容性方面妥协,所以被誉为第 2 层扩展解决方案的圣杯。Taiko 的目标就是成为一种 ZK-EVM,它优先考虑的是完美的以太坊 EVM 等效性,而不是 ZK-proof 的生成速度。

taiko技术

Taiko 由三个主要部分组成:ZK-EVM 电路(用于生成证明)、L2 Rollup 节点(用于管理 Rollup 链)和 L1 上的协议(用于将这两部分连接在一起以进行 Rollup 协议验证)。

ZK-EVM

ZK-EVM 通过有效性证明确保 Rollup 上 EVM 计算的正确性。

Taiko 可以按原始方式运行以太坊智能合约代码,无需进行任何更改。开发人员可以轻松地将他们现有的以太坊智能合约和完整的 dApp 迁移到 Taiko,也可以在 Taiko 上部署他们的新 Solidity 代码和协议。通过生成 ZK-EVM 电路的有效性证明,Taiko 实现了一个能够支持每个 EVM 操作码的 ZK-EVM。除了与以太坊 L1 智能合约和 dapp 完美兼容之外,所有以太坊和 Solidity 工具都可以与 Taiko 无缝协作,无需中断开发人员的工作流程。这样做的好处有两个方面:

  • Solidity 智能合约开发人员能够毫无摩擦地在 Taiko 使用 Solidity 语言进行开发,无需浪费任何时间来适应新开发环境。EVM 开发人员和以太坊智能合约背后的开发团队扩充速度也无需放慢。

  • 以太坊上已经运行的价值数十亿美元的智能合约以及 dApp 避免了引入一种不同语言的风险,只需要调整结构框架后,它们可以移植到 Taiko 上来。

EVM 等效性还可以帮助 Taiko 利用现有的以太坊基础设施进行开发。例如执行层很容易被重新用作 Taiko 节点使用,同时 Taiko 客户端直接基于 Go-Ethereum 发开 。由于 Taiko 节点使用与以太坊相同的散列算法、签名方案和存储数据结构,Taiko 不仅能与虚拟机完美兼容,其他相关协议也是如此。如果以太坊协议更新,Taiko 会在 zkEVM 中保持同步更新。如果 Taiko 从研发中创造出新的方向,团队也将努力在以太坊上实现它们。

在兼容性方面,开发人员和基础设施提供商可以顺利使用 Taiko Rollup,同时用户也完全熟悉 Taiko 的使用模式和产品。作为通用 L2,Taiko 的目标是赋能建设者,最终赋能用户,让其他人可以做他们想做的事情。利用以太坊的生态、EVM、定义明确的基础设施和工具、智能合约的临界质量和开发人员的专业知识是 Taiko 能够成为 type-1 ZK-EVM 的主要原因。

taiko L2节点

Taiko 节点从以太坊获取交易数据并在 L2 上执行交易,根据最终交易执行情况推进状态。目前 Taiko 节点是一个以太坊 Geth 分叉,节点管理 Rollup 链。

taiko protocol

Taiko Protocol 将坚持安全、去中心化和无需许可的核心原则,来定义执行 Rollup 规则和潜在参与者资格。部署在以太坊 L1 上的智能合约可以充当 ZK-SNARK 证明的数据可用性机制和验证者,同时部署在 Taiko L2 上的智能合约执行某些重要协议功能。

网络参与者有三个角色:

  • 提议者:从用户的 L2 交易中构造 Rollup 块,并提议给 L1,任何愿意的参与者都可以执行此块并创建功能。

  • 证明者:从上述提议的区块中生成 ZK-SNARK 证明,确保 L2 交易和区块的有效性,任何愿意的参与者都可以执行此证明功能。

  • 节点运营商:链上数据执行交易与链的状态保持同步。虽然提议者和证明者都需要运行节点来执行各自的任务,但其他参与者也将可以运行节点,例如提供区块浏览器等服务的节点和节点基础设施提供商。任何愿意的参与者都可以运行 Taiko 节点。

运作方式

Taiko L2 中的区块由按顺序执行的交易集合组成,通过将新区块附加到链上来更新其状态,同时遵循交易执行的协议规则来计算。

区块提交分为两部分:

  • 区块提议:区块被提议后,区块数据将发布在以太坊上,同时区块将附加到 Taiko L1 合约的提议区块列表中。该协议确保区块在这一点上是不可变的,这意味着区块执行是确定性的,因此任何人都可以计算执行后的区块链状态。我们将一个区块提议和所有封闭的交易视为提议完成。L1 上提议区块的一个显着特征是,可能存在将被 Taiko L2 节点跳过的无效交易,但 Taiko L2 允许在同时提出多个块时进行容错。

  • 区块验证:因为所有提议的区块都是确定性的,所以可以进行并行证明。一旦验证了该区块的证明,在其正确链接的父块被最终确定后,我们将该区块标记为链上最终确定。

该协议的一个基本要求是重建当前状态所需的所有数据,从而创建和附加新区块,并且所有的数据能够在以太坊上公开可用。此外,证明者可以仅使用以太坊上的公共数据来生成证明。依靠以太坊公共数据并为所有潜在参与者提供公平的竞争环境,使得 Taiko L2 保持去中心化。

一个普遍的现象是 EVM 计算、以太坊数据结构和嵌入式密码学等许多方面对 ZK-SNARK 并不友好,而且证明效率低下。克服这些挑战一直是该领域许多人努力工作的目标,这是在不同类型的 ZK-EVM 在兼容性中做出的主要权衡。例如 type-1 生成证明的速度最慢,但具有完美的兼容性和未来证明能力;其他类型生成证明的速度要快得多,但会失去不同程度的兼容性和未来证明能力。

官方链接:

Subscribe to fen yun
Receive the latest updates directly to your inbox.
Mint this entry as an NFT to add it to your collection.
Verification
This entry has been permanently stored onchain and signed by its creator.