区块链的 GPU:ZK 协处理器全面解析
2024-07-12 15:46
YBB Capital
2024-07-12 15:46
订阅此专栏
收藏此文章
本文详细比较了 ZK 协处理器与 Rollup 的区别,介绍了该赛道上的一些重要项目,如 Giza、Risc Zero、=nil;、Brevis 和 Lagrange。并且探讨了 ZK 协处理器在支持大规模应用和解决当前区块链挑战中的潜力,强调其在推动区块链技术发展中的重要作用。


撰文:Zeke,YBB Capital Researcher


TL;DR


  • ZK 协处理器 (ZK Coprocessor) 可视为从模块化概念中衍生出的一种链下计算插件,其作用类似于我们传统电脑中为 CPU 分担图形计算任务的 GPU,即针对特定场景下分担计算任务的处理器;
  • 可用于处理复杂计算和重数据,降低 Gas 费,扩展智能合约功能;
  • 与 Rollup 的区别:ZK 协处理器无状态,可跨链使用,适用于复杂计算场景;
  • ZK 协处理器的开发难度高,性能开销大,标准化不足。而硬件方面又需要大量成本,该赛道虽然较一年前已经成熟了许多,但还处于较早期;
  • 基建迈入分形扩容的模块化时代后,区块链陷入流动性匮乏、用户分散、缺乏创新与跨链互操作性等多种问题,又与垂直扩容的 L1 之间形成悖论。ZK 协处理器未来也许能为两者提供很好的补强,使两者跳出困境,并为旧应用及新兴重应用提供性能支撑,带来更多新鲜叙事。


一.模块化基建的又一分支,ZK 协处理器


1.1 ZK 协处理器概述


ZK 协处理器 (ZK Coprocessor) 可视为从模块化概念中衍生出的一种链下计算插件,其作用类似于我们传统电脑中为 CPU 分担图形计算任务的 GPU,即针对特定场景下分担计算任务的处理器。在这种设计框架下,公链所不擅长的「重数据」以及「复杂计算逻辑」任务可通过 ZK 协处理器去运算,链上只需收到返回的计算结果即可,其正确性则由 ZK proof 保证,最终实现对复杂任务的可信链下计算。



当下 AI、SocialFi、DEX、GameFi 等热门应用对于高性能和成本控制有着迫切需求,在传统方案中,这些需要高性能的「重应用」往往会选择资产上链 + 链下应用的形式,或者,单独为应用设计一条应用链。但两者都存在一些固有问题,比如前者存在黑匣子,后者存在开发成本高、脱离原链生态、流动性割裂等问题。除此之外,主链虚拟机对于这类应用的开发及运行限制也很大(例如缺乏应用层标准、开发语言复杂)。


ZK 协处理器的存在就是为了解决此类问题,再举一个更详细的例子,我们可以把区块链视为一个无法联网的终端(手机、电脑等),在这种情况下我们可以运行一些较为简单的应用,比如 Uniswap 等 DeFi 应用就可以在完全链上的情况下运行。但当更复杂的应用出现时,比如运行一个类似 ChatGPT 的应用,此时公链的性能与存储就会完全不足,并且 Gas 爆炸。在 Web2 的情况下,我们运行 ChatGPT 时也是如此,常用终端本身并不能处理 GPT-4o 这种大语言模型,我们需要通过联网将问题传达给 OpenAI 的服务器,在经过服务器计算推理结果后,我们会直接收到答案。ZK 协处理器就类似区块链的远程服务器,只不过在针对不同类型项目的情况下,不同协处理器项目的设计上可能会有些许偏差,但底层的逻辑并不会有太大差别,都是通过链下计算 +ZK proof 或者 Storage proofs 进行验证的方式。我们以 Rise Zero 的 Bonsai 部署为例,就能明白这种架构的逻辑很简洁,该项目无缝集成于 Rise Zero 自身的 zkVM 中,开发者要将 Bonsai 作为协处理器只需很简单的两个步骤:


  • 编写一个 zkVM 应用程序来处理应用逻辑;
  • 编写一个 Solidity 合约,要求 Bonsai 运行你的 zkVM 应用程序,并处理结果。


1.2 与 Rollup 的区别是?


在上文的定义中,我们会发现 Rollup 无论实现逻辑还是目标,似乎都与 ZK 协处理器有着高度重合的情况。但事实上 Rollup 更像是主链的多核化,两者的具体区别如下:


1.主要目的:


  • Rollup:提高区块链的交易吞吐量和降低交易费用。
  • ZK 协处理器:扩展智能合约的计算能力,使其能够处理更复杂的逻辑和更大量的数据。


2.工作原理:


  • Rollup:汇总链上交易提至主链,通过欺诈证明或者 ZK 证明。
  • ZK 协处理器:与 ZK Rollup 相似,只不过两者应用场景不同,ZK Rollup 受限于链的形态与规则并不适合做 ZK 协处理器的工作。


3.状态管理:


  • Rollup:需要维护自己的状态,定期与主链同步。
  • ZK 协处理器:不维护持久状态,每次计算都是无状态的。


4.应用场景:


  • Rollup:主要面向 C 端,适用于高频交易。
  • ZK 协处理器:主要面向 B 端,适用于需要复杂计算的场景,如高级金融模型、大数据分析等。


5.与主链的关系:


  • Rollup:可以看作是主链的扩展,通常专注于特定的区块链网络。
  • ZK 协处理器:可以为多个区块链提供服务,不局限于特定的主链,所以同样可以为 Rollup 提供服务。


所以两者本质上并不相斥,甚至是互补的关系,即使某个 Rollup 以应用链的形式存在,ZK 协处理器依旧可以提供服务。


1.3 用例


理论上来说 ZK 协处理器的应用范围非常广阔,基本可以覆盖区块链各赛道的项目。ZK 协处理器的存在能使 Dapp 的功能更接近于 Web2 中心化 app 的功能,以下是从网上收集的一些示范用例:


数据驱动的 DApp 开发


ZK 协处理器使开发者能够创建利用全链历史数据的数据驱动型 DApp,并执行复杂计算,而无需额外的信任假设。这为 DApp 开发带来了前所未有的可能性,例如:


  1. 高级数据分析:类似 Dune Analytics 的链上数据分析功能。
  2. 复杂业务逻辑:实现传统中心化应用中的复杂算法和业务逻辑。
  3. 跨链应用:基于多链数据构建跨链 DApp。


DEX 的 VIP 交易员计划


一个典型的应用场景是在去中心化交易所 (DEX) 中实现基于交易量的费用优惠计划,即「VIP 交易员忠诚度计划」。这类计划在中心化交易所 (CEX) 中很常见,但在 DEX 中却很少见。


使用 ZK 协处理器,DEX 可以:


  1. 追踪用户的历史交易量
  2. 计算用户的 VIP 等级
  3. 根据等级动态调整交易费用


这种功能可以帮助 DEX 提高用户留存率,增加流动性,并最终提升收入。


智能合约的数据增强


ZK 协处理器可以作为强大的中间件,为智能合约提供数据捕获、计算和验证服务,从而降低成本并提高效率。这使得智能合约能够:


  1. 访问和处理大量历史数据
  2. 执行复杂的链下计算
  3. 实现更高级的业务逻辑


跨链桥技术


一些基于 ZK 的跨链桥技术,如 Herodotus 和 Lagrange,也可被视为 ZK 协处理器的一种应用。这些技术主要关注数据提取和验证,为跨链通信提供了可信的数据基础。


1.4 ZK 协处理器并不完美


虽然我们罗列了许多优点,但当前阶段的 ZK 协处理器并不完美,还需要面临很多问题。我个人总结了如下几点:


1.开发:ZK 这一概念对于许多开发者来说较难理解,开发还需要相关的密码学知识以及掌握特定的开发语言和工具等;


2.硬件成本高昂:链下计算所使用的 ZK 硬件需要完全由项目方自身完全承担,ZK 硬件昂贵且还在快速的发展迭代之中,硬件很可能随时淘汰。这是否能形成商业逻辑上的闭环也是一个值得思考的问题;


3.赛道拥挤: 技术实现上其实都不会有特别大的差别,最后很可能与当前 Layer2 的格局相似,有几个突出项目,但大部分都无人问津;


4.zk 电路:在 zk 协处理器中执行链下计算需要将传统计算机程序转换为 zk 电路,为每个应用编写定制电路非常繁杂,而使用 zkvm 在虚拟机中编写电路又存在计算模型不同造成开销较大的问题。


二.通往大规模应用的关键拼图

