Cointime

扫码下载App
iOS & Android

ZPU:零知识处理单元能否引领ZKP走向现实?

作者:Ingonyama 编译:Cointime.com 237

在这篇博客中,我们提出了零知识处理单元(ZPU),这是一个多功能且可编程的硬件加速器,旨在满足零知识证明处理的新需求。

我们介绍了ZPU的架构和设计考虑,并解释了ZPU生态系统中不同部分的设计选择:ISA(指令集架构)、数据流、存储器和处理单元(PE)内部结构。最后,我们将其与用于零知识证明和完全同态加密(FHE)的最先进ASIC架构进行了比较。

引言

数据驱动应用程序的快速增长以及对隐私的日益需求,导致人们对保护敏感信息的密码协议产生了浓厚兴趣。在这些协议中,零知识证明(ZKP)作为确保计算完整性和隐私的强大工具而脱颖而出。ZKP使一方能够向另一方证明某个陈述的有效性,同时又不泄露任何额外信息。这种特性促成了ZKP在各种注重隐私的应用中的广泛采用,包括区块链技术、安全云计算解决方案和可验证的外包服务。

然而,ZKP在实际应用中面临一个重大挑战:证明生成所带来的性能开销。ZKP算法通常涉及对非常大整数进行复杂的数学运算,比如大规模多项式计算和椭圆曲线上的多标量乘法。此外,密码算法不断发展,新的更高效的方案正在快速发展。因此,现有的硬件加速器很难跟上密码原语的各种差异和密码算法变化的步伐。

在这篇博客中,我们提出了零知识处理单元(ZPU),这是一种新颖而多功能的硬件加速器,旨在满足零知识证明处理的新需求。ZPU基于一种指令集架构(ISA)构建,具有可编程性,能够适应快速发展的密码算法。ZPU采用互连网络的处理单元(PEs),本地支持大字模数算术。PE的核心结构受到了乘-累加(MAC)引擎的启发,该引擎是数字信号处理(DSP)和其他计算系统中的基本处理单元。PE的操作使用模数算术,核心组件经过定制以支持ZK算法中的常见操作,如NTT蝶形操作和椭圆曲线点加法用于多标量乘法。

指令集架构

ZPU架构采用互连网络的处理单元(PEs),如下图所示,由指令集架构(ISA)定义。我们选择了这种架构,以适应零知识协议的不断变化的背景。

ISA方法使得ZPU能够保持灵活性和适应ZK算法的变化,并支持广泛的密码原语。此外,利用ISA而不是固定硬件可以在制造后继续改进软件,确保即使在该领域出现新的进展时,ZPU仍然具有相关性和高效性。

ISA是处理器可以执行的指令集。它作为硬件和软件之间的接口,定义了软件与硬件交互的方式。通过使用自定义ISA设计ZPU,我们可以针对ZK处理任务的特定要求进行优化,如大字模算术运算、椭圆曲线密码学和其他复杂的密码操作。

PE核心组件

每个PE都设计有一个核心,包括一个模乘器、一个加法器和一个减法器,如图2所示。这些核心组件受到数字信号处理(DSP)和其他计算系统的基本处理单元——乘积累加(MAC)引擎的启发。MAC引擎高效地执行乘积累加运算,即将两个数相乘并将乘积加到累加器中。

PE的核心结构经过定制,以满足ZK中的常见操作,如用于多标量乘法的椭圆曲线点加法和用于数论变换(NTT)的NTT蝶形操作。蝶形操作涉及模算术下的加法、减法和乘法。这个操作从其计算流程图的蝴蝶状外观得名,非常适合PE的核心硬件组件,因为它们通过专用的蝴蝶指令实现原生的蝴蝶计算。

此外,每个PE还包含几个专用的存储单元,包括:

1、到达大厅:用于存储到达PE的数据的存储器。

2、离开大厅:用于存储离开PE的数据的存储器。

3、操作数A、B和C的临时存储器:三个独立的存储器,用于存储中间结果。

4、存储扩展器:用于处理各种算法需求的多功能存储器,例如用于多标量乘法(MSM)的桶聚合。

5、程序存储器:用于存储指令队列的存储器。

PE位宽

PE具有对大字模算术操作(高达256位字)的本机支持。在PE中,高位宽本机支持和低位宽本机支持之间的权衡来自于需要在不同操作数大小之间平衡效率的需求。

当PE具有高位宽本机支持时,它针对处理大操作数大小进行了优化,无需将其拆分为较小的块。然而,这种优化以减少较低位宽操作的效率为代价,因为PE被低效利用。另一方面,当PE具有低位宽本机支持时,它针对更高效地处理小操作数大小进行了优化。然而,这种优化在处理较大位宽操作时会产生效率低下,因为PE需要将较大的操作数拆分为较小的块并按顺序处理这些块。

