动态化公平性的隐私保护联邦深度学习方法
未命名
08-03
阅读:526
评论:0
1.本发明涉及信息安全技术领域,具体涉及一种动态化公平性的隐私保护联邦深度学习方法。
背景技术:
2.联邦学习是一种很有前景的多参与方协同计算技术,它可以使多个参与者在不共享本地数据的情况下进行联合建模,协同训练多参与方用户数据,一定程度上保护了用户隐私,该技术有望在物联网领域发挥巨大潜力。
3.目前,联邦学习经常与物联网协同使用,然而目前还没有高效可靠的适用于物联网的隐私保护联邦学习技术,作为主流的隐私保护技术,同态加密支持密文同态操作,且不存在交互和准确率损失,目前,联邦学习中同态加密方案主要使用paillier,elgamal,改进的bgv(brakerski-gentry-vaikuntanathan)算法等。
4.由于物联网设备能量资源和处理单元的限制,这些密码体制不能很好地适用于物联网设备,且物联网的计算能力和通信资源有限,而联邦学习需要使用大量数据进行训练,同时训练过程交互多,因此原有密码体制无法满足联邦训练要求;另外,由于部分设备离线或退出、数据质量低、不均衡或非独立同分布(notidenticallyandindependentlydistributed,non-iid)等原因,可能导致训练结果不准确,也可能导致训练模型失效,这阻碍了物联网中多参与方联合建模的性能。
技术实现要素:
5.为了解决现有问题中常规密码体制不能很好地适用于物联网设备,且由于部分设备离线或退出,数据质量低、不均衡或非独立同分布导致训练结果不准确或导致训练模型失效的问题,本发明提供一种动态化公平性的隐私保护联邦深度学习方法,边缘设备进行数据采集、数据预处理及本地模型训练后获得权重矩阵;对权重矩阵进行加密得到密文权重矩阵并发送到参数服务器;参数服务器使用联邦和优化算法计算获得安全联邦和,然后发送给边缘设备,边缘设备对密文权重矩阵的安全联邦和进行解密从而获取联邦平均矩阵;使用本地的卷积神经网络进行迭代训练获得更新后的权重并加密,然后再发送给参数服务器,经过反复训练直至输出密文权重矩阵的最优安全联邦和,获取最优联邦平均矩阵进行数据预测。本发明能够降低联邦学习的通信代价,实现用户的动态更新的同时保证用户数据质量的公平性。
6.本发明采用如下技术方案:动态化公平性的隐私保护联邦深度学习方法,应用于参数服务器和边缘设备,包括:
7.s1.初始化和加密阶段:边缘设备进行数据采集、数据预处理及本地模型训练后获得权重矩阵;利用改进的ec-elgamal密码体制对权重矩阵进行加密,将加密后得到的密文权重矩阵发送至参数服务器;
8.s2.联邦训练阶段:参数服务器从多个边缘设备中获取密文权重矩阵,使用联邦和
优化算法选择高质量的密文权重矩阵计算获得安全联邦和,然后发送给边缘设备;
9.s3.解密和预测阶段:边缘设备对密文权重矩阵的安全联邦和进行解密,根据解密后的安全联邦和计算获得联邦平均矩阵;使用联邦平均矩阵在本地卷积神经网络中进行模型训练获得权重矩阵,加密权重矩阵发送给参数服务器;
10.重复步骤s2-s3,直至得到密文权重矩阵的最优安全联邦和,根据最优安全联邦和计算获得最优联邦平均矩阵,根据最优联邦平均矩阵进行数据预测。
11.进一步的,利用改进的ec-elgamal密码体制对权重矩阵进行加密的具体步骤包括:
12.边缘设备使用密钥生成算法生成私钥,依据私钥计算自己的公钥,并将公钥发送给参数服务器;
13.边缘设备利用smpc协商算法获取相同的随机数;
14.边缘设备从参数服务器获取初始权重w0后,利用机器学习算法训练边缘设备采集到的本地数据{x1,x2,...,xu},其中,u为数据个数;经过多轮训练后得到权重矩阵wi=(w
i1
,w
i2
,...,w
in
);
15.边缘设备利用改进的ec-elgamal密码体制,使用自己的公钥和随机数加密权重矩阵,得到密文权重矩阵
16.进一步的,改进的ec-elgamal密码体制包括密钥生成算法、加密算法、安全联邦和算法以及解密算法。
17.进一步的,所述密钥算法包括:给定一个基点和椭圆曲线上群的阶q,均匀随机选作为私钥,计算公钥pi=kiq;
18.所述加密算法包括:获取n个边缘设备相应的私钥{k1,k2,...,kn}和明文{m1,m2,...,mn},其中,明文mi∈q嵌入在点mi=miq上,结合smpc协商算法中相同的均匀随机数计算n个边缘设备的密文;
19.所述安全联邦和算法包括:参数服务器从n个边缘设备中选择最优的t个边缘设备的的密文,其中,2≤t≤n,根据同态性质计算t个边缘设备密文的安全联邦和;
20.所述解密算法包括:参数服务器将安全联邦和发送给t个边缘设备,t个边缘设备通过smpc协商算法计算第l个边缘设备的
21.边缘设备l用k
l
和私钥解密c
sum
,得到明文和m
sum
,通过m
sum
求出明文m
sum
,获得平均明文m
avg
=m
sum
/t。
22.进一步的,进行所述联邦训练阶段之前,还包括用户动态更新阶段,具体包括:用户动态退出算法和用户动态加入算法;
23.用户动态退出算法:当第i
*
个边缘设备退出时,参数服务器接收到该边缘设备的退出信号quit,并删除该退出的边缘设备的密文权重矩阵若退出的边缘设备存在于t个边缘设备中,参数服务器计算t-1个边缘设备的安全联邦和;若退出的边缘设备不存在于t个边缘设备中,参数服务器计算t个边缘设备对应密文权重矩阵的安全联邦和;
24.用户动态加入算法:当第i
*
个边缘设备加入时,参数服务器收到该边缘设备的密
文权重矩阵利用scp协议对第i
*
个边缘设备加入前所有边缘设备的密文权重矩阵进行排序,并判断最小密文权重矩阵e(w
t
)与第i
*
个边缘设备加入后的密文权重矩阵之间的大小,若大于e(w
t
),参数服务器将e(w
t
)替换为若小于e(w
t
),对参数服务器收到的密文权重矩阵不做替换。
25.进一步的,所述scp协议具体包括:
26.参数服务器从均匀随机选择r
′
,将r
′
分成ra和rb,满足r
′
=ra+rb,分别对ra和rb加密得到e(ra)=(ra+rqka,rq)和e(rb)=(rb+rqkb,rq);参数服务器将e(ra)和e(rb)发送给边缘设备a和边缘设备b;
27.边缘设备a收到e(ra)后,根据e(ra)的第一项ra+rqka计算ca′
=rqka+ra+rqka并将其发送给边缘设备b;
28.参与者b收到e(rb)后,根据e(rb)的第一项rb+rqkb计算cb′
=rqk
b-(rb+rqkb),收到ca′
后,计算cr=cb′-ca′
并将cr发送给参数服务器;
29.利用ec-elgamal密码体制的同态性质,参数服务器计算e(r
′
)的第一项e(r1′
)=ra+rb+rq(ka+kb),然后计算cc=c
a1-c
b1
+cr+e(r1′
)=m
a-mb,通过判断cc的值是否大于零来判断边缘设备a和边缘设备b对应的密文权重矩阵的大小。
30.进一步的,所述联邦和优化算法具体包括:
31.参数服务器接收密文权重矩阵加密w1′
,w2′
,...,wn′
得到密文权重标签其中,w
i1
,w
i2
,...,w
in
是训练权重,w1′
,w2′
,...,wn′
是权重标签,i∈{1,2,...,n},j∈{1,2,...,n},wi是从边缘设备i获得的权重矩阵,wj′
是参数服务器上已有的权重矩阵标签;所述权重标签通过随机梯度下降算法从最优权重或轮数阈值权重中获得;
32.参数服务器使用欧几里得距离计算训练权重wi和权重标签wj′
之间的距离为:基于密文训练权重和密文权重标签,依据加法同态性质和smp协议计算然后参数服务器依据加法同态性计算距离的平方
33.参数服务器通过scp协议对密文中的距离平方进行降序排列,选择前t个记作分别对应其中a1,a2,...,at是重新排序后的公钥下标,d1,d2,...,d
t
是来自d2(wi,wj′
)的t个最优数据的距离;
34.从n个边缘设备中找出t个最优距离的t个密文权重矩阵,参数服务器利用改进的ec-elgamal密码体制计算t个密文权重矩阵的安全联邦和e(w
sum
)。
35.进一步的,所述smp协议具体包括:
36.给定两个密文和smp将完成的计算,其具体流程如下;
37.参与者i用公钥pki=pi=kiq加密m1,得到密文然后计算d=(m
1-1)rpi和f=rpi,并发送给参数服务器;
38.参数服务器使用公钥pki=kiq对m2进行加密,得到密文
39.参数服务器计算具体计算公式如下:
[0040][0041]
本发明的有益效果是:本发明提出了基于联邦和优化算法和ec-elgamal密码体制的隐私保护联邦深度学习方案,同时设计了用户动态退出和加入算法以及联邦和优化算法来实现高质量的数据应用,尽管联邦和优化算法受数据集数量的影响,其k值选择也会直接影响准确率,但本发明中通过构建改进的ec-elgamal密码体制进行加密,有效降低了通信代价,在一定程度上解决了联邦学习在物联网应用中的关键瓶颈问题,同时本方案也适用于其他联邦学习场景,支持同态性并适合于多密钥协同计算环境下联邦平均的计算。
附图说明
[0042]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0043]
图1为本发明实施例的一种系统模型的架构图;
[0044]
图2为本发明实施例的一种动态化公平性的隐私保护联邦深度学习方法流程示意图;
[0045]
图3为本发明实施例的一种动态化公平性的隐私保护联邦深度学习方法工作流程示意图;
[0046]
图4为本发明实施例的用户动态退出算法示意图;
[0047]
图5为本发明实施例的用户动态加入算法示意图;
[0048]
图6为本发明实施例的安全比较协议执行示意图;
[0049]
图7为本发明实施例的最优聚合联邦学习算法示意图;
[0050]
图8为本发明实施例的素数搜索算法示意图;
[0051]
图9为本发明实施例的通信代价和计算代价的实验比较示意图;
[0052]
图10为本发明实施例的密码体制的加解密效率比较示意图;
[0053]
图11为本发明实施例的准确率测试结果示意图。
具体实施方式
[0054]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
[0055]
联邦学习不仅可以用于云计算,也可以用于物联网、边缘计算中,如边缘设备或边缘智能网络(机器人网络、车辆自组织网络(vehicularad hoc networks,vanets)、智能电网等)可以利用联邦学习进行协作训练和预测,如图1所示,本发明实施例的一种系统模型的架构图,在本发明提供的系统模型中,有很多存在于物联网边界上的边缘设备域,如机器人域、vanets域和智能电网域。在每个域中,机器学习算法,如卷积神经网络(convolutional neural networks,cnn)、人工神经网络(artificial neural network,ann)、k近邻(k-nearest neighbor,knn)、支持向量机(support vector machine,svm)、k聚类,都可以部署在边缘设备上,设备对训练参数进行加密,并上传或下载更新后的密文参数以更新训练模型,云或物联网中的参数服务器可以对来自边缘域的参数进行聚合,用户或设备自己生成公私钥对,公钥公开给所有参与者,私钥由其自己保存,可见本发明给出的系统模型包括参数服务器以及边缘设备。
[0056]
参数服务器:参数服务器作为一个聚合器,可以聚合来自边缘设备的训练参数,并从聚合的参数中选择高质量的参数计算安全联邦和,在参数服务器上,模型训练过程需要与边缘设备进行多次迭代。
[0057]
边缘设备:边缘设备又可称之为参与者,其是通过机器学习算法训练本地数据(存储在设备中的数据)或非本地数据(从其他设备/传感器采集的数据)的实体,其不能与参数服务器共谋,边缘设备生成公私钥对,保留自己的私钥并传输公钥到系统,边缘设备用公钥对本地训练权重进行加密,并将密文权重上传到参数服务器,边缘设备获得参数服务器的联邦和后,通过本发明中选择的解密算法得到明文联邦平均值,然后在本地机器学习算法中进行迭代训练获得更新后的密文权重。
[0058]
在本发明实施例中,参数服务器是一个诚实且好奇的实体,它可以诚实地遵循协议,但试图从系统中获取设备隐私信息,同时,其不能与设备共谋,另外,设备的私钥由自己生成并保存,避免了私钥的泄露,系统模型存在以下威胁:
[0059]
(1)腐化的参数服务器作为内部敌手试图从聚合权重中获取隐私信息。由于获得的数据是密文形式,敌手无法从密文中获得任何数据。
[0060]
(2)腐化的边缘设备作为内部敌手试图从其他边缘设备获取隐私信息。由于该设备只能接收密文数据,无法获取其他设备的隐私信息。
[0061]
(3)外部敌手试图窃听来自内部参与者或通信线路的数据。尽管敌手可以获得密文数据,由于没有私钥,它无法解密该密文数据。
[0062]
由此,根据系统模型和可能受到的威胁,本发明实施例所设计的技术方案需要实现的目标为:
[0063]
(1)确保输入数据的隐私性:设备或用户的信息直接关系到用户的数据安全,需确保用户或设备的隐私信息不能泄露。因此,方案需确保输入数据的隐私性。
[0064]
(2)确保模型数据和推理结果的隐私性:模型数据和推理结果中含有用户或设备的敏感信息,参数服务器和设备间模型训练过程的参数也会泄露敏感信息。因此,方案需确保模型数据和推理结果的隐私性。
[0065]
(3)支持轻量化同态加密:物联网网络带宽小,设备资源有限,而密码算法的选择和使用直接影响了资源利用的情况。因此,方案需考虑密钥长度小,支持节约资源的轻量化
同态加密方案。
[0066]
(4)支持高质量数据训练:由于数据来源复杂、数据质量低、数据不公平等问题,导致训练数据质量差异大,低质量的数据还会影响联邦学习训练过程中的训练准确率。因此,方案考虑如何获取高质量数据进行模型训练。
[0067]
(5)支持用户动态更新:物联网中用户或设备退出加入频繁,同时网络问题也容易导致用户或设备掉线、加入等情况,方案要求在考虑高质量数据训练的前提下,需确保用户动态加入退出不影响网络的训练及训练准确率。因此,方案需考虑边缘设备的动态更新功能。
[0068]
如图2所示,给出了本发明实施例的一种动态化公平性的隐私保护联邦深度学习方法流程示意图,本实施例所公开的方法应用于图1所示的系统模型,该方法包括:
[0069]
s1.初始化和加密阶段:边缘设备进行数据采集和预处理并获取权重矩阵;利用改进的ec-elgamal密码体制对权重矩阵进行加密计算,将加密计算后得到的密文权重矩阵发送至参数服务器;
[0070]
利用改进的ec-elgamal密码体制对每个边缘设备的权重矩阵进行加密计算的具体步骤包括:
[0071]
边缘设备使用密钥生成算法生成私钥ki,计算公钥pki=pi=kiq,并将pki发送给参数服务器;n个边缘设备利用smpc协商算法获取相同的随机数r;边缘设备从参数服务器获取初始权重w0后,利用机器学习算法训练边缘设备采集到的本地数据{x1,x2,...,xu},其中,u为数据个数;经过多轮训练后得到权重矩阵wi=(w
i1
,w
i2
,...,w
in
);边缘设备i利用改进的ec-elgamal密码体制,使用对应的公钥pki和随机数r密文权重矩阵wi,得到密文权重矩阵
[0072]
smpc协商算法是为了实现不可信参与者之间联合计算函数而提出的一种密码协议,该协商算法意味着在没有可信第三方的情况下,多方协作计算一个目标函数,满足:f(x1,x2,...,xn)=(y1,y2,...,yn),其中,x1,x2,...,xn是输入数据,y1,y2,...,yn是对应的输出数据,smpc协商算法在计算的过程中,能够确保各方只能得到自己的计算结果,无法从交互数据中推断出其他各方的数据。
[0073]
目前,在很多场景下,多密钥环境下的用户需要协作以达到最优联合学习。为了实现多密钥轻量化联邦学习,我们提出了一个基于ec-elgamal密码体制的多密钥ecc门限同态加密方案,也可称之为meec,该方案基于ec-elgamal密码体制,其具体方案如下:改进的ec-elgamal密码体制包括密钥生成算法、加密算法、安全联邦和算法以及解密算法。
[0074]
所述密钥算法包括:给定一个基点和椭圆曲线上群的阶q,均匀随机选择作为私钥,计算公钥pi=kiq,其中,i∈{1,2,
…
,n},n表示边缘设备的个数;
[0075]
所述加密算法包括:获取n个边缘设备相应的私钥{k1,k2,...,kn}和明文{m1,m2,...,mn},其中,明文mi∈q嵌入在点mi=miq上,结合smpc协商算法中相同的均匀随机数计算n个边缘设备的密文如下:
[0076][0077]
所述安全联邦和算法包括:参数服务器从n个参与者中选择最优的t个明文对应的密文,其中,2≤t≤n,d1,d2,...,d
t
∈{1,2,...,n},根据同态性质计算t个密文的安全联邦和c
sum
;
[0078]
所述解密算法包括:参数服务器将安全联邦和c
sum
发送给t个边缘设备,t个边缘设备通过smpc协商算法计算第l个参与者的
[0079]
边缘设备l用k
l
和私钥解密c
sum
,得到明文和m
sum
,通过m
sum
求出明文m
sum
,获得平均明文m
avg
=m
sum
/t。
[0080]
进行所述联邦训练阶段之前,还包括用户动态更新阶段,具体包括:用户动态退出算法和用户动态加入算法;
[0081]
用户动态退出算法:当第i
*
个边缘设备退出时,参数服务器接收到该边缘设备的退出信号quit,并删除该退出的边缘设备的密文权重矩阵若退出的边缘设备存在于阈值t(2≤t≤n)个边缘设备中,参数服务器计算t-1个边缘设备的安全联邦和;若退出的边缘设备不存在于阈值t(2≤t≤n)个边缘设备中,参数服务器计算t个边缘设备对应密文权重矩阵的安全联邦和,并计算平均能量p
avg
,本发明实施例的用户动态退出算法示意图如图4所示。
[0082]
用户动态加入算法:当第i
*
个边缘设备加入时,参数服务器收到该边缘设备的密文权重矩阵利用scp协议对第i
*
个边缘设备加入前所有边缘设备的密文权重矩阵进行排序,并判断最小密文权重矩阵e(w
t
)与第i
*
个边缘设备加入后的密文权重矩阵之间的大小,若大于e(w
t
),参数服务器将e(w
t
)替换为若小于e(w
t
),对参数服务器收到的密文权重矩阵不做替换,并计算平均能量p
avg
,本发明实施例的用户动态加入算法如图5所示。
[0083]
所述scp协议为安全比较协议,其比较参数服务器中两个密文ca=(c
a1
,c
a2
)=(ma+rqka,rq)和cb=(c
b1
,c
b2
)=(mb+rqkb,rq)对应的明文ma,mb的大小,满足ma=maq和mb=mbq,ma,mb∈(0,q/4),本发明实施例的安全比较协议执行示意图如图6所示,具体执行步骤包括:
[0084]
参数服务器从均匀随机选择r
′
,将r
′
分成ra和rb,满足r
′
=ra+rb,分别对ra和rb加密得到e(ra)=(ra+rqka,rq)和e(rb)=(rb+rqkb,rq);参数服务器将e(ra)和e(rb)发送给边缘设备a和边缘设备b;
[0085]
边缘设备a收到e(ra)后,根据e(ra)的第一项ra+rqka计算ca′
=rqka+ra+rqka并将其发送给边缘设备b;
[0086]
参与者b收到e(rb)后,根据e(rb)的第一项rb+rqkb计算cb′
=rqk
b-(rb+rqkb),收到
ca′
后,计算cr=cb′-ca′
并将cr发送给参数服务器;
[0087]
利用ec-elgamal密码体制的同态性质,参数服务器计算e(r
′
)的第一项e(r1′
)=ra+rb+rq(ka+kb),然后计算cc=c
a1-c
b1
+cr+e(r1′
)=m
a-mb,通过判断cc的值是否大于零来判断边缘设备a和边缘设备b对应的密文权重矩阵的大小。
[0088]
s2.联邦训练阶段:参数服务器从n个参与者中得到密文权重矩阵,使用联邦和优化算法选择高质量的密文权重矩阵计算获得安全联邦和,然后发送给边缘设备。本发明通过构建最优聚合联邦学习算法(oafla)进行模型训练,该算法示意图如图7所示。
[0089]
ecc的密钥长度是优化性能和降低能耗的主要参数。在物联网中,由于传感器或设备的电池寿命较短,因此需要在节能模式下运行,最优素数p可以大大降低功耗。因此,将素数p设置在可接受的安全级别是至关重要的,本发明设计如下素数搜索算法来寻找最优素数p:
[0090]
设pe为局部epoch的单次能量;f为局部epoch的次数;pc为通信功率,联邦训练时,一轮总功率p
t
为局部能量与通信能量之和:p
t
=fpe+pc。总能量p
total
满足公式:p
total
=μp
t
<p
threshold
;其中,μ是权重不再更新时的最优训练轮数或为轮数的阈值,p
threshold
为能量的阈值。一旦达到阈值p
threshold
,电池将耗尽,设备将自动关闭,本发明实施例的素数搜索算法示意图如图8所示,其中,q是满足q≥q
min
的素数为p的椭圆曲线上点构成的群的阶,q
min
是最小安全级别的椭圆曲线上点构成的群的阶,schoof算法是快速计算阶的一个算法。
[0091]
所述联邦和优化算法(fsoa)具体包括:
[0092]
参数服务器接收密文权重矩阵加密w1′
,w2′
,...,wn′
得到密文权重标签其中,w
i1
,w
i2
,...,w
in
是训练权重,w1′
,w2′
,...,wn′
是权重标签,i∈{1,2,...,n},j∈{1,2,...,n},wi是从边缘设备i获得的权重矩阵,wj′
是参数服务器上已有的权重矩阵标签;所述权重标签通过随机梯度下降算法从最优权重或轮数阈值权重中获得;
[0093]
参数服务器使用欧几里得距离计算训练权重wi和权重标签wj′
之间的距离为:基于密文训练权重和密文权重标签,依据加法同态性质和smp协议计算然后参数服务器依据加法同态性计算距离的平方
[0094]
smp协议即安全乘法协议,其内容包括:给定两个密文和安全乘法协议完成的计算,具体步骤为:
[0095]
边缘设备使用公钥加密m1,得到密文然后计算d=(m
1-1)rpi和f=rpi,并发送至服务器;参数服务器使用公钥对m2进行加密,得到密文参数服务器计算表达式为:
[0096]
encryption的论文文献,后续表中的现有方案均与此处对应。
[0107]
计算代价分析:在初始化和加密阶段,参与者需要产生12mul的计算代价来计算公钥和加密;在用户动态更新阶段,用户动态退出算法不产生任何计算代价;在用户动态加入算法中,参与者计算密文权重的代价是3nmul,而基于scp的比较中,参数服务器的计算代价是4mul;在联邦训练阶段,参与者产生7mul的计算代价计算联邦和优化算法,而参数服务器产生19nmul+div的计算代价来计算最优聚合联邦学习算法(oafla),在解密和预测阶段,参与者需要产生3mul+div的计算代价来解密密文预测结果。如表2所示,将本发明方案的计算代价与现有方案的计算代价进行了比较,可以看到,本发明方案的计算代价优于其他方案的计算代价,同时本发明方案没有指数运算,更表明了其具有较低的计算代价。
[0108]
表2计算代价比较
[0109][0110]
进一步的,本发明实施例对本方案进行了实验分析,实验环境为:intel(r)core(tm)i7-7700hq@2.80ghz(8cpu),8gb随机访问内存(ram),64位windows操作系统,anaconda 3,pycharm 2020.3.2专业版,python 3.8.5和pytorch 1.7.0,选用mnist数据集和曲线25519的ecc进行实验,通过对数据集进行分割来模拟多个用户,为了比较运行效率,首先测试了基于ec-elgamal的加解密和点乘的运行时间,实验结果如表3所示:
[0111]
表3ec-elgamal运行时间
[0112]
加密解密点乘214.43ms106.71ms0.17ms
[0113]
根据密钥长度和ec-elgamal的运行实现,本发明实施例中给出了通信代价和计算代价的比较示意图如图9所示,图9(a)随着密钥长度{160,224,
…
,512}的变化通信代价的变化,其中权重的数量为1000;可以看出,在用户动态更新阶段通信代价几乎是一致的,在初始化和加密阶段、联邦训练阶段,通信代价随着密钥长度的增加而明显增加。
[0114]
图9(b)比较了当密钥长度固定为224时,随着权重数量{1000,2000,
…
,5000}的增加通信代价的变化,可以看出,随着权重数量的增加,初始化和加密阶段、联邦训练阶段的通信代价不断增加,在用户动态更新阶段保持不变。因此,在用户动态更新阶段,通信代价不受影响。
[0115]
图9(c)和图9(d)显示了随着权重数量的增加,不同阶段计算代价的运行时间,如图9(c)所示,在用户动态更新阶段,随着权重{10,20,
…
,100}的增加,参与者的运行时间也不断增加,在其他阶段,计算代价不受权重数量的影响。在图9(d)中,随着权重数量{10,20,
…
,100}的增加,参数服务器在联邦训练阶段的运行时间不断增加;在用户动态更新阶
段,运行时间为零或接近零;总体而言,参与者在用户动态更新阶段的计算代价会受到影响,而参数服务器在联邦训练阶段的计算代价也会受到影响。
[0116]
进一步,本发明实施例选择curve25519作为ecc密码体制的椭圆曲线,然后测试了隐私保护深度学习方案中常用的密码体制lwe,paillier,elgamal和本发明方案中密码体制的加解密效率,如图10所示,随着图像数量{1,2,
…
,5}的增长,paillier和elgamal的运行时间明显增加,而lwe和本发明方案的运行时间略有增加,虽然本发明方案比lwe产生更多的加解密时间,但由于本发明方案中密钥生成时间比lwe短的多,因此本发明方案的总消耗时间低于lwe的总消耗时间。
[0117]
在基于同态加密的联邦学习方案中,由于准确率不受加密方案的影响或者影响较小,本发明实施例在不考虑隐私保护机制的情况下,测试了本发明方案的准确率,如图11所示;
[0118]
在图11(a)中,本发明实施例比较了不同batch数量为{10,20,30}随着epoch变化的准确率;当epoch为{45,60,80}时,分别对应于batch为{10,20,30}的数,准确率接近于100%,结果表明,当batch为10时,准确率相较于batch为20或30的准确率较高,进一步的,本发明实施例测试了k值选择对准确率的影响,如图11(b)所示,当用户数为{4,6,8}时,测试的k值为{1,2,3}时准确率较高,因此,本发明实施例选择3作为k值来测试准确率。如图11(c)和11(d)所示,当k值为3时,本发明实施例测试了用户数量在{4,6,8}时的准确率,结果表明,准确率随着轮数{1,2,
…
,10}{1,2,
…
,10}的增加而不断增加,由图11(b)-(d)可知,最优聚合联邦学习算法(oafla)中k值的选择是否恰当,直接影响到方案的准确率。
[0119]
本发明提出了基于联邦和优化算法和ec-elgamal密码体制的隐私保护联邦深度学习方案,同时设计了用户动态退出和加入算法以及联邦和优化算法来实现高质量的数据应用,尽管联邦和优化算法受数据集数量的影响,其k值选择也会直接影响准确率,但本发明中通过构建改进的ec-elgamal密码体制进行加密,有效降低了通信代价,在一定程度上解决了联邦学习在物联网应用中的关键瓶颈问题,同时本方案也适用于其他联邦学习场景,支持同态性并适合于多密钥协同计算环境下联邦平均的计算。
[0120]
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
技术特征:
1.动态化公平性的隐私保护联邦深度学习方法,应用于参数服务器和边缘设备,其特征在于,包括:s1.初始化和加密阶段:边缘设备进行数据采集、数据预处理及本地模型训练后获得权重矩阵;利用改进的ec-elgamal密码体制对权重矩阵进行加密,将加密后得到的密文权重矩阵发送至参数服务器;s2.联邦训练阶段:参数服务器从多个边缘设备中获取密文权重矩阵,使用联邦和优化算法选择高质量的密文权重矩阵计算获得安全联邦和,然后发送给边缘设备;s3.解密和预测阶段:边缘设备对密文权重矩阵的安全联邦和进行解密,根据解密后的安全联邦和计算获得联邦平均矩阵;使用联邦平均矩阵在本地卷积神经网络中进行模型训练获得权重矩阵,加密权重矩阵发送给参数服务器;重复步骤s2-s3,直至得到密文权重矩阵的最优安全联邦和,根据最优安全联邦和计算获得最优联邦平均矩阵,根据最优联邦平均矩阵进行数据预测。2.根据权利要求1所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:利用改进的ec-elgamal密码体制对权重矩阵进行加密的具体步骤包括:边缘设备使用密钥生成算法生成私钥,依据私钥计算自己的公钥,并将公钥发送给参数服务器;边缘设备利用安全多方计算(smpc)协商算法获取相同的随机数;边缘设备从参数服务器获取初始权重w0后,利用机器学习算法训练边缘设备采集到的本地数据{x1,x2,...,x
u
},其中,u为数据个数;经过多轮训练后得到权重矩阵w
i
=(w
i1
,w
i2
,
…
,w
in
);边缘设备利用改进的ec-elgamal密码体制,使用自己的公钥和随机数加密权重矩阵,得到密文权重矩阵3.根据权利要求2所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:改进的ec-elgamal密码体制包括密钥生成算法、加密算法、安全联邦和算法以及解密算法。4.根据权利要求3所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:所述密钥生成算法包括:给定一个基点和椭圆曲线上群的阶q,均匀随机选择作为私钥,计算公钥p
i
=k
i
q;所述加密算法包括:获取n个边缘设备对应的私钥{k1,k2,...,k
n
}和明文{m1,m2,...,m
n
},其中,明文m
i
∈
q
嵌入在点m
i
=m
i
q上,结合smpc协商算法中相同的均匀随机数计算n个边缘设备的密文;所述安全联邦和算法包括:参数服务器从n个边缘设备中选择最优的t个边缘设备的密文,其中,2≤t≤n,根据同态性质计算t个边缘设备密文的安全联邦和;所述解密算法包括:参数服务器将安全联邦和发送给t个边缘设备,t个边缘设备通过smpc协商算法计算第l个边缘设备的边缘设备l用k
l
和私钥解密c
sum
,得到明文和m
sum
,通过m
sum
求出明文m
sum
,获得平均明文m
avg
=m
sum
/t。
5.根据权利要求1所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:进行所述联邦训练阶段之前,还包括用户动态更新阶段,具体包括:用户动态退出算法和用户动态加入算法;用户动态退出算法:当第i
*
个边缘设备退出时,参数服务器接收到该边缘设备的退出信号quit,并删除该退出的边缘设备的密文权重矩阵若退出的边缘设备存在于t个边缘设备中,参数服务器计算t-1个边缘设备的安全联邦和;若退出的边缘设备不存在于t个边缘设备中,参数服务器计算t个边缘设备对应密文权重矩阵的安全联邦和;用户动态加入算法:当第i
*
个边缘设备加入时,参数服务器收到该边缘设备的密文权重矩阵利用安全比较协议(scp协议)对第i
*
个边缘设备加入前所有边缘设备的密文权重矩阵进行排序,并判断最小密文权重矩阵e(w
t
)与第i
*
个边缘设备加入后的密文权重矩阵之间的大小,若大于e(w
t
),参数服务器将e(w
t
)替换为若小于e(w
t
),对参数服务器收到的密文权重矩阵不做替换。6.根据权利要求5所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:所述scp协议具体包括:参数服务器从均匀随机选择r
′
,将r
′
分成r
a
和r
b
,满足r
′
=r
a
+r
b
,分别对r
a
和r
b
加密得到e(r
a
)=(r
a
+rqk
a
,rq)和e(r
b
)=(r
b
+rqk
b
,rq);参数服务器将e(r
a
)和e(r
b
)发送给边缘设备a和边缘设备b;边缘设备a收到e(r
a
)后,根据e(r
a
)的第一项r
a
+rqk
a
计算c
a
′
=rqk
a
+r
a
+rqk
a
并将其发送给边缘设备b;参与者b收到e(r
b
)后,根据e(r
b
)的第一项r
b
+rqk
b
计算c
b
′
=rqk
b-(r
b
+rqk
b
),收到c
a
′
后,计算c
r
=c
b
′-c
a
′
并将c
r
发送给参数服务器;利用ec-elgamal密码体制的同态性质,参数服务器计算e(r
′
)的第一项e(r1′
)=r
a
+r
b
+rq(k
a
+k
b
),然后计算cc=c
a1-c
b1
+c
r
+e(r1′
)=m
a-m
b
,通过判断cc的值是否大于零来判断边缘设备a和边缘设备b对应的密文权重矩阵的大小。7.根据权利要求1所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:所述联邦和优化算法具体包括:参数服务器接收密文权重矩阵加密w1′
,w2′
,...,w
n
′
得到密文权重标签其中,w
i1
,w
i2
,...,w
in
是训练权重,w1′
,w2′
,...,w
n
′
是权重标签,i∈{1,2,...,n},j∈{1,2,...,n},w
i
是从边缘设备i获得的权重矩阵,w
j
′
是参数服务器上已有的权重矩阵标签;所述权重标签通过随机梯度下降算法从最优权重或轮数阈值权重中获得;参数服务器使用欧几里得距离计算训练权重w
i
和权重标签w
j
′
之间的距离为:基于密文训练权重和密文权重标签,依据加法同态性质和安全乘法协议(smp协议)计算然后参数
服务器依据加法同态性计算距离的平方参数服务器通过scp协议对密文中的距离平方进行降序排列,选择前t个记作分别对应其中a1,a2,...,at是重新排序后的公钥下标,d1,d2,...,d
t
是来自d2(w
i
,w
j
′
)的t个最优数据的距离;从n个边缘设备中找出t个最优距离的t个密文权重矩阵,参数服务器利用改进的ec-elgamal密码体制计算t个密文权重矩阵的安全联邦和e(w
sum
)。8.根据权利要求7所述的动态化公平性的隐私保护联邦深度学习方法,其特征在于:所述smp协议具体包括:给定两个密文和smp将完成的计算,其具体流程如下;参与者i用公钥pk
i
=p
i
=k
i
q加密m1,得到密文然后计算d=(m
1-1)rp
i
和f=rp
i
,并发送给参数服务器;参数服务器使用公钥pk
i
=k
i
q对m2进行加密,得到密文参数服务器计算具体计算公式如下:
技术总结
发明涉及信息安全技术领域,具体涉及一种动态化公平性的隐私保护联邦深度学习方法。边缘设备进行数据采集、数据预处理及本地模型训练后获得权重矩阵;对权重矩阵进行加密得到密文权重矩阵并发送到参数服务器;参数服务器使用联邦和优化算法计算获得安全联邦和,然后发送给边缘设备,边缘设备对密文权重矩阵的安全联邦和进行解密从而获取联邦平均矩阵;使用本地的卷积神经网络进行迭代训练获得更新后的权重并加密,然后再发送给参数服务器,经过反复训练直至输出密文权重矩阵的最优安全联邦和,获取最优联邦平均矩阵进行数据预测。本发明能够降低联邦学习的通信代价,实现用户动态更新的同时保证用户数据质量的公平性。更新的同时保证用户数据质量的公平性。更新的同时保证用户数据质量的公平性。
技术研发人员:陈艳格 冯战申 马慧 何浩北 李文凯
受保护的技术使用者:许昌学院
技术研发日:2023.05.16
技术公布日:2023/8/2
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种高强度高硬度钨针 下一篇:一种可三百六十度摆头的落地扇的制作方法
