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的设计经过精心优化,以确保在广泛的操作数大小范围内实现高效的处理。

评论

所有评论

推荐阅读

  • Tether 开出总估价超过 20 亿欧元的新报价收购尤文图斯

    加密货币巨头 Tether 公司对于收购尤文图斯俱乐部的计划非常认真,他们准备再次开出一份超过 20 亿欧元的新报价。昨天 Tether 已经向 Exor 董事会提交了一份报价,意图收购阿涅利家族控股公司所持有的尤文图斯 65.4% 股份,这一消息由首席执行官保罗-阿尔多伊诺通过社交媒体公布,但这仅仅是谈判的开始。

  • American Bitcoin比特币储备过去7天增加约623枚,现仓位达4941枚BTC

    此前曾披露分析“1011内幕巨鲸”的链上分析师Emmett Gallic在X平台发文披露特朗普家族支持的加密矿企American Bitcoin比特币储备更新数据,过去七天增加约623枚BTC,其中约80枚来自于挖矿收入,542枚来自于公开市场的战略收购,截至目前其比特币总持有量增至4941枚,当前市值约合4.5亿美元。

  • 美国现货以太坊ETF昨日净流出1940万美元

    据TraderT监测,美国现货以太坊ETF昨日净流出1940万美元

  • 华夏基金香港在Solana上推出亚洲最大代币化货币市场基金

    12月12日消息,华夏基金香港(ChinaAMC HK)产品与策略负责人 Katie He 在 Solana Breakpoint 大会上表示,将推出亚洲首个且规模最大的代币化货币市场基金,涵盖港币(HKD)、美元(USD)和人民币(RMB)计价,将传统货币市场工具代币化,为投资者提供安全、链上访问稳定收益的机会,具有完全透明度和实时结算。经过数月与监管机构及 OSL 等伙伴的合作,这一创新将自香港扩展至更广阔地区,并原生部署到 Solana 区块链上。

  • 加拿大皇家银行已购入77,700股American Bitcoin股票

    据市场消息:价值1万亿美元的加拿大皇家银行已购入77,700股American Bitcoin ($ABTC)股票,价值约15万美元。该比特币矿企由特朗普家族成员Eric Trump支持。

  • 中国人民银行:继续实施适度宽松的货币政策,推进人民币国际化

    中国人民银行党委召开会议,会议纪要第三点指出:继续实施适度宽松的货币政策,加快推进金融供给侧结构性改革。把促进经济稳定增长、物价合理回升作为货币政策的重要考量,灵活高效运用降准降息等多种货币政策工具,把握好政策实施的力度、节奏和时机,保持流动性充裕,促进社会综合融资成本低位运行,加强对实体经济的金融支持。畅通货币政策传导机制,优化结构性货币政策工具运用,加强与财政政策的协同,激励和引导金融机构加力支持扩大内需、科技创新、中小微企业等重点领域。保持人民币汇率在合理均衡水平上的基本稳定。会议纪要第五点指出:稳步推进金融高水平开放,维护中国国家金融安全。践行全球治理倡议,积极参与和推进全球金融治理改革完善。务实开展金融外交和多双边货币金融合作。推进人民币国际化。持续建设和发展多渠道、广覆盖的人民币跨境支付体系。稳步发展数字人民币。

  • 日本央行据悉将进行更多加息 部分官员认为中性利率高于1%

    据知情人士透露,日本央行官员认为,在本轮加息周期结束前,利率很可能升至0.75%之上,这表明在下周加息之后,可能还会有更多次加息。这些人士称,官员认为,即使加息至0.75%,日本央行仍未达到中性利率水平。部分官员已认为1%仍低于中性利率水平。知情人士表示,即便日本央行根据最新数据更新中性利率估算,目前也并不认为该区间会显著收窄。目前日本央行对名义中性利率区间的估计约为1%至2.5%。知情人士称,日本央行官员认为该区间上下限本身也可能存在误差。(金十)

  • Nexus 启动“节点之光·先锋理财周”,打造节点用户专属通道

    Nexus 12月12日宣布即将启动为期五天的 “节点之光·先锋理财周”,以“节点身份金融特权” 为核心理念,为生态核心参与者开启一段独立于全平台的专属理财周期。此次活动仅限节点用户参与专属理财包认购,并为随后上线的全平台理财与 NexSwap 注入市场期待。

  • 美 SEC 主席:DTC 参与者可将代币化证券转入其他参与者的注册钱包

    美国证券交易委员会(SEC)主席 Paul Atkins 在 X 平台发文表示,美国金融市场即将向链上转型并将优先考虑创新并积极采用新技术,SEC 已向美国存托信托与清算公司(DTC)发布了一封不采取行动的信函,链上市场将为投资者带来更高的可预测性、透明度和效率,现在 DTC 参与者可以直接将代币化证券转入其他参与者的注册钱包,这些交易将被 DTC 官方记录跟踪。

  • Tether 计划通过股票发行筹集最高 200 亿美元资金

    据彭博社报道,Tether 计划通过股票发行筹集最高 200 亿美元资金,并将在完成股票出售后考虑将股票代币化。知情人士透露,Tether 的高管们正在考虑各种方案,包括股票回购,以及在交易完成后通过代币化的方式将公司的股票以数字形式存储在区块链上。