Paradigm:零知识证明重要但低效,如何通过硬件将它提速?

Foresight Research发布于2022-04-14更新于2022-04-14

文章摘要

一个完整的 ZK 挖矿和证明行业即将出现。

简介

零知识密码学是计算机科学领域在近50年间最引人注目的创新之一。零知识证明(以下简称ZKPs)的一系列「先天优势」使其成为了各种区块链扩容和隐私解决方案的重要组成部分,包括像StarkNet这样的ZKrollups,像Aztec这样的隐私ZKrollups,以及像Mina、Filecoin和Aleo这样的一层公链等等,都应用了该技术。

虽然受制于庞大的数学计算需求量导致ZKPs的生产速度缓慢且昂贵。但随着以现场可编程阵列(以下简称FPGA)和专用集成电路(以下简称ASIC)为代表的特殊硬件的普及和落地,ZKPs的效率将得以大幅提升,提升幅度甚至可能达到1000倍之多。

随着个性化且高性能的隐私计算需求日益增长,使用ZKPs证明的语句复杂性将进一步增加。因此也只能通过使用专门的硬件来避免证明生成速度进一步下降,以便更及时地生成证明结果。

这意味着这个「产业链」将迎来变革,就像那些服务于比特币网络的矿工一样,这些为了支持ZKPs高效运行的特殊硬件操作者将得到相应的补偿,一个完整的ZK挖矿和证明行业将就此出现。业余爱好者们可以在他们自己的CPU上生成证明,亦或是使用GPU以及FPGA。当然这个完整链条的成熟还需要相当一段时间的演变。

零知识证明为什么重要?

零知识证明有两个主要的用例:

1、外包可验证的计算

假设你有一些计算需求,由于你所使用的平台(如你的笔记本电脑、树莓派甚至以太坊等)的限制,完成这些计算的时间成本过于昂贵甚至由于算力不足根本无法完成。这时候你就必须依靠第三方服务来运行该计算,一般来说,这些服务都可以快速且平价地返回给你该计算的输出(例如AWS的Lambda函数或像Chainlink这样的Oracle服务等)。

但是,通常情况下你只能默认计算已经被正确执行,而一旦算力提供方输出了一个错误或者无效的计算结果,这就可能会造成灾难性的后果。

ZKPs的价值就体现在其允许第三方提供者也输出一个计算完整性的证明,保证你收到的输出是正确的。

2、隐私计算

如果你有一个计算需求在本地运行并不昂贵,但你想隐藏它的一部分,怎么办?例如,如果我想让你知道我知道第1000个斐波那契数,但不告诉你这个数字,或者让你相信我已经支付了一笔钱,但不向你透露金额或我的身份,怎么办?

ZKPs就可以让你有选择地隐藏计算语句相关的部分或全部输入内容。

上述两个用例都已经以很多种形式体现在加密货币行业的方方面面。

二层扩展:可验证的计算与ZKPs允许一层公链将交易处理外包给链外高性能系统(又称二层)。这使得区块链可以在安全性不受影响的前提下进行扩展。举例来说,StarkWare正在建立一个可扩展的智能合约平台,StarkNet,其中就使用了一个用于特殊用途的虚拟机,运行ZK友好的代码。而Aztec的二层应用支持隐私运行,不会泄露用户交易的任何信息。

隐私公链:像Aleo、Mina和Zcash这样的一层公链允许交易人使用ZKPs来隐藏发送者、接收者或金额等信息,可以是默认的(Aleo),也可以是选择加入(Mina和Zcash)。

去中心化的存储:Filecoin使用ZKPs(在GPU上运行)来证明网络中的节点正确存储数据。

区块链压缩:Mina和Celo使用ZKPs将同步到链的最新状态所需的区块链数据压缩成一个小证明。

鉴于上述情况,可以说,随着加密货币采用率的提高,ZKPs的市场需求也会同步增长,以适应用户对性能和隐私的需求增加。

ZKPs从根本上为可扩展的私人支付以及智能合约平台的加速发展提供了可能,但是其高昂的计算成本在一定程度上限制了其大规模采用的进程。

ZKPs为什么会很慢,我们要如何让其快起来?

基于ZKPs证明一个计算首先需要将其从经典描述「翻译」成ZK友好的格式。这可以通过手动重写代码来完成,以使用像Arkworks这样的低级库,或者使用像Cairo或Circom这样的专用语言将其编译成原语来生成证明。

更昂贵和复杂的操作会导致需要花费更长的证明生成时间。此外一些对ZK不友好(例如SHA等)操作也会导致在普通计算机上的证明生成时间会变得非常长,而这种情况时常发生。

