经过多年在zk领域研究,并且在性能上取得巨大改进后,zk终于被应用到实际应用程序中。
原文作者:Yiping
原文来源:IOSG Ventures
经过多年在zk领域研究,并且在性能上取得巨大改进后,zk终于被应用到实际应用程序中。才华横溢的工程师将 ZK 应用于:
有许多令人感兴趣的项目依赖于 zk ,如 Starkware 、 zkSync 、 Scroll 、 Mina 、 Risc0 , =nil;Foundation , EZKL , Giza , Polygon 和 Manta 。这些项目每天稳定而持续地生成 zk proof 。目前最流行的 zk 使用案例是 zkRU 用于解决以太坊的可扩展性问题。在过去的一个月中,zk 验证在以太坊/以太坊 L2s 上花费了数百万美元。
Source: https://dune.com/nebra/zkp-verify-spending A strong increase in ZK verification cost over last year.
这张由Near团队制作的图表展示了zkSN(T)ARK在以太坊及L2s上的燃料消耗情况。它包括了像zkSync、Polygon、Aztec、Tornado Cash、Loopring、Worldcoin、Tailgun、Sismo、StarkNet和ImmutableX以及dydx等流行的ZK项目。与zkStark相比,zkSnark在验证方面占据了总成本的80%。在所有这些项目中,Worldcoin 的验证成本最高,其次是 zkSync。每个worldcoin的验证成本约为2美元。每个zkSync的验证成本约为30美元。
ZK 能够解决可扩展性问题,但需要一些代价。它需要大量的计算能力。ZK 带来了大量的计算开销,Rollup 团队需要处理这个问题。@_weidai 估计使用当今的 ZK 技术会有 10^4 到 10^6 的计算开销。理论上,我们可以通过专用电路实现 10 倍的计算开销。如果加上虚拟机的抽象层,则会有 100 倍的计算开销。下图根据库默伊定律描绘了基于年份增长的计算能力图表。2000 年之后每十年芯片效率提高 10 倍。如果我们以 2000 年为基准对比计算能力,在2025年将达到784倍。这也表明当前 ZK 计算与 2000 年相比仍然不在一个数量级上。
Source:https://visualize.graphy.app/view/04f82b27-3654-47eb-83e8-3981f6e258be
请仔细想一想。我们正试图将交易量提升 10 到 100 倍带给 ZKRU。随着交易量的增加,我们还会面临 10^4 到 10^6 的计算开销。这些数字给 ZKRU 基础设施团队带来了巨大压力。领先的 ZKRU 团队正在使用至少配备 200 GB内存的高端机器,并拥有才华横溢的运维人员来处理这些基础架构复杂性。那么对于一个小团队而言,如果他们想要启动一个 ZKRU 或者用 ZK 技术栈打造第三层解决方案,这意味着什么?如果一名独立开发者想要构建一个ZK Dapps,他们该如何购买这些高端服务器并正确操作它们?现在,启动一个 ZKRU 并不难。你可以使用 ZK Stack,并按照文档中的指引部署新的 ZKRU。最难的部分是让高端基础设施工作起来。管理一群服务器比日常维护我们个人笔记本电脑要困难得多。此外,硬件加速也不是即插即用的;依据他们所使用的零知识证明系统不同,各个团队需要为其服务器设置不同配置。确保高可用性也是一个棘手话题。如果成堆用户开始在你的 ZKRU 上铸造 Ordinals,而你突然面临 1000 倍吞吐量怎么办?就连像 Arbitrum 这样经验丰富的团队也因为 Ordinals 交易激增而停机好几小时。生成大量零知识证明需要高端服务器支持。对于中小型团队来说,设置和维护一系列高端服务器将是沉重负担。为了更好地帮助各个团单纯快速地采纳零知识技术,在兴起中项目尝试帮助这些团体处理所有计算基础设施复杂性问题。
Source: IOSG Ventues
证明市场和证明网络是两种主要的方法。证明市场就像是一个开放的市场。要生成一个证明,用户需要找到愿意以一定价格出售证明的交易方。证明网络就像传统的云服务,开发者提交他们的电路和输入,中心化的负载均衡会分配证明网络内的内部服务器为用户生成证明。证明市场是 ZK 证明基础设施中的一种流行方法。证明市场是一个开放的市场,买家和卖家在其中交易ZK证明。ZK 证明市场团队不需要关心ZK 证明硬件或拥有高端服务器,他们专注于 ZK 证明交易和验证机制,以吸纳第三方硬件供应商。证明市场是一种更加开放的方法。它欢迎第三方硬件供应商。只要有这种证明的卖家,买家可以以美元价格购买ZK证明。在验证证明时,市场中的每个人都不需要达成共识,只有市场操作者承担验证责任。在证明市场中,zkDapp 开发者提交一个 ZK 证明订单,包括价格、生成时间、超时时间和公共输入。然后第三方硬件供应商将接受订单并生成证明。证明市场的经济结构很简单。证明生成者需要进行质押。如果他们生成错误的证明或者在截止日期之前没有提供证明,他们会被罚款。具有更多质押的证明生成者将能够同时生成多个证明。证明市场行业的主要参与者是 =nil 和 Marlin。
证明市场有卖家和买家。买家是dApp开发者。他们向卖家支付费用以生成证明。有许多因素影响证明的价格。主要因素包括电路大小、证明系统、生成时间和输入大小。下面是=nil证明市场的工作流程:
市场设计提供一种类似交易的体验。证明生成价格会实时变化。以下是 =nil 证明市场的产品截图。
Source:https://nil.foundation/目前,Proof Market 支持有限数量的声明,其中 Mina 声明证明是最活跃的。具体而言,Proof Market 接受基于它们的 zkLLVM 编译器和 Placeholder 证明系统的电路。
Gevulot 致力于将去中心化引入到证明市场。Gevulot 作为一个开放和可编程的第一层区块链,专为证明市场而设计。第一层的区块链负责处理证明请求的分发、验证和奖励分配。证明者网络利用轻量 unikernels 实现高性能。Gevulot 使用可验证的随机函数(VRF)将证明工作分配给一小群证明者,确保系统的可靠性。
Source: https://www.gevulot.com/用户可以无缝部署程序,费用可预测,用户可以根据程序执行所需的周期数设定最高费用。证明者通过 Gevulot 网络和用户费用得到奖励,激励他们生成高效且有竞争力的证据。速度最快的证明者将获得最多的网络奖励。用户费用将与完成证明的所有节点平等分享。Gevulot 支持多种编程语言进行程序部署,包括 C、C++、Go、Java、Node.js、Python、Rust、Ruby、PHP 等,因为 Gevulot 的底层 VM Nanos 支持 x86_64 Linux ELF 二进制文件。Gevulot 是一个支持不同语言和证明系统的通用计算平台。Gevulot 依托 Nanos 单内核 确保证明者可以轻松地在不同机器上运行。所有证明者需要被编译成单一的单内核镜像。
Proof Network 提供了一种更加友好的开发者体验方法。它的运作方式类似于 Web2 的云服务提供商。开发者通过 REST API 发送负载数据,证明网络随后会返回证明给开发者。开发者无需关心价格波动及哪一方将生成证明。
Risc0
Risc Zero 利用它们的 zkVM 启动了 Bonsai。借助 zkVM 的力量,用户可以让 Bonsai 生成各种声明。例如,基于 Bonsai 和 Risc0 VM,Zeth 为以太坊区块生成证明。
Source:https://www.risczero.com/
Succinct
近期,Succinct 也推出了他们的新产品。与其提供给 REST API 电路,Succinct 提供了一种更类似于云函数的方法。以下是用户工作流程:
Source: https://succinct.xyz/与 BONSAI 相比,Succinct 在开发者体验上拥有如下优势:
Source: https://succinct.xyz/
证明市场为证明的买卖双方提供了更大的定价灵活性。它邀请所有的硬件提供商参与,这有助于降低买家的成本。但值得注意的是,节省的金额可能因个人和企业而异。通常,如证明网络这样的中心化服务可能会为个人提供免费服务,同时向企业收取高额费用,但提供访问VIP客户支持。例如,如果企业计划推出新事件或特性,企业可在证明网络上提前预留一些计算能力。一个去中心化市场可能会呈现更平衡和竞争性的定价。在今天的市场中,基于证明网络的产品似乎为开发者提供了一个更流畅的体验。它处理所有的证明生成工作,并支持主要的证明系统,而不引入任何新的复杂概念。它提供了一致的用户体验。理论上,由于证明市场的订单匹配也需要时间,它提供快速的证明生成。如果您熟悉云计算,证明网络更像是一个无状态的云函数。我们有 =nil 基金会和 Gevulot 在证明市场上工作。Succinct 和 Risc0 则在证明网络上。像 Ulvetanna 和 Cystic 这样的硬件公司也为提高 GPU 上的 ZK 证明性能和开发下一代专用 ZK 芯片做出了巨大贡献。证明市场相对容易启动。对于 ZK 基础设施项目来说,证明市场设计可以让更多的硬件提供商上线。凭借其去中心化设计,他们可以轻松扩展网络以满足未来的计算需求。将来,我们预见证明网络和证明市场设计的结合。目标是为开发者提供无缝体验,同时整合证明市场作为后端,以促进增加额外计算资源。这是 Succinct 计划在不久的将来追求的方向。我们也在其他市场看到类似的转变,比如 Infura。Infura 拥有自己的服务器,但它也计划引导经过许可的参与方提供基础设施。
Source: IOSG Ventures
我们认为,那些希望缩短产品上市时间并构建轻便、灵活的应用程序,能够快速扩展或更新的开发者,将极大受益于这些云端 ZK 基础设施。对于峰值和谷底使用量差距很大的应用程序,云端 ZK 基础设施将会减少成本。
对这类应用程序来说,购买一组始终运行并随时保证高峰可用的服务器会比较昂贵。在使用量谷底的时候会造成较大的浪费。云端基础设施可以随时扩展,提升性能。在峰值之外的时候可以自动释放这些多余的计算性能。
从对 Web2 云行业的了解中,我们发现那些对计算需求最大的公司往往能够拥有领先的云基础设业务。他们可以利用可扩展性、成本、团队和创新产品的优势。这一点同样适用于云 ZK 基础设施。我们认为,那些对生成验证需求最大的项目有潜力拥有最成功的 ZK 云基础设施业务之一。对于那些内部生成大量 ZK 证明的项目来说,他们已经拥有大量基础设施、优化器和专业团队。通过跨应用共享证明资源,他们还可以最大化硬件利用率;当一个应用程序不需要立刻生成证明时,证明者可以被重新用于其他用途。这些大型项目在某种程度上都有自己的证明系统。第三方证明基础设施往往难以优化不同大型项目使用的各种证明系统。通过提供快速且易于使用的云证明者,大项目可以有效扩展他们的证明系统生态系统。对于 ZKRU 来说,云 ZK 基础设施可以提升其 Fork 的使用量。在这些 ZKRU 上启动一个新的 2 层或3 层并不难,但是维护 ZK 基础设施将是成本高昂的。提供开箱即用且灵活的云证明者可以帮助吸引更多的开发者。目前,大多数开发者由于相应的基础设施易于管理,通常使用 OPRU SDK 来构建新的 2 层或 3 层。如果不构建自己的 ZK 基础设施,这些庞大的 ZK 项目需要向第三方计算提供商支付高昂的费用。他们在开发速度上也会受到限制,因为他们不能总是定制自己的基础设施来进一步提高性能和降低证明成本。
除了 ZKRU 和 1 层网络,我们最近还看到了更多新兴的零知识证明应用。它们都对证明的生成有着巨大的需求。零知识协处理器使得智能合约开发者能够无需信任地获取过去的区块链状态。零知识协处理器为这些过去的区块链状态生成零知识证明。这可能是比图更安全、更无需信任的替代方案。零知识认证帮助用户将链下数据或身份信息带到区块链上。认证者在链下验证这些数据后,将为其生成一个零知识证明,并将其放置到区块链上。零知识机器学习使得链上的推理成为可能。计算提供商在链下进行 ML 计算,为其生成一个零知识证明,然后将该证明发布到区块链上。零知识桥是更安全版本的跨链桥。它为源链生成存储证明甚至是共识证明,并将其放置到目标链上。这可能会取代当前的跨链桥。
在区块链行业内,去中心化是最受欢迎的叙述。去中心化带来了许多好处:
零知识证明与其他一般的计算不同。ZK 具有固有的安全性。任何人都可以轻易且迅速地验证证明,以确保证明者的诚实。在 ZK 领域,去中心化并不是安全性的先决条件。零知识证明专注于复杂的底层细节,被构建成电路。虽然这些电路内的内容极难被审查,但通过针对ZK 证明生成请求者的方式,审查仍然可以有效地实施。对于证明网络来说,隐私可能会成为一个问题,因为用户向证明网络发送私人输入。理想的解决方案是在本地生成证明,以防止任何数据泄露。这将对本地性能提出挑战。其他解决方案可能是一个新的零知识多方计算协议或在受信执行环境中生成证明。一个去中心化的证明网络不能带来更多的隐私。除了叙事,抗审查性可能是构建去中心化证明网络的主要原因。零知识证明技术还处于起步阶段,到目前为止,我们还没有在这个领域观察到任何形式的审查。然而,阻碍零知识证明发展的主要挑战是性能。引入去中心化的证明网络可能会导致生成证明的计算需求增加。
零知识证明应用发展迅猛,应用范围广泛。我们预计会看到零知识证明被整合到不同的技术栈中。我们已经见到了 ZK layer1、ZK 2 层网络、ZKML、ZKVM、ZK-Email。开发者们还在构建 ZK 预言机、ZK 数据源和 ZK 数据库。我们正走在“ZK 化一切”的道路上。ZK 所带来的计算开销迫使开发者需要在高端服务器上部署它们的电路。因此,我们预计对云 ZK 证明基础设施的需求将会增加,以帮助开发者摆脱这些基础设施运营的复杂性。
在这一领域,我们的洞见包括: