本文深入探讨了以太坊的可扩展性问题,并介绍了各种解决方案,包括侧链、Optimistic Rollup 和 ZK Rollup。重点解释了 zkEVM 的概念及其优势,zkEVM 是一种与 EVM 兼容的零知识 Rollup,它结合了 ZK Rollup 的优点和 EVM 的开发体验,为以太坊的可扩展性提供了潜在的解决方案。
在过去的一周里,启动与EVM兼容的ZK Rollup的竞赛愈演愈烈:
什么是zkEVM?我该如何使用它?
让我们深入探讨一下。
以太坊主网每秒大约能够处理 15 笔交易。我们都知道这意味着什么;高昂的Gas费和漫长的最终确认时间,导致糟糕的用户体验。
根据你目前对这个问题的深入程度,你可能已经熟悉解决这个问题的方案;侧链、Layer 2、Rollup……所有这些好东西。
这些方案的构建都是因为以太坊目前对于它能够处理的能力来说太受欢迎了。尽管如此,以太坊基金会已经同意他们不会为了提高可扩展性而牺牲安全性/去中心化。
这种去中心化、安全性和可扩展性之间的平衡被称为可扩展性不可能三角。以太坊的长期愿景是实现所有这三个特性。
可扩展性指的是以太坊处理交易需求的能力。如果能更快地处理更多的交易,就会发生两件事:
那么,如果我们不牺牲去中心化,我们该如何使以太坊更具可扩展性呢?有多种不同的解决方案,它们要么已经在今天被使用,要么处于研究/测试阶段,要么最近已发布到主网😉 。
让我们首先探索一些现有的解决方案,为什么它们自身存在问题,然后深入研究 ZK EVM,将其作为扩展解决方案的潜在“最终 Boss”。
为了解决以太坊的可扩展性而构建的大多数解决方案通常会牺牲可扩展性不可能三角中的其他两个特性。
“它的扩展性更好……但是 <此处插入缺点>”, 通常是这样的。
让我们仔细看看其中的每一个。
侧链是与以太坊完全独立的区块链,具有不同的历史、路线图,甚至共识算法。
为了使侧链真正成为侧链,它需要有一个双向桥,将其与以太坊主网连接,数据可以在两条链之间传输。
Polygon 的 PoS (权益证明)是侧链最受欢迎的例子。
Polygon PoS 拥有比以太坊低约 10,000 倍的每笔交易 Gas 费,以及高约 450 倍的每秒交易量。Polygon PoS 非常棒。世界上一些最大的品牌都选择 Polygon 作为合作伙伴; Adidas、Meta、Stripe、Reddit 等等。
然而,侧链牺牲了一定程度的去中心化或安全性来实现更高的吞吐量。
你可以在 L2BEAT 等网站上更深入地了解扩展解决方案的风险评估。例如,如果我们看一下 Polygon PoS,我们可以看到这个:
此外,尽管做出了这些牺牲,但 Polygon PoS 过去也曾多次在可扩展性方面遇到困难。
例如,在 2022 年,一款名为 Sunflower Farmers 的边玩边赚游戏在占据了网络 40% 以上Gas费后,导致Gas费飙升。
https://twitter.com/PhABCD/status/1478613172487602179
最近,由于 Polygon PoS 的高需求,交易因 Gas 估算不正确而从用户的钱包中失败。
https://twitter.com/moo9000/status/1626195644573425665
Rollup与侧链的不同之处在于,它们与以太坊不是“分离的”。相反,它们将交易结果发布到以太坊主网上;从而在此过程中获得以太坊安全性的全部好处。
Rollup 的工作原理是允许运营商在主 EVM 之外将多个链下交易捆绑在一起,然后将它们全部提交给以太坊;在可扩展性方面实现了 10 到 100 倍的改进。
从技术层面来看,这些批次被提交到存储在以太坊主网上的“rollup”智能合约;该合约跟踪Rollup的状态。
目前存在两种 Rollup:
乐观Rollup
零知识 (ZK) Rollup
桥允许你在以太坊主网和Rollup之间传输资金或数据。
乐观Rollup,如 Optimism 和 Arbitrum One,之所以被称为“乐观”,是因为它们默认情况下会假设它们Rollup的交易是有效的。
它们不会发布任何交易有效的证明到以太坊。相反,交易是“在被证明有罪之前都是无辜的”,这包括一个欺诈证明方案,可以检测无效交易。
各方可以利用“挑战期”通过提交欺诈证明来质疑Rollup交易的结果,该证明可以查看该Rollup中是否发生了欺诈交易。
如果检测到欺诈交易,则会重新执行交易并更新Rollup的状态。提交欺诈交易的一方将受到处罚,从而在生态系统中创建一种激励机制。
好的,这听起来很棒。缺点是什么?
由于存在这个挑战期(通常约为 7 天),因此你必须等待挑战期结束后才能通过桥将提款执行到以太坊主网。
在某种程度上,还需要依赖至少一个诚实的人来检查欺诈交易以挑战Rollup的状态。
好了,我们马上就要到精彩的部分了。
ZK Rollup 与乐观 Rollup 不同,它确实会发布有效性证明 来证明它们发布到以太坊主网的更改的正确性。
这些有效性证明是“零知识证明”;这意味着 Rollup 提供的声明的细节可以被证明是真实的,而无需使用 zk-SNARKs 或 zk-STARKs 揭示该声明的实际内容。
了解更多关于有效性证明如何在 zk-rollup 中工作的信息。
这消除了对挑战期的要求,因为一旦Rollup合约验证了有效性证明,交易就可以被证明是真实的。这意味着你可以从 ZK Rollup 中提取资金到以太坊主网而无需等待!
太棒了,但有什么陷阱?
与我们到目前为止讨论的其他解决方案不同,ZK Rollup 与 EVM 不兼容。这意味着你不能只是将你的 Solidity 合约指向 ZK Rollup 并发布它,这对于我们描述的所有其他解决方案来说是可以做到的。
然而对于其他解决方案,你可以简单地更改部署脚本的 URL,并将完全相同的代码部署到以太坊、Polygon PoS、Optimism、Arbitrum 等。
这就是问题所在。你不能使用 ZK Rollup 执行此操作……直到现在!
进入 zkEVM。
未使用 ZK Rollup 的主要原因是它们过去与 EVM 不兼容,这使得在其上构建任何东西都极其困难。
如果我到目前为止的解释做得很好,那么“zkEVM”这个名称对你来说应该是不言自明的了……zkEVM 是一种零知识 Rollup,它与 EVM 兼容。
zkEVM 能够实现 ZK Rollup 的所有优势,并且具有与在 Polygon 或以太坊等任何其他 EVM 链上构建相同的开发者体验。结合了两者的优点,并可能为可扩展性不可能三角提供答案。
这项技术解锁了所有现有的 web3 DApp,只需将其部署脚本更改为不同的 RPC URL,然后直接发布到 zkEVM,就像他们现在所做的那样。
zkEVM 处理交易执行的批处理,并发布加密证明,证明这些交易的结果对于以太坊主网来说是正确的,同时保持 EVM 兼容性。
这意味着以太坊或 Polygon PoS 上的每个智能合约现在也可以部署到 zkEVM。大大提高了智能合约和使用这些合约的 DApp 的可扩展性。
“从中长期来看,随着 ZK-SNARK 技术的改进,ZK Rollup 将在所有用例中胜出。” - Vitalik Buterin
随着 ZK EVM 的所有炒作和发布,你实际上如何在它上面构建?
在 thirdweb (我现在工作的地方),我们刚刚发布了对任何 EVM 链的支持,包括所有 zkEVM,如 Polygon zkEVM、zkSync、Scroll 等。
可以考虑查看下面这个指南,它由我出色的同事和朋友 Avneesh Agarwal 撰写,并由我帮助审查,它向你展示了如何:
将 ZK EVM 网络添加到你的钱包
将资金从以太坊桥接到 ZK Rollup
将你的 Solidity 智能合约部署到 ZK EVM
https://blog.thirdweb.com/guides/how-to-deploy-a-smart-contract-to-polyon-zkevm-testnet/
或者观看这段 3 分钟的视频,了解如何在 Polygon 的 zkEVM 上发布 NFT 系列:
https://twitter.com/jarrodWattsDev/status/1627520959854022656
就这样!我尽力将过去几周阅读的关于以太坊扩展解决方案的内容浓缩成一篇 5 分钟的文章供你阅读:)
你怎么看?zkEVM 是扩展以太坊的圣杯吗?或者我们才刚刚开始?请告诉我!
如果你喜欢这篇文章,很快就会有更多类似的文章发布。可以考虑关注我,以便在发布时收到通知!
https://hashnode.com/@JarrodWatts
- 原文链接: blog.jarrodwatts.com/zke...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!