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 卷积的优势。

评论

所有评论

推荐阅读

  • 日媒:伊朗准备允许日本船只通过霍尔木兹海峡

    3 月 21 日,据日本共同社报道,伊朗外长阿巴斯·阿拉格奇表示,经两国官员协商,伊朗已准备好允许与日本相关的船舶通过霍尔木兹海峡。日本石油进口严重依赖中东地区。伊朗战争促使日本本月动用石油储备。日本一直面临特朗普要求其协助保卫该海峡的压力。本周早些时候,日本首相高市早苗在华盛顿与特朗普当面会晤时,向其说明了日本参与此类行动在法律上的限制。同时,她也强调了双方共识领域,包括承诺增加从美国进口石油以及就导弹研发开展合作。(金十)

  • Solana基金会主席:链游已「死亡」,行业数十亿美元投入或成最差赌注之一

    3 月 21 日,Solana 基金会主席 Lily Liu 表示,区块链游戏「不会再回归」。她认为,尽管行业曾寄望通过链上资产与开放世界推动 Web3 与元宇宙发展,但实际表现远未达预期。Solana 曾被视为最有潜力支撑大规模链游的公链之一,凭借高性能和低成本支持实时交互。然而,包括 Star Atlas、Stepn 等项目虽一度获得关注,但整体 GameFi 赛道自 2021 年高峰后持续下滑。市场观点指出,链游长期依赖「Play-to-Earn」等代币激励模式,却缺乏真正吸引核心玩家的游戏性与内容构建能力,导致用户留存与生态可持续性不足。包括 Andreessen Horowitz(a16z)、Framework Ventures、Animoca Brands 在内的机构曾向该领域投入数十亿美元,但回报表现不佳。不过,部分公司仍在探索转型路径,例如 Mythical Games 与 Gunzilla Games,逐步弱化区块链要素,将其作为可选功能而非核心机制,以提升用户体验与市场接受度。

  • 现货黄金失守4500美元关口,现货白银日内跌近7%

    3 月 21 日,据 Bitget 行情数据,现货黄金失守 4500 美元/盎司关口,日内跌超 3%;现货白银日内跌近 7%,现报 67.845 美元/盎司。消息面上,受美元走强影响,以及有报导称美国已为在伊部署地面部队做好详细准备,加剧了市场对油价上涨、通胀以及随之而来的利率上升的担忧。独立贵金属交易员 Tai Wong 表示:「随着市场的担忧在周末前走高,金银价格正被拖累走低。在经历了本周因加息担忧引发的剧烈回调后,贵金属走势尤为震荡。价格应会很快进行盘整,但过程将充满波折。」全球主要券商认为,欧洲央行和英国央行加息的可能性正在增加,最早可能在 4 月。美联储周三维持利率不变,并预测通胀将走高,而主席鲍威尔表示,由于战争的影响,未来的政策路径面临异常高的不确定性。

  • 智谱预告GLM-5.1将开源

    据 1M AI News 监测,智谱 Z.ai 全球负责人李子玄在 X 上发文:「Don't panic. GLM-5.1 will be open source.」(别慌,GLM-5.1 将会开源。)未透露发布时间及模型细节。

  • Claude Code上线云端定时任务:自动审PR、升级依赖,无需本地运行

    据 1M AI News 监测,Anthropic 旗下 AI 编程工具 Claude Code 新增云端定时任务功能。用户可指定代码仓库、执行计划和提示词,Claude 将通过云端基础设施按计划自动执行,无需保持本地 Claude Code 运行。从产品界面看,用户可通过 Web 端配置定时任务,也可在已有会话中输入 /schedule 命令创建。示例任务包括每日自动审查所有开放 PR、标记超过两天无人处理的 PR、每周一自动升级补丁级依赖并提交 PR、每晚重跑失败的 CI 任务并为反复失败的用例建 ticket。

  • 美股三大指数收跌,加密货币概念股普跌

    3 月 21 日,据 Bitget 行情数据,美股低开低走,道指收跌 0.97%,标普 500 指数收跌 1.51%,纳指跌 2.01%。超微电脑 (SMCI.O) 跌超 33%,英伟达 (NVDA.O) 跌 3.2%,美光科技 (MU.O) 跌 4.8%。加密货币概念股方面,MSTR 跌 1.87%;COIN 跌 2.67%,CRCL 跌 1.79%;SBET 跌 3.65%;BMNR 跌 0.95%。

  • 特朗普:正考虑逐步降级对伊朗的军事行动

    3 月 21 日,美国总统特朗普发文表示,随着他们考虑逐步降级在中东针对伊朗政权所开展的各项重大军事行动,他们已非常接近实现既定目标:1. 彻底削弱伊朗的导弹能力、发射装置及所有相关设施。2. 摧毁伊朗的国防工业基础。3. 消灭伊朗海空军力量,包括防空武器系统。4. 绝不允许伊朗哪怕是接近拥有核能力;同时,美国必须始终保持一种态势,以便一旦出现此类情况,能够迅速且强有力地予以反击。5. 以最高级别的力度,保护美国在中东的盟友,包括以色列、沙特阿拉伯、卡塔尔、阿拉伯联合酋长国、巴林、科威特及其他国家。特朗普称,霍尔木兹海峡的守卫与巡航工作,应在必要时由其他使用该海峡的国家来承担,美国将不再承担此责任。若受邀协助,美国愿为这些国家在霍尔木兹海峡的行动提供支持,但一旦伊朗的威胁被彻底消除,此类协助便将不再必要。尤为重要的是,对于这些国家而言,这将是一次轻而易举的军事行动。

  • 美国防部已为在伊部署地面部队做好详细准备

    3 月 21 日,据美国哥伦比亚广播公司报道,多位听取了相关简报的消息人士透露,美国国防部官员已为向伊朗部署美国地面部队做好了详细准备。消息人士称,随着特朗普正在权衡由美以主导的对伊冲突中的行动方案,高级军事指挥官已提交了旨在为此类选项做准备的具体请求。消息人士表示,特朗普一直在审议是否在该地区部署地面部队。目前尚不清楚他在何种情况下会授权动用地面部队。周四,当在椭圆形办公室被问及地面部队问题时,他告诉记者:「不,我不会在任何地方部署军队,」但他随即补充道:「如果我要部署,也肯定不会告诉你。」两名消息人士称,军方还举行了会议,准备应对如果特朗普决定派遣美国地面部队,该如何处理行动中可能扣押的伊朗士兵和准军事行动人员,包括这些伊朗人将被送往何处。(金十)

  • 特朗普:目前不想停火,霍尔木兹海峡会自动开放

    3 月 21 日,特朗普最新表示,他可以与伊朗进行对话,但目前不想停火,并表示尽管盟友不愿提供协助,但他有信心霍尔木兹海峡将在某个时间点「自动」重新开放。特朗普周五在白宫称:「你要知道,当你正彻底歼灭对方时,你是不会停火的。北约本可以帮助我们,但到目前为止他们还没有这份勇气。其他人也可以帮忙,但我们并没有指望他们。」谈及霍尔木兹海峡,特朗普再次表示:「我们不需要它。是欧洲需要它,韩国、日本以及许多其他国家都需要它,所以他们在那个问题上必须得参与进来。」特朗普还说,到了一定程度,霍尔木兹海峡会自动开放。谈到国内民调,特朗普表示:「CNN 今天发布了一项民调,我的支持率达到了 100%。」(金十)

  • Hugging Face CEO:中国开源正在成为塑造全球AI技术栈的最大力量

    据 1M AI News 监测,Hugging Face 联合创始人兼 CEO Clément Delangue 就 Cursor Composer 2 以 Kimi K2.5 为基座一事发表评论,称此事印证了三点判断:- 开源始终是竞争最大的推动力- 中国开源「如今是塑造全球 AI 技术栈的最大力量」- 前沿竞争不再只是谁从头训练,而是谁适配、微调、产品化得最快(他以 OpenClaw 为例)