Cointime

扫码下载App
iOS & Android

区块链扩展的下一个前沿:深入探索ZK Rollups

媒体

原文标题: ZK Rollups: Elephant In the Room

原文作者:Jaehyun Ha

原文编译:深潮 TechFlow

区块链行业的当前状态可以比喻为零知识(ZK)时代。无论你走到哪里,ZK 都很突出,找到不将 ZK 纳入其名称的下一代区块链项目变得越来越罕见。从技术角度看,无可否认,ZK 是一项有前景的技术,能够为更具可扩展性和私密性的区块链生态系统做出贡献。然而,由于 ZK 的复杂技术背景,许多投资者,无论是散户还是机构,常常基于「相信」这看起来很酷、新颖且可能解决区块链三难问题而投资于 ZK 项目,而没有完全理解 ZK 技术如何使每个项目受益。

在这个 ZK 系列中,我们将探讨 ZK rollups 的难以忽视的事实(缺点和劣势)及其有益的应用。首先,我们将解析区块链中 ZK 证明(ZKPs)的两个核心属性:「零知识」和「简洁性」。然后,我们将讨论当前在服务中的大量 ZK rollups 为何没有真正利用「零知识」方面。接下来,我们将研究在哪些领域应用 ZK rollup 比较有害而非有益,避免实施复杂性等众所周知的问题。最后,我们将突出那些有效体现 ZK 原则并实际从使用 ZK 技术中获得明显好处的杰出项目。

回顾:ZK Rollups 中的交易生命周期

Rollup 是一种扩展解决方案,通过在链外执行交易束然后将最新 L2 状态的摘要数据存储在 L1 上来解决 L1 的吞吐量限制。其中,ZK Rollups 的突出特点是能够通过在链上提交链下计算的有效性证明来快速提取资金。在我们深入研究 ZK rollups 的问题之前,让我们简单回顾一下它的交易生命周期。

图 2:ZK rollups 中的交易生命周期来源:Presto 研究中心

1. 每个 L2 用户生成并提交他们的交易给序列器。

2. 序列器聚合并排序多个交易,然后在链下执行这些交易以计算新的 rollup 状态。随后,序列器将这个新的 rollup 状态以「批次」形式提交到链上状态智能合约,并压缩相应的 L2 交易数据成为数据块以确保数据可用性。

3. 这个批次被发送给证明者,证明者创建该批次执行的有效性证明(或 ZKP)。然后,这个有效性证明连同额外数据(即之前的状态根)一起发送到 L1 的验证者智能合约,这有助于验证者识别它正在验证的内容。

4. 在验证者合约检查证明有效后,rollup 的状态会被更新,且已提交批次中的 L2 交易被视为已完成。

(请注意,这种解释是 ZK Rollup 过程的简化版本,每种实现可能因协议而异。如果我们区分角色,L2 中可能有更多实体,如聚合器、执行器和提议者。数据块的层级也可能不同,如块、块组和批次,具体取决于它们的用途。上述解释假设了一个情况,即一个集中式序列器具有强大的权威来执行交易,并且还生成统一的数据块格式为批次。)

与 Optimistic Rollups 不同,得益于 ZKPs(例如 ZK-SNARKs 或 ZK-STARKs),ZK Rollups 可以通过验证一个简单的证明来验证数千个交易的执行正确性,而无需重播所有交易。那么,这个 ZKP 是什么,它有什么特性呢?

ZKPs 的两个属性:零知识和简洁性

顾名思义,ZKP 基本上是一种证明。证明可以是任何能够充分支持提供者声明的东西。假设 Bob(提供者)想要让 Alice(验证者)相信他对自己的笔记本电脑有权威。证明这一点最简单的方法是,Bob 只告诉 Alice 密码,Alice 在笔记本上输入密码并验证 Bob 确实有权限。然而,这个验证过程对 Alice 和 Bob 来说都是不满意的。如果 Bob 设置了一个非常长且复杂的密码,Alice 要正确输入将非常具有挑战性(假设 Alice 不能复制粘贴)。更现实的是,Bob 可能不愿意透露他的密码给 Alice 以证明他的权限。

如果有一种验证过程,Alice 可以迅速验证计算机的权限,而无需 Bob 透露他的密码呢?例如,Bob 可以在 Alice 面前用指纹识别解锁笔记本电脑,正如图 3 中所示(注意这不是 ZKP 的完美示例)。这是 Alice 和 Bob 都可以从 ZKPs 的两个关键属性中受益的地方:零知识属性和简洁性属性。

