


- ZKP跨链桥梁和互操作性:ZKP可用于创建跨链消息传递协议的有效性证明,这些消息可以在目标链上快速验证。这与在底层L1上验证zkRollups的方式类似。然而,对于跨链消息传递,复杂性更高,因为源链和目标链之间的签名方案和需验证的加密函数可能不同;
- ZKP链上游戏引擎:Dark Forest展示了ZKP如何能够实现信息不完全的链上游戏。这对于设计更具交互性的游戏至关重要,其中玩家的行动保持私密,直到他们决定揭示它们。随着链上游戏的成熟,ZKP将成为游戏执行引擎的一部分。对于成功集成隐私功能的高吞吐量链上游戏引擎的初创公司来说,作用巨大;
- 身份解决方案:ZKP在身份领域可以开启多个机会。它们可用于声誉证明或连接Web2和Web3身份。目前,我们的Web2和Web3身份是分开的。例如Clique这样的项目通过使用预言机来连接这些身份。ZKP可以通过使Web2和Web3身份匿名链接,使这种方法更进一步。这可以实现像匿名DAO会员资格这样的用例,条件是他们可以使用Web2或Web3数据证明领域特定专业知识。另一个用例是基于借款人的Web2社交地位(例如Twitter关注者数量)的无抵押Web3贷款;
- ZKP用于监管合规:Web3使得匿名在线账户能够积极参与金融系统。从这个意义上说,Web3实现了巨大的金融自由和包容性。随着Web3监管的增加,ZKP可用于在不破坏匿名性的情况下实现合规。ZKP可用于证明用户不是受制裁国家的公民或居民。ZKP还可以用于证明认可投资者身份或任何其他KYC/AML要求;
- 本土Web3私人债务融资:TradeFi债务融资通常用于支持成长中的初创公司加速其增长或开启新的业务线,而无需增加额外的风险投资。Web3 DAO和匿名公司的兴起为Web3本土债务融资创造了机会。例如,使用ZKP、DAO或匿名公司可以基于其增长指标的证明,获得无抵押贷款和竞争性利率,而无需向贷方披露借款人的信息;
- 隐私DeFi:金融机构经常保持其交易历史和风险敞口的私密性。然而,在链上使用去中心化金融(DeFi)协议时,由于链上分析技术的不断进步,满足这一需求变得具有挑战性。一个可能的解决方案是开发以隐私为重点的DeFi产品,以保护协议参与者的隐私。尝试实现这一目标的协议之一是Penumbra的zkSwap。此外,Aztec的zk.money通过模糊用户在透明DeFi协议中的参与,提供了一些私密DeFi赚钱机会。通常,能够成功实施高效且注重隐私的DeFi产品的协议可以从机构参与者那里获得大量的交易量和收入;
- 针对Web3广告的ZKP:Web3推动用户拥有自己的数据权利,例如浏览历史、私人钱包活动等。Web3还使这些数据的货币化为用户带来好处。由于数据货币化可能与隐私相矛盾,ZKP在控制哪些个人数据可以向广告商和数据聚合商披露方面可以发挥重要作用;
- 私人数据的共享和货币化:我们的许多私人数据如果与正确的实体共享,可能会产生重大影响。个人健康数据可以被众包,帮助研究人员开发新药。私人财务记录可以与监管机构和监察机构共享,以识别和惩罚腐败行为。ZKP可以实现这类数据的私密共享和货币化;
- 治理:随着DAO(去中心化自治组织)和链上治理的普及,Web3正在走向直接参与式民主。当前治理模式的一个主要缺陷是参与的非隐私性。ZKP可以是解决这个问题的基础。治理参与者可以在不透露他们的投票方式的情况下进行投票。此外,ZKP还可以使治理提案的可见性仅限于DAO成员,使DAO能够建立竞争优势。
- zkRollup:扩容是ZKP在区块链最重要的用例,zkRollup 技术将多个交易聚合成一个单一的交易。这些交易在链下(即区块链的主链之外)处理和计算。对这些聚合后的交易,zkRollup 利用ZKP来生成一个证明,这个证明可以证实这些交易的有效性,而无需透露交易的具体内容,还极大的压缩了数据的大小。生成的ZKP随后被提交到区块链的主链上。主链上的节点只需要验证这个证明的有效性,而不需要处理每个单独的交易。这样,就大大减轻了主链的负担。
- ZK“元”的变化:我们上文中已经提到了,ASIC 上的业务逻辑是一次写入。如果任何 ZKP 逻辑发生变化,都需要从头开始。FPGA 可以在 1 秒内重新刷新任意次数,这意味着它们可以在具有不兼容证明系统的多个链上重复使用相同的硬件(例如,跨链提取 MEV),并灵活地适应 ZK “元”的变化。而GPU虽然不如FPGA那样在硬件级别上快速可重配置,但GPU在软件层面上提供了很大的灵活性。GPU可以通过软件更新来适应不同的ZKP算法和逻辑变化。即使这种更新可能不如FPGA那样迅速,但仍然可以在相对短的时间内完成。
- 供应: ASIC 设计、制造和部署通常需要 12 到 18 个月或更长时间。相反,FPGA 供应链是相对健康的,Xilinx等领先供应商允许从网站(即没有任何联系点)在16 周内到达的大量零售订单。再来看GPU,在供应上GPU自然有巨大的优势,自以太坊上海合并后,全网存在大量闲置的GPU矿机。而后续Nvidia与AMD后续开发的显卡系列,也可以大量供应。
- 开发周期:由于GPU的普及和成熟的开发工具,如CUDA(针对NVIDIA GPU)和OpenCL(跨平台)。而FPGA的开发通常涉及更为复杂的硬件描述语言(如VHDL或Verilog),需要更长的学习和开发时间;
- 功耗:FPGA在能效方面通常优于GPU。这主要是由于FPGA能够针对特定任务进行优化,从而减少不必要的能源消耗。而GPU虽然在处理高度并行化的任务时性能强大,但这也伴随着较高的功耗;
- 可定制性:FPGA可以被编程来优化特定的ZKP算法,提高效率。而对于特定的ZKP算法,GPU的通用架构可能不如专用硬件高效;
- 生成速度:根据Trapdoor-Tech关于GPU(以Nvidia 3090为例)以及 FPGA(Xilinx VU9P为例)的对比,在BLS12-381(一种特定类型的椭圆曲线)下,采用同样的模乘/模加算法,GPU的生成速度是FPGA的5倍。


- 请求证明的实体,可以是zkBridge、zkRollup、zkOracle或zkML这样的应用。
- 如果电路不存在,需要准备(Preparation)阶段,通过运行zkLLVM生成一个新的电路。
- 如果电路已经存在,则创建一个对于预定义电路的zkProof请求。
- 这个组件负责生成电路(Circuit),即编码计算任务的程序。
- 在准备阶段,zkLLVM对计算执行预处理以生成电路,并提交到Proof Market。
- 是一个中央市场,匹配证明请求者的订单与证明生成者。
- 验证证明的有效性,并在证明被验证后提供奖励。
- 执行计算,生成所需的零知识证明。
- 接收来自Proof Market的订单,并返回生成的证明。
- 电路开发者奖励:每当有证明请求者使用电路生成证明时,电路的作者会得到奖励。
- 证明生成者奖励:一旦证明在Proof Market被验证,生成者根据订单条款接收奖励。

- 机器学习(ML):可以在链上向zkML应用发起推理请求。欺诈检测、预测分析、身份验证等应用可以部署在以太坊上。
- 以太坊数据处理(zkOracles):许多应用需要以太坊的历史或处理后的数据。使用zkOracles,用户可以从共识层获取执行层的数据。
- 数据传输(zkBridges):用户可以直接请求数据传输并支付证明费用,无需桥梁操作者作为用户和市场之间的中介。
- 欺诈证明(Fraud Proof):有些欺诈证明可以在链上被轻松验证,而其他一些则不能。渔夫(Fishermen,指专注于验证主协议并寻找可能的欺诈行为的网络参与者)可以专注于验证主协议,并指向Proof Market提供的所需证明。
- 数据更新和积累:应用程序可以在第一层直接存储最新更新,并稍后将其累积到Merkle树中,附带正确根更新的证明。
- 随机数生成:应用程序可以订购通过无信任哈希基础的VDF生成的随机数。
- 证明聚合:如果应用程序独立发送它们的证明(不进行验证),将它们聚合成单一证明,然后一次性验证,可以降低证明的验证成本。

- Lido Accounting Oracle合约:处理复杂的报告,包括共识层(Consensus Layer)的数据(如总价值锁定(TVL)、验证者数量等)。
- 目标:使报告变得无需信任(Trustless),需要扩展报告以包含计算有效性证明。
- 初步目标:在第一阶段,只报告Lido CL余额(指在Lido协议中,与共识层相关的资产余额)、活跃和退出的余额数量等子集。
- 主要参与者:
- 当前状态:当足够多的信任Oracle成员提交报告且达到法定人数时。
- “暗启动”阶段:达到信任法定人数,但也接受无需信任报告并进行必要验证。
- 过渡期:达到信任法定人数,至少收到1个有效的无需信任报告,并且报告一致。
- 完全启动:会计合约只使用无需信任报告来确定TVL和验证者数量。
- 最终状态:完全废除法定人数报告,只使用无需信任报告。