(本章节主观性较强,仅代表作者个人观点)


本轮是以模块化基建为主导的周期,如果说模块化这条路径是正确的,那么这个周期也许将是通往大规模应用的最后一步。不过在当前阶段我们都会有个共同的感受,为什么只能看到一些老酒新装的应用,为什么链比应用还多得多,为什么铭文等新代币标准就能被称为本轮最大的创新?


之所以如此缺乏新鲜叙事,本质上还是当前的模块化基建不足以撑出超级应用,尤其是缺乏一些先决条件(全链互操作性、用户门槛等),所以变相促成了区块链历史上最大的割裂。Rollup 作为模块化时代的核心,速度上是快了,但相应的带来的问题也很多,也就是我们上文反复强调的流动性割裂、用户分散、链或者说虚拟机本身依旧限制了应用创新。另一方面,模块化的另一个「关键先生」Celestia 开创了 DA 不必在以太坊上的先河,这个思路使得割裂进一步加剧。无论是始于意识形态还是 DA 成本,结果就是 BTC 被迫做 DA,其它公链要做更具性价比的 DA,现状就是每条公链上少则一个,多则数十个的 Layer2 项目。最后再加上所有基建与生态项目方都深度学习了 Blur(铁顺)开创的积分屠龙(OpenSea)玩法,要求用户将 Token 质押在项目内,这种对于鲸鱼一箭三雕(利息、ETH 或 BTC 的上涨、白嫖的 Token)的模式,进一步压缩了链上流动性。


曾经的牛市里,资金只会在数条到十几条公链内流转,甚至也可以说只集中于以太坊。而如今的资金分散在数百条公链,质押在数千个大差不差的项目之中,链上繁荣不再,连以太坊都没有链上活动。那么东方玩家在 BTC 生态里 PVP,西方玩家在 Solana 中 PVP 也是无奈之举。所以我个人当前最关注的是如何促进全链流动性聚合,如何支撑新玩法与超级应用的诞生。在全链互操作性赛道中,传统的几个头部项目,其实一直表现不佳,它们依旧更像传统跨链桥。而新式互操作性方案在我们之前的研报也谈过,主要是通过聚合多链为单链的方式,目前在做的有 AggLayer、Superchain、Elastic Chain、JAM 等,此处就不再展开。


总而言之,聚合全链是模块化结构下所必须迈过的一道坎,但这道坎还需要迈很久。而 ZK 协处理器,是属于当前阶段中更为关键的拼图,除了能加强 Layer2,它也能补强 Layer1,那是否有可以暂时跳出全链和三角悖论这两个问题,未来能在部分具备广泛流动性的 Layer1 或者 Layer2 上先实现一些符合当下的应用?毕竟当前的区块链应用叙事实在匮乏。另一方面,实现玩法的多样化,Gas 的控制、大规模应用的出现、甚至是跨链、降低用户门槛,通过集成协处理器方案也会是比投靠中心化更为理想的方案。


三.项目一览


ZK 协处理器赛道,基本是在 23 年左右涌现,在当前阶段已经较为成熟。依据 Messari 的分类,该赛道目前已有的项目可分为三个大垂直领域(通用计算、互操作性和跨链、AI 和机器训练),18 个项目。其中大部分项目都由头部 VC 支持,我们在下文中选取不同垂直领域的部分项目进行描述。



3.1 Giza



Giza 是部署在 Starknet 由 StarkWare 官方支持的一个 zkML(零知识机器学习)协议,专注于使人工智能模型能够在区块链智能合约中可验证地使用。开发者可以将 AI 模型部署到 Giza 网络,Giza 随后通过零知识证明验证模型推理的正确性,并以无需信任的方式将结果提供给智能合约使用。这使得开发者能够构建结合 AI 能力的链上应用,同时保持区块链的去中心化和可验证性。


Giza 通过执行以下三个步骤完成工作流程:


  1. 模型转换:Giza 将常用的 ONNX 格式 AI 模型转换为可在零知识证明系统中运行的格式。这允许开发者使用熟悉的工具训练模型,然后将其部署到 Giza 网络。
  2. 链下推理:当智能合约请求 AI 模型推理时,Giza 在链下执行实际的计算。这避免了在区块链上直接运行复杂 AI 模型的高昂成本。
  3. 零知识验证:Giza 为每次模型推理生成 ZK proof,证明计算是正确执行的。这些证明在链上验证,确保推理结果的正确性,而无需在链上重复整个计算过程。