一旦你的计算变成了ZK友好的形式,你就能选择一些输入并将其发送到一个证明系统。比如以其论文作者的名字命名的Groth16、GM17,或是名字更具创意的PLONK、Spartan以及STARK等。这些证明系统都接受以ZK友好格式表达的计算。根据不同的证明系统,证明的生成过程可能有所不同,但瓶颈实际上存在共性,即:

大数向量的乘法,特别是变基和定基多标度乘法(以下简称MSM);或者

快速傅里叶变换(以下简称FFT)和反FFT(尽管有无FFT证明系统的技术)。

在同时存在FFT和MSM的系统中,生成证明的时间中大概70%会花在MSM上,剩下的时间则用于FTT计算。MSM和FFT都很慢,但也并非毫无优化的可能。先看问题:

对于MSM来说,可以通过在多线程运行来进行加速。然而,即使在数百个内核上,如果每个元素向量达到2的25次方个(即3300万个元素,对于像zkEVM这样的应用来说,这是一个保守的复杂度估计),乘法最终仍然需要花费大量的时间。这就可能会导致设备「爆内存」。简而言之,MSM需要大量的内存,即使在多线程的情况下仍然很慢。

FFT很大程度上依赖于算法运行时数据的频繁重组。这使得它们很难通过在一个计算集群中有效分配负载来加速,这类计算在硬件上运行时需要大量的带宽。重组意味着你需要「随机」加载和卸载部分数据,例如,在内存为16GB或更少的硬件芯片上加载一个>100GB的数据集。虽然硬件上的操作非常快,但通过接口加载和卸载数据的时间会导致操作速度大幅减慢。

简单来说:

MSM的内存访问需求是可预测的,可以实现大量的并行化,但由于原始的计算量和内存需求非常大,其成本仍然很高。

FFT的内存访问是随机的,这一点对硬件并不友好,而且自然很难在分布式基础设施上运行。

我们在解决大型MSM和FFT的缓慢性方面看到的最有希望的工作是PipeZK。在他们的论文中,作者描述了一种使用Pippenger算法跳过重复计算来让MSM变得更加高效的方法。他们还描述了一种「unroll」FFT的方法,这样就可以在不进行大量数据重组的情况下进行计算,内存的访问模式会变得可预测,这可以有效提升硬件的计算效率。

假设上述方法解决了每种算法的基本瓶颈问题,那么问题就来了。能够同时优化MSM和FTT算法并让ZKP生成效率大幅提升的硬件是什么样的呢?

硬件的选择

上述加速技术可以在多种硬件技术上实现,包括但不限于GPU、FPGA以及ASIC等。但哪一个是最好的选择呢?

在回答这个问题之前我们要先明确一点,ZKPs仍然处于发展的早期,系统参数(如FFT宽度或参数的数据体积)或证明系统的选择上仍然没有实现标准化。正因为如此,FPGA的两个核心特性让其在当前的大环境中相比ASIC更具吸引力。

「多次写入」对比「一次性写入」:ASIC上的业务逻辑是一次性写入的。如果任何ZKP逻辑发生变化,你就需要从头再来。而FPGA可以实现秒级的重新刷新,这意味着可以在具有不兼容的证明系统的多个链上重新使用相同的硬件(例如,因为他们想跨链提取MEV),硬件可以适应ZK「元」的变化灵活。

更成熟的供应链:ASIC的设计、制造和部署通常需要12至18个月乃至更长的时间。相比之下FPGA供应链要成熟许多,像Xilinx这样头部的供应商允许从网站上下订大量的零售订单并在16周内到达。这使得以FPGA为中心的业务能够对其产品有一个更紧凑的反馈回路,并能更灵活地通过购买和部署更多的FPGA来随时扩大业务规模。

而随着机器学习和计算机视觉领域技术的发展,未来FPGA的性能甚至有望超越GPU,而与GPU相比,FPGA还存在两个很明显的优势:

硬件成本:顶级FPGA(领先的工艺节点、时钟频率、能耗比和存储器带宽)比顶级GPU便宜约3倍。而全球内GPU供不应求的状况进一步加剧了这个问题。

能耗比:FPGA的能效比GPU高10倍以上,很大的原因是GPU需要连接到主机设备上才能运行,而主机设备往往要消耗大量的电能。

