基于安全多方计算的两方推理_第1页
基于安全多方计算的两方推理_第2页
基于安全多方计算的两方推理_第3页
基于安全多方计算的两方推理_第4页
基于安全多方计算的两方推理_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

人工智能是引领科技创新与产业变革的重要驱动力量,随着人工智能技术的飞速发展以及在不同行业领域的深化应用,世界各国均将人工智能列为提升国家竞争力、维护国家安全的重大战略。机器学习(MachineLearning,ML)是实现人工智能的重要环节,为了提升机器学习效能,大数据应用是关键。信息泄露时常发生在各行各业,各国纷纷从法律法规层面引导数据安全和隐私保护,个人对隐私保护的需求也愈发强烈。同样,基于大数据的机器学习也面临着严峻的隐私安全问题,科学界和工业界为解决机器学习中的隐私安全问题掀起了隐私保护机器学习(Privacy-PreservingMachineLearning,PPML)研究的浪潮,密码学技术在其中扮演了至关重要的角色。目前,关于PPML的研究主要基于安全多方计算(SecureMulti-partyComputation,MPC)和联邦学习(FederatedLearning,FL)两条路线,分别适用于安全性和性能要求较高的场景。为探索高安全、高性能的实用性PPML,MPC技术是最有效的密码学工具。PPML框架一般涉及复杂且多样的运算类型,根据参与方数量、安全模型、计算能力和网络带宽等方面的不同,可以结合实际场景进行多种MPC技术的组合来实现,从而安全地完成训练和推理任务,并且保证了训练数据、推理数据和模型参数的隐私。本文针对机器学习推理阶段的隐私保护问题,对近几年关注度比较高的基于MPC实现的安全推理框架进行比对分析,主要从方案的系统架构、技术对比、算子协议和理论评估等方面进行归纳总结,并对梳理出的两项先进且实用的技术框架进行仿真验证与应用评估,最后进行总结与展望。1背景概述1.1机器学习推理及其存在的隐私问题机器学习是当今发展最快的技术领域之一,位于计算机科学和统计学的交叉点,也是人工智能和数据科学的核心。1959年,ArthurSamuel将ML定义为计算机在不需要被显式编程的情况下而具备自主学习的能力。ML的主要流程包括数据收集、数据预处理、模型训练与测试、预测或推理这4个阶段。机器学习即服务(MachineLearningasaService,MLaaS)是一项以ML推理预测为基础的在线服务,近年来发展迅速且应用广泛。然而,MLaaS给机器学习模型持有者和数据持有者均带来了安全挑战。数据持有者担心数据隐私泄露给MLaaS平台,同时MLaaS平台持有者担心模型被冒充客户的对手窃取。在MLaaS这种商业模式下,PPML主要表现为推理阶段的隐私威胁,需保证推理数据和模型数据的隐私。为解决ML推理阶段的隐私问题,安全推理研究应运而生。近年来,有许多安全推理工作取得了较大的进展,它们主要采用密码技术与ML相结合的方式,常用的密码技术包括MPC、FL和差分隐私(DifferentialPrivacy,DP)。MPC是基于密码学原理的、具备可证明安全性的技术,本文将重点研究和分析基于MPC的两方推理。1.2MPC密码技术MPC理论在1982年为解答百万富翁问题而提出,是指多个参与方在不泄露各自隐私数据的前提下,共同完成某个函数计算的过程。MPC集成了复杂的密码学原语,其包含的关键基础技术有不经意传输(ObliviousTransfer,OT)、混淆电路(GarbledCircuit,GC)、秘密共享(SecretSharing,SS)和同态加密(HomomorphicEncryption,HE)。OT于1981年提出,是一个安全的两方通信协议,数据发送方同时发送多个信息,而数据接收方只收到其中部分信息,发送方无法判断接收方具体获得了哪些信息,接收方也不知道其他信息的内容。当前先进的OT技术包括IKNP类型的OT扩展和矢量不经意线性评估(VectorObliviousLinearEvaluation,VOLE)类型的OT扩展,后者较前者在通信量上有显著降低。GC于1986年针对百万富翁问题提出的解决方案,其核心技术是利用计算机编程,将多方参与的计算函数编译为布尔电路,并将每一个门对应的真值表加密打乱,在不泄露参与方私有数据的情况下实现电路的正确输出。GC的实现仅需要简单的对称加密方案,其优点是可以在恒定轮数内完成计算。然而,GC中涉及的通信量与电路大小呈线性相关,因此更适用于简单的逻辑运算。SS于1979年分别提出,其原理是将秘密拆分为多个秘密份额,并分发给不同的参与方,只有满足一定数量的拥有秘密份额的参与方共同协作才能恢复出秘密。在MPC中通常利用计算开销较少的加性秘密共享,但参与方基于秘密份额的交互轮数与电路深度有关。HE于1978年提出,它是一种具有特殊性质的加密算法。原始数据经同态加密后,允许用户直接对密态数据进行运算(通常是加法、乘法运算),对运算结果再进行同态解密,得到的明文与对原始数据进行相同运算得到的结果一致。同态加密的优点是能够设计通信交互轮数较少的MPC协议,缺点是乘法同态占用的计算和存储开销较大,而目前基于格的同态加密在一定程度上降低了计算开销。上述4种MPC密码技术的类型各不相同,在计算性能、通信开销和存储成本等方面都有各自的优劣势。面对ML推理中存在的隐私问题,往往需要结合多种MPC密码技术,以满足计算各种机器学习复杂函数的需求,实现性能均衡的隐私保护安全推理方案。根据MPC参与方的可信程度,可以将MPC的安全模型分为半诚实模型和恶意模型。在半诚实模型中,每个参与方会严格遵守协议的流程执行计算,保证最终结果的正确输出。但在协议执行过程中,某些参与方会根据自己产生的过程数据以及其他参数方的输出数据来挖掘更多的信息。如果MPC方案在半诚实模型中除计算结果外不会泄露任何参与方的隐私信息,则称该方案满足半诚实安全。在恶意模型中,存在恶意的参与方不按照协议的流程执行计算,试图发送错误数据或者终止协议的执行来挖掘其他参与方的私有信息。如果MPC方案不会因为恶意参与方偏离协议的行为泄露隐私数据,则称该方案满足恶意安全。2两方安全推理研究2.1两方安全推理模型架构安全推理方案主要基于服务器-客户端架构模式。如图1所示,服务器持有公开机器学习网络F的权重w,客户端持有隐私输入x。在标准的机器学习推理任务中,客户端的目标是获得在服务器模型上对输入数据x进行推理的结果F(w,x)。在安全推理中需保证服务器对x没有任何了解,并且客户端除了从F(w,x)和x推断,对服务器的模型w没有任何了解。图1两方安全推理的架构一种可扩展到实际机器学习任务的安全推理解决方案将打开大量基于MLaaS的应用程序,用户可以从机器学习服务中获得价值而不用担心其隐私数据的泄露,而模型所有者可以有效地将他们的服务货币化,而不用担心客户端数据被泄露。安全推理最重要的新兴应用是在医疗保健领域,之前的工作探索了针对胸部疾病、糖尿病视网膜病变、疟疾等疾病的隐私保护医疗诊断的安全推理服务。此外,一个可能的应用是隐私保护人脸识别,服务器可以不查看照片内容就从照片中识别罪犯。安全推理是一个安全的两方计算(2-Party

Computation,2PC)的实例,2PC的加密安全的通用协议已发展了几十年。然而,在实际应用中,针对机器学习任务的安全推理仍面临很大的挑战,特别是针对大规模网络和复杂的数据的安全推理,主要原因有二:(1)基于MPC的安全推理使用了丰富的密码学原语,在计算及通信层面均存在较大的性能开销,特别是在计算ML的激活函数时代价昂贵;(2)安全推理精度面临的挑战表现在两个方面,一方面是部分方案采用近似方法逼近激活函数,另一方面是采用定点算术计算浮点数。因此,安全推理较明文在性能和精度上均存在一定差距,隐私保护和机器学习等多个研究方向的学者纷纷对此积极进行探索和突破。2.2两方安全推理方案概览机器学习推理任务是线性层的全连接、卷积、平均池化和批标准化,以及非线性层的激活函数和最大池化等一系列计算的组合,该复杂的计算最终转化为数值的加法、乘法和比较等基本算子。在基于MPC的安全推理中,这些复杂的计算最终归结为安全计算数值的加法、乘法、比较和截断。如表1所示,从安全模型、MPC技术和支持的算子协议等方面对现有安全推理框架进行总体分析。(1)安全模型。两方的安全推理框架主要支持半诚实模型,较少研究考虑到恶意的客户端。(2)MPC技术。绝大部分框架混合使用多种技术,主要采用加性秘密共享对数据进行拆分,使得推理任务在分片数据上执行达到原始数据不泄露。从最新的PPML框架可以看出,主要偏向于采用HE计算线性层和OT计算非线性层的混合技术。(3)支持的算子。所有框架均支持基本的线性层算子,线性层的主要改进点是快速地进行安全矩阵乘法。对于非线性层,比较和截断是两个重要的支撑算子,比较算子主要采用直接计算和转化为最高有效位(MostSignificantBit,MSB)两种方式,截断分为有误差的本地截断和无误差的安全截断。复杂的激活和池化函数转化为基础的加法、乘法和比较算子。表1PPML框架比较2.3两方安全推理方案分析2014年,提出了第一个使用HE加密的隐私保护神经网络推理方案CryptoNets,其主要面向云场景的安全推理功能。该方案使用类HE友好的近似平方函数逼近激活层函数ReLU和Sigmoid,然而其对推理的准确性有影响且仅适用于浅层模型和小数据集。2017年,通过MiniONN变换将任意通用神经网络转换为一个不经意的神经网络,该框架混合使用秘密共享、加法同态和混淆电路技术完成安全推理。在该框架中,客户端仅需较少的计算能力,线性层使用点积三元组完成高效的矩阵乘法,其点积三元组在加法同态离线阶段产生,大大减少了在线阶段的计算开销;对于非线性层函数,该框架通过一次安全的秘密重构和混淆电路的比较计算ReLU,并使用分段函数逼近的方法计算Sigmoid。该框架的最大启示是将一部分操作划分到离线预计算,但存在激活函数近似带来的精度问题,以及计算过程中的秘密重构可能会泄露部分信息。2018年,提出了Chameleon框架,线性层基于秘密共享和可信第三方离线生成的Beaver三元组来计算,使用混淆电路或GMW协议执行非线性层操作。在5层卷积深度神经网络上的评估显示,Chameleon框架的运行速度比CryptoNets和MiniONN分别快133倍和4.2倍。同年,提出了低延迟的安全神经网络推理框架Gazelle,使用了HE和混淆电路的技术组合,设计了一个较快速的HE库以实现HE矩阵向量乘法和卷积的线性运算。此外,还设计了一个HE和混淆电路编码之间无缝转换的加密转换协议。该框架与CryptoNets方法相比在线运行时间快了3个数量级,且在MNIST和CIFAR-10数据集上的在线推理时间较Chameleon减少到原来的1/30~1/20。2020年,提出的Delphi框架,将Gazelle线性层的繁重HE运算前移到离线预处理阶段。该框架一个最大的亮点是提出了一个采用神经结构搜索(NeuralArchitectureSearch,NAS)和超参数优化技术的规划器(Planner),旨在确定哪些ReLU激活函数使用二次多项式替代,哪些保持不变,使其性能和准确性直接达到最佳平衡。以上工作考虑的均是半诚实安全模型下的安全推理,实际情况下可能会存在恶意客户端使用新的模型提取攻击来获得服务器的整个模型的攻击,MUSE和SIMC框架针对以上问题,采用有条件的揭露秘密技术,使其在经过认证的加法秘密共享和混淆电路标签之间进行转换,以达到抵抗恶意客户端的安全推理。前述工作离能够实际应用于深层次的网络、大规模数据集和复杂分类的机器学习的安全推理仍然有一段距离。2020年,提出了一个实用性的2PC安全推理框架Cryptflow2,其可在SqueezeNet网络下1min内完成一张ImageNet规模的安全推理。之后,又在Cryptflow2的基础上,分别针对线性层和非线性层的改进提出了GALA和SIRNN框架。2022年,阿里实验室对标Cryptflow2提出了当前行业性能最佳的安全推理框架Cheetah,并在诸多工业场景应用落地。此类成果极大地促进了安全两方推理从理论研究迈向生产应用。3实用性两方安全推理方案研究本节将重点分析评估Cryptflow2、Cheetah两项实用且先进的技术方案,并从应用的角度给出分析与建议。3.1Cryptflow2和Cheetah的技术分析Cryptflow2框架使用不经意传输设计了高效的比较协议,对用于比较的两个秘密值进行比特序列的块划分,并使用二叉树逐层比较来加速协议。此外,设计了无误差的定点算术截断协议,准确纠正了溢出大误差和最后一比特小误差。Cheetah是基于Cryptflow2的改进实现,在线性层和非线性层上性能提升表现为以下两个方面:(1)Cryptflow2表明,深度神经网络的非线性层函数,基于OT的协议在环上的带宽消耗比环上少40%~60%,且环上的模约减在标准CPU上几乎是无计算开销的。基于HE的线性层使用单指令多数据流(SingleInstructionMultipleData,SIMD)技术来摊销HE操作的成本,由于代数要求SIMD需在环上,可以使用中国剩余定理(ChineseRemainderTheorem,CRT)使素数模但给HE带来了3~5倍的开销增长,且影响非线性层的消息增益。此外,由于卷积和矩阵的空间性质以及矩阵的矢量乘法,基于HE和SIMD的协议不可避免地要对操作数进行多次旋转,旋转也是一个开销巨大的操作。Cheetah就以上矛盾平衡了两个环的使用,提出了3对编码函数将输入的值(如张量或向量)映射到多项式的适当系数,然后使用基于格的HE高效地计算线性层函数,不仅消除了昂贵的HE旋转,也能够兼容环上的秘密共享。(2)在百万富翁协议上,Cheetah使用VOLE

styleOT扩展替代Cryptflow2中的IKNP-styleOT扩展。Cryptflow2实现了无误差的诚实截断占据了协议超50%的开销。Cheetah虽然仅纠正溢出大误差而忽略最后一比特小误差,但是实验表明不影响模型的预测质量。表2 Cryptflow2与Cheetah的技术比较3.2Cryptflow2和Cheetah的实验分析本文使用Cheetah开源库实现。Cheetah是一个安全和快速的深度神经网络(DeepNeuralNetwork,DNN)两方推理系统,其实现基于带HEXL加速的SEAL同态库、高效的多方计算工具包(EffificientMultiPartyComputationToolkit,EMP-toolkit)的OT库,在EMP上还扩展了Ferret协议使其支持多实用类型的OT。为了便于比较,Cheetah系统集成了开源的安全和正确的推理(SecureandCorrectInference,SCI)库以实现Cryptflow框架。实验环境为Intel至强5218@2.3GHz服务器上的CentOS7.6-X64虚拟机(16GB内存、500GB硬盘)。虚拟机上开启两个终端进行在线推理服务的模拟与仿真。基准测试是在预训练的RestNet50DNN模型上推理一张230×230像素的Imagenet图像,安全推理实验的操作分布为53个Conv层、49个批标准化(BatchNormalization,BN)层和1个全连接(FullyConnection,FC)层,非线性层包括97个ReLU、49个Truncation、1个MaxPool、1个AvgPool和1个ArgMax。分别采用Cryptflow2和Cheetah框架进行Resnet50模型的安全推理,得到在两种不同线程设置下,两个框架的总运行时间、总通信量(发送+接收)和通信轮数,如表3所示。运行时间与系统线程数量反相关,线程数量对通信量基本没有影响。Cheetah与Cryptflow2相比,计算和通信性能分别提升了2~3倍和7~10倍,且通信轮数减少到原来的1/3左右。表3 运行时间与通信开销的比较图2展示了在单线程设置下,Cryptflow2和Cheetah在线性层、非线性层包含的8种算子中,依次推理运行每个算子的总时间。Cryptflow2和Cheetah完成安全推理的计算开销主要集中在卷积、截断和ReLU上,且Cheetah在卷积和截断运算上计算性能远远高于Cryptflow2。图2算子运行时间的比较

图3展示了在单线程设置下,Cryptflow2和Cheetah在线性层、非线性层包含的8种算子中,依次推理运行每个算子的总通信量。Cryptflow2和Cheetah完成安全推理的通信代价主要集中在卷积、批标准化、截断ReLU、最大池化上,且在Cryptflow2中截断运算的通信开销占据了整个推理任务总通信量的60%。Cryptflow2在截断、ReLU和最大池化运算上通信开销远远高于Cheetah。图3算子通信量的比较从Cryptflow2和Cheetah的技术和实验上分析,Cheeath非线性层的百万富翁和截断协议的改进使得通信成本较Cryptflow2降低了92%左右,在同等可证明安全前提下速度提升了3倍,在多线程设置下可在数十秒内完成一张图片的识别,向实用性更进一步。3.3Cryptflow2和Cheetah的对比结论Cheetah是基于Cryptflow2的改进实现,在算子先进性、通信性能、计算性能等方面均优于Cryptflow2,且在大模型的在线推理方面更具实用性。Cryptflow2在中、小模型方面性能较有实用性,并且Cryptflow2实现了无误差的截断,在高精度计算场

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论