图 3:零知识和简洁性的高级直觉来源:imgflip

零知识(ZK)

零知识属性指的是提供者生成的证明除了证明的有效性外,不会泄露关于秘密见证人(即私有数据)的任何信息,使验证者对数据一无所知。在区块链中,这一属性可以用于保护个人用户的隐私。如果对每笔交易应用 ZKPs,用户可以证明他们的行为的合法性(即证明一个用户有足够的资金进行交易)而不暴露他们的交易细节(例如转账、账户余额更新、智能合约部署和执行)给公众。

简洁性

简洁性属性指的是 ZK 能够从大尺寸的声明生成一个短小且快速验证的证明,换句话说,它将大的东西压缩成紧凑的形式。在区块链中,这一点特别用于 rollups。使用 ZKPs,L2 中的验证者可以通过向 L1 中的验证者提交一个简洁的证明来声称交易的正确执行(TB 级交易的有效性可以用 10~100 KB 的证明表示)。然后,验证者可以通过验证简洁的证明而不是重播所有交易,在短时间内(即 10 毫秒至 1 秒)轻松确认执行的有效性。

ZK Rollup 很棒,但并不意味着隐私性

上述 ZKP 的特性在 ZK Rollups 中得到了很好的利用。虽然验证者无法从提供者接收的 ZKPs 中推断原始交易数据,但验证简洁的证明允许他们有效地验证提供者的声明(即新的 L2 状态)。也就是说,断言当前的 ZK Rollups 完全遵循零知识和简洁性属性是误导的。这可能在专注于提供者与验证者之间的互动时是正确的,但 ZK Rollups 中还存在其他组成部分,如序列器、提供者和 rollup 节点。那么,「零知识」原则也为他们确保了吗?

在任何 ZK Rollups 中用 ZKPs 实现完全隐私的挑战来自于,如果其他部分保持公开而某些部分通过 ZK 变为私有时可能出现的妥协。想想 ZK Rollups 中的交易生命周期,当交易从用户发送到序列器时,隐私是否得到维护?对于提供者呢?或者当 L2 批次提交到 DA 层时,个别账户信息的隐私是否得到保护?目前这些情况都不成立。

图 4:ZK rollups 中的隐私泄露来源:Presto 研究

在大多数主流的 ZK Rollups 中,序列器或提供者(或其他具有强大权限的集中化实体)能清晰地看到交易细节,包括转账金额、账户余额更新、合约部署和执行。举一个简单的例子,你可以通过访问任何 ZK Rollup 区块浏览器轻松观察到所有提到的细节。不仅如此,考虑一种情况,集中式序列器某种原因停止服务,另一个 rollup 节点试图恢复 rollup 状态。它将从 DA 层(在大多数情况下是 L1 Ethereum)公开发布的 L2 数据中提取信息,并重建 L2 状态。在这个过程中,任何能够重播 DA 层存储的 L2 交易的节点都能恢复关于每个用户账户状态的信息。

因此,「零知识」的术语在当前的 ZK Rollups 中以碎片化的形式实施。虽然这不能被认为是错误的,但很明显,它与「ZK 意味着零知识等同于完全隐私」的普遍认知不同。当前 ZK Rollups 的新颖之处在于利用「简洁性」属性而不是「零知识」,即在链下执行交易,并为验证者生成简洁的证明,以便他们可以快速且可扩展地验证执行的有效性,而无需重新执行它们。

出于这个原因,一些 ZK Rollups,如 Starknet,将自己称为「有效性 Rollups」,以避免混淆,而确保真正 ZK 隐私的其他,如 Aztec,将自己标记为 ZK-ZK rollups。

深入考量 ZK Rollups 的实用性

正如前文提到的,大多数 ZK Rollups 并未完全实现 ZK 隐私。那么,我们的下一个目标是什么?通过在 Rollup 的每个部分全面部署 ZK 来实现完全的交易隐私?事实上,这并不是一个简单的问题。除了需要显著的技术进步以进一步成熟技术外,ZK 在意识形态(例如私人交易的非法使用)和实用性(例如它真的有用吗?)方面仍存在争议问题。鉴于讨论完全交易隐私的道德问题超出了本文的范围,我们将关注区块链项目中遇到的 ZK Rollups 的两个实用性问题。

第 1 点:生成 ZKP 可能是快速确定性的瓶颈

首先让我们讨论 ZK Rollups 本身的实用性。ZK Rollups 最引人注目的卖点是由于其交易的「快速终结」而使资产提取延迟时间缩短,这得益于 ZKP。提高的 TPS 和低交易费用是额外好处。最有效利用 ZK Rollups 特性的领域是游戏行业,因为游戏内货币的存取非常频繁,每秒都会产生大量的游戏内交易。

但 ZK Rollups 真的可以被认为是游戏的最佳技术栈吗?对此,我们需要更深入地思考 ZK Rollups 中的「快速终结」概念。想象一下,一个用户正在享受运行在基于 ZK Rollup 的技术栈的 Web3 游戏。用户将游戏内物品交易成游戏币,并试图从游戏中提取该资产。

要提取资产,游戏内交易必须被终结。这意味着交易必须被包含在新的 Rollup 状态承诺中,相应的 ZKP 应提交到 L1,并且需要等待 L1 以太坊中证明的终结,以保证交易不可逆转。如果所有这些过程能瞬间发生,那么我们就能实现 ZK Rollups 常被吹嘘的「即时交易确认」,允许用户立即提取资产。

然而,现实远非如此。根据 L2beat 提供的不同 ZK Rollups 的终结时间统计数据,zkSync Era 大约需要 2 小时,Linea 需要 3 小时,而 Starknet 平均需要约 8 小时。这是因为生成一个 ZKP 需要时间,将更多交易包含在一个批次(即单一证明)中以减少交易费用也需要额外时间。换句话说,生成和提交证明的速度是实现 ZK Rollups 快速终结的潜在瓶颈,这可能会降低 Web3 游戏中的用户体验。

图 5:ZKP 生成可能是 ZK rollups 快速确定性的潜在瓶颈来源:imgflip

另一方面,像 Ronin 这样为游戏优化的链(支持如 Pixels 和 Axie Infinity 等 Web3 游戏)确保了超快终结,同时牺牲了去中心化和安全性。Ronin 不是基于 ZK 或 Rollup 的链:它是一个在 PoA(权威证明)+ DPoS(委托权益证明)共识算法下运行的 EVM 区块链。它根据委托的股份数量选择 22 个验证者,然后这些验证者以 PoA 方式(即仅在 22 个验证者之间的投票过程)生成和验证区块。因此,在 Ronin 上,交易能够迅速完成终结,几乎没有延迟被包含在区块中,并且验证时间很短。在 Shillin 硬分叉后,平均每个交易只需要 6 秒钟就能完成终结。Ronin 实现了所有这些,而无需 ZKP。

当然,Ronin 也有缺点。由中心化验证者管理使其相对更容易受到 51% 攻击的威胁。此外,由于它不使用以太坊作为结算层,它无法继承以太坊的安全性。使用跨链桥也存在安全风险。但从用户的角度来看:他们会在意这些吗?当前没有去中心化排序的 ZK Rollups 也存在单点故障(SPOF)问题。以太坊为它们提供了保证,因为它减少了交易回滚的可能性,但如果中心化的序列器或验证者出现故障,ZK Rollups 也会冻结。再次注意,ZK Rollups 中的「ZK」仅用于验证执行正确性的有效性。如果有另一个项目提供相同的功能但更快更便宜,ZK Rollups 可能不再被 Web3 游戏用户和开发者视为首选技术栈。

第 2 点:发布状态差异是一把双刃剑

另一点是 ZK Rollup 协议实现的实用性。其中,这里我们重点关注状态差异发布,这是在 ZK rollups 中确保数据可用性的方法之一(参见 Unlocking Dencun Upgrade: Unseen Truth of Scaling DA Layers, Jaehyun Ha, 12Apr24)。

理解 Rollups 中数据可用性的一个简单方法是想象一个业余登山者证明并记录他攀登珠穆朗玛峰的过程。最简单的方法是从基地营到山顶的每一步都录制成视频。尽管视频文件可能很大,但任何人都可以验证登山者的攀登过程,并可能重播录像。这个比喻可以类比于确保数据可用性的原始交易数据发布方法。Optimistic Rollups 遵循这种方法,以便个别挑战者重播并验证正确的执行,因为无法信任序列器的状态承诺。在 ZK Rollups 中,Polygon zkEVM 和 Scroll 采用这种方法,在 L1 上以压缩形式存储原始 L2 交易数据,以便在需要时任何人都可以重播 L2 交易以恢复 Rollup 的状态。

