CN113360927A - 一种数据共享的两阶段隐私保护方法 - Google Patents
一种数据共享的两阶段隐私保护方法 Download PDFInfo
- Publication number
- CN113360927A CN113360927A CN202110659713.9A CN202110659713A CN113360927A CN 113360927 A CN113360927 A CN 113360927A CN 202110659713 A CN202110659713 A CN 202110659713A CN 113360927 A CN113360927 A CN 113360927A
- Authority
- CN
- China
- Prior art keywords
- data
- central server
- client
- stage
- privacy protection
- 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 29
- 238000012549 training Methods 0.000 claims abstract description 20
- 230000002776 aggregation Effects 0.000 claims description 11
- 238000004220 aggregation Methods 0.000 claims description 11
- 238000012795 verification Methods 0.000 claims description 6
- 238000003062 neural network model Methods 0.000 claims description 4
- 230000004931 aggregating effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013136 deep learning model Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种数据共享的两阶段隐私保护方法,首先进行分布式训练初始化,初始化后,在客户端将数据上传到中心服务器,采用多对一同态加密对上传数据进行加密保护。各个客户端使用中心服务器的公钥进行加密,中心服务器对从客户端接受到的全部加密数据安全聚合和解密,在中心服务器将数据发送到各个客户端的阶段,采用一种一对多的零知识签名。首先,随机生成加密数据块,原始数据通过散列函数得到散列值。其次,中心服务器利用私钥和散列值生成签名。最后,客户端验证数据正确性。从而确保数据的完整性和正确性。经过多轮迭代,输出最终模型。本发明能够有效的根据不同阶段的实际隐私保护目的进行具体保护,且能够显著减少时间花销。
Description
技术领域
本发明涉及分布训练过程中的数据隐私保护方法,尤其涉及一种数据共享的两阶段隐私保护方法。
背景技术
随着《通用数据保护条例》(GDPR)的出台,工业界和学术界开始更加关注数据隐私保护。尤其在分布式训练过程中,客户端和中心服务器共享的数据可能会被泄露,从而导致不必要的经济损失。为了解决这个问题,国内外研究学者在分布式训练过程中涉及的数据泄露问题也提出了很多解决方案。差分隐私、安全多方计算技术和同态加密是广泛采用的严格隐私概念。然而,在实际系统中应用这些方案并不容易。
此外,现存方法通常向数据中添加噪声使得数据模糊化,以此保护数据。但是,随着噪声被添加,数据质量也会随之降低。由于深度学习模型的复杂计算,这些方法难以在深度学习中扩展。并且,大多数方案使用相同的方法来加密不同阶段的数据。其结果并不满足不同阶段的具体需求。例如:在客户端将数据上传到中心服务器阶段,此阶段的保护目的是,确保其数据不被其他非授权通信方获取。在客户端将数据从中心服务器下载的阶段,此阶段的目的是,确保下载数据在传输过程中有没有被第三方更改,同时接受方可判断收到的数据是否已被修改。此外,这些方案需要管理大量的密钥。它们局限性大,时间开销大,效率低。
发明内容
发明目的:本发明针对分布式训练过程中数据隐私保护问题,提供一种数据共享的两阶段隐私保护方法,能够有效的针对不同阶段的实际情况进行数据保护,确保各客户端接受到的数据的完整性和正确性。
技术方案:本发明所述的一种数据共享的两阶段隐私保护方法。具体步骤如下:
(1)分布式训练初始化阶段:中心服务器生成初始模型和密钥对,所述密钥对包括公钥和私钥,向各客户端分发初始模型和公钥,中心服务器保存私钥;
(2)数据上传阶段:初始化后,每个客户端在本地训练初始模型,并将训练好的数据上传到中心服务器;所述客户端在将数据上传到中心服务器之前,使用中心服务器的公钥执行多对一同态加密;
(3)数据安全聚合阶段:中心服务器接受到客户端上传的所有加密数据之后,对所有数据进行聚合和解密;
(4)数据下载阶段:采用数字签名进行数据保护,中心服务器生成签名后,将签名与数据一起发送给每个客户端;
(5)客户端进行新一轮训练;经过多轮迭代,输出最终模型。
进一步的,在分布式训练初始化阶段,中心服务器通过从模型提供者下载初始模型或从可信客户端收集数据集来训练初始模型。所述初始模型为神经网络模型。
具体的,在数据上传阶段中,所述多对一同态加密的具体内容为:
假设有n个客户端,客户端i上传的数据为wi,i=1,2,3…n;
具体的,所述数据安全聚合阶段具体包括如下内容:
进一步优选的,在数据下载阶段,还包括客户端验证数据是否正确的步骤,当数据验证正确时,数据被视为可信和完整的,开始下一轮培训;反之则丢弃数据。
具体的,所述数据下载阶段中,采用一对多零知识数字签名进行数据保护,具体包括如下内容:
S2:随机生成若干数据块,所述数据块中包含一个一元二次方程的系数和根;用散列数据H作为密钥对数据块进行加密,得到加密数据;
S3:用私钥sk对步骤S2获取的加密数据再次加密,生成双重加密数据;
S4:双重加密数据作为零知识签名与数据wsum一起下发到各个客户端;
S5:客户端收到所述零知识签名与数据wsum后,进行数据正确性验证操作。所述验证操作为:
S51:提取零知识签名和数据wsum;
S52:使用公钥pk解密零知识签名,得到H′;
S53:采用和步骤S1相同的方式,对数据wsum进行散列,得到散列数据H″;
S54将散列数据H″作为密钥对解密之后的零知识签名H′再次解密;
S55:按照给定的格式提取一元二次方程的系数和根,检查根的正确性,如果正确,则下载的内容是真实和完整的,否则将数据丢弃;
S56:客户端使用最新接收的数据结合本地数据执行新一轮的训练;多轮迭代训练后,输出最终模型。
有益效果:本发明与现有技术相比具有以下显著优点:
本发明针对分布式训练中多个客户端和中心服务器之间的数据共享过程所存在隐私保护的问题。在客户端向中心服务器上传数据阶段,采用多对一同态加密,对上传数据进行加密保护,确保中心服务器接收到的数据不会泄露,从而提高数据整合的准确率。在中心服务器将更新之后的数据下发到各个客户端阶段,采用一对多零知识签名,对下发数据进行保护,确保数据的完整性和不可逆性。本发明既保护了不同阶段的数据,同时与现有技术相比,能够显著减少时间花销。
附图说明
图1为一种数据共享两阶段隐私保护的场景图;
图2为一种数据共享两阶段隐私保护方法的流程示意图;
图3为一对多零知识签名中的三个块的示意图。
具体实施方式
下面结合附图和具体实施例,详细阐明本发明的技术方案。
图1为本发明一种实施例中的数据共享两阶段隐私保护的场景图。
在分布式训练过程中,存在一个中心服务器和多个客户端进行数据共享。中心服务器可以执行数据聚合,签名和解密。客户端可以执行加密和解密。多个客户端将参数上传到中心服务器为上传阶段,该上传阶段采用多对一同态加密进行数据保护。客户端从中心服务器下载更新的参数为下载阶段,该下载阶段采用一对多零知识签名进行数据保护。
图2为本发明一种实施例的方法流程示意图,具体包括如下四个阶段:
一、分布式训练初始化阶段:
中心服务器生成加密的密钥对(公钥pk和私钥sk),将私钥sk留在本地,将公钥pk发送给每个客户端;中心服务器通过从模型提供者下载初始模型或从可信客户端收集数据集来训练初始模型,初始模型被发送到客户端,客户端根据初始模型获取当前迭代的轮数epoch。本实施例中,初始模型采用神经网络模型。
二、数据上传阶段:
初始化后,每个客户端在本地训练神经网络模型。注意,模型攻击者可能通过共享数据推断客户端本地数据。因此,每个客户端在将共享数据上传到聚合服务器进行安全聚合之前,执行多对一同态加密,多对一同态加密包含多个加密方Pi(i=1,2,3…n)和一个解密方P(对应于本发明的n个客户端和一个中心服务器)。根据DGHv方案生成 P的公共pk密钥和秘密密钥sk。
假设有n个客户端,客户端i上传的数据为wi(i=1,2,3…n);
三、数据安全聚合阶段:
四、数据下载阶段:
中心服务器将数据wsum通过一对多零知识签名保护下发到各个客户端,此阶段数据由数字签名保护,中心服务器生成签名后,将签名与数据wsum一起发送给每个客户端。
优选的,本实施例采用一对多零知识数字签名,具体实现方式如下:
(1)随机生成三个64位整数。这三个被称为a,b和c的数字是一个二次方程的系数,这个方程的根也分别用64位表示,表示为r1和r2。
附加到数据wsum的签名的大小有三个块的长度,如图3所示。每个数据块大小为128位,a和b组成第一个块,c和r1组成第二个块,r2和固定位组成第三个块,a、b、 c、r1、r2的值将由前两个块和第三个块的前64位表示,第三个块的最后64位将用1 填充,后面是63个0。在不同块大小的情况下,第一个64*5位之后的位将是1,然后是全0。
在计算出a、b、c、r1和r2的值并且3个数据块以上述格式准备好之后,在中心服务器执行以下步骤来签名数据:
(2)可变长度数据wsum作为输入被给予散列函数,从而产生被称为散列值的固定长度输出H。
(3)然后散列值H被用作密钥来加密上面创建的3个数据块。
(4)使用中心服务器的密钥sk对步骤(3)获取的加密数据再次加密,生成双重加密数据,从而确保身份验证并增加第二级安全性,以确保发送数据的完整性。
(5)双重加密数据作为零知识数字签名,与解密数据wsum一起发送到每个客户端。
(6)各客户端收到实际数据和零知识数字签名,执行验证步骤:
(61)从接收的消息中提取零知识数字签名和实际数据。
(62)然后使用中心服务器的公钥pk对接收到的零知识数字签名解密,得到加密值H′。
(63)针对提取的实际数据,使用和步骤(2)相同的方法进行散列,假设收到的哈希值表示为H″。
(64)使用H″作为解密密钥,对步骤(62)的加密值H′进行解密。
(65)检查数据的格式是否正确。64*5位后的数据应为1,后跟全0。如果格式不正确,则丢弃数据,否则转到步骤6)。
(66)按照给定的格式提取a′、b′、c′、r1′和r2′的值,并将检查这些值的正确性;在各个客户端检查r1′和r2′是否是以a′,b′,c′为系数的二次方程的正确根。
(67)如果在步骤(66)中值是正确的,数据将被视为可信和完整的,否则将被丢弃。
经过多轮迭代,输出最终模型。
Claims (8)
1.一种数据共享的两阶段隐私保护方法,针对一个中心服务器和多个客户端进行数据共享;其特征在于,包括如下步骤:
(1)分布式训练初始化阶段:中心服务器生成初始模型和密钥对,所述密钥对包括公钥和私钥,向各客户端分发初始模型和公钥,中心服务器保存私钥;
(2)数据上传阶段:初始化后,每个客户端在本地训练初始模型,并将训练好的数据上传到中心服务器;所述客户端在将数据上传到中心服务器之前,使用中心服务器的公钥执行多对一同态加密;
(3)数据安全聚合阶段:中心服务器接受到客户端上传的所有加密数据之后,对所有数据进行聚合和解密;
(4)数据下载阶段:采用数字签名进行数据保护,中心服务器生成签名后,将签名与数据一起发送给每个客户端;
(5)客户端进行新一轮训练;经过多轮迭代,输出最终模型。
2.根据权利要求1所述的一种数据共享的两阶段隐私保护方法,其特征在于,在分布式训练初始化阶段,中心服务器通过从模型提供者下载初始模型或从可信客户端收集数据集来训练初始模型。
3.根据权利要求2所述的一种数据共享的两阶段隐私保护方法,其特征在于,所述初始模型为神经网络模型。
6.根据权利要求1所述的一种数据共享的两阶段隐私保护方法,其特征在于,在数据下载阶段,还包括客户端验证数据是否正确的步骤,当数据验证正确时,数据被视为可信和完整的,开始下一轮培训;反之则丢弃数据。
8.根据权利要求7所述的一种数据共享的两阶段隐私保护方法,其特征在于,所述验证操作为:
S51:提取零知识签名和数据wsum;
S52:使用公钥pk解密零知识签名,得到H′;
S53:采用和步骤S1相同的方式,对数据wsum进行散列,得到散列数据H″;
S54将散列数据H″作为密钥对解密之后的零知识签名H′再次解密;
S55:按照给定的格式提取一元二次方程的系数和根,检查根的正确性,如果正确,则下载的内容是真实和完整的,否则将数据丢弃;
S56:客户端使用最新接收的数据结合本地数据执行新一轮的训练;多轮迭代训练后,输出最终模型。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659713.9A CN113360927B (zh) | 2021-06-15 | 2021-06-15 | 一种数据共享的两阶段隐私保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659713.9A CN113360927B (zh) | 2021-06-15 | 2021-06-15 | 一种数据共享的两阶段隐私保护方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113360927A true CN113360927A (zh) | 2021-09-07 |
CN113360927B CN113360927B (zh) | 2023-03-31 |
Family
ID=77534178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110659713.9A Active CN113360927B (zh) | 2021-06-15 | 2021-06-15 | 一种数据共享的两阶段隐私保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113360927B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
CN110719158A (zh) * | 2019-09-11 | 2020-01-21 | 南京航空航天大学 | 基于联合学习的边缘计算隐私保护系统及保护方法 |
CN111563265A (zh) * | 2020-04-27 | 2020-08-21 | 电子科技大学 | 一种基于隐私保护的分布式深度学习方法 |
-
2021
- 2021-06-15 CN CN202110659713.9A patent/CN113360927B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108712260A (zh) * | 2018-05-09 | 2018-10-26 | 曲阜师范大学 | 云环境下保护隐私的多方深度学习计算代理方法 |
CN110719158A (zh) * | 2019-09-11 | 2020-01-21 | 南京航空航天大学 | 基于联合学习的边缘计算隐私保护系统及保护方法 |
CN111563265A (zh) * | 2020-04-27 | 2020-08-21 | 电子科技大学 | 一种基于隐私保护的分布式深度学习方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113360927B (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110213042B (zh) | 一种基于无证书代理重加密的云数据去重方法 | |
CN108292402B (zh) | 用于信息的安全交换的公共秘密的确定和层级确定性密钥 | |
CN107800688B (zh) | 一种基于收敛加密的云端数据去重和完整性审计方法 | |
CN107395368B (zh) | 无介质环境中的数字签名方法及解封装方法与解密方法 | |
CN110113155B (zh) | 一种高效无证书公钥加密方法 | |
CN112199649A (zh) | 基于区块链的移动边缘计算下的匿名身份验证方法 | |
CN105978695A (zh) | 一种用于云存储数据的批量自审计方法 | |
CN108712259B (zh) | 基于身份的可代理上传数据的云存储高效审计方法 | |
CN110650017A (zh) | 无双线性配对多消息多接收者签密方法、物联网通信系统 | |
CN103414559B (zh) | 一种云计算环境下的基于类ibe系统的身份认证方法 | |
CN115442050B (zh) | 一种基于sm9算法的隐私保护的联邦学习方法 | |
CN109995509A (zh) | 基于消息恢复签名的认证密钥交换方法 | |
CN109951276B (zh) | 基于tpm的嵌入式设备远程身份认证方法 | |
CN106878322B (zh) | 一种基于属性的定长密文与密钥的加密、解密方法 | |
CN111786786A (zh) | 云计算环境下支持等式判定的代理重加密方法及系统 | |
CN108985102A (zh) | 数据完整性验证方法、装置、系统及存储介质 | |
CN114338648B (zh) | 一种基于国密算法的sftp多端文件安全传输的方法及系统 | |
CN117216805A (zh) | 一种适用于联邦学习场景中抵御拜占庭攻击的数据完整性审计方法 | |
CN104753947A (zh) | 一种固定密文长度的可验证外包解密的属性基系统及方法 | |
CN104780051A (zh) | 针对sm2公钥密码加密算法的侧信道攻击的方法 | |
WO2021206727A1 (en) | Neural networks | |
CN108306737A (zh) | 一种以太坊密码算法国产化的方法 | |
CN104618098A (zh) | 一种集合成员关系判定的密码学构造方法及系统 | |
CN111865578A (zh) | 一种基于sm2的多接收方公钥加密方法 | |
CN111565108A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |