CN117216805A - 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 - Google Patents
一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 Download PDFInfo
- Publication number
- CN117216805A CN117216805A CN202311125441.XA CN202311125441A CN117216805A CN 117216805 A CN117216805 A CN 117216805A CN 202311125441 A CN202311125441 A CN 202311125441A CN 117216805 A CN117216805 A CN 117216805A
- Authority
- CN
- China
- Prior art keywords
- gradient
- aggregation
- participant
- local
- signature
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012550 audit Methods 0.000 title claims abstract description 11
- 208000008025 hordeolum Diseases 0.000 title claims abstract description 5
- 230000002776 aggregation Effects 0.000 claims abstract description 73
- 238000004220 aggregation Methods 0.000 claims abstract description 73
- 230000006870 function Effects 0.000 claims abstract description 46
- 238000012795 verification Methods 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 32
- 238000013527 convolutional neural network Methods 0.000 claims description 19
- 238000004364 calculation method Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 125000004122 cyclic group Chemical group 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 4
- 238000006116 polymerization reaction Methods 0.000 claims description 4
- 238000012360 testing method Methods 0.000 claims description 4
- 238000010606 normalization Methods 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims description 2
- 238000012216 screening Methods 0.000 claims description 2
- 231100000572 poisoning Toxicity 0.000 description 4
- 230000000607 poisoning effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006854 communication Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 231100000331 toxic Toxicity 0.000 description 1
- 230000002588 toxic effect Effects 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,包括:系统参数初始化;全同态加密算法、同态哈希函数、伪随机函数密钥生成;参与方对标准化后的本地梯度进行加密并签名,生成本地梯度的身份标识符,将本地梯度的密文、签名、身份标识符上传聚合服务器;聚合服务器计算在密文状态下本地梯度和根服务器基准梯度之间的余弦相似度进行筛选梯度更新全局模型,对参与方签名和身份标识符进行聚合;把更新后的全局模型、聚合签名、聚合身份标识符发送给各个参与方;各参与方计算出聚合签名的验证等式进行验证。本发明能保护数据隐私又能抵御拜占庭攻击,还能对参与方上传的数据进行完整性审计,具有较高的扩展性和性能表现。
Description
技术领域
本发明涉及联邦学习技术领域,特别涉及能综合防止推理攻击与拜占庭攻击,还能对联邦学习中数据进行完整性审计的一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法。
背景技术
近些年备受关注的联邦学习(Federated Learning,简称FL)是一种很有应用前景的分布式学习范式,它能够使众多资源受限的客户能够在不共享隐私敏感数据的情况下共同学习到一个全局模型。联邦学习已经被广泛应用于金融、医疗、智慧城市等多种现实应用。具体来说,在联邦学习中,成千上万的客户端(如物联网设备、边缘设备)在其私有数据集上执行本地模型训练并上传更新(或本地模型),同时一个中央服务器(例如,谷歌,Apple)提供策略来发布聚合的全局模型。然而,联邦学习很容易受到投毒攻击,其中,攻击者(例如,受影响的客户)可能篡改本地训练数据(称为数据投毒攻击)或本地模型(称为模型投毒攻击),从而破坏全局模型。例如,攻击者可以修改数据的标签以使全局模型预测错误,或者随机生成一个本地模型以节省计算资源,同时享有使用全局模型的好处。
为了防止对FL的投毒攻击,人们在提升FL拜占庭鲁棒性方面做了大量的研究工作。这些工作的关键思想是在服务器端设计一个健壮的聚合策略,这样有毒的更新对全局模型的影响可以忽略不计。
然而,现有的FL防御方法存在一些不可忽略的技术问题:第一、现有的工作仅仅考虑到服务器端是诚实且好奇的:诚实是指服务器不会对参与方上传的数据进行攻击、破译或逆向工程等恶意操作;好奇是指服务器对用户的原始数据有一定程度的好奇,并且可能绕过一些安全措施直接访问用户的原始数据。研究工作者很少考虑到服务器是恶意的,可能会对参与者上传的数据进行伪造,甚至伪造更新后的全局模型,从而导致最终模型的失败或被恶意方控制。第二、在现有的联邦学习研究中,很少有研究工作者考虑到在参与方上传数据的完整性。参与方在对本地梯度进行加密上传时,可能因为计算错误导致上传的是错误的加密梯度,或者在通信过程中被第三方劫持,伪造了加密梯度进行上传,甚至因为恶意服务器导致错误的聚合,这些情况都会导致最终模型的失败。
发明内容
发明目的:针对背景技术中提出的问题,本发明提出了一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,实用性更强,能同时达到保护用户数据隐私和抵抗拜占庭攻击,还能对参与方上传的数据进行完整性审计的目的。
技术方案:本发明的目的是提供一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,包括以下步骤:
步骤1:系统参数初始化;给定一个安全参数λ,密钥生成中心KGC选择一个素数p,定义阶为p的循环加法群G1、G2和循环乘法群GT,定义g是G1的生成元,h是G2的生成元,g和h组成同构映射:g=ψ(h),设置双线性映射e:G1×G2→GT,令P=e(g,h),KGC公开系统参数pp=(p,g,h,e);
步骤2:密钥生成中心KGC生成全同态加密算法、同态哈希函数密钥以及伪随机函数私钥,并发送至参与方与根服务器,参与方初始化神经网络模型;
步骤3:参与方与根服务器收到生成的密钥后,对标准化后的本地梯度、基准梯度进行加密并签名,同时生成本地梯度、基准梯度的身份标识符,将本地梯度、基准梯度的密文、签名、身份标识符上传给聚合服务器;
步骤4:聚合服务器计算在密文状态下本地梯度和根服务器生成的基准梯度之间的余弦相似度来进行梯度筛选,删除恶意梯度后更新全局模型,同时对参与方上传的签名和身份标识符进行聚合;聚合服务器把更新后的全局模型、聚合签名、聚合身份标识符发送给各个参与方;
步骤5:各参与方通过双线性对运算、同态哈希运算、点乘运算计算出聚合签名的验证等式;若等式通过验证,则接收更新后的全局模型并进入下一轮训练;否则,拒绝更新后的全局模型并输出错误符号。
进一步地,所述步骤2中密钥生成中心KGC生成公钥和私钥,包括以下步骤:
S2.1:KGC根据安全参数λ和相关参数生成全同态加密算法的私钥sk、公钥pk、辅助计算密钥evk,其中evk是用来消除密文同态运算后产生的噪声,故全同态加密算法的密钥为(sk,pk,evk);
S2.2:定义同态哈希函数即将密文多项式映射成椭圆曲线上的点,其中Zq[x][y]表示关于x,y整数多项式环,Rq[y]表示关于x,y的实数多项式环,q表示模数,degx(c),degy(c)分别表示在密文多项式中关于x,y的最高次幂;随机选取/>则同态哈希函数的密钥k=(α,β),选取一个随机数η∈Zq,表示去掉元素0的整数环;
S2.3:定义伪随机函数Fk:{0,1}*→G1×G2,选取两个随机种子K1,K2,则伪随机函数私钥K=(K1,K2);
S2.4:KGC设置PK=(pk,pp),SK=(sk,k,K,η,evk),SK'=(k,K,η),并将公私钥对(PK,SK)发送给参与方,公私钥对(PK,SK')发送给根服务器。
进一步地,所述步骤3中的聚合服务器先初始化全局模型参数,并在第k轮训练时,将加密后的全局模型发送给各参与方。
进一步地,各本地参与方的训练包括以下步骤:
S3.1:在第k轮训练中,每个参与方Pi从聚合服务器下载使用公钥pk加密后的全局模型使用对应的私钥sk解密得到全局模型ωk-1;然后参与方Pi利用本地数据集Di通过卷积神经网络CNN进行训练,得到本地梯度/>同时根服务器利用纯净的且与参与方数据分布接近的数据集Dn+1使用相同的卷积神经网络CNN进行训练,得到干净的基准梯度/>
其中L(·)表示损失函数,为求导符号;
S3.2:本地参与方Pi和根服务器分别对本地梯度和基准梯度/>通过下式进行标准化处理:
其中表示标准化后的本地梯度,/>表示标准化后的基准梯度;
S3.3:本地参与方Pi和根服务器接收到KGC生成的公钥PK后,使用全同态加密算法对标准化后的本地梯度和基准梯度/>加密,得到梯度的密文定义E={c∈Zq[x][y]:degx(c)=s,degy(c)=t},其中Zq[x][y]表示关于x,y的整数多项式环,q表示模数,degx(c)=s,degy(c)=t表示密文多项式中关于x,y的最高次幂;
S3.4:本地参与方Pi选择随机数θi∈{0,1}*,i∈{1,...,n}作为本地梯度的身份标识符,根服务器选择θn+1∈{0,1}*作为基准梯度/>的身份标识符;
S3.5:各参与方Pi和根服务器通过同态哈希函数计算(Ti,Ui)∈G1×G2,并通过伪随机函数FK计算(Ri,Si)∈G1×G2和简易验证值ωf,根据上述生成的参数计算Xi,Yi,则本地梯度/>和基准梯度的签名为σi=(Ti,Ui,Xi,Yi,Λi=1)∈(G1×G2)2×GT,i={1,...,n+1},并设置lev(σi)=1,其中lev(σi)表示签名的级别;
S3.6:参与方将信息μx=(θ1,c1,σ1,...,θn,cn,σn)发送给聚合服务器,根服务器将信息μ'x=(θn+1,cn+1,σn+1)发送给聚合服务器。
进一步地,所述步骤S3.5的具体过程如下:
S3.5.1:各参与方Pi和根服务器使用同态哈希函数和双线性对运算e计算参数(Ti,Ui)∈G1×G2,如下所示:
其中degy(ci)表示密文多项式中关于y的最高次幂;通过伪随机函数FK生成参数(Ri,Si)∈G1×G2,具体表示如下:
(Ri,Si)=FK(θi,i)
ωf=fg(ρ1,...,ρn+1)
其中fg表示加法或乘法运算函数,ρi表示的是参数(ui,vi)和随机向量的线性运算,分别计算Xi=(Ri,Ti -1)1/η∈G1,Yi=(Si,Ui -1)1/η∈G2,则梯度的签名为σi=(Ti,Ui,Xi,Yi,Λi=1)∈(G1×G2)2×GT,i={1,...,n+1},用lev(σi)表示签名的级别,然后设置lev(σi)=1,若lev(σ1)=lev(σ2)=1时,同态加法运算σ=(σ1+σ2)如下所示:
σ=(T1·T2,U1·U2,X1·X2,Y1·Y2,Λ1·Λ2),lev(σ)=1
同态乘法运算σ=(σ1×σ2)如下所示:
T=e(T1,U2),U=e(T2,U1)
X=e(X1,U2)·e(X2,U1),Y=e(T2,Y1)·e(T1,Y2)
Λ=e(X1,Y2),lev(σ)=2
当lev(σi)=1,lev(σ2)=2时,只支持同态加法运算,同态加法运算σ=(σ1+σ2)如下所示:
σ′1=(e(T1,h),e(g,U1),e(X1,h),e(g,Y1),Λ1)
σ=σ′1+σ2,lev(σ)=2。
进一步地,聚合服务器接收到参与方与根服务器的信息μx,μ'x后,首先计算本地参与方梯度的密文和基准梯度的密文/>之间的余弦相似度,利用ReLU函数删除恶意梯度,对删除恶意梯度后的本地梯度进行聚合并更新全局模型,最终得到全局模型/>同时,聚合服务器按照同样的聚合运算函数fg对身份标识符θi和签名σ1进行聚合,得到聚合后的身份标识符θ和聚合签名σ,聚合服务器将聚合后的信息μ=(θ,c,σ)发送给每个参与方。
进一步地,所述步骤S4的具体过程如下:
S4.1:计算本地客户端梯度的密文和基准梯度的密文/>之间的余弦相似度,如下所示:
其中<·>表示内积操作,表示/>与/>之间的相似度,当/>时,表明本地梯度/>与基准梯度/>距离较远,对全局模型产生消极影响,即可认定/>为恶意梯度,通过ReLU函数进行舍弃,并计算总和,如下所示:
S4.2:聚合服务器对删除恶意梯度后的本地梯度进行聚合,如下所示:
其中α表示学习率;
S4.3:聚合服务器使用相同的聚合运算函数fg对身份标识符θi和签名σ1进行聚合,如下所示
θ=fg(θ1,θ2,...,θn)
σ=fg(σ1,σ2,...,σn)
其中fg是聚合运算函数,表示乘法或加法运算,θ表示聚合身份标识符,σ表示聚合签名。
进一步地,每个参与方接收到聚合服务器的聚合信息μ=(θ,c,σ)后,计算签名验证等式,若等式通过验证,则客户端使用私钥sk对全局模型的密文进行解密,并进行下一轮训练,否则,拒绝更新后的全局模型并输出错误符号,具体如下:
S5.1:参与方接收到聚合服务器的聚合梯度c和聚合签名σ后,利用伪随机函数计算参数ω,W通过下式计算:
ω=ρ(a,b)
W=e(a,b)ω
其中ρ表示的是(a,b)与随机向量的线性运算;
S5.2:参与方计算degy(c)的值,其中degy(c)表示聚合后全局模型的密文多项式中关于y的最高次幂,若degy(c)=2,表示聚合签名σ进行同态乘法运算,在乘法群GT上检查下述等式是否成立:
X=Y
W=T·(X)η·(Λ)η2
若degy(c)=1,表示聚合签名σ进行的是同态加法运算,计算检查下述等式是否成立:
(T,U)=(vT,vU)
e(X,h)=e(g,Y)
W=e(T·(X)η,h)
若等式通过验证,则参与方使用私钥sk对全局模型的密文进行解密,并进行下一轮训练,否则,拒绝更新后的全局模型并输出错误符号。
进一步地,还包括判断所有参与方的网络模型是否已经收敛或达到预定的训练次数:如果是,则结束训练进行测试;否则,训练轮数加1;参与方的神经网络模型收敛是指本地神经网络模型的损失函数值不再变化或者变化量小于设定的变化阈值。
有益效果:本发明在联邦学习场景中构造了抵御拜占庭攻击的数据完整性审计方法,该方法使用全同态加密技术对参与方经CNN(卷积神经网络)训练得到的本地梯度进行加密处理,保护了参与方的隐私敏感数据,防止服务器的推理攻击。服务器通过计算余弦相似度来对本地梯度进行筛选,删除恶意梯度后更新全局模型,从而抵御了拜占庭攻击。同时,参与方使用同态哈希函数和双线性对运算对参与方加密上传的本地梯度进行数据完整性审计。
附图说明
图1为本发明整体结构流程示意图。
具体实施方式:
下面结合附图对本发明作进一步描述,以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明提供的一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,具体参见图1,包括以下步骤:
S1:系统参数初始化:给定一个安全参数λ,KGC选择一个素数p,定义阶为p的循环加法群G1,G2和循环乘法群GT,定义g是G1的生成元,h是G2的生成元,g和h组成同构映射:g=ψ(h),设置双线性映射e:G1×G2→GT,令P=e(g,h),KGC公开系统参数pp=(p,g,h,e)。
S2:KGC(密钥生成中心)生成公钥和私钥,包括以下步骤:
S2.1:KGC根据安全参数λ和相关参数生成全同态加密算法的私钥sk、公钥pk、辅助计算密钥evk,其中evk是用来消除密文同态运算后产生的噪声,故全同态加密算法的密钥为(sk,pk,evk)。
S2.2:定义同态哈希函数即将密文多项式映射成椭圆曲线上的点,其中Zq[x][y]表示关于x,y整数多项式环,Rq[y]表示关于x,y的实数多项式环,q表示模数,degx(c),degy(c)分别表示在密文多项式中关于x,y的最高次幂。随机选取/>则同态哈希函数的密钥k=(α,β),选取一个随机数η∈Zq,表示去掉元素0的整数环。
S2.3:定义伪随机函数Fk:{0,1}*→G1×G2,选取两个随机种子K1,K2,则伪随机函数私钥K=(K1,K2)。
S2.4:KGC设置PK=(pk,pp),SK=(sk,k,K,η,evk),SK'=(k,K,η),并将公私钥对(PK,SK)发送给参与方,公私钥对(PK,SK')发送给根服务器。
S3:聚合服务器初始化全局模型参数,并在第k轮训练时,将加密后的全局模型发送给各参与方。
S4:本地参与方的训练包括以下步骤:
S4.1:在第k轮训练中,每个参与方Pi从聚合服务器下载使用公钥pk加密后的全局模型使用对应的私钥sk解密得到全局模型ωk-1。然后参与方Pi利用本地数据集Di通过CNN(卷积神经网络)进行训练,得到本地梯度/>同时根服务器利用纯净的且与参与方数据分布接近的数据集Dn+1使用相同的CNN(卷积神经网络)进行训练,得到干净的基准梯度/>
其中L(·)表示损失函数,为求导符号。
S4.2:本地参与方Pi和根服务器分别对本地梯度和基准梯度/>通过下式进行标准化处理:
其中表示标准化后的本地梯度,/>表示标准化后的基准梯度。
S4.3:本地参与方Pi和根服务器接收到KGC生成的公钥PK后,使用全同态加密算法对标准化后的本地梯度和基准梯度/>加密,得到梯度的密文定义E={c∈Zq[x][y]:degx(c)=s,degy(c)=t},其中Zq[x][y]表示关于x,y的整数多项式环,q表示模数,degx(c)=s,degy(c)=t表示密文多项式中关于x,y的最高次幂。
S4.4:本地参与方Pi选择随机数θi∈{0,1}*,i∈{1,...,n}作为本地梯度的身份标识符,根服务器选择θn+1∈{0,1}*作为基准梯度/>的身份标识符。
S4.5:各参与方Pi和根服务器使用同态哈希函数和双线性对运算e计算参数(Ti,Ui)∈G1×G2,如下所示:
其中degy(ci)表示密文多项式中关于y的最高次幂;通过伪随机函数FK生成参数(Ri,Si)∈G1×G2,具体表示如下:
(Ri,Si)=FK(θi,i)
ωf=fg(ρ1,...,ρn+1)
其中fg表示加法或乘法运算函数,ρi表示的是(ui,vi)和随机向量的线性运算,分别计算/>则梯度的签名为σi=(Ti,Ui,Xi,Yi,Λi=1)∈(G1×G2)2×GT,i={1,...,n+1},我们用lev(σi)表示签名的级别,然后设置lev(σi)=1,若lev(σ1)=lev(σ2)=1时,同态加法运算σ=(σ1+σ2)如下所示:
σ=(T1·T2,U1·U2,X1·X2,Y1·Y2,Λ1·Λ2),lev(σ)=1
同态乘法运算σ=(σ1×σ2)如下所示:
T=e(T1,U2),U=e(T2,U1)
X=e(X1,U2)·e(X2,U1),Y=e(T2,Y1)·e(T1,Y2)
Λ=e(X1,Y2),lev(σ)=2
当lev(σi)=1,lev(σ2)=2时,只支持同态加法运算,同态加法运算σ=(σ1+σ2)如下所示:
σ′1=(e(T1,h),e(g,U1),e(X1,h),e(g,Y1),Λ1)
σ=σ′1+σ2,lev(σ)=2
S4.6:参与方将信息μx=(θi,c1,σ1,...,cn,σn)发送给聚合服务器,根服务器将信息μ'x=(θn+1,cn+1,σn+1)发送给聚合服务器。
S5:聚合服务器接收到信息μx,μ'x后,对本地客户端梯度的密文进行聚合,包括以下步骤:
S5.1:聚合服务器接收到信息μx,μ'x后,计算本地客户端梯度的密文和基准梯度的密文/>之间的余弦相似度,如下所示:
其中<·>表示内积操作,表示/>与/>之间的相似度,当/>时,表明本地梯度/>与基准梯度/>距离较远,对全局模型产生消极影响,即可认定/>为恶意梯度,通过ReLU函数进行舍弃,并计算总和,如下所示:
S5.2:聚合服务器对删除恶意梯度后的本地梯度进行聚合,如下所示:
其中α表示学习率。
S5.3:聚合服务器使用相同的聚合运算函数fg对身份标识符θi和签名σ1进行聚合,如下所示
θ=fg(θ1,θ2,...,θn)
σ=fg(σ1,σ2,...,σn)
其中fg是聚合运算函数,表示乘法或加法运算,θ表示聚合身份标识符,σ表示聚合签名。
S6:参与方接收到聚合服务器的聚合密文μ=(θ,c,σ)后,计算签名验证等式,包括以下步骤:
S6.1:参与方接收到聚合服务器的聚合梯度c和聚合签名σ后,利用伪随机函数计算参数ω,W通过下式计算:
ω=ρ(a,b)
W=e(a,b)ω
其中ρ表示的是(a,b)与随机向量的线性运算。
S6.2:参与方计算degy(c)的值,其中degy(c)表示聚合后全局模型的密文多项式中关于y的最高次幂,若degy(c)=2,表示聚合签名σ进行同态乘法运算,在乘法群GT上检查下述等式是否成立:
X=Y
若degy(c)=1,表示聚合签名σ进行的是同态加法运算,计算检查下述等式是否成立:
(T,U)=(vT,vU)
e(X,h)=e(g,Y)
W=e(T·(X)η,h)
若等式成立通过验证,客户端使用私钥sk对全局模型的密文进行解密,并进行下一轮的训练,否则,拒绝更新后的全局模型并输出错误符号。
S7:判断所有参与方的CNN(卷积神经网络)是否已经收敛或达到预定的训练次数:如果是,则转至步骤S8;否则,训练轮数加1,并返回步骤S3。
S8:各参与方将本地测试数据送入CNN(卷积神经网络)中,利用CNN(卷积神经网络)完成对本地测试数据的预测。
上述实施方式只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (9)
1.一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,包括以下步骤:
步骤1:系统参数初始化;给定一个安全参数λ,密钥生成中心KGC选择一个素数p,定义阶为p的循环加法群G1、G2和循环乘法群GT,定义g是G1的生成元,h是G2的生成元,g和h组成同构映射:g=ψ(h),设置双线性映射e:G1×G2→GT,令P=e(g,h),KGC公开系统参数pp=(p,g,h,e);
步骤2:密钥生成中心KGC生成全同态加密算法、同态哈希函数密钥以及伪随机函数私钥,并发送至参与方与根服务器,参与方初始化神经网络模型;
步骤3:参与方与根服务器收到生成的密钥后,对标准化后的本地梯度、基准梯度进行加密并签名,同时生成本地梯度、基准梯度的身份标识符,将本地梯度、基准梯度的密文、签名、身份标识符上传给聚合服务器;
步骤4:聚合服务器计算在密文状态下本地梯度和根服务器生成的基准梯度之间的余弦相似度来进行梯度筛选,删除恶意梯度后更新全局模型,同时对参与方上传的签名和身份标识符进行聚合;聚合服务器把更新后的全局模型、聚合签名、聚合身份标识符发送给各个参与方;
步骤5:各参与方通过双线性对运算、同态哈希运算、点乘运算计算出聚合签名的验证等式;若等式通过验证,则接收更新后的全局模型并进入下一轮训练;否则,拒绝更新后的全局模型并输出错误符号。
2.根据权利要求1所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,所述步骤2中密钥生成中心KGC生成公钥和私钥,包括以下步骤:
S2.1:KGC根据安全参数λ和相关参数生成全同态加密算法的私钥sk、公钥pk、辅助计算密钥evk,其中evk是用来消除密文同态运算后产生的噪声,故全同态加密算法的密钥为(sk,pk,evk);
S2.2:定义同态哈希函数即将密文多项式映射成椭圆曲线上的点,其中Zq[x][y]表示关于x,y整数多项式环,Rq[y]表示关于x,y的实数多项式环,q表示模数,degx(c),degy(c)分别表示在密文多项式中关于x,y的最高次幂;随机选取/>则同态哈希函数的密钥k=(α,β),选取一个随机数η∈Zq,表示去掉元素0的整数环;
S2.3:定义伪随机函数Fk:{0,1}*→G1×G2,选取两个随机种子K1,K2,则伪随机函数私钥K=(K1,K2);
S2.4:KGC设置PK=(pk,pp),SK=(sk,k,K,η,evk),SK'=(k,K,η),并将公私钥对(PK,SK)发送给参与方,公私钥对(PK,SK')发送给根服务器。
3.根据权利要求2所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,所述步骤3中的聚合服务器先初始化全局模型参数,并在第k轮训练时,将加密后的全局模型发送给各参与方。
4.根据权利要求3所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,各本地参与方的训练包括以下步骤:
S3.1:在第k轮训练中,每个参与方Pi从聚合服务器下载使用公钥pk加密后的全局模型ωk-1 pk,使用对应的私钥sk解密得到全局模型ωk-1;然后参与方Pi利用本地数据集Di通过卷积神经网络CNN进行训练,得到本地梯度同时根服务器利用纯净的且与参与方数据分布接近的数据集Dn+1使用相同的卷积神经网络CNN进行训练,得到干净的基准梯度
其中L(·)表示损失函数,为求导符号;
S3.2:本地参与方Pi和根服务器分别对本地梯度和基准梯度/>通过下式进行标准化处理:
其中表示标准化后的本地梯度,/>表示标准化后的基准梯度;
S3.3:本地参与方Pi和根服务器接收到KGC生成的公钥PK后,使用全同态加密算法对标准化后的本地梯度和基准梯度/>加密,得到梯度的密文定义E={c∈Zq[x][y]:degx(c)=s,degy(c)=t},其中Zq[x][y]表示关于x,y的整数多项式环,q表示模数,degx(c)=s,degy(c)=t表示密文多项式中关于x,y的最高次幂;
S3.4:本地参与方Pi选择随机数θi∈{0,1}*,i∈{1,...,n}作为本地梯度的身份标识符,根服务器选择θn+1∈{0,1}*作为基准梯度/>的身份标识符;
S3.5:各参与方Pi和根服务器通过同态哈希函数计算(Ti,Ui)∈G1×G2,并通过伪随机函数FK计算(Ri,Si)∈G1×G2和简易验证值ωf,根据上述生成的参数计算Xi,Yi,则本地梯度/>和基准梯度的签名为σi=(Ti,Ui,Xi,Yi,Λi=1)∈(G1×G2)2×GT,i={1,...,n+1},并设置lev(σi)=1,其中lev(σi)表示签名的级别;
S3.6:参与方将信息μx=(θ1,c1,σ1,...,θn,cn,σn)发送给聚合服务器,根服务器将信息μ'x=(θn+1,cn+1,σn+1)发送给聚合服务器。
5.根据权利要求4所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于:所述步骤S3.5的具体过程如下:
S3.5.1:各参与方Pi和根服务器使用同态哈希函数和双线性对运算e计算参数(Ti,Ui)∈G1×G2,如下所示:
其中degy(ci)表示密文多项式中关于y的最高次幂;通过伪随机函数FK生成参数(Ri,Si)∈G1×G2,具体表示如下:
(Ri,Si)=FK(θi,i)
ωf=fg(ρ1,...,ρn+1)
其中fg表示加法或乘法运算函数,ρi表示的是参数(ui,vi)和随机向量的线性运算,分别计算Xi=(Ri,Ti -1)1/η∈G1,/>则梯度的签名为σi=(Ti,Ui,Xi,Yi,Λi=1)∈(G1×G2)2×GT,i={1,...,n+1},用lev(σi)表示签名的级别,然后设置lev(σi)=1,若lev(σ1)=lev(σ2)=1时,同态加法运算σ=(σ1+σ2)如下所示:
σ=(T1·T2,U1·U2,X1·X2,Y1·Y2,Λ1·Λ2),lev(σ)=1
同态乘法运算σ=(σ1×σ2)如下所示:
T=e(T1,U2),U=e(T2,U1)
X=e(X1,U2)·e(X2,U1),Y=e(T2,Y1)·e(T1,Y2)
Λ=e(X1,Y2),lev(σ)=2
当lev(σi)=1,lev(σ2)=2时,只支持同态加法运算,同态加法运算σ=(σ1+σ2)如下所示:
σ1'=(e(T1,h),e(g,U1),e(X1,h),e(g,Y1),Λ1)
σ=σ1'+σ2,lev(σ)=2。
6.根据权利要求4所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,聚合服务器接收到参与方与根服务器的信息μx,μ'x后,首先计算本地参与方梯度的密文和基准梯度的密文/>之间的余弦相似度,利用ReLU函数删除恶意梯度,对删除恶意梯度后的本地梯度进行聚合并更新全局模型,最终得到全局模型/>同时,聚合服务器按照同样的聚合运算函数fg对身份标识符θi和签名σ1进行聚合,得到聚合后的身份标识符θ和聚合签名σ,聚合服务器将聚合后的信息μ=(θ,c,σ)发送给每个参与方。
7.根据权利要求6所述的一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于:所述步骤S4的具体过程如下:
S4.1:计算本地客户端梯度的密文和基准梯度的密文/>之间的余弦相似度,如下所示:
其中<·>表示内积操作,表示/>与/>之间的相似度,当/>时,表明本地梯度/>与基准梯度/>距离较远,对全局模型产生消极影响,即可认定/>为恶意梯度,通过ReLU函数进行舍弃,并计算总和,如下所示:
S4.2:聚合服务器对删除恶意梯度后的本地梯度进行聚合,如下所示:
其中α表示学习率;
S4.3:聚合服务器使用相同的聚合运算函数fg对身份标识符θi和签名σ1进行聚合,如下所示
θ=fg(θ1,θ2,...,θn)
σ=fg(σ1,σ2,...,σn)
其中fg是聚合运算函数,表示乘法或加法运算,θ表示聚合身份标识符,σ表示聚合签名。
8.根据权利要求7所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,每个参与方接收到聚合服务器的聚合信息μ=(θ,c,σ)后,计算签名验证等式,若等式通过验证,则客户端使用私钥sk对全局模型的密文进行解密,并进行下一轮训练,否则,拒绝更新后的全局模型并输出错误符号,具体如下:
S5.1:参与方接收到聚合服务器的聚合梯度c和聚合签名σ后,利用伪随机函数计算参数ω,W通过下式计算:
ω=ρ(a,b)
W=e(a,b)ω
其中ρ表示的是(a,b)与随机向量的线性运算;
S5.2:参与方计算degy(c)的值,其中degy(c)表示聚合后全局模型的密文多项式中关于y的最高次幂,若degy(c)=2,表示聚合签名σ进行同态乘法运算,在乘法群GT上检查下述等式是否成立:
X=Y
若degy(c)=1,表示聚合签名σ进行的是同态加法运算,计算检查下述等式是否成立:
(T,U)=(vT,vU)
e(X,h)=e(g,Y)
W=e(T·(X)η,h)
若等式通过验证,则参与方使用私钥sk对全局模型的密文进行解密,并进行下一轮训练,否则,拒绝更新后的全局模型并输出错误符号。
9.根据权利要求1至8任一所述的适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法,其特征在于,还包括判断所有参与方的网络模型是否已经收敛或达到预定的训练次数:如果是,则结束训练进行测试;否则,训练轮数加1;参与方的神经网络模型收敛是指本地神经网络模型的损失函数值不再变化或者变化量小于设定的变化阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311125441.XA CN117216805A (zh) | 2023-09-01 | 2023-09-01 | 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311125441.XA CN117216805A (zh) | 2023-09-01 | 2023-09-01 | 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117216805A true CN117216805A (zh) | 2023-12-12 |
Family
ID=89043507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311125441.XA Pending CN117216805A (zh) | 2023-09-01 | 2023-09-01 | 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117216805A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117436078A (zh) * | 2023-12-18 | 2024-01-23 | 烟台大学 | 联邦学习中双向模型投毒检测方法与系统 |
CN117811722A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
CN118133355A (zh) * | 2024-05-06 | 2024-06-04 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于身份基同态签名的联邦学习方法及相关设备 |
CN118133355B (zh) * | 2024-05-06 | 2024-07-09 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于身份基同态签名的联邦学习方法及相关设备 |
-
2023
- 2023-09-01 CN CN202311125441.XA patent/CN117216805A/zh active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117436078A (zh) * | 2023-12-18 | 2024-01-23 | 烟台大学 | 联邦学习中双向模型投毒检测方法与系统 |
CN117436078B (zh) * | 2023-12-18 | 2024-03-12 | 烟台大学 | 联邦学习中双向模型投毒检测方法与系统 |
CN117811722A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
CN117811722B (zh) * | 2024-03-01 | 2024-05-24 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
CN118133355A (zh) * | 2024-05-06 | 2024-06-04 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于身份基同态签名的联邦学习方法及相关设备 |
CN118133355B (zh) * | 2024-05-06 | 2024-07-09 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于身份基同态签名的联邦学习方法及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Privacy-enhanced federated learning against poisoning adversaries | |
Ma et al. | ShieldFL: Mitigating model poisoning attacks in privacy-preserving federated learning | |
CN111639361B (zh) | 一种区块链密钥管理方法、多人共同签名方法及电子装置 | |
US9973342B2 (en) | Authentication via group signatures | |
CN117216805A (zh) | 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 | |
Lyu et al. | Towards fair and decentralized privacy-preserving deep learning with blockchain | |
CN116049897B (zh) | 基于线性同态哈希和签密的可验证隐私保护联邦学习方法 | |
Abidin et al. | Security aspects of privacy-preserving biometric authentication based on ideal lattices and ring-lwe | |
Niederhagen et al. | Practical post-quantum cryptography | |
Zhu et al. | An Efficient Identity‐Based Proxy Blind Signature for Semioffline Services | |
CN110176995A (zh) | 后量子安全的格上无证书签密方法 | |
Madi et al. | Computing neural networks with homomorphic encryption and verifiable computing | |
Ren et al. | Privacy-enhanced and verification-traceable aggregation for federated learning | |
Liu et al. | Privacy-preserving data sharing scheme with fl via mpc in financial permissioned blockchain | |
Yang et al. | Efficient and secure federated learning with verifiable weighted average aggregation | |
Wang et al. | Bpfl: A blockchain based privacy-preserving federated learning scheme | |
Tang et al. | Improved Verifier‐Based Three‐Party Password‐Authenticated Key Exchange Protocol from Ideal Lattices | |
Huszti et al. | A simple authentication scheme for clouds | |
Tian et al. | DIVRS: Data integrity verification based on ring signature in cloud storage | |
Yuan et al. | Post quantum blockchain architecture for internet of things over NTRU lattice | |
Li et al. | Cross the chasm: Scalable privacy-preserving federated learning against poisoning attack | |
CN113472524B (zh) | 一种抗恶意传输数据攻击的数据聚合签名系统及方法 | |
Chakraborty et al. | Capow: Context-aware ai-assisted proof of work based ddos defense | |
US20230141210A1 (en) | Neural networks | |
CN114492828A (zh) | 基于区块链技术的垂直联邦学习恶意节点检测与加固方法和应用 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |