比特派官网app下载|ZK-EVM 的类型

作者: 佚名 分类: bitpie百科 发布时间: 2022-11-08 11:25

有许多项目正在使用 ZK-SNARK 技术来创建类似于以太坊的交易执行的加密货币证明。这些项目的目标是促进以太坊区块链的验证或构建更具可扩展性的以太坊版本。这些项目的不同之处在于它们如何权衡实用性和速度。在本文中,我们将介绍目前正在尝试构建与 EVM 兼容的 Zk Rollup 的项目,以及项目的兼容性级别,让我们开始吧

类型 1 — 完全等价于以太坊

1 型 ZK-EVM 的设计与以太坊系统完全相同。他们不会更改以太坊的任何部分来促进测试生成。

推荐阅读 1

Web3 中你应该知道的 35 个术语

2

了解区块链可扩展性?如何计算它哪个区块链最具可扩展性?

谁在建造它?

隐私和扩展探索团队

优势:完美兼容

Type 1 ZK-EVM 的目标是能够像现在一样验证以太坊区块。这意味着包含了所有的交易执行和智能合约和账户逻辑,但不包含信标链共识逻辑。从长远来看,在 2 型或 3 型 ZK-EVM 中测试的对以太坊的修改可能会被引入到以太坊本身,但这种重新架构也有其自身的复杂性。

缺点:证明时间

以太坊是一种加密货币,最初设计时并非对 ZK 友好。这意味着以太坊协议的许多部分都需要大量的计算能力来进行 ZK 证明。1 型以太坊旨在完全复制原始以太坊,因此无法改善这些低效率。目前,为以太坊区块制作证明需要花费数小时。这个问题可以通过巧妙的工程或改变以太坊的工作方式来解决。

类型 2 — 完全等效于 EVM

Type 2 ZK-EVM 试图与以太坊虚拟机完全一样,但它们有一些不同之处。他们希望与现有应用程序兼容,但更容易开发新应用程序并更快地生成证明。

谁在建造它?

Scroll 的 ZK-EVM和Polygon Hermez(他们还没有成功,所以暂时,这两个项目都最好考虑类型 3。)

优势:VM 级别的完美等效性

Type 2 ZK-EVM 对 EVM 本身无法直接访问的数据结构进行更改。这意味着在以太坊上运行的应用程序仍然可以在 Type 2 ZK-EVM 汇总上运行,但需要进行一些修改。你将无法按原样使用以太坊执行客户端,但你可以通过一些修改来使用它们,并且你仍然可以使用 EVM 调试工具和大多数其他开发人员基础设施。

⚫ 缺点:改进但仍然很慢证明时间

2 类 ZK-EVM 比 1 类 ZK-EVM 更快,因为它们移除了依赖于复杂且对 ZK 不友好的密码学的部分以太坊堆栈。他们可能会使用不同的哈希函数并修改状态树来存储代码哈希和 keccak,从而无需验证哈希来处理 EXTCODEHASH 和 EXTCODECOPY 操作码。这些修改显着提高了证明者的时间,但它们并不能解决所有问题。

类型 2.5 — EVM 等效项,但天然气成本除外

有两种方法可以提高使用 EVM 的交易速度。一是增加难以 ZK 证明的特定操作的 gas 成本。这可能会使某些应用程序不兼容,但它比更改 EVM 风险更小。另一种方法是对每个操作可以调用的次数设置硬限制。这更容易实现,但不适用于 EVM 安全假设。

类型 3 — 几乎等效于 EVM

Type 3 ZK-EVM 几乎与常规 EVM 一样好,但它们进行了一些更改以使 EVM 更好且更易于使用。

谁在建造它?

Type 3 ZK-EVM 是一个临时阶段,直到项目可以转移到 Type 2.5。这是因为 Type 3 更简单,没有添加预编译的复杂工作。如上所述,Scroll 和 Polygon 目前属于此类别,尽管预计会随着时间的推移而改变。

⚫ 优势:更容易构建,更快的验证时间

Type 3 ZK-EVM 是 ZK-EVM 的一个版本,它可能会删除一些难以实现的功能。预编译通常位于可以删除的功能列表的顶部。此外,Type 3 ZK-EVM 在处理合约代码、内存或堆栈的方式上也可能存在细微差别。

⚫ 缺点:更多不兼容

Type 3 ZK-EVM 的目标是与大多数应用程序一起工作,只需进行微小的更改。有些应用程序可能需要重写,因为它们使用了 Type 3 ZK-EVM 不具备的功能,或者因为两个虚拟机处理某些事情的方式不同。

类型 4 — 高级语言等效

类型 4 系统是一种创建智能合约的方法,它使用一种高级语言,旨在与 ZK-SNARKS 很好地配合使用。

谁在建造它?

ZKSync和Starknet

⚫ 优势:非常快的证明者时间

从顶层代码开始可以避免在 ZK 中测试每个 EVM 执行步骤的所有不同部分,从而避免开销。这可以大大降低成本并通过更容易证明来帮助去中心化。

⚫ 缺点:更多不兼容

Vyper 和 Solidity 是可以编译下来并在区块链应用程序中使用的语言。但是,这些语言在某些重要方面并不总是与区块链应用程序兼容。例如,合约在 Type 4 系统中可能有不同的地址,这可能会破坏依赖尚未部署的合约的应用程序。此外,手写的 EVM 字节码更难使用,许多调试基础设施无法从 EVM 中继承。

总之,ZkEVM 是构建符合 EVM 的 ZK Rollup 的关键,同时保留多年来与 Solidity 合作证明的代码。不同类型的 ZK-EVM 在与现有基础设施的兼容性和速度之间提供了不同的权衡。有些类型与现有基础设施的兼容性更好但速度较慢,而另一些类型与现有基础设施的兼容性较差但速度更快,因此加密货币空间有必要探索不同类型的解决方案。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!