北京理工大学徐畅获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉北京理工大学申请的专利一种基于双陷门同态加密的鲁棒性联邦学习聚合方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN115310120B 。
龙图腾网通过国家知识产权局官网在2025-10-14发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202210780488.9,技术领域涉及:G06F21/62;该发明授权一种基于双陷门同态加密的鲁棒性联邦学习聚合方法是由徐畅;贾钰;祝烈煌;金国燮;张璨设计研发完成,并于2022-07-04向国家知识产权局提交的专利申请。
本一种基于双陷门同态加密的鲁棒性联邦学习聚合方法在说明书摘要公布了:本发明提出了一种基于双陷门同态加密的鲁棒性联邦学习聚合方法,属于隐私计算中的联邦学习技术领域。所述方法包括:建立包含多个本地联邦参与方、一个模型聚合方以及一个模型请求方的联邦学习系统;建立分布式双陷门同态加密系统;各个联邦参与方接收初始全局模型,随后用自己的本地数据集训练接收到的初始全局模型,从而得到各自的本地模型,而后用分布式双陷门同态加密系统加密各自的本地模型参数;模型聚合方计算加密后的本地模型参数两两之间的欧式距离,据此执行基于最大团算法的过滤规则,筛选出遭到攻击的联邦参与方。所述聚合方法既能在理论上保护模型隐私安全又能在实验中抵御数据中毒攻击,兼顾安全性和可用性。
本发明授权一种基于双陷门同态加密的鲁棒性联邦学习聚合方法在权利要求书中公布了:1.一种基于双陷门同态加密的鲁棒性联邦学习聚合方法,其特征在于:具体包括以下步骤: 步骤1:联邦学习系统初始化:建立一个包含多个本地联邦参与方和一个模型聚合方以及一个模型请求方的联邦学习系统; 步骤2:建立分布式双陷门同态加密系统; 其中,分布式双陷门同态加密系统由密钥生成、加密、解密三部分组成,可细分为如下子步骤: 步骤2.1:系统密钥生成,给定一个安全参数k和两个大素数p,q,并由此得到两个强素数p′、q′,且满足和然后计算N=pq,λ=lcmp-1,q-12,其中N代表两个大素数的乘积,lcm函数意为求两个参数的最小公倍数,λ代表最小公倍数,然后定义一个以x为自变量的函数选择一个生成元g,g的阶为为联邦参与方i选择随机数θi∈[1,N4]并计算其中mod为取余运算的符号,hi是公钥的一部分,系统为联邦参与方i生成公钥pki=N,g,hi,公钥对应的弱私钥ski=θi,联邦参与方i和联邦参与方j的联合公钥pk∑为:系统的强私钥为SK=λ,其中强私钥可拆分为两个部分强私钥SK1与SK2; 步骤2.2:系统加密,对明文m的加密需要先选定一个随机数r,其中r∈[1,N4],在公钥pki下加密明文m,加密后表示为:其中,Ti,2=grmodN2,Ti,1和Ti,2表示密文的一部分; 步骤2.3:系统解密,所使用的分布式双陷门算法中,解密算法包括弱私钥解密WDec、强私钥解密SDec、部分强私钥解密PSDec、部分弱私钥解密PWDec四种形式; 步骤3:模型聚合方依据训练任务初始化一个用于机器学习的全局模型,然后将初始化后的全局模型发送给各个联邦参与方; 步骤4:各个联邦参与方接收到初始全局模型,随后用自己的本地数据集来训练接收到的初始全局模型,从而得到各自的本地模型; 步骤5:联邦参与方通过分布式双陷门同态加密系统加密自己的本地模型参数,并将加密后的本地模型参数上传给模型聚合方; 步骤5.1:联邦参与方i的本地模型参数为Mi,选择一个随机数r,r∈[1,N4],每个联邦参与方i都用自己独有的公钥pki加密本地模型参数Mi,生成的密文为:其中密文又可拆分为两部分:Ti,2=grmodN2; 步骤5.2:联邦参与方i将加密后的本地模型参数上传到模型聚合方; 步骤6:模型聚合方执行过滤算法,筛选出遭到攻击的联邦参与方; 其中,步骤6运行基于最大团算法的过滤规则,得到更新后的可靠的全局模型参数,包括如下子步骤: 步骤6.1:计算各个加密的本地模型参数两两之间的欧式距离,模型聚合方和模型请求方交互解密,得到明文下的欧氏距离; 其中,联邦参与方i训练出的本地模型参数Mi=[mi,1,mi,2,…,mi,n],在i的公钥pki加密下成为联邦参与方j训练出的本地模型参数Mj=[mj,1,mj,2,…,mj,n],在j的公钥pkj加密下成为本地模型参数均有n维,在明文下,Mi和Mj的欧氏距离计算公式为由于密文下的开平方操作计算复杂度极高,且计算出欧式距离的平方时已达到保护模型参数隐私的需求,故在余下步骤中简化求解欧氏距离为求欧式距离的平方: 现在模型聚合方已知密文下的和欲求密文下的则需要分别求出构成其的三部分,为了简化,用B=[MiMj]和来表示,因为加密Mi和Mj所用公钥不同,需要先将其转化为联合公钥pk∑下加密; 以和为例,两者是在不同的公钥pki和pkj下加密的,乘法转换协议的目标是计算出在联合公钥pk∑下的密文此处需要模型聚合方和模型请求方交互进行,又包括如下子步骤: 步骤6.1.1:模型聚合方选取4个随机数ri,rj,Ri,其中代表整数集合,计算:用部分强私钥SK1执行部分强私钥解密算法PSDec解密X、Y、S、T,其中X、Y、S、T代表计算中间量,得到:将其部分解密后的X1、Y1、S1、T1一并发送给模型请求方,其中X1、Y1、S1、T1代表计算中间量; 步骤6.1.2:模型请求方使用另一部分强私钥SK2,执行部分强私钥解密算法PSDec,得到:模型请求方使用联合公钥pk∑加密h,S2和T2,表示为然后发送H,S3和T3给模型聚合方,其中h、S2、T2、H、S3、T3均代表计算的中间量,由此计算,即可证明:h=Mi+riMj+rj; 步骤6.1.3:模型聚合方接收到H,S3和T3以后,先计算中间量:然后计算得出: 步骤6.1.4:联合公钥加密下求欧式距离 其中,经过步骤6.1.3的乘法协议转换后,可由和求出同理可求得:则所求密文下的欧氏距离的平方可计算为:其中B=[MiMj]和用部分弱私钥PWDec解密后,即可得到明文下的欧氏距离平方然后对执行开平方运算即可得到两个本地模型参数之间的欧氏距离disi,j; 步骤6.2:模型聚合方基于欧氏距离disi,j构造无向图; 其中构造无向图又可细分为如下两步: 步骤6.2.1:基于模型参数间的欧氏距离选择一个阈值δ; 任意两个本地模型参数之间的欧氏距离越小,表示这两个本地模型越相近,两个正常联邦参与方的模型参数之间的欧式距离会很接近,而被攻击的联邦参与方的模型参数与正常联邦参与方的模型参数之间的欧氏距离会更远; 基于上述推论,用于过滤的阈值δ则是由模型请求方选取将任意两个参与方之间的欧氏距离进行排序后得到的中值,此处这样选择阈值δ的前提条件是攻击者至多只能对小于50%比例的联邦参与方发起投毒攻击; 步骤6.2.2:构建模型参数之间的无向图; 使每个本地模型参数Mi对应于图中的一个顶点,如果本地模型参数Mi与本地模型参数Mj之间的欧式距离小于阈值δ,则认为两个本地模型参数之间存在一条边ei,j,否则,这条边不存在,按照此种方式遍历完本地模型参数两两之间的欧氏距离以后,即可构造一个无向图; 步骤6.3:使用最大团查找算法在无向图中找到最大团,团是一个无向图的完全子图,团的每对顶点之间都要有边相连;极大团是增加任何一个顶点以后都不再符合团的定义;最大团是含顶点数最多的极大团,最大团就是指最大完全子图的点集,在里面包含着由正常本地模型为顶点构造的集合,由此过滤出了被攻击的联邦参与方; 其中,最大团查找算法的步骤包括: 步骤6.3.1:构造三个集合U、V、R,其中U集合记录当前极大团中已经加入的点,V集合记录与U集合中所有点都有边存在的点,R集合的作用是判重,记录已经加入过某个极大团的点,防止出现重复的极大团; 步骤6.3.2:集合V中的点与集合U中的点都是连接的,集合V中的点p加入集合U,然后更新V集合,对在V集合中并且和点p连接的这部分点的集合中搜索下一个能加入U集合的点; 步骤6.3.3:执行回溯步骤,把点p从集合V移除,加入R集合,则对包含点p的极大团计算完毕; 步骤6.3.4:当V集合为空时,表示没有点再能加入U集合中;R集合存放的是已经完成极大团计算的点,如果R集合不为空,把R集合中的点加入U集合,则集合U点数增加,当R集合为空时,集合U才是极大团;将顶点数最多的极大团U作为最大团返回给模型聚合方; 步骤7:执行最大团过滤算法以后,系统中剩下正常联邦参与方所提交的加密后的本地模型,模型聚合方通过聚合这些本地模型来得到更新后的全局模型; 其中,模型聚合方执行平均聚合,将正常的联邦参与方上传的加密后的本地模型参数用传统的模型先求和再平均的方式聚合; 具体步骤包括: 步骤7.1:模型聚合方为过滤后剩下的k个正常的联邦参与方生成一系列随机数字ri,i∈k,并用公钥pki将ri加密,ri的数量与模型参数的数量相同; 步骤7.2:模型聚合方利用加密方案的加法同态性,将随机数ri加密为而后与密文下的模型参数相乘,得到再将发送给模型请求方; 步骤7.3:模型请求方执行双陷门同态加密中的强私钥解密算法SDec解密然后将k个Mi+ri,i∈k相加求和,再加密得到:随后再将其发送给模型聚合方; 步骤7.4:模型聚合方利用加密方案的数乘同态性计算将结果与相乘,从而消除随机扰动,得到并将其和系统聚合的模型数量k发送给联邦参与方i; 步骤7.5:联邦参与方i使用各自的私钥ski解密得到并将其除以k,由此得到最终的平均聚合结果,则各联邦参与方均可以得到新的全局模型Mg; 步骤8:模型聚合方将更新后的全局模型Mg发送给剩下的正常联邦参与方; 步骤9:正常的联邦参与方接收到新的全局模型后,进行本地化模型训练,得到新一轮的本地模型,然后再将其加密上传给模型聚合方; 上述步骤4至步骤9循环往复,直至模型收敛,即达到预设的训练轮数或者达到期望的模型准确率; 步骤10:模型聚合方将最终得到的全局模型发送给模型请求方,至此,完成并结束联邦学习过程。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人北京理工大学,其通讯地址为:100081 北京市海淀区中关村南大街5号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

皖公网安备 34010402703815号
请提出您的宝贵建议,有机会获取IP积分或其他奖励