鉴于上述情况,我们预计市场上的获胜者将是那些专注于FPGA而不是ASIC或GPU的公司。然而,如果只有一个或几个ZKL1或L2最终「垄断」了市场,且ZK证明系统稳定在一个单一的实现方案上的话,ASIC战胜FPGA的可能性会更大。但从目前的情况来看,即便会发生,可能也需要等到很多年以后。

结论

在刚刚结束的2021年里,比特币矿工的净收入超过150亿美元,以太坊矿工的收入更是超过了170亿美元。零知识证明最终会成为网络上计算完整性和隐私的重要实现手段,在这种情况下,「ZK矿工」的市场规模有望媲美PoW挖矿市场。

而综上所述,至少在当前的背景下,FPGA硬件可以更好地解决ZKPs证明生成低效且昂贵的现状,在这条新赛道的硬件竞逐中,FPGA相比GPU和ASIC暂时处在领先的位置之上。

你可能也喜欢

美联储利率决议及凯文·沃什声明后,专家齐聚并分享了他们最新评论!

美联储决定维持利率不变后,市场专家针对会议结果及美联储主席凯文·沃什的发言发表了评论。尽管有三名委员对维持利率的决议投下反对票,暗示美联储内部可能出现更多政策分歧,但市场反应相对有限——债券收益率小幅下降,美元略有走软。 专家普遍认为,美联储在九月会议上仍有可能加息。Nationwide Investment Management Group的马克·哈克特指出,三名反对票可能标志着美联储委员将更加独立行事,而非追求表面共识。Citadel Securities在会前发布的报告曾呼吁加息,随后的市场反弹被哈克特称为“松了一口气的反弹”。 货币与利率策略主管奥黛丽·柴尔德-弗里曼表示,尽管决议后收益率和美元有所回落,但反对票的存在显示了美联储的强硬立场。她认为美联储将继续依据经济数据决策,美元在夏季可能因债券高收益率而保持强势。 分析师克里斯·安斯泰指出,市场将密切关注沃什讲话期间及之后美国10年期国债收益率的变化。其收益率已超过决议前水平,若长期收益率持续上升,可能反映出市场担忧美联储抗通胀力度不足,这对沃什而言是一个负面信号。安斯泰同时提到,财政部长斯科特·贝森特将10年期收益率视为抵押贷款等信贷的关键指标,因此长期利率变动对经济管理至关重要。 毕马威首席经济学家黛安·斯旺克则认为,美联储应在本次会议上加息,并预计九月会采取行动。她指出,高通胀已持续近五年,尽管美联储并非通胀的唯一原因,但采取货币政策行动仍是其责任。斯旺克警告,长期过高的通胀可能从异常现象转变为经济体系的常态。 (本文不构成投资建议。)

cryptonews.ru47分钟前

美联储利率决议及凯文·沃什声明后,专家齐聚并分享了他们最新评论!

cryptonews.ru47分钟前

《我没时间说服你》——中本聪名言问世16周年

2010年7月29日,比特币创始人中本聪在Bitcointalk论坛上回复用户关于交易速度过慢的质疑时,写下了那句著名的话:“如果你不相信我或不理解,我没有时间试图说服你,抱歉。”这句罕见的、略显不耐烦的回复,在多年来始终冷静、耐心解答技术问题的沟通记录中显得格外突出。 文章回顾了中本聪的一贯沟通风格。在长达数年的公开和私下交流中,他面对关于可扩展性、安全性等重复性质疑时,通常以具体的技术机制、数据或类比进行详尽解释,而非简单驳斥。他展现出坚定的设计哲学,例如从一开始就设想比特币网络将由少量全节点和大量轻客户端构成,并基于摩尔定律等具体预测来论证其 scalability 潜力。同时,他能够坦承设计中的简化之处,避免事后辩解。 在私下与早期合作者(如Martti Malmi)的邮件中,中本聪表现出协作甚至自嘲的一面,亲自参与细节讨论。而在公开场合,他的发言则更具教导性,致力于向大众解释比特币的工作原理。他始终避免个人崇拜,曾要求将功劳归于更广泛的开发群体。 这场关于可扩展性的辩论及其引发的名言,至今仍影响着比特币社区。中本聪的原始论述表明,比特币架构的核心权衡是初始设计的一部分。他的沟通方式也为开源协作树立了榜样:委托授权、书面记录决策、让贡献者共同创建材料。而那句著名回复则提醒所有人,即使是耐心十足的导师,在重复解释已给出的答案时,耐心也可能耗尽。

cryptonews.ru1小时前

《我没时间说服你》——中本聪名言问世16周年

cryptonews.ru1小时前

交易

现货
活动图片