[发明专利]在联邦学习中移除非规则用户的隐私保护方法有效
申请号: | 202111588461.1 | 申请日: | 2021-12-23 |
公开(公告)号: | CN114239070B | 公开(公告)日: | 2023-07-21 |
发明(设计)人: | 李洪伟;徐婕妤;曾加;郝猛;汤殿华;张希琳;杨浩淼;任彦之;刘鹏飞;张源 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F21/60;G06N20/20 |
代理公司: | 电子科技大学专利中心 51203 | 代理人: | 邓黎 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 联邦 学习 除非 规则 用户 隐私 保护 方法 | ||
1.一种在联邦学习中移除非规则用户的隐私保护方法,其特征在于,包括以下步骤:
1)密钥生成:每个用户i利用Diffie-Hellman方法生成密钥对,用作伪随机生成器的种子值,并将其公钥信息发送给云服务器;云服务器检测在线用户列表,将当前用户列表和收到的公钥信息发送给用户i的全体邻居用户;
2)生成用户参数:用户根据自己与上一轮全局梯度间的余弦距离更新个人权重,利用Shamir方法和Diffie-Hellman方法分别生成种子的子秘密和加密私钥的交换密钥,并对所有子秘密进行加密,最后将加密结果发送给云服务器;云服务器检测在线用户列表,并将收到的加密结果转发给用户i的全体邻居用户;
3)数据加密:用户首先利用Diffie-Hellman方法生成种子,接着把该种子应用在双掩码方法中对用户的梯度信息及权重信息进行加密,并将加密后数据发送给云服务器;云服务器检测在线用户列表,并将当前用户列表发送给用户i的全体邻居用户;
4)解密并计算全局梯度:用户收到云服务器发送的在线用户列表,并发送掉线用户的子秘密给云服务器;云服务器利用Shamir方法重构掉线用户参数,并用Shamir方法对加密后数据进行解密处理,最后将收到的加密数据进行聚合运算,得到新一轮的全局梯度;
步骤1密钥生成的具体步骤为:
步骤1.1.用户i(i∈U)利用Diffie-Hellman方法在本地生成公私密钥对其中U表示包含所有用户的列表,和表示用户i的公钥信息,表示用户i的私钥信息,用作认证加密AE的密钥,和用作伪随机生成器PRG的种子值;
步骤1.2.用户i(i∈U)将其公钥信息发送给云服务器;
步骤1.3.云服务器检测当前用户列表为U1(|U1|≥t,U1∈U),其中t表示在线用户数的最低阈值,当|U1|<t,云服务器终止;
步骤1.4.云服务器向用户i∈U1的全体邻居用户NG(i)广播其收到的公钥信息
步骤2生成用户参数的具体步骤为:
步骤2.1.用户i∈U1首先归一化个人梯度大小表示个人梯度大小,xd表示全局梯度大小;然后计算个人权重信息
步骤2.2.用户i∈U1选择随机数bi和b'i,并利用Shamir方法生成其私钥及随机数bi和b'i的子秘密:
其中,表示用户i的私钥对用户j产生的子秘密,同理,表示用户i的私钥对用户j产生的子秘密,bi,j表示用户i的随机数bi对用户j产生的子秘密,b'i,j表示用户i的随机数b'i对用户j产生的子秘密;
步骤2.3.用户i∈U1利用认证加密技术对产生的所有子秘密进行加密:
其中,ci,j表示用户i对用户j经认证加密后输出的密文,表示经Diffie-Hellman方法计算后的交换密钥,也是认证加密的密钥;
步骤2.4.用户i∈U1将密文值发送给云服务器;
步骤2.5.云服务器检测当前用户列表为U2(|U2|≥t,U2∈U1),当|U2|<t,服务器终止;
步骤2.6.云服务器向U2中的用户i的全体邻居用户NG(i)广播其收到的密文值
步骤3数据加密的具体步骤为:
步骤3.1用户i∈U2计算伪随机生成器PRG的种子值和其中si,j和s'i,j表示用户i与用户j经Diffie-Hellman方法计算后的交换密钥;
步骤3.2用户i∈U2计算两个向量pi,j=Δi,j·PRG(si,j)和p'i,j=Δi,j·PRG(s'i,j),其中当ij时,Δi,j=-1;当ij时,Δi,j=1;当i=j时,Δi,j=0;
对所有j∈NG(i),重复步骤3.1和步骤3.2;
步骤3.3用户i∈U2计算个人掩码pi=PRG(bi)和p'i=PRG(b'i);
步骤3.4用户i∈U2利用双掩码方法加密和wi:
其中,yi表示加密后的密文值,y'i表示wi加密后的密文值;
步骤3.5用户i∈U2将yi和y'i发送给云服务器;
步骤3.6云服务器检测当前用户列表为U3(|U3|≥t,U3∈U2),当|U3|<t,服务器终止;
步骤3.7云服务器向U2发送当前在线用户列表U3;
步骤4数据加密的具体步骤为:
步骤4.1.用户i∈U3检测当前用户列表为U3(|U3|≥t,U3∈U2),若|U3|<t,中止并重新开始步骤1;
步骤4.2.用户i∈U3对所有ci,j∈U2∩NG(j),解密
步骤4.3.用户i∈U3将和{bi,j,b′i,j|j∈(U2\U3)∩i∈NG(j)}发送给服务器,其中U2\U3表示在步骤2中向云服务器发送数据,但在步骤3将数据上传到云服务器之前退出的用户;
步骤4.4.云服务器接收至少t个用户返回的数据,利用Shamir方法恢复出离线用户私钥和然后使用PRG重新计算pi,j和p'i,j;
步骤4.5.云服务器重构和然后使用PRG重新计算pi和p'i;
步骤4.6.云服务器计算并输出当前轮次聚合梯度
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111588461.1/1.html,转载请声明来源钻瓜专利网。