挑战在于找到高位宽本机支持和低位宽本机支持之间的正确平衡,以确保在各种操作数大小范围内实现高效处理。此平衡应考虑目标应用领域(ZK协议)中常见的位宽,并权衡每种设计选择的优缺点。在ZPU架构中,选择了256位字大小作为良好的平衡点。

PE连接性

所有PE通过环连接连接在一起,这是一种拓扑结构,每个PE直接连接两个相邻的PE,形成一个循环网络。环连接允许控制数据在不同PE之间高效传播。PE还通过互连组件进行连接,该组件类似于位移器,可以在不同时间段内直接连接不同的PE。这种设置允许PE与所有其他PE之间发送和接收信息。

外围组件

该架构还集成了片外高带宽存储器(HBM),以支持高内存容量和高内存带宽。多个PE被聚集在一起形成一个PE集群,每个PE集群连接到一个HBM存储器或通道。此外,还包括基于芯片的ARM CPU子系统,用于管理整个系统操作。

性能评估

为了评估ZPU的性能,我们考虑了对我们打算加速的算法至关重要的关键操作。我们主要关注NTT蝶形操作和椭圆曲线(EC)点加法操作。为了评估MSM和NTT操作的总计算时间,我们计算了进行这些操作所需的总计算指令数量,并将其除以时钟频率和PE的数量。

NTT蝶形操作在每个时钟周期执行一次。对于椭圆曲线点加法操作,这是多标量乘法(MSM)中的关键元素,我们将其拆分为可以在单个PE上执行的基本机器级指令。然后,我们计算完成此操作所需的时钟周期数。通过这种分析,我们确定每个椭圆曲线点加法操作可以在18个时钟周期内执行一次。

这些假设为我们的性能评估提供了基础,并可根据需要进行调整,以反映不同的算法要求或硬件能力。

根据我们的计算,只有72个PE的配置以GPU频率1.305 GHz运行将足以达到Zprize MSM操作中GPU类别获奖者的性能水平。Yrrid Software和Matter Labs都取得了这一成就,使用A40 NVIDIA GPU进行四个MSM计算的结果为2.52秒。比较是基于固定基点的MSM计算,涉及从BLS 12–377标量场中随机选择的2²⁶个标量,以及来自BLS 12–377 G1曲线的一组固定椭圆曲线点和标量场中有限域元素的随机采样输入向量。

根据我们对PE的面积估计,使用与A40 GPU相同的8纳米工艺的ASIC可以在与A40 GPU相同的628平方毫米面积内容纳大约925个PE。这意味着我们的效率大约比A40 GPU提高了13倍。

PipeZK是一种高效的流水线加速器,旨在提高零知识证明(ZKP)生成的性能,具有专用的MSM和NTT核心,分别优化多标量乘法和大型多项式计算的处理。

与PipeZK相比,我们发现只有17个PE的配置以PipeZK的频率300 MHz运行将足以达到其在MSM操作上的性能水平。PipeZK在BN128曲线上以300 MHz的频率执行2²⁰长度的MSM操作,完成时间为0.061秒。此外,要达到与PipeZK在NTT操作上的性能水平,运行一个2²⁰元素,256位元素的NTT操作,频率为300 MHz,完成时间为0.011秒,我们需要大约4个以相同频率运行的PE。总体而言,要达到与PipeZK同时运行MSM和NTT的性能水平,我们需要21个PE。

根据我们的面积估算,使用28纳米工艺的ASIC(与PipeZK芯片采用相同的工艺技术)可以在与PipeZK芯片相同的50.75平方毫米面积内容纳大约16个PE。这意味着我们的效率略低于PipeZK的固定架构(效率降低25%),同时仍然完全适应不同的椭圆曲线和ZK协议。

环处理单元(RPU)是最近设计的一种加速基于环的Ring-Learning-with-Errors(RLWE)计算的方法,它是各种安全和隐私增强技术(如同态加密和后量子密码学)的基础。

与RPU相比,我们的计算表明,在计算64K 128位元素的NTT时,要达到RPU在其最优配置(128个银行和HPLEs)下的性能水平,我们需要大约23个以RPU频率1.68GHz运行的PE。我们的分析显示,采用与RPU相同的12纳米工艺的ASIC可以容纳大约19.65个PE,而其占据了20.5平方毫米的面积。这意味着我们的效率略低于RPU(效率降低15%),但兼容除NTT之外的其他原语。

TREBUCHET是一种全同态加密(FHE)加速器,使用环处理单元(RPU)作为芯片上的块。块还通过将数据调度到计算元素附近来促进内存管理。RPU在整个设备中被复制,使软件可以最小化数据移动并利用数据级并行性。

TREBUCHET和ZPU都基于ISA架构和本地支持非常长字(128位或更多)的大型算术字引擎(在模运算下)。然而,与RPU或TREBUCHET SoC相比,ZPU的附加价值在于扩展了其设计用于解决的问题集。尽管RPU和TREBUCHET主要专注于NTT,但ZPU支持更多原语,如多标量乘法(MSM)和取向于算术化的哈希函数。

结束语

我们的性能评估表明,ZPU可以达到甚至超过现有最先进ASIC设计的性能,并且更适应ZK算法和密码学原语的变化。虽然需要考虑一些权衡之处,例如PE中高位宽和低位宽的本地支持之间的平衡,但ZPU的设计经过精心优化,以确保在广泛的操作数大小范围内实现高效的处理。

评论

所有评论

推荐阅读

  • BTC跌破91000美元

    行情显示,BTC跌破91000美元,现报90997.44美元,24小时涨幅达到0.26%,行情波动较大,请做好风险控制。

  • 美国现货以太坊ETF上周净流出6857万美元

    根据SoSoValue数据,上周交易日(美东时间1月5日至1月9日)美国现货以太坊ETF上周净流出6857万美元。

  • BTC突破92000美元

    行情显示,BTC突破92000美元,现报92041.92美元,24小时涨幅达到1.49%,行情波动较大,请做好风险控制。

  • 长三角一体化大模型发布 AI将为区域发展提供决策支撑

    长三角一体化大模型发布与场景应用链接大会在上海召开。会上,由中国区域经济50人论坛成员、上海财经大学长三角与长江经济带发展研究院执行院长张学良教授团队牵头建设的长三角一体化大模型(YRD-P1)正式发布。张学良表示,YRD-P1模型是在多年城市与区域科学研究积累的基础上构建的专用大模型。模型依托持续积累的政策文本、统计数据、学术成果、产业链信息及地理空间数据,面向长三角区域进行深度定制开发,强调知识体系的系统性、权威性和可溯源性,致力于为区域协调发展提供更加智能、精准、可持续的决策支撑工具。

  • 天普股份:公司涉嫌信息披露违规 股票将于1月12日复牌

    天普股份公告,公司因涉嫌信息披露违规,收到中国证监会下发的《立案告知书》和上海证券交易所的监管警示。公司股票将于2026年1月12日开市起复牌。公司目前生产经营活动正常,但股票价格短期波动较大,累计涨幅较大,已严重偏离上市公司基本面,存在巨大交易风险。2025年前三季度公司实现营业收入2.3亿元,同比下降4.98%;实现归属于上市公司股东的净利润1785.08万元,同比下降2.91%。

  • 日本首相考虑解散众议院,美元兑日元涨幅迅速走高

    日本首相考虑解散众议院。美元兑日元涨幅迅速扩大至 0.66%,报 157.95,创最近一年新高。

  • “美联储传声筒”Nick Timiraos:2025年私营部门雇主平均每月新增6.1万个就业岗位,这是自2003年所谓“无就业复苏”以来,私营部门就业增长最为疲弱的时期。

    “美联储传声筒”Nick Timiraos:2025年私营部门雇主平均每月新增6.1万个就业岗位,这是自2003年所谓“无就业复苏”以来,私营部门就业增长最为疲弱的时期。

  • 失业率意外下降重挫降息预期 债券交易员转看年中行动

    美国国债下跌,交易员几乎抹去了对美联储本月晚些时候降息的押注。此前,12月失业率的降幅超出预期,抵消了总体就业人数增长疲软的影响。周五报告发布后,美国政府债券价格下跌,推高了各期限收益率,涨幅多达3个基点。债券交易员维持了2026年全年总共降息两次的预测,预计首次降息将在年中进行。Natixis North America美国利率策略主管John Briggs表示:“对我们而言,美联储更关注失业率,而不是总体数据中的噪音。因此在我看来,这对美国利率略微利空。”此前,受10月1日至11月12日长达六周的政府停摆影响,9月、10月和11月的劳工报告推迟发布。此次就业数据提供了首份能够反映宏观经济就业趋势的“干净”读数。美联储是否进一步降息,被认为取决于未来几个月劳动力市场的表现。此前,为应对劳动力市场疲软,美联储在过去三次会议上均下调了短期贷款利率的目标区间。然而,部分官员仍对通胀高于目标感到担忧,这被视为限制了进一步宽松的步伐。

  • 高盛:美联储1月很可能按兵不动 但2026年剩余时间会降息两次

    金十数据1月9日讯,高盛资产管理公司多行业固定收益投资部门主管林赛·罗森纳评美国非农:再见了,一月!美联储目前很可能会维持现状,因为劳动力市场已显示出初步的稳定迹象。失业率的改善表明,11月的大幅上升只是由于个别员工因“推迟离职”政策而提前离职以及数据失真所致,并非系统性疲弱的迹象。我们预计美联储目前会保持不变的政策立场,但预计2026年剩余时间里还会再降息两次。

  • 市场交易员仍预期美联储将在2026年放松货币政策约50个基点。

    市场交易员仍预期美联储将在2026年放松货币政策约50个基点。