作者:Panzerkampfwagen-VI_238 | 来源:互联网 | 2023-08-13 14:18
为了方便大家阅读,可预览目录Part 1:optimistic 和ZK-rollups 的主要区别?Part 3:ZK-rollups 如何与以太坊交互?
正文开始
同样作为 layer2 扩容解决方案,optimistic 和零知识汇总(zero-knowledge rollups)主要有哪些区别?
optimistic 和ZK-rollups都将数百个交易捆绑 ( 或“汇总”) 到 layer1 的单个交易中。Rollup 交易在 layer1 之外执行,但交易数据被发布到 layer1。主要区别在于将哪些数据发布到 layer1 以及如何验证数据。有效性证明 ( 用于 ZK-rollups) 在链下运行计算并发布证明,而欺诈证明 ( 用于 optimistic rollups) 仅在怀疑有错误且必须检查时在链上运行计算。目前,大多数 ZK-rollups 都是特定应用程序的,而 optimistic rollups 在很大程度上是可推广的。
对于optimistic rollups在之前的文章中我们详细介绍过,本文不再赘述。今天我们重点介绍什么是零知识汇总,以及如何与以太坊进行交互。
零知识汇总 (ZK-rollups) 是 2 层扩容解决方案,可通过将计算和状态存储移至链下来提高以太坊主网上的吞吐量。ZK-rollups 可以批量处理数千笔交易,然后只将一些最小的汇总数据发布到主网。这个汇总数据定义了应该对以太坊状态进行的更改以及一些加密证明这些更改是正确的。 零知识汇总 (ZK-rollups) 将交易打包(或“汇总”)成链下执行的多个 batch 中。链下计算减少了必须发布到区块链的数据量。ZK-rollups 操作者提交表示 batch 处理中的所有交易所需的更改总结,而不是单独发送每个交易。他们还产生有效性证明(validity proofs )来证明其变更的正确性。有效性证明以密码学的确定性证明,对以太坊状态的提议更改确实是执行 batch 处理中所有交易的最终结果。
ZK-rollups 的状态由部署在以太坊网络上的智能合约维护。要更新此状态,ZK-rollups 节点必须提交有效性证明以供验证。如前所述,有效性证明是一种加密保证,即汇总提出的状态更改确实是执行给定批次交易的结果。这意味着 ZK-rollups 只需要提供有效性证明来完成以太坊上的交易,而不是像 optimistic rollups 那样将所有交易数据发布到链上。将资金从 ZK-rollups 转移到以太坊时没有延迟,因为一旦 ZK-rollups 合约验证了有效性证明,就会执行退出交易。相反,从 optimistic rollups 中提取资金会受到延迟,以允许任何人使用欺诈证明来挑战退出交易。ZK-rollups 将交易作为 calldata 写入以太坊。calldata 是存储智能合约函数外部调用中包含的数据的地方。calldata 中的信息发布在区块链上,允许任何人独立重建汇总的状态。ZK-rollups 使用压缩技术来减少交易数据——例如,账户由索引而不是地址表示,这样可以节省 28 字节的数据。链上数据发布是 rollups 的一项重要成本,因此数据压缩可以降低用户的费用。ZK-rollups 链是一种在以太坊区块链之上运行的链下协议,由链上以太坊智能合约管理。ZK-rollups 在主网之外执行交易,但定期将链下交易 batch 提交到链上 rollup 合约。这个交易记录是不可变的,很像以太坊区块链,并形成了 ZK-rollups 链。
- 链上合约:如前所述,ZK-rollups 协议由运行在以太坊上的智能合约控制。这包括存储汇总块、跟踪存款和监控状态更新的主合约。另一个链上合约(验证者合约)验证区块生产者提交的零知识证明。因此,以太坊充当 ZK-rollups 的基础层或 L1。
- 链下虚拟机 (VM):虽然 ZK-rollups 协议存在于以太坊上,但交易执行和状态存储发生在独立于EVM的单独虚拟机上。这个链下 VM 是 ZK-rollups 上交易的执行环境,并作为 ZK-rollups 协议的第二层或 L2。在以太坊主网上验证的有效性证明保证了链下 VM 中状态转换的正确性。
ZK-rollups 是“混合扩容解决方案”——独立运行但从以太坊获得安全性的链下协议。具体来说,以太坊网络强制执行 ZK-rollups 状态更新的有效性,并保证每次更新 rollup 状态后数据的可用性。因此,ZK-rollups 比纯链下扩展解决方案要安全得多,例如负责其安全性的侧链,或也使用有效性证明验证以太坊上的交易的,但将交易数据存储在其他地方的 validiums。ZK-rollups 依赖主要的以太坊协议来实现以下目的:ZK-rollups 将链下处理的每笔交易的状态数据发布到以太坊。有了这些数据,个人或企业就可以复制汇总的状态并自己验证链。以太坊将这些数据作为 calldata 提供给网络所有参与者。尽管如此,将数据存储在链上仍然很重要,因为它允许对 L2 链的状态进行无需许可的独立验证,从而允许任何人提交批量交易,防止恶意运营商审查或冻结链。用户需要在链上与汇总进行交互。如果无法访问状态数据,用户将无法查询其帐户余额或启动依赖于状态信息的交易(例如,取款)。以太坊充当 ZK-rollups 的结算层:只有当 L1 合约接受有效性证明时,L2 交易才会最终确定。这消除了恶意运营商破坏链的风险(例如,窃取汇总资金),因为每笔交易都必须在主网上获得批准。此外,以太坊保证用户操作一旦在 L1 上完成就不能被撤销。大多数 ZK-rollups 使用“超节点”(运营商)来执行交易、生产 batch 并将区块提交给 L1。虽然这确保了效率,但它增加了审查的风险:恶意的 ZK-rollups 运营商可以通过拒绝批量包含用户的交易来审查用户。作为一项安全措施,ZK-rollups 允许用户在认为自己被运营商审查时直接向主网上的 rollup 合约提交交易。这允许用户强制退出 ZK-rollups 到以太坊,而无需依赖运营商的许可。近期备受关注的即将发布的 ZK 项目就包括 zkSync 、StarkWare 和 Polygon 的 zkEVM。zkSync 是一个 ZK-rollups,其完整主网甚至还没有启动,生态系统就已经很庞大了。zkSync 的下一个阶段是 “Fair Onboarding Alpha”,可以在封闭环境中开始部署在 zkSync 2.0 上。
StarkWare 是一个 2 级扩展解决方案,它利用 STARK 证明来减少发送到以太坊区块链的信息量,缓解区块链拥堵。SnarkNet 和 zkSync 一样,利用 ZK-Rollup 技术来实现这一目标。StarkWareLtd 即将推出 Starknet 代币。Polygon 收购了 Hermez Network(一个 ZK-rollups),以致力于他们自己的 zkEVM 产品。zkEVM 是一个虚拟机,以透明的方式执行以太坊交易,包括具有零知识验证的智能合约。zkEVM 增加了一个已经扩展的生态系统,该系统正在迅速发展。由于 Hermez 已经与 Polygon 合并,$MATIC 代币将为该网络提供动力。ZK 是以太坊扩展的未来,随着 zkSync、Starknet 和 Polygon zkEVM 即将推出的代币,ZK-rollup 加密叙事继续深入布局。 更多区块链知识与干货,关注tokenview.io 。
参考文章https://ethereum.org/en/developers/docs/scaling/zk-rollups/#zk-rollups-and-ethereum
温故而知新小白必看| 2023 年值得关注的 5 个 WEB3 概念NFT 订阅上线| 三种订阅主题,NFT 链上活动随时看!
详解 EIP-4361:什么是以太坊登录?|Tokenview
零知识证明| 什么是 ZK-STARK 以及有哪些技术优势?
Azuki 推特遭黑客入侵,不到半小时窃取了超 75 万美元以太坊 PoS 里的最大可提取价值(MEV),如何缓解 MEV 的影响?|Tokenview
Tokenview.io 是全球最大的全币种区块链数据平台。Tokenview.io 包含120+条公链的链上数据,涵盖了 BTC 系列,ETH 系列,TRX, Layer2 公链,Cosmos 生态,zk-SNARKs, 隐私链等各种公链。链上数据全部由自建公链节点集群提供,包括交易数据、智能合约数据、链上统计数据,Defi,NFT 等,集丰富的区块链数据种类和数量于一体,接口以 Json 展示,结构化易于使用,数据准确度高,经多层校验精准完备。
【加入我们】
Website:https://tokenview.io
Twitter:https://twitter.com/tokenview2018
Telegram 中文:https://t.me/tokenview
Telegram英文:https://t.me/tokenview_en
Discord:https://discord.gg/9WCeZqdVqu
微信公众号:TokenviewLabs