Giza 的方法使得 AI 模型可以作为智能合约的可信输入源,而不需要依赖中心化的预言机或可信执行环境。这为区块链应用开辟了新的可能性,如基于 AI 的资产管理、欺诈检测、动态定价。是当前 Web3 x AI 中少数逻辑闭环的项目之一,也是协处理在 AI 领域中的一次妙用。


3.2 Risc Zero



Risc Zero 是由多名头部 VC 支持的协处理器项目,属于该赛道中的佼佼者。该项目专注于使任意计算能够在区块链智能合约中可验证地执行。开发者可以使用 Rust 编写程序并部署到 RISC Zero 网络,RISC Zero 随后通过零知识证明验证程序执行的正确性,并以无需信任的方式将结果提供给智能合约使用。这使得开发者能够构建复杂的链上应用,同时保持区块链的去中心化和可验证性。


我们在上文中已经简单说过部署与工作的流程,这里再详细说说,两个关键组件:


  • Bonsai:RISC Zero 的 Bonsai 是项目中的协处理器组件,它无缝集成于 RISC-V 指令集架构的 zkVM,允许开发者在几天内快速将高性能的零知识证明集成到以太坊、L1 区块链、Cosmos 应用链、L2 rollups 和 dApps 中,提供智能合约直接调用、可验证的链下计算、跨链互操作性和通用 rollup 功能,同时采用去中心化优先的分布式架构设计,结合了递归证明、定制电路编译器、状态延续和持续改进的证明算法,使任何人都能为各种应用生成高性能的零知识证明。
  • zKVM:zkVM 是一个可验证的计算机,其工作方式类似于真实的嵌入式 RISC-V 微处理器。该虚拟机基于 RISC-V 指令集架构,允许开发者使用 Rust、C++、Solidity、Go 等高级编程语言等多种编程语言,编写可生成零知识证明的程序,支持超过 70% 的热门 Rust crates,实现了通用计算与零知识证明的无缝结合,能够为任意复杂度的计算生成高效的零知识证明,同时保持计算过程的隐私性和结果的可验证性,zkVM 采用了包括 STARK 和 SNARK 在内的 ZK 技术,通过 Recursion Prover 和 STARK-to-SNARK Prover 等组件实现高效的证明生成和验证,支持链下执行和链上验证的模式。


Risc Zero 已经与多个 ETH 系 Layer2 集成,并且演示了多个 Bonsai 的用例,其中较为有趣的是 Bonsai Pay 。该演示使用 RISC Zero 的 zkVM 和 Bonsai 证明服务于发,允许用户使用 Google 帐户在以太坊上发送或提取 ETH 和代币。它展示了 RISC Zero 如何将链上应用程序与 OAuth2.0(Google 等主要身份提供商使用的标准)无缝集成,这是通过传统 Web2 应用降低 Web3 用户门槛的一次集成用例,除此之外还有基于 DAO 等应用的示例。


3.3 =nil;



=nil; 由 Mina、Polychain、Starkware、Blockchain Capital 等知名项目与机构投资,值得注意的是 Mina 与 Starkware 这类 zk 技术前沿的项目方也在其中,说明对项目的技术认可还是较高的。=nil; 也是曾在我们研报「算力市场」中提及的一个项目。当时主要集中于=nil; 的 Proof Market(去中心化证明生成市场),该项目其实还有个子产品,zkLLVM。


zkLLVM 是由=nil; Foundation 开发的一个创新性电路编译器,它能够将 C++、Rust 等主流开发语言编写的应用程序代码自动转换为以太坊上高效的可证明电路,无需使用专门的零知识领域特定语言(DSL),从而大幅简化开发流程,降低开发门槛,同时通过不涉及 zkVM(零知识虚拟机)的方式提高了性能,支持硬件加速以加快证明生成速度,适用于 Rollups、跨链桥、预言机、机器学习和游戏等多种 ZK 应用场景,并与=nil; Foundation 的 Proof Market 紧密集成,为开发者提供从电路创建到证明生成的端到端支持。


3.4 Brevis



该项目为 Celer Network 的子项目,Bervis 是一种用于区块链的智能零知识 (ZK) 协处理器,它使 dApp 能够以完全无信任的方式跨多个区块链访问、计算和利用任意数据。同其它协处理一样,Brevis 同样拥有广泛的用例,例如数据驱动的 DeFi、zkBridges、链上用户获取、zkDID、社交账户抽象。



Brevis 的架构主要由三个部分构成:


  1. zkFabric:zkFabric 是 Brevis 架构的中继器。它的主要任务是收集并同步来自所有连接区块链的区块头信息,最后通过 ZK 轻客户端电路为每个收集的区块头生成共识证明。
  2. zkQueryNet:zkQueryNet 是一个开放的 ZK 查询引擎市场,可以直接接受来自链上智能合约的数据查询,也能够通过 ZK 查询引擎电路生成查询结果和相应的 ZK 查询证明。这些引擎范围从高度专业化(例如计算特定时间段内 DEX 的交易量)到高度通用的数据索引抽象和高级查询语言,可满足各种应用程序需求。
  3. zkAggregatorRollup:充当 zkFabric 和 zkQueryNet 的聚合和存储层。它验证这两个组件的证明,存储经过证明的数据,并将其 ZK 证明的状态根提交给所有连接的区块链,从而允许 dApp 直接在其链上智能合约的业务逻辑中访问经过证明的查询结果。


通过这套模块化架构,Brevis 可以为所有支持的公链链上智能合约,提供无需信任、高效且灵活的访问方式。在 UNI 的 V4 版本中也采用了该项目,并与协议中的 Hooks( 一个为各种用户集成定制逻辑的系统 ) 进行集成,以方便读取历史区块链数据,降低 Gas fee,同时确保去中心化属性。这是 zk 协处理器推动 DEX 的一次示例。


3.5 Lagrange



Lagrange 是由 1kx 及 Founders fund 领投的互操作性 zk 协处理器协议,该协议的主要目的为提供无需信任的跨链互操作性和需要大数据复杂计算的应用程序的创新提供支撑。与传统的节点桥不同,Lagrange 的跨链互操作性主要通过其创新的 ZK Big Data 和 State Committee 机制来实现。


  • ZK Big Data:该产品为 Langrange 的核心,主要负责处理和验证跨链数据,生成相关的 ZK 证明。该组件包含了高度并行的 ZK Coprocessor 用于执行复杂链下计算和生成零知识证明,专门设计的可验证数据库支持无限存储槽和智能合约直接 SQL 查询,动态更新机制仅更新变化的数据点以减少证明时间,以及允许开发者直接从智能合约中使用 SQL 查询访问历史数据而无需编写复杂电路的集成功能,共同构成了一个大规模区块链数据处理和验证系统。
  • State Committee:该组件为一个去中心化的验证网络,由多个独立节点组成,每个节点质押 ETH 作为抵押。这些节点作为 ZK 轻客户端,专门验证特定优化 rollup 的状态。State Committee 与 EigenLayer 的 AVS 集成,利用重质押机制增强安全性,支持无限数量节点参与,实现超线性安全性增长。它还提供「快速模式」,允许用户在不等待挑战窗口的情况下进行跨链操作,大大提高了用户体验。这两种技术的结合使 Lagrange 能够高效处理大规模数据,执行复杂计算,并在不同区块链间安全传递和验证结果,为开发复杂跨链应用提供了支撑。


Lagrange 在当前已经与 EigenLayer、Mantle、Base、Frax、Polymer、LayerZero、Omni、AltLayer 等集成,也将作为第一个 ZK AVS 在以太坊生态中进行链接。


参考资料:
1.ABCDE:A Deep Dive into ZK Coprocessor and Its Future:https://medium.com/@ABCDE.com/en-abcde-a-deep-dive-into-zk-coprocessor-and-its-future-1d1b3f33f946
2.“ZK” Is All You Need:https://medium.com/@gate_ventures/zk-is-all-you-need-238886062c52
3.Risc zero:https://www.risczero.com/bonsai
4.Lagrange:https://www.lagrange.dev/blog/interoperability-for-modular-blockchains-the-lagrange-thesis
5.AxiomBlog:https://blog.axiom.xyz/
6.氮气加速!ZK 协处理器如何打破智能合约数据壁垒:https://foresightnews.pro/article/detail/48239

【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。

YBB Capital
数据请求中
查看更多

推荐专栏

数据请求中
在 App 打开