回到业余登山者的例子,另一种验证方法可能是一位著名的登山者与业余登山者一起攀登珠峰,以向世界证明登山确实完成。由于攀登已经由可信的个人证实,登山者不再需要记录每一步以作记录。只需在起点和山顶拍摄一张照片即可,其他人就会认为登山者已经到达了山顶。这个比喻反映了用于确保数据可用性的状态差异方法。在 ZK Rollups 中,zkSync Era 和 StarkNet 采用这种方法,仅存储 L2 交易在 L1 上执行前后的状态差异,以便在必要时任何人都可以从初始状态计算状态差异以恢复 Rollup 的状态。

图 6:原始交易发布与状态差异发布来源:Presto 研究

这种状态差异方法无疑在成本上比原始交易数据发布方法有利,因为它可以省去存储中间交易的步骤,从而减少 L1 的存储成本。尽管这通常不是问题,但这里还是有一个潜在的缺陷:这种方法不允许恢复完整的 L2 交易历史,这对某些 DApps 可能是一个问题。

以 Compound 这个 DeFi 借贷协议为例,假设它是建立在基于状态差异的 ZK Rollup 技术栈之上的。这些协议需要完整的交易历史以每秒计算供应和借贷利率。但是,如果 ZK Rollup 序列器出现故障,其他 Rollup 节点试图恢复最新状态会发生什么?它可能恢复状态,但利率将被不准确地恢复,因为它只能跟踪批次之间的快照而不是每个中间交易。

结论

本文主要断言,大多数当今的 ZK Rollups 中并不存在「ZK」,在 DApp 中的很多地方,使用 ZKP 和 ZK 程序可能不是最佳选择。ZK 技术可能因被指责而感到无辜,因为它本身并没有什么问题,只是在利用其技术进步的过程中,它可能会带来 DApps 的潜在性能下降。然而,这并不是说 ZK 技术对这个行业毫无用处。当 ZKPs 和 ZK rollups 最终技术成熟时,它们肯定可以提供更好的解决方案来解决区块链三难问题。实际上,目前已有基于 ZK 的项目维护了 ZK 隐私,也有许多类型的 DApps 有效利用了 ZKP 和 ZK 卷积的优势。

评论

所有评论

推荐阅读

  • 美国现货比特币ETF昨日净流出2.1116亿美元

    据Trader T监测,美国现货比特币ETF昨日净流出2.1116亿美元。

  • Vitalik:未来不打算投资L2或其他代币项目,仅会捐赠有价值的项目

    Vitalik 在其 8 月 31 日表示“自 2018 年以来,从未因个人获利目的而出售以太坊”的推文下回复称,“上述情况也适用于我持有的 L2 代币或其他项目代币。所有的收益都将捐赠出去,再次用于支持以太坊生态系统内的公共产品或更广泛的慈善事业。在可预见的未来,我也不打算投资 L2 或其他代币项目。我给项目提供资金的目标是支持我认为有价值的事物,特别是在生态系统的其他部分可能低估它们的情况下。展望未来,我计划仅通过捐赠来实现这一点。”

  • 亿万富翁John Paulson预计美联储将在2025年底前将利率降至2.5%

    亿万富翁投资者John Paulson预测,美国联邦储备局将在2025年底前将利率降至低至2.5%。Paulson表示,美联储在降息方面行动过慢,并将在未来几个月内采取措施降低利率。在接受彭博电视采访时,其估计联邦基金利率可能会在明年降至3%,甚至2.5%。他指出,保持高实际利率(债券收益率与当前通胀率的差距)意味着美联储在放松货币政策方面已经落后。最后还强调,总统和财政部长对经济政策的评论至关重要。

  • Telegram创始人Pavel Durov在法国被捕后承诺将显著改善平台监管

    9 月 6 日消息,Telegram 创始人 Pavel Durov 在法国被捕后通过 Telegram 发声表示,「Telegram 是某种无政府主义天堂的说法是绝对不真实。我们每天都会删除数百万个有害的帖子和频道。并发布每日透明度报告,与非政府组织有直接的联系渠道,以便更快地处理紧急的监管请求。 Telegram 用户数快速增长到 9.5 亿,导致平台出现了成长的阵痛,使犯罪分子更容易滥用平台。这就是为什么我将显著改善这一情况作为我的个人目标。我们已经在内部开始了这个过程,并且很快会与大家分享更多关于进展的细节。」

  • 某ETH巨鲸于20分钟前用1223万USDT重新买入5,153枚ETH

    据链上分析师余烬监测,某高抛低吸 的ETH巨鲸,20 分钟前用 1223 万 USDT 重新买进了 5,153 ETH。 他最初的 3,586 枚 ETH 经过他 3 轮波段下来,现在已经变成 5,574 ETH 1⃣$3,667 出售 3,586 ETH 换成 1315 万 U,再以 $2,512 的价格买回 5,236 ETH,增加 1,650 ETH。 2⃣$2,514 卖出 4,818 ETH 换成 1211 万 U,再以 $2,378 的价格买回 5,093 ETH,增加 275 ETH。 3⃣$2,402 卖出 5,093 ETH 换成 1223 万 U,再以 $2,375 的价格买回 5,153 ETH,增加 60 ETH。

  • 美SEC再次推迟决定环保比特币ETF上市申请

    美国证券交易委员会(SEC)再次推迟了对纽约证券交易所(NYSE)Arca申请上市的碳抵消比特币ETF的最终决定。根据9月4日的文件,决定新截止日期已被延至11月21日。该ETF旨在通过抵消碳排放,以环保方式提供比特币投资敞口,跟踪由80%比特币和20%碳信用期货组成的投资组合。Tidal Investments于2023年12月提交了基金注册申请,而NYSE Arca则在3月提交了初步申请。比特币挖矿对环境的影响引发了关注,国际货币基金组织(IMF)报告指出,加密货币挖矿占全球温室气体排放的1%。此决定的延迟还包括对纳斯达克一站式加密投资组合ETF的审批推迟。

  • Penpie发布攻击分析报告:被盗金额11,113.6枚ETH,将在Snapshot启动治理投票确定补偿计划

    Penpie发布攻击事件的时候分析报告,其中指出其平台于9月3日攻击,导致 11,113.6枚ETH(约合27,348,259美元)被盗,目前存款和取款暂停,前端恢复完成。据悉黑客利用了PendleStakingBaseUpg::batchHarvestMarketRewards() 函数中存在重入保护漏洞,通过在奖励获取过程中重新进入PendleStakingBaseUpg::depositMarket() 函数,恶意SY合约反复添加来自闪电贷的新存款,这使得攻击者能够操纵奖励代币及其发送给假Pendle市场存款人的金额,而假存款人就是攻击者本身。 现阶段,Penpie正在积极与执法机构合作,以识别和逮捕袭击者,而且还多次向黑客发送链上消息,寻求白帽谈判,但目前尚未收到回复,此外已向社区提供有关存款、取款和其他相关发展状况的最新信息。Penpie表示,后续将全面审查所有协议和智能合约以识别漏洞,对整个协议进行定期审计,实时监控和自动暂停系统,保持韧性并继续前进。此外,还将在治理论坛中开一个帖子来收集社区的建议和反馈,从而开始制定补偿计划。然后将在Snapshot上创建治理投票以最终确定补偿计划。

  • 专注于零知识证明的区块链Gevulot完成600万美元种子轮融资,Variant领投

    专注于零知识证明的区块链Gevulot完成600万美元种子轮融资,Variant领投,RockawayX、Volt Capital 和 Stake Facilities 以及 Polygon Labs 首席执行官 Marc Boiron 和 Manta Network 创始人 Shumo Chu 等个人支持者参与。 Gevulot 没有透露其估值。 Gevulot 计划将资金分配给其L1区块链的推出,该区块链使开发人员能够利用ZK 证明并将计算任务委托给先进的硬件运营商网络。

  • 中科大首次实现以器件无关量子随机数产生器,消除非交互式零知识证明安全隐患

    中国科学技术大学潘建伟院士等研究者首次实现一套以器件无关量子随机数产生器作为熵源,以后量子密码作为身份认证的随机数信标公共服务,将其应用到零知识证明领域中,消除了非交互式零知识证明中实现真随机数的困难所带来的安全隐患,提高了非交互式零知识证明的安全性。非交互式零知识证明广泛应用于数字签名、区块链和身份认证等领域,由于真随机数生成器难以实现,通常会使用确定性的伪随机数算法来替代。 据了解,此次研究工作首次将量子非局域性、量子安全算法和零知识证明3个不同的领域结合起来,大幅提升了零知识证明的安全性,其中构建的面向公众的随机数服务在密码学、彩票业和社会公益等领域有着重要的应用潜力。

  • 零知识加密公司Toposware融资500万美元,Polygon联创参投

    零知识加密技术公司Toposware宣布完成500万美元的战略种子延期融资,投资者包括Evolution Equity Partners、Triatomic Capital、K2 Access Fund和Polygon联合创始人Sandeep Nailwal。 新闻稿称,最新一轮融资的目的是吸引主要风险投资公司和行业领导者加入,他们在制定全球标准、扩大无处不在的产品以扩大市场份额以及调整目标市场领域的准入和效用方面拥有直接经验。