CN115242369A - 基于多密钥同态加密的联邦学习隐私保护方法及其装置 - Google Patents
基于多密钥同态加密的联邦学习隐私保护方法及其装置 Download PDFInfo
- Publication number
- CN115242369A CN115242369A CN202210511832.4A CN202210511832A CN115242369A CN 115242369 A CN115242369 A CN 115242369A CN 202210511832 A CN202210511832 A CN 202210511832A CN 115242369 A CN115242369 A CN 115242369A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- key
- user side
- aggregated
- supplementary
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 230000008569 process Effects 0.000 claims abstract description 52
- 238000012549 training Methods 0.000 claims abstract description 27
- 230000002776 aggregation Effects 0.000 claims abstract description 25
- 238000004220 aggregation Methods 0.000 claims abstract description 25
- 238000011084 recovery Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 11
- 230000004931 aggregating effect Effects 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 238000011410 subtraction method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012706 support-vector machine Methods 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000009434 installation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000006116 polymerization reaction Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 2
- 230000000379 polymerizing effect Effects 0.000 description 2
- 241000287196 Asthenes Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于多密钥同态加密的联邦学习隐私保护方法及其装置,包括:用户端采集数据,形成数据集,用户端获取第一密钥;用户端对预设的训练模型进行训练,先编码,再加密,得到密文,将密文发送至服务器;服务器检测密文是否丢失,如果丢失,生成补充密文,进行聚合;如果没有丢失,将密文进行聚合;在聚合的过程中,判断补充密文或密文的噪声预算是否充足,如果充足,将补充密文或密文继续进行聚合,得到聚合后的密文;如果不充足,对补充密文或密文进行噪声刷新,噪声刷新后,将补充密文或密文继续进行聚合,得到聚合后的密文;将聚合后的密文返回至用户端,用户端根据第一密钥解密。本申请通过以上加密过程,保证加密安全性和高效性。
Description
技术领域
本发明属于信息加密技术领域,具体涉及一种基于多密钥同态加密的联邦学习隐私保护方法及其装置。
背景技术
同态加密技术支持加密状态下的操作,诸如计算、搜索和分析,随着个人隐私信息的泄露,同态加密技术在当前变得越来越重要。
相关技术中,在数据共享中,采用的是基于传统加密技术的共享方法实现数据共享,每个数据分享机构采用传统的加密方法对待分享的数据进行加密,即直接对数据分享机构要分享的数据进行访问,然后再进行加密,加密后再传输,普遍存在加密效率低、安全性能差等缺点,影响数据共享的可靠性。
因此,亟需一种更安全、且更有效率的加密方法。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种基于多密钥同态加密的联邦学习隐私保护方法及其装置。本发明要解决的技术问题通过以下技术方案实现:
第一方面,本申请提供一种基于多密钥同态加密的联邦学习隐私保护方法,包括:
用户端采集数据,形成数据集,并且用户端从服务器获取第一密钥;
用户端使用数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用第一密钥进行加密,得到密文,并且将密文发送至服务器;
服务器检测密文是否丢失,如果丢失,则生成补充密文,并且将补充密文进行聚合;如果没有丢失,则将密文进行聚合;
在聚合的过程中,判断补充密文或密文的噪声预算是否充足,如果充足,则将补充密文或密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,噪声刷新后,将补充密文或密文继续进行聚合,得到聚合后的密文;
将聚合后的密文返回至用户端,用户端根据第一密钥进行解密。
第二方面,本申请还提供一种基于多密钥同态加密的联邦学习隐私保护装置,包括:
获取模块,用于用户端采集数据,形成数据集,并且用户端从服务器获取第一密钥;
训练模块,用于用户端使用数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用第一密钥进行加密,得到密文,并且将密文发送至服务器;
第一判断模块,用于服务器检测密文是否丢失,如果丢失,则生成补充密文,并且将补充密文进行聚合;如果没有丢失,则将密文进行聚合;
第二判断模块,用于在聚合的过程中,判断补充密文或密文的噪声预算是否充足,如果充足,则将补充密文或密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,噪声刷新后,将补充密文或密文继续进行聚合,得到聚合后的密文;
解密模块,用于将聚合后的密文返回至用户端,用户端根据第一密钥进行解密。
本发明的有益效果:
本发明提供的一种基于多密钥同态加密的联邦学习隐私保护方法及其装置,用户端采集数据,形成数据集,并且用户端获取第一密钥;根据数据集对预设的训练模型进行训练,并将训练好的模型编码及加密,获取密文,并将该密文发送至服务器;服务器还需要检测密文是否丢失,如果密文没有丢失,则将密文进行第聚合;如果密文已经丢失,则需要生成补充密文后再进行聚合;如此,在保持联邦学习鲁棒性的同态加密技术中,仍能够保证加密算法的正确性,即各个参与方仍能正确的恢复密文;在上述聚合的过程中,还需要判断补充密文与密文的噪声预算是否充足,如果充足,则将密文或补充密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,并且对刷新后的补充密文或密文继续进行聚合,得到聚合后的密文;其中,通过噪声刷新能够有效的提高同态加密的效率;将上述获取的聚合后的密文返回至用户端,用户端根据部分第一密钥进行解密;通过以上过程进行加密,能够保证加密的安全性和高效性。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的应用场景的一种示意图;
图2是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护方法的一种流程图;
图3是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护装置的一种结构示意图;
图4是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护方法的另一种流程图;
图5是本发明实施例提供的在服务器上部署可信执行环境的示意图;
图6是本发明实施例提供的神经网络的模型的一种结构示意图;
图7是本发明实施例提供的支持向量机的模型的一种结构示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
请参见图1所示,图1是本发明实施例提供的应用场景的一种示意图,该应用场景包括用户端101、服务器102和网络103;
其中,用户端101可以是硬件,也可以是软件;当用户端101为硬件时,可以是具有显示屏且支持与服务器102通信的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携式计算机和台式计算机等;当用户端101为软件时,可以安装在如上电子设备中;用户端101可以实现为多个软件或软件模块,也可以实现为单个软件或软件模块,本实施例中对此不作限定。进一步地,用户端101上可以安装有各种应用,例如数据处理应用、即时通信工具、社交平台软件、搜索类应用、购物类应用等。
服务器102可以是提供各种服务的服务器102,例如,对于其建立通信连接的用户端101发送的请求进行接收的后台服务器102,该后台服务器102可以对终端设备发送的请求进行接收和分析等处理,并生成处理结果;服务器102可以是一台服务器102,也可以是由若干台服务器102组成的服务器102集群,或者还可以是一个云计算服务中心,本实施例对此不作限定。
需要说明的是,服务器102可以是硬件,也可以是软件;当服务器102为硬件时,其可以是为用户端101提供各种服务的各种电子设备;当服务器102为软件时,可以是为用户端101提供各种服务的多个软件或软件模块,也可以是用户端101提供各种服务的单个软件或软件模块,本实施例对此不作限定。
网络103可以是采用同轴电缆、双绞线和光纤连接的有限网络103,也可以是无需布线就能实现各种通信设备互联的无限网络103,例如,蓝牙(Bluetooth)、近场通信(NearField Communication,NFC)、红外(Infrared)等,本实施例对此不作限定。
用户可以通过用户端101经由网络103与服务器102建立通信连接,以接收或发送信息等。具体的,用户数据集导入至用户端101,并根据数据集对预设的模型进行训练,并对训练好的模型编码及加密,得到密文,并将密文发送至服务器102,经过服务器102对密文进行再处理后,并发送至用户端101,用户对密文解密后即可。
需要说明的是,用户端101、服务器102和网络103的具体类型、数量和组合可以根据应用场景的实际需求进行调整,本实施例对此不作详细限定。
请参见图2,图2是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护方法的一种流程图,本申请所提供的一种基于多密钥同态加密的联邦学习隐私保护方法,包括:
S101、用户端101采集数据,形成数据集,并且用户端从服务器获取第一密钥;
S102、用户端使用数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用第一密钥进行加密,得到密文,并且将密文发送至服务器102;
S103、服务器102检测密文是否丢失,如果丢失,则生成补充密文,并且将补充密文进行聚合;如果没有丢失,则将密文进行聚合;
S104、在聚合的过程中,判断补充密文或密文的噪声预算是否充足,如果充足,则将补充密文或密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,噪声刷新后,将补充密文或密文继续进行聚合,得到聚合后的密文;
S105、将聚合后的密文返回至用户端101,用户端101根据第一密钥进行解密。
具体而言,请继续参考图2所示,本实施例中提供的基于多密钥同态加密的联邦学习隐私保护方法,采用多密钥同态加密,能够防止联邦学习中恶意参与方的攻击,实现加密安全性的基础上保持同态性质,同时还能够正确解密聚合密文。
相关技术中,目前有三类研究方向来保护联邦学习的隐私安全,1、密码学保护方案,使用加密技术来保护参数的传递过程;2、明文保护方案,使用差分隐私技术在明文中添加扰动以保护数据;3、可信执行环境技术,在服务器中创建安全隔离区域结合对称加密技术保护数据;但上述隐私安全的保护方式均存在一些问题,其中,密码学保护方案采用单密钥加密无法抵御恶意参与方,明文保护方案采用数据扰动影响加密准确率,此外,扰动容易被剔除,可信执行环境技术的部署成本较高,且运行内存有限。
有鉴于此,本实施例中通过以下步骤实现隐私保护。
S101、用户端101采集数据,并形成数据集,并且用户端从服务器102获取第一密钥,其中,数据集可以为图片、照片、文本、视频流或录音等等;第一密钥通过预置的密钥生成算法生成第一密钥,由服务器102生成,第一密钥包括多个密钥,可以为私密钥、公密钥以及恢复密钥;如此,可以采用多密钥的形式进行同态加密,能够有效防止联邦学习中恶意参与方攻击。
S102、用户端基于步骤S101获取的数据集,对预设的训练模型进行训练,,进一步对训练好的模型先编码,在使用第一密钥进行加密,得到密文,并将密文发送至服务器;其中,密文的获取,可以有效的防止数据集泄露出去,从而有效地保护用户的数据的安全性和隐私性;需要说明的是,预设的训练模型可以是神经网络模型,也可以为支持向量机模型,可以根据实际使用而定。
S103、通过上述步骤S102获取用户的密文后,服务器102还需要检测密文是否丢失,如果密文没有丢失,则将密文进行第聚合;如果密文已经丢失,则需要生成补充密文后再进行聚合;上述服务器102检测到密文丢失的情况下,会生成补充密文,也可以理解为此轮选取的用户是否都发送密文,都发送,则认为密文没有丢失;如此,在保持联邦学习鲁棒性的同态加密技术中,仍能够保证加密算法的正确性,即各个参与方仍能正确的恢复密文。
S104、在上述步骤S103中聚合的过程中,还需要判断补充密文与密文的噪声预算是否充足,如果充足,则将密文或补充密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,并且对刷新后的补充密文或密文继续进行聚合,得到聚合后的密文;其中,通过噪声刷新能够有效的提高同态加密的效率。
S105、将上述步骤S104获取的聚合后的密文返回至用户端101,用户端101根据部分第一密钥进行解密;可以理解的是,以上过程需进行多轮,每轮参与的用户端由服务器选取。
通过以上过程进行加密流程,能够保证加密的安全性和高效性。
在本申请的一种可选的实施例中,第一密钥包括私密钥、恢复密钥和公密钥;
私密钥是基于主密钥生成,具体过程为:
服务器为多个用户端101生成主密钥;
利用多项式加减法对多个用户端101的主密钥进行随机分割,以形成多个用户端101的私密钥;
恢复密钥是基于主密钥和私密钥生成,具体过程为:
利用每个用户端101的主密钥和私密钥为各用户端101生成恢复密钥。
具体而言,本实施例中,第一密钥包括私密钥、恢复密钥和公密钥,也可以理解为,本实施例中基于传统的多项式环上同态加密方案,结合多用户场景特点,采用多密钥同态加密算法,应用到联邦学习保护参数和聚合的过程;进一步地,本实施例中基于环上的带错学习问题(Ring Learning With Error,RLWE)生成多种密钥,分别为私密钥、恢复密钥和公密钥,具体为:
私密钥的生成skGen(secret)→[sk1,sk2,…,skn],利用多项式加减法规则对n个用户的主密钥进行分割,形成用户的私密钥,表达形式为:secret=s1+s2+…+sn,其中,s1,s2,…,sn分别为n个用户的主密钥,主密钥的系数可以为1或者0,将多个主密钥进行分割生成私密钥[sk1,sk2,…,skn],sk1=s1,sk2=s2,…,skn=sn,私密钥的表达形式与主密钥的表达形式相似,保证了加密的安全性。
恢复密钥的生成rkGen(secret,[sk1,sk2,…,skn])→[rk1,rk2,…,rkn],利用每个用户端101的主密钥和私密钥为各用户端101生成恢复密钥,其表达形式为:rk1=secret-sk1,rk2=secret-sk2,…,rkn=secret-skn,恢复密钥为[rk1,rk2,…,rk3],其中,secret为主密钥,ski为私密钥,rki为恢复密钥,n为用户端的数量。
公密钥的生成pkGen([sk1,sk2,…,skn],Rq,ξ)→[pk1,pk2,…,pkn],首先,在密文空间中随机选取元素,其表达式为:从高斯离散随机分布中取样ξ→ei,得到噪声ei,pki=(pki[0],pki[1])=([-(a·ski+ei)]q,a),并生成公密钥[pk1,pk2,…,pkn],其中,i为某个用户端,a为随机生成的多项式。
通过以上过程,首先获取整个系统的主密钥secret、私密钥ski、公密钥pki和恢复密钥rki;其次,再从系数取值为0或1的多项式环上随机选取元素,表达式为:将该元素作为加密参数u,利用可信执行环境SGX技术在中心服务器102(联邦学习中心聚合服务器102)中生成安全内存Enclave作为密钥生成机构,并为每个用户端101发送密钥组[ski,pki,rki,u]。
本实施例中采用多密钥同态加密的方式,能够有效防止联邦学习中恶意参与方的攻击,保证加密的可靠性。
在本申请的一种可选的实施例中,主密钥的获取方式为:
设置安全参数,根据安全参数获取多项式环;
在多项式环上随机选取一个元素,利用该元素生成主密钥。
具体而言,本实施例中详细描述主密钥的获取方式;
需要说明的是,本实施例中还定义了明文空间和密文空间,首先定义一个整数为模q,在多项式环R的基础上对其每个元素的系数进行模q运算得到多项式商环由此,规定密文空间为再选取一个远小于q的整数为模t,在多项式环R的基础上对其每个元素的系数进行模t运算得到多项式商环由此,规定明文空间为在整数上的离散高斯分布对每一个都分配一个与exp(-π|x|2/σ2)成正比的概率,使用离散高斯分布定义R分布ξ,从ξ中取样可以得到系数较小的多项式,并且属于多项式环R,其中,ξ为多项式商环商的离散高斯分布,为离散高斯分布。
在本申请的一种可选的实施例中,得到密文的具体过程为:
用户端101从离散高斯分布中随机采样多项式环中的两个噪声,结合公密钥进行加密,得到密文。
具体而言,本实施例中详细介绍得到密文的具体过程,该过程由用户端101执行,用户加密成功后将密文和用户标识[cti,IDi]发送至服务器102,其中,IDi为某用户端的密文,来进行联邦学习过程;首先,用户端101从离散高斯分布中随机采样多项式环中的两个噪声ξ→ei1,ei2,再结合公密钥pki对明文pti进行加密得到密文:
在本申请的一种可选的实施例中,将聚合后的密文返回至用户端101,用户端101根据第一密钥进行解密的具体过程为:
用户端101在接收聚合后的密文后,该用户端101使用自己的私密钥和恢复密钥对聚合后的密文进行解密。
具体而言,本实施例中详细介绍了将聚合后的密文返回至用户端101,用户端101根据第一密钥进行解密的具体过程,用户端101在接收到密文后,利用自己的私密钥和恢复密钥得到明文,其中,用户端101接收到得聚合后得密文为:
由于密文空间系数模远大于明文空间系数模,最后的结果中除了明文外其他的都为小数,对其进行四舍五入后即可消去,最终得到:
在本申请的一种可选的实施例中,补充密文的生成过程具体为:
针对丢失密文的用户端101,对每个用户端101从离散高斯分布中随机采样多项式环中的对应噪声,并结合各用户端101对应的密钥生成补充文件。
具体而言,本实施例中详细描述补充密文的生成过程,需要生成补充密文的前提是密文丢失,会导致解密失败,因此需要利用Enclave生成补充密文来保证解密的准确性;该过程在可信执行环境中进行,针对标识为IDj,…,IDk的用户端101生成补充密文,先从离散高斯分布中随机采样噪声ξ→ej1,…,ek1,该噪声结合公密钥[pkj,…,pkk]生成补充密文[ct'j,…,ct'k],其中,ct'j=([pkj[0]·u+ej1]q),获取补充密文,其中,补充密文由Enclave发送至外部服务器102做进一步运算;如此,通过补充密文保证密文缺失的情况下仍能正确解密密文。
在本申请的一种可选的实施例中,获取所述聚合后的密文的具体过程为:
用户端101传输对应的数据集大小至服务器102;
由服务器102生成影响因子,并将影响因子反馈给用户端101;
用户端101基于影响因子对其对应的训练模型进行加权计算,得到加权计算结果;
用户端101将加权计算结果编码为明文,并且用户端101将明文加密为密文传输至服务器102;
由服务器102对密文进行聚合,得到聚合后的密文。
具体而言,本实施例中详细描述获取聚合后的密文的具体过程,利用可信执行环境Enclave设计安全联邦平均聚合算法,通过以下过程说明;
用户端101将对应的数据集sizei发送至服务器102,服务器102接收到多个用户端101的数据集size1,size2,…,sizen,并为每个用户端101计算影响因子δi=Di,其中,
并将获取的影响因子发送至对应的用户端101;
用户端101利用基于获取的影响因子对其训练模型进行加权计算,得到加权计算的结果;即,用户端101利用训练模型得到本地模型更新,该模型表示为一系列参数W=[w1,w2,…,wm],将影响因子对该模型进行加权计算得到δ·W=[δ·w1,δ·w2,…,δ·wm],得到用户端101所要加密的信息message=δ·W,message为一个m维向量,数值类型为浮点数,将所要加密的信息message的第1,2,…,m维的数值先乘以缩放因子η,将所要加密的信息message的数值类型变为整数型,作为一元(m-1)次方程的系数,即为η·δ·w1·x0+η·δ·w2·x1+…+η·δ·wm·xm-1,则将所要加密的信息编码成可被加密成明文形式的过程为:
可选的,解码过程为上述过程逆过程;
用户端101将上述获取的明文加密为密文,并传输至服务器102,由服务器102对密文进行聚合,得到聚合后的密文。
在本申请的一种可选的实施例中,密文聚合的具体过程为:
密文包括第一部分和第二部分;
服务器102对用户端101的密文的第一部分进行聚合;得到聚合后的密文的第一部分;
服务器102将任意用户端101的密文的第二部分作为聚合后的密文的第二部分。
具体而言,本实施例中详细描述密文聚合的具体过程,服务器102接收到用户端101传输的密文后;首先,对各个密文的第一部分进行聚合,其表达式为:
在本申请的一种可选的实施例中,噪声刷新的具体过程为:
服务器102聚合至第k个密文时,如果噪声预算不足,则再次进行刷新所述密文,并且构建该用户端101获取的当前密文对应的临时的公密钥和私密钥;
使用临时的私密钥对密文解密后再重新选取处于安全范围内的噪声,并且使用临时公密钥重新加密,在进行解密时以消除噪声。
具体而言,本实施例中详细描述噪声刷新的具体过程,在聚合的过程中,当服务器102聚合至第k个密文时,如果噪声预算不足,则由Enclave来刷新密文,刷新时机可以根据实际应用情况确定,需要刷新的噪声会对解密造成影响,因此需要刷新噪声;服务器102将部分聚合密文以及当前密文所关联的用户端101的标识交给Enclave,Enclave根据聚合到一半的密文的标识来构建加解密的临时公密钥(pk1-k,sk1-k),使用临时公密钥对密文解密后再重新选取处于安全范围内的噪声,利用加密参数和临时公密钥重新加密,在解密的过程噪声即可消除,能够提高同态加密效率。
基于同一发明构思,请参见图3所示,图3是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护装置的一种结构示意图,本实施例所提供的的一种基于多密钥同态加密的联邦学习隐私保护装置,包括:
获取模块201,用于用户端101采集数据,形成数据集,并且用户端从服务器获取第一密钥;
训练模块202,用于用户端使用数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用第一密钥进行加密,得到密文,并且将密文发送至服务器102;
第一判断模块203,用于服务器102检测密文是否丢失,如果丢失,则生成补充密文,并且将补充密文进行聚合;如果没有丢失,则将密文进行聚合;
第二判断模块204,用于在聚合的过程中,判断补充密文或密文的噪声预算是否充足,如果充足,则将补充密文或密文继续进行聚合,得到聚合后的密文;如果不充足,则对补充密文或密文进行噪声刷新,噪声刷新后,将补充密文或密文继续进行聚合,得到聚合后的密文;
解密模块205,用于将聚合后的密文返回至用户端101,用户端101根据第一密钥进行解密。
具体而言,本实施例中通过获取模块201中用户端101采集数据,并形成数据集,并且用户端从服务器中获取第一密钥;训练模块202根据数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用所述第一密钥进行加密,得到密文,并将密文发送至服务器102;通过第一判断模块203,服务器102检测密文是否丢失,如果丢失,则生成补密文,如果没有丢失,则对密文进行聚合;通过第二判断模块204,判断聚合过程中,密文或补充密文的噪声是否充足,如果充足,则将补充密文或密文继续进行聚合,得到聚合后的密文,如果不充足,则对补充密文或密文进行噪声刷新,刷新后继续进行聚合,得到聚合后的密文;最后通过解密模块205对聚合后的密文进行解密,获取解密后的结果;并采用多轮进行加密;如此,采用多密钥同态加密,能够有效防止联邦学习中恶意参与方的攻击,实现加密安全性的基础上保持同态性质;此外,还能在用户端101掉线后,保证解密的准确性。
在本申请的一种可选的实施例中,通过以下内容来详细说明上述方法的实现流程,请参考图4~图6所示,图4是本发明实施例提供的基于多密钥同态加密的联邦学习隐私保护方法的另一种流程图,图5是本发明实施例提供的在服务器上部署可信执行环境的示意图,图6是本发明实施例提供的神经网络的模型的一种结构示意图;本实施例中基于多密钥同态加密的联邦学习隐私保护方法的过程包括:
系统初始化,在服务器102(ubuntu)中部署SGX环境,部署SGX环境可信执行环境的主要工作是下载并安装SGX和SDK,安装方式为源码安装,使用Makefile文件进行编译,安装完成后SGX驱动将可以正常使用;SGX程序的编写被划分为可信部分和不可信部分,不可信部分通过定义Ecall函数来调用可信部分的功能,可信部分通过定义Ocall函数来调用不可信部分的功能;SGX程序的主体主要由两个文件夹App和Enclave组成,App实现程序的不可信部分,Enclave实现程序的可信部分;其中,Ecall和Ocall函数需要声明在Enclave.edl文件内才可以被使用;SGX通过在内存中划分安全区域来实现隔离,在使用之前需要对安全内存进行验证。
本实施例在ubuntu下使用cmake工具来编译并链接SGX程序,首先根据实际编译情况编写CMakeLists.txt文件,设置编译选项,头文件搜索路径,库文件路径等;使用cmake根据CMakeLists.txt文件生成Makefile文件;使用make根据Makefile文件对源代码进行编译并链接,形成可执行文件,经过上述步骤即可在服务器102上成功部署可信执行环境;服务器102进程首先与各个用户进行通信,确定用户数量,调用安全Ecall函数在Enclave中生成用户所需密钥,并在Enclave中将用户所需的密钥组通过安全信道发送给用户。
用户端101本地模型训练,用户端101在本地数据集为28*28像素点的图片,使用训练集来不断优化神经网络103模型,最终达到拟合的效果,可以在十个类别中确定目标图片的类别,图片的显示由像素点呈现,一幅图片可以由一组像素值来代表;将图片输入到神经网络103模型的形式为784个数值,在输入到输入层之前需要进行数据预处理,处理方式为归一化,需要将每一个数值映射到0-1空间,数据类型为floate32。
从输入层到隐含层之间需要根据连线权重进行计算,最终得到隐含层节点的数值;根据相同的方法,从隐含层到输出层进行权重计算,可以得到最终输出层节点的数值;其中,输出层的最大数值即为在当前参数(权重)下计算出的类别;选取真正样本类别与计算结果之间的差值作为损失函数,并利用随机梯度下降算法对其进行优化,不断缩小真实类别与计算结果之间的差值,最终确定的一组参数(权重)值即为模型。
模型编码及加密,神经网络103中的各层节点之间的连线权重的数值即为模型,在特定数值下能够接收输入并产生合理的输出;用户所需编码及加密的内容为权重的数值,其数据类型为floate32,用户首先将其需要转换到整数空间,需要对模型的数值进行放大,即进行编码及加密。
安全聚合,服务器102在接收到用户端101传输的密文后,对用户掉线情况进行检测,如果没有用户掉线,则对密文进行聚合。如有用户掉线,则执行可信部分的补充密文生成算法,该算法函数在Enclave中运行,补充密文生成之后被发送到服务器102程序。
在密文聚合过程中,需检测密文噪声状态,在密文噪声预算不足的时候需要进行噪声刷新,噪声刷新算法在Enclave中运行;
将刷新后的密文或补充密文继续进行聚合,获取聚合后的密文,并对该聚合后的密文进行解密,获取解密后的结果。
请参考图7所示,图7是本发明实施例提供的支持向量机的模型的一种结构示意图,在本申请的一种可选的实施例中,用户端101本地模型训练,还可以采用支持向量机进行,用户端101利用本地数据集训练支持向量机模型,该模型为一种二分类模型,以二维空间为例,二维空间对应的样本有两个特征,相应的只需要直线即可将样本分类;当样本有三个特征时,所对应的样本空间为三维,需要平面将其分类,向量维数也相应增多,实际应用中样本特征数很多,相对应的是高维空间,需使用超平面对样本进行划分,最终的模型参数即为定义了能将样本进行分类的超平面;如此,采用支持向量机也可获取训练模型。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,包括:
用户端采集数据,形成数据集,并且所述用户端从服务器获取第一密钥;
所述用户端使用所述数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用所述第一密钥进行加密,得到密文,并且将所述密文发送至服务器;
所述服务器检测所述密文是否丢失,如果丢失,则生成补充密文,并且将所述补充密文进行聚合;如果没有丢失,则将所述密文进行聚合;
在聚合的过程中,判断所述补充密文或所述密文的噪声预算是否充足,如果充足,则将所述补充密文或所述密文继续进行聚合,得到聚合后的密文;如果不充足,则对所述补充密文或所述密文进行噪声刷新,噪声刷新后,将所述补充密文或所述密文继续进行聚合,得到聚合后的密文;
将所述聚合后的密文返回至所述用户端,所述用户端根据所述第一密钥进行解密。
2.根据权利要求1所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述第一密钥包括私密钥、恢复密钥和公密钥;
所述私密钥是基于主密钥生成,具体过程为:
所述服务器为多个所述用户端生成主密钥;
利用多项式加减法对多个所述用户端的主密钥进行随机分割,以形成多个所述用户端的所述私密钥;
所述恢复密钥是基于所述主密钥和所述私密钥生成,具体过程为:
利用每个所述用户端的所述主密钥和所述私密钥为各所述用户端生成恢复密钥。
3.根据权利要求2所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述主密钥的获取方式为:
设置安全参数,根据所述安全参数获取多项式环;
在所述多项式环上随机选取一个元素,利用该元素生成主密钥。
4.根据权利要求3所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述得到密文的具体过程为:
所述用户端从离散高斯分布中随机采样所述多项式环中的两个噪声,结合所述公密钥进行加密,得到密文。
5.根据权利要求2所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述将所述聚合后的密文返回至所述用户端,所述用户端根据所述第一密钥进行解密的具体过程为:
所述用户端在接收所述聚合后的密文后,该所述用户端使用自己的所述私密钥和所述恢复密钥对所述聚合后的密文进行解密。
6.根据权利要求1所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述补充密文的生成过程具体为:
针对丢失所述密文的所述用户端,对每个所述用户端从离散高斯分布中随机采样多项式环中的对应噪声,并结合各所述用户端对应的所述密钥生成所述补充文件。
7.根据权利要求1所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述获取所述聚合后的密文的具体过程为:
所述用户端传输对应的所述数据集大小至所述服务器;
由所述服务器生成影响因子,并将所述影响因子反馈给所述用户端;
所述用户端基于所述影响因子对其对应的所述训练模型进行加权计算,得到加权计算结果;
所述用户端将所述加权计算结果编码为明文,并且所述用户端将所述明文加密为所述密文传输至所述服务器;
由所述服务器对所述密文进行聚合,得到所述聚合后的密文。
8.根据权利要求1所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述密文聚合的具体过程为:
所述密文包括第一部分和第二部分;
所述服务器对所述用户端的所述密文的第一部分进行聚合;得到所述聚合后的密文的第一部分;
所述服务器将任意所述用户端的所述密文的第二部分作为所述聚合后的密文的第二部分。
9.根据权利要求1所述的基于多密钥同态加密的联邦学习隐私保护方法,其特征在于,所述噪声刷新的具体过程为:
所述服务器聚合至第k个所述密文时,如果噪声预算不足,则再次进行刷新所述密文,并且构建该所述用户端获取的当前所述密文对应的临时的所述公密钥和所述私密钥;
使用临时的所述私密钥对所述密文解密后再重新选取处于安全范围内的噪声,并且使用临时公密钥重新加密,在进行解密时以消除噪声。
10.一种基于多密钥同态加密的联邦学习隐私保护装置,其特征在于,包括:
获取模块,用于用户端采集数据,形成数据集,并且所述用户端从服务器获取第一密钥;
训练模块,用于所述用户端使用所述数据集对预设的训练模型进行训练,对训练好的模型先编码,再利用所述第一密钥进行加密,得到密文,并且将所述密文发送至服务器;
第一判断模块,用于所述服务器检测所述密文是否丢失,如果丢失,则生成补充密文,并且将所述补充密文进行聚合;如果没有丢失,则将所述密文进行聚合;
第二判断模块,用于在聚合的过程中,判断所述补充密文或所述密文的噪声预算是否充足,如果充足,则将所述补充密文或所述密文继续进行聚合,得到聚合后的密文;如果不充足,则对所述补充密文或所述密文进行噪声刷新,噪声刷新后,将所述补充密文或所述密文继续进行聚合,得到聚合后的密文;
解密模块,用于将所述聚合后的密文返回至所述用户端,所述用户端根据所述第一密钥进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210511832.4A CN115242369B (zh) | 2022-05-11 | 2022-05-11 | 基于多密钥同态加密的联邦学习隐私保护方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210511832.4A CN115242369B (zh) | 2022-05-11 | 2022-05-11 | 基于多密钥同态加密的联邦学习隐私保护方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115242369A true CN115242369A (zh) | 2022-10-25 |
CN115242369B CN115242369B (zh) | 2024-06-25 |
Family
ID=83668079
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210511832.4A Active CN115242369B (zh) | 2022-05-11 | 2022-05-11 | 基于多密钥同态加密的联邦学习隐私保护方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115242369B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117395083A (zh) * | 2023-12-11 | 2024-01-12 | 东信和平科技股份有限公司 | 基于联邦学习的数据保护方法及系统 |
CN117640066A (zh) * | 2024-01-26 | 2024-03-01 | 北京隐算科技有限公司 | 一种基于同态加密的多用户联合加解密方法 |
CN117811722A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113037460A (zh) * | 2021-03-03 | 2021-06-25 | 北京工业大学 | 基于同态加密和秘密共享的联邦学习隐私保护方法 |
CN113553610A (zh) * | 2021-09-22 | 2021-10-26 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于同态加密和可信硬件的多方隐私保护机器学习方法 |
US20220014351A1 (en) * | 2020-07-07 | 2022-01-13 | Samsung Electronics Co., Ltd. | Electronic device using homomorphic encryption and encrypted data processing method thereof |
-
2022
- 2022-05-11 CN CN202210511832.4A patent/CN115242369B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220014351A1 (en) * | 2020-07-07 | 2022-01-13 | Samsung Electronics Co., Ltd. | Electronic device using homomorphic encryption and encrypted data processing method thereof |
CN113037460A (zh) * | 2021-03-03 | 2021-06-25 | 北京工业大学 | 基于同态加密和秘密共享的联邦学习隐私保护方法 |
CN113553610A (zh) * | 2021-09-22 | 2021-10-26 | 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) | 基于同态加密和可信硬件的多方隐私保护机器学习方法 |
Non-Patent Citations (2)
Title |
---|
ABBASS MADI等: "A Secure Federated Learning framework using Homomorphic Encryption and Verifiable Computing", 《2021 RECONCILING DATA ANALYTICS, AUTOMATION, PRIVACY, AND SECURITY: A BIG DATA CHALLENGE (RDAAPS)》, 14 June 2021 (2021-06-14) * |
梁亚楠: "基于同态加密的联邦学习方案研究", 《智能城市》, 25 March 2022 (2022-03-25) * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117395083A (zh) * | 2023-12-11 | 2024-01-12 | 东信和平科技股份有限公司 | 基于联邦学习的数据保护方法及系统 |
CN117395083B (zh) * | 2023-12-11 | 2024-03-19 | 东信和平科技股份有限公司 | 基于联邦学习的数据保护方法及系统 |
CN117640066A (zh) * | 2024-01-26 | 2024-03-01 | 北京隐算科技有限公司 | 一种基于同态加密的多用户联合加解密方法 |
CN117640066B (zh) * | 2024-01-26 | 2024-04-05 | 北京隐算科技有限公司 | 一种基于同态加密的多用户联合加解密方法 |
CN117811722A (zh) * | 2024-03-01 | 2024-04-02 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
CN117811722B (zh) * | 2024-03-01 | 2024-05-24 | 山东云海国创云计算装备产业创新中心有限公司 | 全局参数模型构建方法、秘钥生成方法、装置及服务器 |
Also Published As
Publication number | Publication date |
---|---|
CN115242369B (zh) | 2024-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | Quantum cryptography for the future internet and the security analysis | |
CN113364576B (zh) | 一种基于区块链的数据加密存证与共享方法 | |
CN115242369B (zh) | 基于多密钥同态加密的联邦学习隐私保护方法及其装置 | |
CN107483212A (zh) | 一种双方协作生成数字签名的方法 | |
Hassan et al. | An efficient outsourced privacy preserving machine learning scheme with public verifiability | |
CN110880972A (zh) | 一种基于安全多方计算的区块链密钥管理系统 | |
CN113498602B (zh) | 防止欺诈的计算机实现的方法、存储介质、设备及系统 | |
CN104836657B (zh) | 一种具有高效解密特性的基于身份匿名广播加密方法 | |
Omolara et al. | A deception model robust to eavesdropping over communication for social network systems | |
CN110610105A (zh) | 一种云环境下基于秘密共享的三维模型文件的认证方法 | |
CN113141247B (zh) | 一种同态加密方法、装置、系统及可读存储介质 | |
CN114223175A (zh) | 在防止获取或操控时间数据的同时生成网络数据的序列 | |
WO2012147001A1 (en) | Data encryption | |
CN116090009A (zh) | 数据处理方法、装置、电子设备和可读存储介质 | |
CN113518992B (zh) | 使用多个聚合服务器防止数据操作 | |
Zhang et al. | Efficient secret image sharing scheme with authentication and cheating prevention | |
CN116822661B (zh) | 基于双服务器架构的隐私保护可验证联邦学习方法 | |
CN117675210A (zh) | 一种基于格的安全计算两方持有向量的内积的方法 | |
CN116743713B (zh) | 基于物联网的远程在线无纸会议方法、装置 | |
Zhou et al. | A survey of security aggregation | |
CN110932863A (zh) | 一种基于编码的广义签密方法 | |
US11727125B2 (en) | Emergent language based data encryption | |
CN114221753A (zh) | 密钥数据处理方法和电子设备 | |
Joseph et al. | Design a hybrid Optimization and Homomorphic Encryption for Securing Data in a Cloud Environment | |
Bhowmik et al. | An approach of secret sharing technique based on convolution neural network and DNA sequence for data security in wireless communication |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |