一个完整的 ZK 挖矿和证明行业即将出现。
撰文:Georgios Konstantopoulos,Paradigm 研究合伙人
编译:Amber
零知识密码学是计算机科学领域在近 50 年间最引人注目的创新之一。零知识证明(以下简称 ZKPs)的一系列「先天优势」使其成为了各种区块链扩容和隐私解决方案的重要组成部分,包括像 StarkNet 这样的 ZK rollups,像 Aztec 这样的隐私 ZK rollups,以及像 Mina、Filecoin 和 Aleo 这样的一层公链等等,都应用了该技术。
虽然受制于庞大的数学计算需求量导致 ZKPs 的生产速度缓慢且昂贵。但随着以现场可编程阵列(以下简称 FPGA)和专用集成电路(以下简称 ASIC)为代表的特殊硬件的普及和落地,ZKPs 的效率将得以大幅提升,提升幅度甚至可能达到 1000 倍之多。
随着个性化且高性能的隐私计算需求日益增长,使用 ZKPs 证明的语句复杂性将进一步增加。因此也只能通过使用专门的硬件来避免证明生成速度进一步下降,以便更及时地生成证明结果。
这意味着这个「产业链」将迎来变革,就像那些服务于比特币网络的矿工一样,这些为了支持 ZKPs 高效运行的特殊硬件操作者将得到相应的补偿,一个完整的 ZK 挖矿和证明行业将就此出现。业余爱好者们可以在他们自己的 CPU 上生成证明,亦或是使用 GPU 以及 FPGA。当然这个完整链条的成熟还需要相当一段时间的演变。
零知识证明有两个主要的用例:
1、外包可验证的计算
假设你有一些计算需求,由于你所使用的平台(如你的笔记本电脑、树莓派甚至以太坊等)的限制,完成这些计算的时间成本过于昂贵甚至由于算力不足根本无法完成。这时候你就必须依靠第三方服务来运行该计算,一般来说,这些服务都可以快速且平价地返回给你该计算的输出(例如 AWS 的 Lambda 函数或像 Chainlink 这样的 Oracle 服务等)。
但是,通常情况下你只能默认计算已经被正确执行,而一旦算力提供方输出了一个错误或者无效的计算结果,这就可能会造成灾难性的后果。
ZKPs 的价值就体现在其允许第三方提供者也输出一个计算完整性的证明,保证你收到的输出是正确的。
2、隐私计算
如果你有一个计算需求在本地运行并不昂贵,但你想隐藏它的一部分,怎么办?例如,如果我想让你知道我知道第 1000 个斐波那契数,但不告诉你这个数字,或者让你相信我已经支付了一笔钱,但不向你透露金额或我的身份,怎么办?
ZKPs 就可以让你有选择地隐藏计算语句相关的部分或全部输入内容。
上述两个用例都已经以很多种形式体现在加密货币行业的方方面面。
鉴于上述情况,可以说,随着加密货币采用率的提高,ZKPs 的市场需求也会同步增长,以适应用户对性能和隐私的需求增加。
ZKPs 从根本上为可扩展的私人支付以及智能合约平台的加速发展提供了可能,但是其高昂的计算成本在一定程度上限制了其大规模采用的进程。
基于 ZKPs 证明一个计算首先需要将其从经典描述「翻译」成 ZK 友好的格式。这可以通过手动重写代码来完成,以使用像 Arkworks 这样的低级库,或者使用像 Cairo 或 Circom 这样的专用语言将其编译成原语来生成证明。
更昂贵和复杂的操作会导致需要花费更长的证明生成时间。此外一些对 ZK 不友好(例如 SHA 等)操作也会导致在普通计算机上的证明生成时间会变得非常长,而这种情况时常发生。
一旦你的计算变成了 ZK 友好的形式,你就能选择一些输入并将其发送到一个证明系统。比如以其论文作者的名字命名的 Groth16、GM17,或是名字更具创意的 PLONK、Spartan 以及 STARK 等。这些证明系统都接受以 ZK 友好格式表达的计算。根据不同的证明系统,证明的生成过程可能有所不同,但瓶颈实际上存在共性,即:
在同时存在 FFT 和 MSM 的系统中,生成证明的时间中大概 70% 会花在 MSM 上,剩下的时间则用于 FTT 计算。MSM 和 FFT 都很慢,但也并非毫无优化的可能。先看问题:
简单来说:
我们在解决大型 MSM 和 FFT 的缓慢性方面看到的最有希望的工作是 PipeZK。在他们的论文中,作者描述了一种使用 Pippenger 算法跳过重复计算来让 MSM 变得更加高效的方法。他们还描述了一种「unroll」FFT 的方法,这样就可以在不进行大量数据重组的情况下进行计算,内存的访问模式会变得可预测,这可以有效提升硬件的计算效率。
假设上述方法解决了每种算法的基本瓶颈问题,那么问题就来了。能够同时优化 MSM 和 FTT 算法并让 ZKP 生成效率大幅提升的硬件是什么样的呢?
上述加速技术可以在多种硬件技术上实现,包括但不限于 GPU、FPGA 以及 ASIC 等。但哪一个是最好的选择呢?
在回答这个问题之前我们要先明确一点,ZKPs 仍然处于发展的早期,系统参数(如 FFT 宽度或参数的数据体积)或证明系统的选择上仍然没有实现标准化。正因为如此,FPGA 的两个核心特性让其在当前的大环境中相比 ASIC 更具吸引力。
而随着机器学习和计算机视觉领域技术的发展,未来 FPGA 的性能甚至有望超越 GPU,而与 GPU 相比,FPGA 还存在两个很明显的优势:
鉴于上述情况,我们预计市场上的获胜者将是那些专注于 FPGA 而不是 ASIC 或 GPU 的公司。然而,如果只有一个或几个 ZK L1 或 L2 最终「垄断」了市场,且 ZK 证明系统稳定在一个单一的实现方案上的话,ASIC 战胜 FPGA 的可能性会更大。但从目前的情况来看,即便会发生,可能也需要等到很多年以后。
在刚刚结束的 2021 年里,比特币矿工的净收入超过 150 亿美元,以太坊矿工的收入更是超过了 170 亿美元。零知识证明最终会成为网络上计算完整性和隐私的重要实现手段,在这种情况下,「ZK 矿工」的市场规模有望媲美 PoW 挖矿市场。
而综上所述,至少在当前的背景下,FPGA 硬件可以更好地解决 ZKPs 证明生成低效且昂贵的现状,在这条新赛道的硬件竞逐中,FPGA 相比 GPU 和 ASIC 暂时处在领先的位置之上。
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。