范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

同态加密算力开销如何弥补?港科大提出同态加密算法硬件加速方案

  机器之心专栏
  作者:杨照雄、胡水海、陈凯
  当前,各行各业中的隐私泄露问题层出不穷,人们对于隐私安全保护的需求日益提高。随着相关法律法规体系的逐渐成熟,众多隐私计算技术也应运而生,联邦学习就是其中的佼佼者。通过结合同态加密、秘密共享、不经意传输等安全计算方法,联邦学习使得多个数据持有者,可以在保证数据安全的前提下,协同构建机器学习模型。在联邦学习中所使用的多种隐私计算技术中,同态加密的功能和实用性举足轻重。
  在各行各业,不难想象这样的场景,A 公司拥有大量数据,然而其并没有人力或计算能力对这些数据进行分析处理,因此,A 公司希望购买 B 公司的计算服务对数据进行处理,但是,A 公司不希望 B 公司获取这些数据的具体信息,因此,如果可以将数据进行加密,再传递给 B 公司进行处理,则可以满足 A 公司的所有需求。因此,在这样的场景下,我们需要一套加密体系,对密文执行的一些运算操作,可以等效为对明文执行的运算。
  支持对密文进行运算操作的加密体系,被统称为同态加密,而同态运算则泛指对密文执行的各种运算。根据密文可执行运算的范围,同态加密算法被划分为全同态加密、部分同态加密、近似同态加密等。一般来说,对同态运算没有限制的加密算法被称为全同态加密,而仅支持单一同态运算的加密算法被称为部分同态加密。诚然,全同态加密是一种非常理想、需求巨大的算法,然而,目前主流的全同态加密算法,运算复杂度都相当之高,计算时间之漫长,使其几乎无法在生产行业中实现落地。因此,部分同态加密成为了更加现实的解决方案。Paillier 加密就是一套被广泛使用的部分同态加密算法,它支持密文之间的加法运算。
  尽管相对于全同态加密,Paillier 加密的计算效率已经较为可观,但是,相比较于高效的明文处理,Paillier 加密系统还是不可避免地引入了大量计算开销。在大数据相关产业迅速发展的今天,成千上万的数据需要得到实时处理,而传统 CPU 的计算能力已经无法满足需求。
  FPGA(Field Programmable Gate Array),全称为现场可编程逻辑门阵列,是一种可以根据需求对底层电路结构进行设计更新的芯片,在通信、图像处理等领域拥有广泛的应用。通过使用 FPGA 内部逻辑资源构建计算电路,例化大量计算引擎,可以提高计算并行度,实现对指定算法的加速计算。传统意义上的 FPGA 开发为 RTL(Register-transfer Level)开发,开发人员通过硬件描述语言(Verilog 或 VHDL)控制寄存器读写、规划时序逻辑等,描述具体的硬件功能。这种开发模式需要大量的开发经验以及较长的硬件开发周期,并不适用于开发人员经验不足或者亟须产出的项目开发。因此,HLS(High Level Synthesis)开发受到了很多开发者,尤其是科研工作者的青睐。HLS 是一种代码综合技术,开发人员可以通过高级语言(C 或 C++)描述运算,HLS 开发套件将高级语言编译为 Verilog 或 VHDL 代码,再生成具体网表。开发者无需关心具体硬件电路的设计,只需构造合理运算逻辑,即可在短期内完成一项 FPGA 工程。
  使用 HLS 开发实现基于 FPGA 的 Paillier 加密运算,不仅可以提高计算效率,对于同态加密以及联邦学习的硬件加速探索,也有十分重要的意义。
  为了实现硬件加速,合适的算法选择十分必要。基于二进制进行运算的芯片,包括 CPU,都可以轻松实现高效的加法、乘法、位移等运算;然而取模、除法等运算则一直是硬件电路难以啃下的硬骨头,计算效率十分低下,显然 Paillier 加密运算中存在不可避免的取模和幂运算。众所周知,幂运算由若干乘法组成,而模幂运算
  ,可以由大名鼎鼎的快速幂算法拆解为若干
  少量的模乘运算
  。
  那么是否存在一种算法,无需单独取模,就可以实现模乘运算呢?答案是肯定的,这个算法就是蒙哥马利模乘算法。
  图一:蒙哥马利模乘算法。
  蒙哥马利算法的基本思想如图一所示,其中  l  为  M  的位宽, k  为基数,一般为 16、32、64 这样远小于 1024,且 FPGA 可以直接进行乘法运算的位宽。可以看到,这个算法本质上是一个二重循环,和普通的大数乘法十分相似,但是该算法通过引入参数  q ,保证中间结果
  可以被
  整除(被 2 的整数次幂除本质上就是向右移位),从而可以无误差地通过移位操作完成除法,同时保证,完成了
  移位之后得到的最终结果
  一定位于区间[0,2 M ),从而可以通过一次数值比较和减法,将最终结果限制在[0, M ),无形中完成了幂运算。
  基于蒙哥马利模乘运算
  ,再实现
  就成为了非常简单的操作,实现的方法也有很多。
  系统设计介绍
  论文链接:https://arxiv.org/pdf/2007.10560.pdf
  来自港科大 iSing Lab 等机构的研究者以蒙哥马利模乘运算为核心,提出了一套基于 FPGA 的同态加密加速体系,如图二所示,该系统被设想为部署在云服务器端,这些服务器属于联邦学习的参与方。该系统包括上位机 CPU 以及 FPGA,二者使用 PCIe 接口通信。CPU 负责机器学习模型的正常训练工作,并将机器学习使用的浮点数编码为适配同态加密方案的大整数,同时它将加密请求分批发送给 FPGA;FPGA 中为 Paillier 加密设计了高性能处理器,且硬件模块被封装为 OpenCL 内核由 CPU 进行调用。接下来,我们对 FPGA 内部高性能处理器的设计进行详细介绍。
  图二:FPGA 联邦学习加速系统。
  一个 Paillier 处理器中包含了模幂、随机数生成等所需的运算功能,此 HLS 设计中例化了若干 Paillier 处理器以实现运算的并行处理。此外,为了管理多处理器的工作,需要顶部模块执行数据分发以及计算结果收集的工作。显然,由于 FPGA 内部逻辑资源有限,此系统的运算效率取决于可以例化多少 Paillier 处理器,而 Paillier 处理器的主要组成部分是蒙哥马利模乘。因此,如何在硬件上优化蒙哥马利模乘运算成为了主要工作。我们从资源分配和时序分析两个方面对优化工作进行介绍。
  资源分配
  对于一个以计算功能为主的 FPGA 工程设计中,DSP、LUT 和 RAM 是总量最有限、最需要仔细规划使用的底层逻辑资源。DSP 是 FPGA 内部实现乘法运算不可缺少的底层逻辑资源,目前主流 FPGA 中的单个 DSP 块,可以在高时钟频率下实现两个 16 比特无符号整数之间的乘法运算,而通过串联多个 DSP 块,可以搭建出位宽更高的乘法器,比如,实现两个 64 比特无符号整数之间的乘法运算需要 16 个 DSP;LUT(lookup table 查找表)是 FPGA 内部最基本的逻辑资源,我们需要结合 LUT 和其他逻辑资源构建加法器、整数比较、有限状态机等其他逻辑电路;RAM 是 FPGA 底层集成的高速存储器,分为 BRAM 和 URAM 两类,一般来说,单个 RAM 可以存储 36Kb 数据,而单个 URAM 可存储 288Kb 数据,在当前工程中,可以使用 RAM 存放输入输出数据以及运算中间结果。
  由图一所示,蒙哥马利模乘算法由内外两重循环构成,我们将单次内部循环操作封装为如图三所示的处理单元,每个处理单元中包含两个乘法器,分别用于计算  x*y  和  q*m ,两个乘法结果与外层循环的上一轮计算结果
  以及进位(图中未画出)执行加法操作。同时,为了避免 HLS 编译代码展开循环后,造成乘法器资源大幅膨胀,需要使用 ALLOCATION 指令将处理单元的个数限制为 1 个。
  图三:算法 1 内部循环处理单元。
  图四:Karatsuba 快速乘法。
  在处理单元的设计中,同时采用了 Karatsuba 算法,如图四所示。根据乘法运算的原理,容易看出,乘法运算操作数的位宽减半,则总计算时间将减少至原先的四分之一左右。Karatsuba 算法将整数乘法拆分为了三个位宽仅为原来一半的整数乘法,从而节省了计算时间。根据该算法的原理,可以相应地使用 DSP 资源例化出所需的乘法器。
  在 RAM 的使用方面,不难注意到,用于加密的输入数据大多是由浮点数编码而成的,与大整数位宽相比,其有效数字很少。因此,可以将输入数据存储为稀疏向量,即只记录非零元素和它们的索引,减少存储占用。
  时序分析
  时序分析在 FPGA 开发中的重要性,丝毫不亚于对算法的优化以及逻辑资源的分配。从电路的角度简单来说,如果没有合理的逻辑设计和资源布局,不仅会使得信号传递时间过长,还有可能出现多组信号争抢相同硬件资源,导致局部堵塞的问题。
  通常来说,开发者可操控的最小粒度的 FPGA 工作时间为一个时钟周期,而 FPGA 完成一个时钟周期所需的时间由时钟频率决定,即
  因此,在降低时钟周期数的同时提高时钟频率,是提升 FPGA 运算性能的有效手段。
  一般来说,实现一套算法所需要的时钟周期数由其关键路径所决定,所谓关键路径,就是工作流程中,时间延迟最大的一条路径。通过观察蒙哥马利模乘运算的两重循环,可以整理出,整个运算包含
  次乘法,因此,如果我们例化了  n  个乘法器,每个乘法器需要运行  t  个时钟周期,则理想中整个蒙哥马利模乘的
  时钟周期为
  。考虑到之前所介绍的内部循环处理单元中的两个乘法可以并行执行,我们可以例化两个乘法器同时进行计算;但是,由于不同的循环之间存在数据依赖关系,因此只能串行执行循环。
  因此,系统设计的目标是让总时钟周期接近
  。为了实现这一目标,系统中进行了以下三项优化。 展开内层循环:展开内层循环的最大好处就是将内层循环从一个单一的整体拆解为多个组成部分,从而实现多次迭代中无数据依赖部分之间的时间交叠(overlap),进而最大程度地压缩整体运行时间。该操作可以通过 HLS 中的 UNROLL 指令实现。 将  q  的运算插入内层循环中:蒙哥马利算法中  q  是执行内层循环的前提,但是从  q  的表达式中可以发现,只依赖于 S_i 的部分比特位,因此,当某次迭代中 S_i 的这些比特位计算完毕后,即可同时开始进行下一次迭代  q  中的计算。从而节省这部分的时间开销。 流水线处理外层循环:通过展开内层循环,并且使用 HLS 中的 PIPELINE 指令,设置流水线初始化间隔为内层循环的迭代次数,内层循环将自动地根据拆解的操作执行流水线调度。该流水线处理示意图如图五所示。内层循环展开后被拆分为四个部分 S_0 , S_1 , S_2 和 S_3 。当 S_0 计算完毕后,即可开启下次迭代中  q  的计算。而  q  计算完毕后,下一次迭代计算即可开始。
  图五:蒙哥马利模乘运算流水线处理示意图。
  通过以上处理,不同迭代的运算操作被最大程度地交叠在一起,考虑到完成外层循环所需迭代次数较多,可以近似认为,完成整个蒙哥马利模乘运算所需时钟周期约为
  。
  达成时钟周期的设计目标后,我们还希望能够提高 FPGA 逻辑电路的时钟频率。尽管主流 FPGA 中的 DSP 组件的工作频率都可以达到 400MHz 以上,但是,由于硬件资源的限制,并且考虑到系统中逻辑电路的复杂程度,将整个系统的工作频率提高到这个数值几乎不可能。为了尽力提高工作频率,本系统设计中做出了如下优化: 限制乘法操作数位宽:在蒙哥马利算法的介绍中,我们提及,基数一般选择为 FPGA 可以轻易进行乘法运算的位宽。显然,如果直接将选择为 1024,FPGA 需要漫长的时间才能完成如此大位宽的乘法运算。因此,可以将限制为 32,便于掌控整个时序逻辑。 将乘法器声明为流水(Pipelined)乘法器:流水乘法器可以将大位宽的乘法拆分到多个时钟周期执行,从而缓解紧张的时序。简单来说,如果我们设置系统频率为 200MHz,乘法器几乎不可能在一个时钟周期,也就是 5 纳秒内完成 64 比特整数之间的乘法,但是如果将乘法时间延长到 6 个时钟周期,则乘法器则可以相对容易地在 30 纳秒内完成该乘法操作。 简化控制逻辑:这几乎是 FPGA 开发中不可缺少的优化操作了,通过缩短逻辑电路的长度,可以增加 FPGA 在更高时钟频率下完成信号传递的频率。在本工程中,可以使用独热编码(One-hot Encoding)表示状态机的状态,独热编码可以有效提高状态机的查询和匹配速度,优化时序逻辑。
  系统性能测试
  完成硬件设计后,通过使用 OpenCL API,上位机可以调用 FPGA 实现运算的硬件加速。我们使用 FPGA 硬件加速内核分别构建了 Paillier 加密和解密运算算子,并对比了它们和 CPU 的运算性能,其中 CPU 的运算通过调用 Paillier 运算库 PHE 实现,对比结果如图六和图七所示。当公钥位宽为 1024 比特时,FPGA 加速系统在加解密运算中分别实现了 10.62 倍和 2.76 倍的加速比。
  图六:FPGA 和 CPU 加密性能对比。
  图七:FPGA 和 CPU 解密性能对比。
  将 FPGA 硬件加速集成到主流联邦学习框架 FATE 中后,我们也看到了不错的性能提升。我们使用 PyOpenCL API 将 FPGA 硬件加速功能集成为单一模块,嵌入到 FATE 中执行加密运算。分别执行十次逻辑回归迭代和十次线性回归迭代后,我们得到了图八所示的测试结果:FPGA 加速 FATE 削减了原始 FATE 中 71.2% 的加密时间。
  图八:单次训练迭代中 FPGA 加速 FATE 和原始 FATE 的加密时间对比。
  总结及展望
  同态加密是一种强有力的隐私保护技术,对于它们的探索,是近年来炙手可热的研究方向;FPGA 是一种资源丰富的运算处理芯片,对于高并行度的计算任务可以带来显著的性能提升。对于高性能 FPGA 工程的追求,在当前阶段还是难以摆脱长期的 RTL 开发。通过使用 HLS 快速开发基于 FPGA 的同态加密工程,是对 FPGA 在隐私安全计算行业进行角色定位的有效探索与尝试。近年来,FPGA 的主流供应商 Xilinx 和 Intel 在可编程硬件的高级语言开发上不断增加投入,FPGA 的入手难度也逐渐降低。相信随着数据安全重要性的不断提升,工业界将浮现出更多基于 FPGA 的安全计算产品,而类似于 HLS 的硬件上层开发模式,也将在这个领域逐渐占据一片天地。
  本文作者为香港科技大学 iSing Lab 杨照雄、胡水海、陈凯。iSing Lab 是一所专注于高性能数据中心网络、机器学习系统以及联邦学习框架研究的实验室。近 5 年时间中,该实验室在网络系统领域顶级会议 ACM SIGCOMM 和 USENIX NSDI 等定会发布论文 10 篇,根据计算机科学 CSRankings 的排名, 名为亚洲第一。

发现生命关键成分嘧啶地球生命来自38亿年前外太空陨石?据最新一期自然通讯刊发的论文,日本科学家在太空陨石中发现了构成生命的一种关键成分嘧啶,这说明地球上的生命很可能来自包含DNA构成要素的太空岩石。据报道,日本北海道和九州大学的科学家海洋大气环境中微(纳米)塑料研究取得重要进展,中国学者做出重要贡献全球微塑料循环过程及通量5月10日,自然子刊自然综述地球与环境发表了海洋大气环境中微(纳米)塑料研究重要进展文章。这篇前瞻性论文汇集了33位大气科学海洋科学和塑料污染方面的国际专家如何通俗地解释北大韦神韦东奕们的工作到底是在做什么?我们以航天事业玉兔登月这个例子来说明韦神们到底一天到晚在忙啥?以及和我们的生活到底有多大的联系?大家看玉兔登月直播时,现场记者介绍一个关键步骤,地月变轨,就是飞船从绕地球轨道飞行改几根柱子高5光年,哈勃望远镜发现它在崩塌,因为有蛀虫综述从大爆炸迄今,我们的宇宙已经走过了大约一百三十亿年的时间,在这漫长的岁月里,诞生了无数神奇的天文奇迹。就拿我们太阳系来说,就有着高度超过21300米的火星奥林匹斯山,远远超过世唯心的场论人们对不接触的物体之间的相互作用的发生,提出了各种媒介物,以太到场,但都是个别人的假说,不拿出具体有说服力的证据。在空间,分布着一种速度是光速的粒子电磁振子,由正负电荷绕同一个圆心导致玛雅文明灭绝天灾重现?研究称北美西南部遭千年不遇特大型干旱据俄罗斯卫星通讯社12日报道,一项新的研究发现,已经困扰美国西南部和墨西哥西部长达22年的特大型干旱可能是该地区一千多年来最为严重的一次。这种特大型干旱可能是导致古玛雅文明灭绝的原天文学家发现了一颗高度偏心的系外行星近几十年来,对太阳系外行星的研究揭示了一些有趣的现象。天文学家不仅发现了全新类型的行星超级木星热木星超级地球迷你海王星等,还揭示了太阳系结构和行星动力学的新事物。例如,天文学家已经计算天王星的进动值及论述爱因斯坦在水星进动问题上的失败由于太阳的运动轨迹是一条螺旋线,即太阳一边向前方运动,一边向侧方向运动,所以围绕太阳运动的八大行星的角动量每时每刻都在增加,八大行星每时每刻都在发生进动。所谓进动,即行星在某一位置万物之初,一切皆无,时空挠旋,始有万物新宇本老拳万有引力只是表象,万物之间没有相互产生空间冲突是不会有任何相互作用的。万有引力电磁力强弱相互作用都是。本老拳有无量子在中间作用。一切皆是无量子。新宇无量子之间呢?本老拳还SpaceX将把三颗南非制造的纳米卫星送入轨道财经网科技1月14日讯,据新浪科技消息,作为Transporter3任务的一部分,特斯拉CEO埃隆马斯克(ElonMusk)旗下太空探索技术公司SpaceX,昨日晚些时候将把三颗南我科学家首次发现并证实玻色子奇异金属将推动凝聚态物理学迈进一大步光明日报成都1月13日电(记者周洪双)日前,以电子科技大学电子薄膜与集成器件国家重点实验室李言荣院士团队为主导的团队,首次在高温超导体中发现并证实了玻色
在旅行中学点地质思维(四)坐上火车看地貌坐在火车上远看,着重于观察山形山峰的特点。大致可以分辨出视野之内的山脉是由哪些岩石构成的。比如山岭高峻尖峰刺天,而且岩壁面上显现出黄色褐色,或微带粉红色者,并有古松自悬崖伸出,奇株中国花岗岩石材的分布特征及品类中国花岗岩开采业与加工业遍布全国27个省自治区直辖市。华东区是最重要产区,其花岗岩产量约占全国60,其次是中南区。在华东区,福建是中国最重要的花岗岩生产基地,现有矿山开采点5000我国有色金属(铜铅锌)矿产特点(1)铜矿富铜矿(品位1)储量占所有储量的35。2。中国铜资源分布比较分散,全国28个省(区)都有铜矿的分布。铜矿储量较多的省(区)分别是江西西藏云南甘肃安徽内蒙古山西黑龙江湖北新塔利班重新掌权阿富汗聊聊美式民主的副作用塔利班占领阿富汗总统府这几天塔利班重新掌权阿富汗成了疫情笼罩下全球的难得热点,从六月起美军渐渐撤出阿富汗,到八月塔利班再次夺权,美国近二十年的民主输出在短短两个月的时间里付诸东流,国有煤炭企业ampampquot提质降本增效ampampquot的管理关键(寻漫溯)好多企业都在天天喊提质降本增效,特别是国有企业,可年年提年年抓,大多停留在口头上,展现在材料上,生产活动里的小修小补,随着提质降本增效活动的深入推进,在原来基础上再有所成对矿脉矿体矿床以及找矿的认知(五)对于找矿思路的初步认识郑州地象科技有限公司寇伟寇通摘要研发物探设备的目标是要在实践中能够取得好的应用效果。若要探测仪的性能指标和功能符合实际需要,就必须了解应用行业的需求懂得专业知识,只有自己能够把开发论萤石矿床成矿特点及在MTVCT大地电磁法成像中的物性反映(四)寇伟寇通郑州地象科技有限公司,河南郑州摘要MTVCT大地电磁法通过低值异常找水定井和地热资源勘探应用已较为成熟,而通过高值异常找矿等应用尚在探索之中。从目前在钨矿萤石矿铜矿等岩脉型论萤石矿床成矿特点及在MTVCT大地电磁法成像中的物性反映(二)寇伟寇通郑州地象科技有限公司,河南郑州摘要MTVCT大地电磁法通过低值异常找水定井和地热资源勘探应用已较为成熟,而通过高值异常找矿等应用尚在探索之中。从目前在钨矿萤石矿铜矿等岩脉型论萤石矿床成矿特点及在MTVCT大地电磁法成像中的物性反映(三)寇伟寇通郑州地象科技有限公司,河南郑州摘要MTVCT大地电磁法通过低值异常找水定井和地热资源勘探应用已较为成熟,而通过高值异常找矿等应用尚在探索之中。从目前在钨矿萤石矿铜矿等岩脉型论萤石矿床成矿特点及在MTVCT成像中的物性反映(一)寇伟寇通郑州地象科技有限公司,河南郑州摘要MTVCT大地电磁法通过低值异常找水定井和地热资源勘探应用已较为成熟,而通过高值异常找矿等应用尚在探索之中。从目前在钨矿萤石矿铜矿等岩脉型我国江西第一个特高压工程正式竣工投产了,江西人这下圆梦了21日,我国传来一则好消息,原来,我国江西第一个特高压工程正式竣工投产了,两声巨响后!江西人这下圆梦了!没错,他们迈入了特高压电网时代!这就是世界最先进的输电技术!要知道特高压技术