CN115632761A - 基于秘密共享的多用户分布式隐私保护回归方法及装置 - Google Patents
基于秘密共享的多用户分布式隐私保护回归方法及装置 Download PDFInfo
- Publication number
- CN115632761A CN115632761A CN202211038350.8A CN202211038350A CN115632761A CN 115632761 A CN115632761 A CN 115632761A CN 202211038350 A CN202211038350 A CN 202211038350A CN 115632761 A CN115632761 A CN 115632761A
- Authority
- CN
- China
- Prior art keywords
- secret
- data
- server
- model parameters
- model
- 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 66
- 238000012549 training Methods 0.000 claims abstract description 27
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 239000000654 additive Substances 0.000 claims abstract description 8
- 230000000996 additive effect Effects 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 28
- 239000013598 vector Substances 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 15
- 238000007477 logistic regression Methods 0.000 claims description 13
- 239000011159 matrix material Substances 0.000 claims description 13
- 230000004913 activation Effects 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 abstract description 8
- 230000003993 interaction Effects 0.000 abstract description 4
- 238000012417 linear regression Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000000586 desensitisation Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
-
- 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
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Storage Device Security (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于秘密共享的多用户分布式隐私保护回归方法及装置,方法包括下述步骤:数据提供方C1,C2,...,Cn分别将各自的隐私数据(x1,y1),(x2,y2),...,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。本发明在保证较高安全性的同时,以较低通信代价和较少交互次数完成模型训练任务。
Description
技术领域
本发明属于隐私保护的技术领域,具体涉及一种基于秘密共享的多用户分布式隐私保护回归方法及装置。
背景技术
在分布式机器学习的场景中,多个互不信任的数据拥有方想要基于自己的输入完成模型训练和预测任务,并保证自己输入数据、输出结果的隐私性。目前,在隐私保护机器学习的实现方案中,基于密码学的方法是十分重要的一类方法,根据使用的方法主要分为以下几类:
(a)差分隐私方法:数据拥有方通过添加噪声等信息脱敏手段对数据处理,然后基于脱敏数据进行机器学习的模型训练和预测。但是,差分隐私方法无法同时保证强安全性和高准确率,由于差分隐私方法关键在于数据脱敏程度,比如加入的噪声过小会导致数据无法保证隐私,而加入噪声过大又会影响模型的准确率,二者难以平衡。
(b)同态加密方法:数据拥有方首先对数据进行加密得到密文数据,然后直接基于密文数据进行机器学习的计算,并保证得到的结果经过解密后与在明文下的计算结果一致。但是同态加密方法的计算量大,因为数据以密文形式表示时,数据量比以明文形式的更大,当直接在密文数据上进行计算时,其计算量很大。
(c)混淆电路方法:数据拥有方将自己的数据输入到一个由混淆电路技术实现的安全计算协议中,从而来执行机器学习的计算并得到想要的输出结果,安全计算协议保证数据的隐私性和结果的正确性。但是,混淆电路方法中数据拥有方的总通信量大,混淆电路方法的在线阶段需要大量交互混淆表等信息,从而使得总通信代价很大,计算效率较低。
因此针对上述隐私保护机器学习实现方法的安全性和计算效率问题,本发明提出一种基于秘密共享方法的隐私保护回归方案,在保证较高安全性的同时,以较低通信代价和较少交互次数完成模型训练任务。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种基于秘密共享的多用户分布式隐私保护回归方法及装置,在保证较高安全性的同时,以较低通信代价和较少交互次数完成模型训练任务。
为了达到上述目的,本发明采用以下技术方案:
本发明一方面提供了一种基于秘密共享的多用户分布式隐私保护回归方法,包括下述步骤:
在数据秘密分发阶段,n个数据提供方C1,C2,…,Cn分别将各自的隐私数据特征及其标签(x1,y1),(x2,y2),…,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
作为优选的技术方案,在数据秘密分发阶段,对于数据提供方Ci而言,Ci选择随机数rx,ry,然后将(xi-rx,yi-ry)发送给S0,将(rx,ry)发送给S1,其中xi-rx,rx称为数据xi的秘密份额,yi-ry,ry称为数据yi的秘密份额,用<·>表示秘密份额,因此有秘密份额<xi>0=xi-rx,<yi>0=yi-ry,和<xi>1=rx,<yi>1=ry,其中下标0表示秘密份额在S0手中,下标1表示秘密份额在S1手中。
作为优选的技术方案,S0统一将数据特征的秘密份额记作<X>0=(<x1>0,<x2>0,...,<xn>0),将数据标签的秘密份额记作<Y>0=(<y1>0,<y2>0,...,<yn>0),其中<X>0是n×d的矩阵,<Y>0是n×1的矩阵,n为样本数量,d为特征数量;
类似地,S1也这样处理,得到数据特征及其标签的秘密份额<X>1和<Y>1。
作为优选的技术方案,所述初始化模型参数,具体为:
第一服务器S0和第二服务器S1在在本地初始化模型参数,随机将模型参数置为全0的向量,即S0设置<w>0为全0的向量,S1设置<w>1为全0的向量,其中<w>0,<w>1分别为模型参数w的秘密份额。
作为优选的技术方案,所述基于半诚实第三方辅助生成模型参数更新所需的乘法三元组,具体为:
半诚实第三方生成两个随机数种子seed0,seed1,然后利用伪随机数生成器PRG分别基于seed0,seed1生成乘法三元组,即(<u>0,i,(v>0,i,<z>0,i)←PRG(seed0)和(<u>1,i,<v>1,i)←PRG(seed1);
半诚实第三方计算<z>1,i=(<u>0,i+<u>1,i)+(<v>0,i+<v>1,i)-<z>0,i;
以上过程迭代n次;
半诚实第三方将seed0发送给S0,将seed1和所有的<z>1,1,...,<z>1,n发送给S1;
S0收到随机数种子seed0,执行(<u>0,i,<v>0,i,<z>0,i)←PRG(seed0),生成所有的<u>0,<v>0,<z>0;S1收到随机数种子seed1,执行(<u>1,i,<v>1,i)←PRG(seed1),生成所有的<u>1,<v>1。
作为优选的技术方案,基于乘法三元组对模型参数更新,具体为:
S0计算<E>0=<X>0-<U>0,并发送给S1;S1计算<E>1=<X>1-<U>1,并发送给S0,随后S0和S1在本地秘密重构得到E;
开始进行迭代,以下过程迭代t次(j=1,...,t);
S0计算<Fj>0=<w>0-<V[j]>,并发送给S1;S1计算<Fj>1=<w>1-<V[j]>,并发送给S0,随后S0和S1在本地秘密重构得到Fj;
结束迭代;
S0和S1分别获得最终的模型参数<w>0和<w>1。
本发明另一方面提供了一种基于秘密共享的多用户分布式隐私保护回归系统,包括秘密分发模块、模型训练模块及模型重构模块;
所述秘密分发模块,用于在数据秘密分发阶段,数据提供方C1,C2,…,Cn分别将各自的隐私数据特征及其标签(x1,y1),(x2,y2),…,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
所述模型训练模块,用于在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
所述模型重构模块,用于在模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
本发明又一方面提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行所述的基于秘密共享的多用户分布式隐私保护回归方法。
本发明再一方面提供了一种计算机可读存储介质,存储有程序,所述程序被处理器执行时,实现所述的基于秘密共享的多用户分布式隐私保护回归方法。
本发明与现有技术相比,具有如下优点和有益效果:
本发明采用了秘密共享的技术手段,将用户隐私数据的秘密份额发送给进行计算的服务器,解决了分布式机器学习训练场景下用户数据隐私泄露的技术问题,从而达到了安全性高、计算量和通信量低的技术效果。首先,本方案中秘密共享方法的安全性可以被严格定义和证明,而差分隐私方法的安全性依赖于数据脱敏手段,因此其在安全性上比差分隐私方法更好;其次,本方案不是基于密文计算,而是基于数据量更小的秘密份额进行计算,因此计算代价比同态加密方法更低;最后,混淆电路方法需要在在线阶段进行大量交互,而本方案可以在离线阶段预先生成乘法三元组,减少在线阶段的通信,因此该方案的在线阶段的通信量更低,计算效率更高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为秘密份额下的加法和乘法运算示意图;
图2为本发明实施例基于秘密共享的多用户分布式隐私保护回归方法的方框图;
图3为本发明实施例模型训练阶段流程图;
图4为本发明实施例半诚实第三方辅助生成乘法三元组的示意图;
图5为本发明实施例基于秘密共享的多用户分布式隐私保护回归系统的结构示意图;
图6为本发明实施例电子设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
线性回归和逻辑回归:
给定n个训练数据样本xi,每个样本包含d个特征和相应的输出标签yi,回归是学习函数g的统计过程,使得g(xi)≈yi。
在线性回归中,假设函数g是线性的,可以表示为xi与系数向量w的内积:其中xij为向量xi中的第j个值,wj为向量w中的第j个值,并且·表示两个向量的内积。为了求解系数向量w,通常定义一个代价函数C(w),并通过优化arg minw C(w)来计算w。在线性回归中,常用的代价函数是其中对于这个优化问题,比较好的求解方法是随机梯度下降算法。随机梯度下降算法的工作原理如下:w被初始化为随机值或全0的向量。在每次迭代中,随机选择一个样本(xi,yi)并将系数wj按下式进行更新:其中α是学习率,定义了每次迭代中向最小值移动的幅度。将代价函数代入上式,模型参数更新表达式变为wj=wj-α(xi·w-yi)xij。
在实践中,每次迭代通常不是选择一个数据样本,而是随机选择一小批样本,并通过对当前w上的所有样本的偏导数求平均值来更新w。我们用B表示在小批量中选择的索引集合,|B|表示小批量的大小,通常在2到200之间。小批量的好处是可以使用向量化库来加快计算速度,这样一个小批量的计算时间比运行没有小批量要快得多。使用小批量后,更新函数可以用向量化的形式表示:XB和YB分别是根据B中索引选择的X的|B|×d子矩阵和Y的|B|×1子矩阵,分别表示迭代中的数据特征和样本标签,这里w被视为列向量。
逻辑回归和线性回归十分相似,只不过线性回归的输出标签y是任意值,而逻辑回归的输出标签y是0或者1(在二分类问题中)。逻辑回归中需要另外作用一个激活函数f,该关系式表示为g(xi)=f(xi·w)。在逻辑回归中,其激活函数f通常定义为激活函数该函数也被称为sigmoid函数。使用此激活函数,线性回归的原始代价函数不再是凸的,因此应用随机梯度下降算法可能会得到局部最小值而不是全局最小值。因此,代价函数改为交叉熵函数和其中 因此逻辑回归中的小批量随机梯度下降算法在每次迭代中的系数更新表达式为可以看到逻辑回归的小批量随机梯度下降算法的唯一区别是在f(XB×w)处对内积XB×w应用了一个激活函数f。
算术秘密共享:
秘密共享是一种安全多方计算中使用的基础技术模块,主要包括秘密分发和秘密重构两个阶段,本方案中主要使用算术秘密共享技术,其中有负责秘密分发和重构的秘密管理员和保存秘密份额的秘密参与方,本方案只考虑有两个秘密参与方(设为P0,P1)的情况。在算术秘密共享方案中,其常常定义在一个环上,即秘密值是环上的一个元素,环上有模算术加法和模算术乘法运算。设有环秘密值其长度为l比特。算术秘密共享方案的秘密分发和重构操作有:
(2)秘密重构:P0将秘密份额<s>0发送给秘密管理员,P1将秘密份额<s>1发送给秘密管理员,秘密管理员计算s=(<s>0+<s>1)mod 2l,重构得到秘密s。
特别地,本方案需要在秘密份额上进行算术运算,比如加法和乘法。假设有秘密值a和b已经通过算术秘密共享秘密分发给P0和P1,此时P0有<a>0,<b>0,P1有<a>1,<b>1。对于加法,P0和P1需要计算得到c=a+b的秘密份额<c>0,<c>1;对于乘法,P0和P1需要计算得到c=a·b的秘密份额<c>0,<c>1。具体过程如图1所示。
(1)对于加法运算,P0在本地计算<c>0=<a>0+<b>0,P1在本地计算<c>1=<a>1+<b>1即可。可以验证<c>0+<c>1=(<a>0+<b>0)+(<a>1+<b>1)=a+b。
(2)对于乘法运算,常用的方法是利用乘法三元组进行计算。假设P0和P1已经共享了<u>,<v>,<z>,其中u,u是在上均匀分布的随机值,并且z=uv。此时P0有<a>0,<b>0,<u>0,<v>0,<z>0,P1有<a>1,<b>1,<u>1,<v>1,<z>1。然后P0计算<a>0-<u>0,<b>0-<v>0,并发送给P1;P1计算<a>1-<u>1,<b>1-<v>1,并发送给P0,随后两方计算得到e=a-u,f=b-v。最后,P0计算<c>0=f·<a>0+e·<b>0+<z>0,P1计算<c>1=-e·f+f·<a>1+e·<b>1+<z>1。可以验证<c>0+<c>1=a·b。
另外,由于机器学习中模型训练会遇到小数运算,而上述秘密份额下的加法和乘法运算不支持小数运算,因此本方案提出了一种定点小数截断算法,以支持秘密份额下的小数运算。考虑小数部分最多为l位的两个小数a和b进行乘法(加法运算不用进行截断),首先通过a′=2la,b′=2lb将小数转换为整数,然后计算乘积c=a′b′。可知,c最多有2l位表示乘积的小数部分,我们截断c的最后l位,记作从而使得最多有l位来表示小数部分。另外,当c是负数时,根据负数的表示,截断后结果为其中|c|是c的绝对值。可以证明,当c是秘密份额时,该截断技术同样有效,而且可以以很大的概率认为与标准小数运算相比,截断技术只在小数部分的最低有效位中产生了一个小误差。
本发明基于秘密共享方法,通过设计多方用户到两方服务器的外包计算框架,实现了隐私保护回归协议,本发明的系统架构如图2所示。令C1,C2,...,Cn表示n个数据提供方,其拥有的隐私数据分别为(x1,y1),(x2,y2),...,(xn,yn),其中xi表示数据特征,通常为矢量,yi表示数据标签,通常为标量;令S0,S1表示两个执行计算任务的云服务器,其具体步骤如下所示:
S1、数据秘密分发阶段:各个数据提供方将各自的数据通过秘密共享分发给两个执行计算任务的服务器,然后便可离线,具体为:
在数据秘密分发阶段,数据提供方C1,C2,...,Cn分别将自己的隐私数据(x1,y1),(x2,y2),...,(xn,yn)通过加性算术秘密共享分发给服务器S0,S1。例如,对于数据提供方Ci而言,Ci选择随机数rx,ry,然后将(xi-rx,yi-ry)发送给S0,将(rx,ry)发送给S1,其中xi-rx,rx称为数据xi的秘密份额,yi-ry,ry称为数据yi的秘密份额。在这里,我们用<·>表示秘密份额,因此有秘密份额<xi>0=xi-rx,<yi>0=yi-ry,和<xi>1=rx,<yi>1=ry,其中下标0表示秘密份额在S0手中,下标1表示秘密份额在S1手中。
进一步地,在数据提供方C1,C2,...,Cn分别将自己的数据按上述步骤发送到服务器S0,S1后,S0统一将数据特征的秘密份额记作<X>0=(<x1>0,<x2>0,...,<xn>0)T,将数据标签的秘密份额记作<Y>0=(<y1>0,<y2>0,...,<yn>0)T,其中上标T表示矩阵转置,<X>0是n×d的矩阵,<Y>0是n×1的矩阵,n为样本数量,d为特征数量。类似地,S1也这样处理,得到<X>1和<Y>1。
S2、模型训练阶段:两个服务器分别在本地初始化模型参数的秘密份额,然后通过执行一个安全两方计算协议来共同计算和更新自己的模型参数的秘密份额,然后分别将模型参数的秘密份额发送给数据使用方;
在模型训练阶段,S0和S1需要基于上一阶段获得的数据特征和数据标签的秘密份额进行安全两方计算,主要步骤如3所示:
S21、初始化模型参数:
根据小批量随机梯度下降算法,S0和S1需要在本地初始化模型参数,可以随机将模型参数置为全0的向量,即S0设置<w>0为全0的向量,S1设置<w>1为全0的向量,其中<w>0,<w>1分别为模型参数w的秘密份额。
S22、生成乘法三元组:
从上面可知,秘密份额下的乘法运算需要乘法三元组。在本方案中,提出了一种基于半诚实第三方辅助生成乘法三元组的方案,其具体流程如下,图4展示了这一过程,具体如下:
S221、半诚实第三方生成两个随机数种子seed0,seed1,然后利用伪随机数生成器PRG基于seed0,seed1分别生成乘法三元组,即(<u>0,i,<v>0,i,<z>0,i)←PRG(seed0)和(<u>1,i,<v>1,i)←PRG(seed1);
S222、半诚实第三方计算<z>1,i=(<u>0,i+<u>1,i)+(<v>0,i+<v>1,i)-<z>0,i;
S223、以上过程迭代n次;
S224、半诚实第三方将seed0发送给S0,将seed1和所有的<z>1,1,...,<z>1,n发送给S1;
S225、S0收到随机数种子seed0,执行(<u>0,i,<v>0,i,<z>0,i)←PRG(seed0),生成所有的<u>0,<v>0,<z>0;S1收到随机数种子seed1,执行(<u>1,i,<v>1,i)←PRG(seed1),生成所有的<u>1,<v>1。
利用上述流程可以生成最终在模型参数更新阶段使用的乘法三元组<U>,<V>,<Z>,<V′>,<Z′>,其具有以下性质:U是一个n×d矩阵,用于掩盖数据特征X;v是一个d×t矩阵,在每次迭代中其每一列都用于掩盖模型参数w;v′是一个|B|×t矩阵,在每次迭代中其每一列都用于掩盖不同的变量Y*-Y。然后我们令其中i=1,...,t,M[i]表示矩阵M的第i列。
S3、模型参数更新:
在数据秘密分发阶段,S0和S1分别获得了数据特征及其标签(<X>0,<Y>0)和(<X>1,<Y>1),在生成乘法三元组阶段,S0和S1生成了乘法三元组<U>,<V>,<Z>,<V′>,<Z′>。下面是隐私保护回归协议的模型参数更新阶段,隐私保护线性回归协议和隐私保护逻辑回归协议的模型参数更新阶段有所区别,下面先介绍隐私保护线性回归协议的模型参数更新阶段。
S31、S0计算<E>0=<X>0-<U>0,并发送给S1;S1计算<E>1=<X>1-<U>1,并发送给S0,随后S0和S1在本地秘密重构得到E;
S32、开始进行迭代,以下过程迭代t次(j=1,...,t);
S34、S0计算<Fj>0=<w>0-<V[j]>,并发送给S1;S1计算<Fj>1=<w>1-<V[j]>,并发送给S0,随后S0和S1在本地秘密重构得到Fj;
S311、结束迭代;
S312、S0和S1分别获得最终的模型参数<w>0和<w>1。
进一步的,根据逻辑回归的小批量随机梯度下降算法的模型参数更新表达式:因此隐私保护逻辑回归协议还要另外计算一个激活函数f,其通常定义为sigmoid函数该函数是一个非线性函数,包含指数运算和乘法运算,秘密份额下的算术运算很难支持这种运算,因此本方案设计了一个新的激活函数f:
这个新的激活函数只包括一个比较运算和一个算术运算,而且可以验证能够达到和sigmoid函数一样的效果。
S3、模型重构阶段:数据使用方利用模型参数的秘密份额重构出完整的模型参数,得到训练好的机器学习模型,具体为:
服务器S0和S1分别将自己手中的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
本发明通过上述的隐私保护回归协议便可实现机器学习训练过程中的数据隐私,而且还可以利用上述协议实现机器学习预测任务。
需要说明的是,对于前述的各方法实施例,为了简便描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。
基于与上述实施例中的基于秘密共享的多用户分布式隐私保护回归方法相同的思想,本发明还提供了基于秘密共享的多用户分布式隐私保护回归系统,该系统可用于执行上述基于秘密共享的多用户分布式隐私保护回归方法。为了便于说明,基于秘密共享的多用户分布式隐私保护回归系统实施例的结构示意图中,仅仅示出了与本发明实施例相关的部分,本领域技术人员可以理解,图示结构并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
请参阅图5,在本申请的另一个实施例中,提供了一种基于秘密共享的多用户分布式隐私保护回归系统100,该系统包括秘密分发模块、模型训练模块及模型重构模块;
所述秘密分发模块,用于在数据秘密分发阶段,数据提供方C1,C2,…,Cn分别将各自的隐私数据(x1,y1),(x2,y2),…,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
所述模型训练模块,用于在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
所述模型重构模块,用于在模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
需要说明的是,本发明的基于秘密共享的多用户分布式隐私保护回归系统与本发明的基于秘密共享的多用户分布式隐私保护回归方法一一对应,在上述基于秘密共享的多用户分布式隐私保护回归方法的实施例阐述的技术特征及其有益效果均适用于基于秘密共享的多用户分布式隐私保护回归的实施例中,具体内容可参见本发明方法实施例中的叙述,此处不再赘述,特此声明。
此外,上述实施例的基于秘密共享的多用户分布式隐私保护回归系统的实施方式中,各程序模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的程序模块完成,即将所述基于秘密共享的多用户分布式隐私保护回归系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分功能。
请参阅图6,在一个实施例中,提供了一种实现基于秘密共享的多用户分布式隐私保护回归方法的电子设备,所述电子设备200可以包括第一处理器201、第一存储器202和总线,还可以包括存储在所述第一存储器202中并可在所述第一处理器201上运行的计算机程序,如基于秘密共享的多用户分布式隐私保护回归程序203。
其中,所述第一存储器202至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述第一存储器202在一些实施例中可以是电子设备200的内部存储单元,例如该电子设备200的移动硬盘。所述第一存储器202在另一些实施例中也可以是电子设备200的外部存储设备,例如电子设备200上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述第一存储器202还可以既包括电子设备200的内部存储单元也包括外部存储设备。所述第一存储器202不仅可以用于存储安装于电子设备200的应用软件及各类数据,例如基于秘密共享的多用户分布式隐私保护回归程序203的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述第一处理器201在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述第一处理器201是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述第一存储器202内的程序或者模块,以及调用存储在所述第一存储器202内的数据,以执行电子设备200的各种功能和处理数据。
图6仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图6示出的结构并不构成对所述电子设备200的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
所述电子设备200中的所述第一存储器202存储的基于秘密共享的多用户分布式隐私保护回归程序203是多个指令的组合,在所述第一处理器201中运行时,可以实现:
在数据秘密分发阶段,数据提供方C1,C2,…,Cn分别将各自的隐私数据特征及其标签(x1,y1),(x2,y2),…,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (10)
1.基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,包括下述步骤:
在数据秘密分发阶段,n个数据提供方C1,C2,...,Cn分别将各自的隐私数据特征及其标签(x1,y1),(x2,y2),...,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
2.根据权利要求1所述基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,在数据秘密分发阶段,对于数据提供方Ci而言,Ci选择随机数rx,ry,然后将(xi-rx,yi-ry)发送给S0,将(rx,ry)发送给S1,其中xi-rx,rx称为数据xi的秘密份额,yi-ry,ry称为数据yi的秘密份额,用<·>表示秘密份额,因此有秘密份额<xi>0=xi-rx,<yi>0=yi-ry,和<xi>1=rx,<yi>1=ry,其中下标0表示秘密份额在S0手中,下标1表示秘密份额在S1手中。
3.根据权利要求2所述基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,S0统一将数据特征的秘密份额记作<X>0=(<x1>0,<x2>0,...,<xn>0),将数据标签的秘密份额记作<Y>0=(<y1>0,<y2>0,...,<yn>0),其中<X>0是n×d的矩阵,<Y>0是n×1的矩阵,n为样本数量,d为特征数量;
类似地,S1也这样处理,得到数据特征及其标签的秘密份额(X>1和<Y>1。
4.根据权利要求1所述基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,所述初始化模型参数,具体为:
第一服务器S0和第二服务器S1在在本地初始化模型参数,随机将模型参数置为全0的向量,即S0设置<w>0为全0的向量,S1设置<w>1为全0的向量,其中<w>0,<w>1分别为模型参数w的秘密份额。
5.根据权利要求1所述基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,所述基于半诚实第三方辅助生成模型参数更新所需的乘法三元组,具体为:
半诚实第三方生成两个随机数种子seed0,seed1,然后利用伪随机数生成器PRG分别基于seed0,seed1生成乘法三元组,即(<u>0,i,<v>0,i,<z>0,i)←PRG(seed0)和(<u>1,i,<v>1,i)←PRG(seed1);
半诚实第三方计算<z>1,i=(<u>0,i+<u>1,i)+(<v>0,i+<v>1,i)-<z>0,i;
以上过程迭代n次;
半诚实第三方将seed0发送给S0,将seed1和所有的<z>1,1,...,<z>1,n发送给S1;
S0收到随机数种子seed0,执行(<u>0,i,<v>0,i,<z>0,i)←PRG(seed0),生成所有的<u>0,<v>0,<z>0;S1收到随机数种子seed1,执行(<u>1,i,<v>1,i)←PRG(seed1),生成所有的<u>1,<v>1。
6.根据权利要求1所述基于秘密共享的多用户分布式隐私保护回归方法,其特征在于,基于乘法三元组对模型参数更新,具体为:
S0计算<E>0=<X>0-<U>0,并发送给S1;S1计算<E>1=<X>1-<U>1,并发送给S0,随后S0和S1在本地秘密重构得到E;
开始进行迭代,以下过程迭代t次(j=1,...,t);
S0计算<Fj>0=<w>0-<V[j]>,并发送给S1;S1计算<Fj>1=<w>1-<V[j]>,并发送给S0,随后S0和S1在本地秘密重构得到Fj;
结束迭代;
S0和S1分别获得最终的模型参数<w>0和<w>1。
8.基于秘密共享的多用户分布式隐私保护回归系统,其特征在于,包括秘密分发模块、模型训练模块及模型重构模块;
所述秘密分发模块,用于在数据秘密分发阶段,数据提供方C1,C2,...,Cn分别将各自的隐私数据特征及其标签(x1,y1),(x2,y2),...,(xn,yn)通过加性算术秘密共享分发给第一服务器S0和第二服务器S1,得到数据特征的秘密份额和数据标签的秘密份额;
所述模型训练模块,用于在模型训练阶段,第一服务器S0和第二服务器S1基于获得的数据特征的秘密份额和数据标签的秘密份额进行安全两方计算;在模型训练时,首先,初始化模型参数;其次,基于半诚实第三方辅助生成模型参数更新所需的乘法三元组;最后,基于乘法三元组对模型参数更新;
所述模型重构模块,用于在模型重构阶段,第一服务器S0和第二服务器S1分别将各自的模型参数的秘密份额<w>0和<w>1发送给数据使用方,然后数据使用方在本地重构出完整的模型参数w=<w>0+<w>1。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1-7中任意一项所述的基于秘密共享的多用户分布式隐私保护回归方法。
10.一种计算机可读存储介质,存储有程序,其特征在于,所述程序被处理器执行时,实现权利要求1-7任一项所述的基于秘密共享的多用户分布式隐私保护回归方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211038350.8A CN115632761B (zh) | 2022-08-29 | 2022-08-29 | 基于秘密共享的多用户分布式隐私保护回归方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211038350.8A CN115632761B (zh) | 2022-08-29 | 2022-08-29 | 基于秘密共享的多用户分布式隐私保护回归方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115632761A true CN115632761A (zh) | 2023-01-20 |
CN115632761B CN115632761B (zh) | 2023-06-23 |
Family
ID=84902191
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211038350.8A Active CN115632761B (zh) | 2022-08-29 | 2022-08-29 | 基于秘密共享的多用户分布式隐私保护回归方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115632761B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116388954A (zh) * | 2023-02-23 | 2023-07-04 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN116738494A (zh) * | 2023-08-16 | 2023-09-12 | 北京瑞莱智慧科技有限公司 | 基于秘密分享的多方安全计算的模型训练方法和装置 |
CN116938455A (zh) * | 2023-09-15 | 2023-10-24 | 山东师范大学 | 基于秘密分享大小比较的数据处理方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108844464A (zh) * | 2018-06-22 | 2018-11-20 | 西安电子科技大学 | 基于纠缠双光子信号的压缩感知成像装置和方法 |
CN111426383A (zh) * | 2020-04-17 | 2020-07-17 | 北京理工大学重庆创新中心 | 机器学习优化稀疏基的高光谱全偏振图像压缩重构方法 |
CN112182649A (zh) * | 2020-09-22 | 2021-01-05 | 上海海洋大学 | 一种基于安全两方计算线性回归算法的数据隐私保护系统 |
CN113065145A (zh) * | 2021-03-25 | 2021-07-02 | 上海海洋大学 | 一种基于秘密共享和随机扰动的隐私保护线性回归方法 |
CN113516256A (zh) * | 2021-09-14 | 2021-10-19 | 深圳市洞见智慧科技有限公司 | 基于秘密共享、同态加密的无第三方联邦学习方法及系统 |
US20210342476A1 (en) * | 2018-09-10 | 2021-11-04 | Nippon Telegraph And Telephone Corporation | Secret statistical processing systems, methods, statistical processing apparatus and program |
CN114650134A (zh) * | 2022-03-31 | 2022-06-21 | 深圳前海环融联易信息科技服务有限公司 | 一种基于秘密共享的纵向隐私保护逻辑回归方法 |
-
2022
- 2022-08-29 CN CN202211038350.8A patent/CN115632761B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108844464A (zh) * | 2018-06-22 | 2018-11-20 | 西安电子科技大学 | 基于纠缠双光子信号的压缩感知成像装置和方法 |
US20210342476A1 (en) * | 2018-09-10 | 2021-11-04 | Nippon Telegraph And Telephone Corporation | Secret statistical processing systems, methods, statistical processing apparatus and program |
CN111426383A (zh) * | 2020-04-17 | 2020-07-17 | 北京理工大学重庆创新中心 | 机器学习优化稀疏基的高光谱全偏振图像压缩重构方法 |
CN112182649A (zh) * | 2020-09-22 | 2021-01-05 | 上海海洋大学 | 一种基于安全两方计算线性回归算法的数据隐私保护系统 |
CN113065145A (zh) * | 2021-03-25 | 2021-07-02 | 上海海洋大学 | 一种基于秘密共享和随机扰动的隐私保护线性回归方法 |
CN113516256A (zh) * | 2021-09-14 | 2021-10-19 | 深圳市洞见智慧科技有限公司 | 基于秘密共享、同态加密的无第三方联邦学习方法及系统 |
CN114650134A (zh) * | 2022-03-31 | 2022-06-21 | 深圳前海环融联易信息科技服务有限公司 | 一种基于秘密共享的纵向隐私保护逻辑回归方法 |
Non-Patent Citations (1)
Title |
---|
唐春明;魏伟明;: "基于安全两方计算的具有隐私性的回归算法" * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116388954A (zh) * | 2023-02-23 | 2023-07-04 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN116388954B (zh) * | 2023-02-23 | 2023-09-01 | 西安电子科技大学 | 通用密态数据安全计算方法 |
CN116738494A (zh) * | 2023-08-16 | 2023-09-12 | 北京瑞莱智慧科技有限公司 | 基于秘密分享的多方安全计算的模型训练方法和装置 |
CN116738494B (zh) * | 2023-08-16 | 2023-11-14 | 北京瑞莱智慧科技有限公司 | 基于秘密分享的多方安全计算的模型训练方法和装置 |
CN116938455A (zh) * | 2023-09-15 | 2023-10-24 | 山东师范大学 | 基于秘密分享大小比较的数据处理方法及系统 |
CN116938455B (zh) * | 2023-09-15 | 2023-12-12 | 山东师范大学 | 基于秘密分享大小比较的数据处理方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115632761B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | Logistic regression over encrypted data from fully homomorphic encryption | |
CN115632761A (zh) | 基于秘密共享的多用户分布式隐私保护回归方法及装置 | |
CN111143894B (zh) | 一种提升安全多方计算效率的方法及系统 | |
Liu et al. | Oblivious neural network predictions via minionn transformations | |
ES2870706T3 (es) | Un marco de trabajo de entrenamiento de modelo de seguridad distribuido de múltiples partes para la protección de privacidad | |
EP3958158B1 (en) | Privacy-preserving machine learning | |
US20200177366A1 (en) | Homomorphic data encryption method and apparatus for implementing privacy protection | |
EP2701337B1 (en) | Secret sharing method and system | |
CN111242290B (zh) | 一种轻量级隐私保护生成对抗网络系统 | |
Blanton et al. | Secure and efficient outsourcing of sequence comparisons | |
CN110569227A (zh) | 模型参数确定方法、装置和电子设备 | |
CN113065145B (zh) | 一种基于秘密共享和随机扰动的隐私保护线性回归方法 | |
CN114844621B (zh) | 基于多密钥全同态加密的多用户隐私保护机器学习方法及装置 | |
WO2021227959A1 (zh) | 保护数据隐私的多方联合训练对象推荐模型 | |
US20240013034A1 (en) | Neural network prediction system for privacy preservation | |
Data et al. | Data encoding methods for byzantine-resilient distributed optimization | |
CN117291258A (zh) | 一种基于函数秘密共享的神经网络训练推理方法和系统 | |
CN115730182A (zh) | 一种匿名化分片数据下逆矩阵近似计算方法 | |
Podschwadt et al. | Non-interactive privacy preserving recurrent neural network prediction with homomorphic encryption | |
US12113890B2 (en) | Homomorphic encryption using smart contracts | |
CN114742233B (zh) | 联合训练逻辑回归模型的方法及装置 | |
CN116861477A (zh) | 基于隐私保护的数据处理方法、系统、终端及存储介质 | |
CN116388954A (zh) | 通用密态数据安全计算方法 | |
Aharoni et al. | Poster: Secure SqueezeNet inference in 4 minutes | |
Agarwal et al. | Privacy-preserving linear regression for brain-computer interface applications |
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 |