探索 Layer2:深入研究 zkEVM 及 zkSync

撰文:

GM anon!

你可能已经听了很多关于 L2 和 zkEVM 的讨论。但它们到底是什么,你为什么应该关注?

让我们一起探索 L2 和 zkEVM 的加密终局。

TL;DR

  • 以太坊致力于发展以 Rollup 为中心的路线图,以 L2 解决其可扩展性问题

  • Danksharding 将完全解放 L2 的潜力,带来许多机会

  • 尽管技术复杂性较高,但 ZK Rollup 在多方面比 Optimistic Rollup 更好

  • zkSync Era 是 zkEVM 的先驱之一,已经推出了它的主网。主要的技术亮点包括原生账户抽象(native account abstraction)、强大的 LLVM 编译器、优越的数据压缩,以及对数据可用性(zkPorter)和可扩展性(ZK Stack)的独特解决方案

  • 自主网发布以来,zkSync Era 已经看到了强劲的生态系增长:300+ 正在开发的 dapps, 5.6 亿美元的 TVL,和来自 126 万个独特的存款地址

  • zkSync Era 拥有强大的生态系资源,自成立以来已募集了 4.58 亿美元的资本,并得到许多行业领导者的支持

为什么需要了解 Layer 2?

我们都知道以太坊存在可扩展性的问题—在使用高峰期,它会出现堵塞。最近的一个例子是 2022 年 5 月 1 日 BAYC 的 Otherside 土地销售,当天 gas 价格被大幅推高,达到了惊人的 78,999 Gwei(熊市通常看到的 gas 价格为 20-30 Gwei),很多人支付了超过 3 个 ETH 才能铸造他们的土地。

来源:Etherscan

问题的核心在于以太坊有限的区块空间(block space),这些区块空间以「gas」为单位来衡量。需要更多计算能力才能执行的交易需要更多的 gas,而 gas 通过以太坊网络设定的动态费率及基础费用转化为 ETH。

目前,每个以太坊区块最大为 3000 万 gas。虽然这个最大限制确保区块可以更快的被打包并广播,但也限制了交易的数量和复杂性。

以太坊曾试图用分片(我们称之为分片 1.0)来解决其可扩展性问题,将以太坊转变为 64 个并行处理的分片,就像 64 条链同时执行区块一样。

但是,这种设计引入了不必要的复杂性—每个分片都有独立的提议者(proposer)和委员会(committee),导致了较差的用户体验和潜在的攻击点。

由于 Layer 2 解决方案的兴起,以太坊转向了以 rollup 为中心的路线图以改善可扩展性。此外,以太坊研究员 Dankrad 提出了一种新的分片设计,被称之为 Danksharding,它将进一步解放 Layer 2 rollup 的潜力。

以太坊放弃原来的 64 个分片设计,现在将交易卸载到 Layer 2,让 Layer 1 主链专注于确保 L2 的数据可用性(data availability),从而解决了有限的区块空间问题。

这就是为什么最近 L2 一直备受关注 — 它对于以太坊的可扩展性解决方案至关重要,同时保持了去中心化和安全性。

随着以太坊全面实施 danksharding,它将解放 L2 的全部潜力,并为行业提供许多机会。

L2 行业概览

L2 解决方案,本质上是增强以太坊可扩展性的解决方案,可以大致分为四个类别:

数据上链 vs 链下数据

虽然 L2 解决方案是以太坊的「第二层」,但它仍然是一个独立的区块链。如果 L2 上的状态改变数据并未存储在 L1 链上,数据就无法被验证,我们则必须「信任」L2 节点有以诚信行事,因此这不是最理想的去中心化机制。

若将数据存储在链上,则 L2 上的状态可以被验证,这种解决方案被称为 rollup,是更佳的去中心化方案,因此近年来引起了社群的关注。

ZK rollups vs Optimistic rollups

为了避免花太多时间探讨过于艰涩的技术问题,我们不会深入到 ZK(零知识)背后的 SNARKs & STARKs 技术。

简单来说,ZK证明使Bob能够说服Alice一个声明是真实的,而不需要透露除了声明以外的任何额外信息。

想象一下,Bob向一位红绿色盲Alice展示他能够区分红球和绿球。Alice可以标记两个球的颜色,并将两颗球在背后互换。若Bob每次都能正确识别颜色,这证明他确实能够看出差异。

欺诈证明(Fraud Proofs)则是被用于optimistic rollup。欺诈证明先假设一个声明是真的,除非在一定的时间内被挑战和推翻。

如果我们比较两个技术,为什么ZK rollup近期开始受到大量的关注?

  • 显著缩短的资金提现周期。由于欺诈证明有7天的挑战期,Optimistic rollup(例如 Arbitrum、Optimism)提现需要等待7天才算完成。相反,ZK rollup可以迅速处理提款,因为一旦计算出有效证明(validity proof)并提供给L1,提款就被认为是有效的
  • 成本效率。Optimistic rollup 需要所有 L2 交易被压缩并提交到 L1 上以便后续验证,而 ZK rollup 只需要发布跟计算 L2 状态的相关交易,使 ZK rollup 显著更具成本效益。换句话说,Optimistic rollup 上的更多交易会导致更高的成本,但由于 ZK rollup 的证明生成和批量交易发布的成本是固定的,因此在实现一定网络效应后,ZK rollup 的使用上会更便宜
  • 超级可扩展性(hyper-scalability)。Optimistic rollup 无法超出当前可扩展性的天花板。然而,ZK rollup 可以使用 ZK 证明潜在地提高它们的可扩展性到 L3 甚至 L4
  • ZK rollup 和 L1 之间的同步。通过零知识证明,ZK rollup 可达到即时最终性(instant finality),这让 ZK rollup 和 L1 以太坊执行之间进行同步调用变为可能性。这为许多令人兴奋的设计开启了可能性,比如共享 L1/L2 流动性(例如,dAMM)

ZK rollups 和 zkEVM

尽管 ZK rollup 拥有巨大的潜力,但其生态系的增长却受到了该技术的复杂性以及 EVM 兼容性问题的阻碍。因此有了 zkEVM 的开发—一种旨在使 ZK rollup 与 Ethereum 的智能合约兼容的解决方案。

zkEVM 项目

2023 年 3 月对 zkEVM 来说是一个重要的里程碑,包括 Scroll,Immutable,Taiko,zkSync,Polygon zkEVM 和 Linea 在内的多个参与者宣布了重大的进步和令人兴奋的新闻。

Source: Galaxy Digital

在这些项目中,zkSync 已经启动了其主网,并实现显著的成长,标志着 zkEVM 领域的重大进步。

zkSync 概览

zkSync 是由 Matter Labs 团队开发的 ZK rollup 解决方案。

Matter Labs 由 Alex Gluchowski 和 Alex Vlasov 在 2018 年创立,最初启动的是在 2020 年 12 月的 zkSync Lite(也被称为 zkSync 1.0)。这是一个为支付设计的简单 ZK rollup。

在 2021 年,他们向世界介绍了「zkEVM」的概念,并在 2023 年 3 月成功地推出了他们的 zkEVM 主网, zkSync Era∎(也被称为 zkSync 2.0)。

自从它的诞生以来,zkSync Era 在跨链资产和用户数量方面展示了显著的增长。

那么,是什么使 zkSync Era 独树一帜呢?让我们深入了解其技术亮点。

zkSync Era 的技术亮点

  • 原生账户抽象(account abstraction)。正如我们在过去的研究报告中中所述,账户抽象和智能合约钱包对于区块链走入主流市场至关重要,人们不再需要纪录复杂的 seed phrase,并实现用任何代币支付 gas 费用、自动 / 批量交易和费用补贴等功能。虽然 Ethereum 已部分实现了 ERC-4337 以进行账户抽象,但 zkSync Era 通过其自己的虚拟机(virtual machine)从一开始就支持了账户抽象

  • 强大的 LLVM 编译器。 zkSync Era 并没有寻求与 EVM-equivalence,而是优化了其内部虚拟机以提高 ZK 的性能。然而,这并不意味着在开发环境上进行妥协。 zkSync Era 已大力投资构建了第一个基于 LLVM 的编译器,以尽可能简化开发者的任务。 LLVM 编译器被设计用于 EVM 语言(Solidity、Vyper、Yul),最终将支持其他语言,如 C++ 和 Rust

  • 优越的数据压缩。与其他将整个交易历史发布在 L2 的 rollup 不同,zkSync Era 只发布状态变化,从而减少了对区块空间的需求,相应地也减少了数据可用性的成本。此外,Optimistic Rollup 在交易激增时将面临高昂的 gas 费用(因为它们必须将所有交易发布在 L1 上),zkSync 则没有这个问题,因为它只需发布状态变化而用披露所有交易

除了以上的关键技术亮点外,zkSync 也在数据可用性(通过 zkPorter)和可扩展性(通过 ZK Stack)方面提供了独特的解决方案,我们稍后会进行介绍。

但首先,让我们看一下在 zkSync 上交易是如何完成的。

交易周期

在 zkSync Era 中,交易过程包含了几个关键步骤。以下是是简化的流程概览:

  • 用户在 L2 上启动交易
  • 运营商(operator)处理这些交易,将它们在 L2 上整合成区块
  • 运营商将几个 L2 区块分组成一个批次(batch),并将其发布在 L1 上
  • 运营商为这些交易计算出一个 ZK 证明,并将此证明提交给 L1 智能合约
  • 一旦验证了该 ZK 证明,交易就被视为最终确定,状态更改在 L1 上被执行及接受

这里要注意的一个关键是 L2 交易在 L1 上能很快被确认。一旦 ZK 证明被提交并验证后,交易就达到了最终状态。

zkSync Era 的数据可用性解决方案 – zkPorter

如我们前面所述,未来 Ethereum L1 的角色将是确保 L2 的数据可用性。然而,L1 上有限的区块空间对 L2 的吞吐量构成了瓶颈。

为了应对这个挑战,Matter Labs 在 2021 年 4 月提出了一个链下的数据可用性解决方案,名为 zkPorter。

zkPorter 背后的概念很简单。 Matter Labs 建议创建一个叫做 zkPorter 的独立链,而不是将所有 L2 数据发布在 L1 上,因为这会在 L1 产生额外的 gas 费用,且受到 L1 的区块空间限制。

这条链将会管理数据,显著降低交易成本并提高交易吞吐量。另外,zkPorter 上的账户可以与 zkSync Era 上的账户或合约无缝交互,进一步提升用户体验。

探索 Layer2:深入研究 zkEVM 及 zkSync

但是,如果我们将数据保留在链下,我们如何确保数据可用性呢?

Matter Labs 建议使用一个基于证明权益(PoS)系统和 zkSync 代币(表示如果 Matter Labs 推出 zkPorter 就很有可能会发布治理代币,这也是为什么整个社群都在猜测 zkSync 将会空投)来管理这个机制。

zkSync 代币持有者可以抵押他们的代币成为守护者(Guardians)。这些守护者监视 zkPorter 的状态,签名区块以确认 zkPorter 账户的数据可用性。任何数据验证的失败都会导致守护者被处罚,激励他们持续保持可靠的数据可用性。

你可能会问 – 这个机制安全吗?

虽然 zkPorter 的安全性不如 L1 强大(因为它依赖额外的 PoS 机制以及守护者进行数据可用性确认),但它仍然提供足够的安全措施,因为(1)rollup 方面保持了与 L1 相同级别的安全性,和(2)zkPorter 的安全性超过了其他 PoS 系统,因为守护者不能挪用资金 – 他们只能冻结 zkPorter 的状态,使其对潜在的攻击者的吸引力降低。

另外,用户可以选择将他们的数据完全保留在 L1 链上,不参与 zkPorter。

预计 zkPorter 的实施将进一步提升 zkSync Era 的可扩展性。

zkSync 欲一统 zkEVM 江湖的野心 – ZK Stack

2023年6月26日,zkSync 宣布推出了 ZK Stack,试图创建最强大的ZK生态系。

ZK Stack 主要提供 2 个核心功能:

Hyperchains。通过其开源的模块化框架,ZK Stack 让开发者可以便捷地根据 zkSync Era 的代码 构建自定义的 ZK L2/L3(称为 Hyperchain)。

Hyperbridges。所有的 Hyperchain 通过 Hyperbridge 互相串联,创建一个强大的生态系。

探索 Layer2:深入研究 zkEVM 及 zkSync

我们知道,「桥」这个词听起来很可怕且脆弱,但是与其他桥的设计不同,Hyperbridge 由 ZK 证明驱动,以无需信任的方式保证其安全。

怎么做到的呢?与其依赖中间件进行跨链讯息传递,我们发起跨链交易的源链的状态改变包含在 ZK 证明中,这对于目标链来说已经足够进行无信任验证。

一个将代币从 L3 跨链到 L2 的简化示例如下:

  1. 在 Hyperchain C(L3)上发起一笔跨链交易,代币因此被销毁。包含该链状态改变的 ZK 证明被提交给 Hyperchain A(L2)

  2. L2 也将其状态改变 ZK 证明提交给 L1

  3. 考虑到 Hyperchain B(L2)可以访问 L1 的哈希(Hash),它可以验证 ZK 证明,从而确认在 Hyperchain C上已经销毁了代币。因此新的代币在 Hyperchain B 上被铸造

  4. Hyperchain B 将状态改变的 ZK 证明提交给 L1,供未来参考

ZK Stack 使开发者可以轻松地构建自己的 Hyperchain,聚集强大的生态系,并通过其原生的账户抽象化功能提供优秀的用户体验,且成本低廉。

复杂的技术细节就说到这里,我们现在来看看 zkSync 的生态系和资源。

探索 zkSync 的生态系和资源

评估一个 L2 链的实力需要了解其生态系:

  • zkSync Era 拥有一个 强大的生态系,已经有 300+ 的 dApps 在其上构建。

  • 根据 L2BEAT,截至 2023 年 7 月 16 日,自从 2023 年 3 月 24 日 alpha 版本启动以来,TVL 已经显著增长至 5.6 亿美元。重要的是,这种增长是由于真实的 ETH 需求,而不仅仅是代币升值。它是目前在 TVL 方面排名第三的 L2,也是最大的 ZK rollup。

  • 截至 2023 年 7 月 16 日,它已经吸引了总共 126 万的存款地址。 (Dune @tomwanhh)

  • 通过一系列的融资,Matter Labs 已经筹集了总共 4.58 亿美元,包括与 BitDAO 合作的 2 亿美元生态系基金,以及来自各种投资者的 2.58 亿美元资本。这个巨大的资本储备使 Matter Labs 能够激励早期的开发者和使用者。

  • Matter Labs 得到了包括 Blockchain Capital, Dragonfly, Lightspeed, a16z, 1kx, Crypto.com, Consensys, ByBit, OKEx 以及 AAVE, Paraswap, Lido, Gnosis, Aragon 等许多其他创始人和领导者的支持。

与 Polygon zkEVM 的比较

值得注意的是,Polygon zkEVM 是另一个已经推出主网的 zkEVM。

虽然两者都是 ZK rollups/zkEVMs 并计划引入一个独立的数据可用性链,但在技术和生态系方面存在重要的差异值得探讨。

技術

  1. EVM 兼容性

Vitalik 之前已经定义了 4 个层级的 EVM 兼容性:共识级别兼容(类型1),完全 Bytecode 级别兼容(类型2),部分 Bytecode 级别兼容(类型3),以及语言级别兼容(类型4)。

Polygon zkEVM 采用部分 Bytecode 兼容(类型3),使得大部分的基础设施可以直接应用到 L2,并确保与大多数以太坊应用完全兼容。

另一方面,zkSync Era 在语言级别兼容(类型4)上运作。它采用了 LLVM 编译器将 Solidity 代码转化为与他们的虚拟机兼容的 zkSync 自定义 bytecode。权衡的是,虽然 zkSync Era 不是以太坊 bytecode 兼容的,但它的 bytecode 被优化为有效生成 ZK 证明,从而导致更短的证明时间,并且要成为 zkSync Era 上的证明者的要求比 Polygon zkEVM 更低。

  1. 账户抽象

通过其独特的虚拟机,zkSync Era 原生支持账户抽象,而 Polygon zkEVM 只能通过以太坊 ERC-4337 升级后才支持。

  1. ZK 证明

zkSync Era 使用 SNARK 生成证明,与 Polygon zkEVM 的 STARK 使用形成对比。

生态系

自从 2023 年 3 月启动以来,zkSync Era 快速积累了显著的 5.6 M 美元 TVL 和总计 126 万的存款者。这可能可以归因于用户对 zkSync 代币空投的期待,例如 zkPorter 中的 Guardian PoS 设计。

相反,预计 Polygon zkEVM 将由 $MATIC 进行治理。

总结

鉴于以太坊的 Rollup-centric 路线图和 danksharding 的实施,我们对 L2 的发展持乐观态度。

在 L2 解决方案中,我们认为 ZK rollups 持有显著的潜力,这得益于 ZK 证明设计带来的好处。

作为推出 zkEVM 主网的领导者之一,zkSync Era 开局良好,增长势头强劲,绝对是值得我们关注的有前途的 zkEVM。

未来,我们应该密切关注其原生账户抽象的性能、使用 LLVM-编译器的开发环境、成本效率以及其zkPorter 和 ZK Stack 的未来发展。

zkSync 相关连结

zkSync Era:

zkSync Era docs:

zkSync Era bridge:

zkSync Era wallet portal:

zkSync Era block explorer:

zkSync ecosystem:

zkSync Lite:

Matter Labs:

Matter Labs medium:

参考资料

 

承接区块链项目定制开发

微信:btc9767

QQ :1330797917

TELEGRAM: BTCOK9

承接区块链项目定制开发


qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台-javagopython毕设 » 探索 Layer2:深入研究 zkEVM 及 zkSync