基于多方全同态加密的数据共享方法和系统技术方案

技术编号:28708503 阅读:16 留言:0更新日期:2021-06-05 23:17
本发明专利技术公开了一种基于多方全同态加密的数据共享方法和系统,方法包括:各方用户终端通过私钥生成算法生成自己的私钥;各方用户终端通过协议生成面向指定数据共享任务的集体公钥;生成再线性化公钥;各方用户终端使用集体公钥加密自己的数据,将密文传输给服务器;服务器对上传密文数据进行同态计算,将计算结果返回给各个用户终端;服务器每次执行同态乘法计算后用再线性化公钥对密文执行再线性化操作;各个用户终端执行联合解密协议解密计算结果或者指定接收者解密。该方法和系统既保证各方数据隐私安全,又实现数据分享,能做到和单钥全同态加密一样的效率,且支持上千规模的参与方。此外,解密灵活,能够提供针对指定接收者解密的方法。者解密的方法。者解密的方法。

【技术实现步骤摘要】
基于多方全同态加密的数据共享方法和系统


[0001]本专利技术涉及数据加密
,特别是一种基于多方全同态加密的数据共享方法和系统。

技术介绍

[0002]在大数据和云环境背景下,用户担心自身的敏感数据被泄漏,金融服务商担心服务模型的相关信息被窃取,同时还存在攻击者通过一些手段获取数据来进行牟利。因此市场上急需能够保护计算安全的方法与工具。
[0003]全同态加密是指在不解密的情况下,对密文进行任意计算。因此使用全同态加密能够实现数据外包计算的隐私安全。
[0004]但是,传统的全同态加密无法满足多方参与的需求,例如几家银行想要刻画某个用户的金融信用。虽然每个银行都可以根据自己掌握的用户数据,独立的训练机器学习模型。但是他们还可以通过共享各自的数据,训练出更好的模型。然而在数据安全方面,各银行之间共享情报数据显然是不可能的。
[0005]随后,相关技术中提出了多钥全同态加密概念。尽管多钥全同态加密从概念上讲具有吸引力,但其缺乏紧凑性,其密文的大小和算术运算的时间与参与方的密钥分别呈线性和平方增长。而且其多钥的特性在时间和空间上都有很高的成本开销,从而限制了其在实际应用中的适用性。
[0006]因鉴于此,特提出本专利技术。

技术实现思路

[0007]本专利技术的目的在于提供一种基于多方全同态加密的数据共享方法和系统,既保证了各方数据的隐私安全,又实现了数据分享,与多钥全同态加密相比,生成的密钥与密文更小,能做到和单钥全同态加密一样的效率,并且能支持上千规模的参与方。此外,解密灵活,能够提供针对指定接收者解密的方法。
[0008]为解决上述问题,本专利技术实施例提供一种基于多方全同态加密的数据共享方法,由多方用户终端参与,所述方法包括:
[0009]各方用户终端通过私钥生成算法生成自己的私钥并保存;
[0010]各方用户终端通过集体公钥生成协议生成数据共享任务的集体公钥;所述数据共享任务由至少一方用户终端在服务器中建立;
[0011]各方用户终端通过再线性化公钥生成协议生成再线性化公钥;
[0012]各方用户终端使用所述集体公钥加密自己的数据,并将密文传输给所述服务器;
[0013]所述服务器对各用户终端上传的密文数据进行同态计算,并将计算结果返回给各个用户终端;所述同态计算包括同态加法和同态乘法,所述服务器每次执行同态乘法计算后都需要用所述再线性化公钥对密文执行再线性化操作;
[0014]各个用户终端执行联合解密协议解密所述计算结果从而获得解密的结果,或各参
与方收到所述计算结果与接收者公钥后执行密钥交换协议得到一个新的密文,所述新的密文由指定的接收者解密。
[0015]另一方面,本专利技术实施例还提供了一种基于多方全同态加密的数据共享系统,包括多方参与数据共享的用户终端和服务器,其中各方用户终端和服务器执行上述基于多方全同态加密的数据共享方法中的步骤。
[0016]与现有技术相比,本专利技术实现了多方全同态加密,其性能与单方全同态加密一样,没有任何损失。各个用户使用多方同态加密生成各自的私钥,然后通过集体公钥协议生成各方共享的公钥。当各方需要数据分享时,使用公钥加密数据传输到共享平台(服务器)。共享平台对各方的密文数据进行同态计算,最后将计算结果返回给各方。各方执行联合解密协议获得最终的解密结果。本系统既保证了各方数据的隐私安全,又实现了数据分享。
附图说明
[0017]图1为本专利技术实施例提供的基于多方全同态加密的数据共享系统的示意图。
具体实施方式
[0018]下面将参考附图中示出的若干示例性实施方式来描述本专利技术的原理和精神。应当理解,描述这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本专利技术,而并非以任何方式限制本专利技术的范围。
[0019]请参考图1,本专利技术实施例提供一种基于多方全同态加密的数据共享方法,可以实现于图1中的数据共享系统中。数据共享系统包括多个参与数据共享的用户终端(即参与方),例如几家银行想要刻画某个用户的金融信用。虽然每个银行都可以根据自己掌握的用户数据,独立的训练机器学习模型。但是他们还可以通过共享各自的数据,训练出更好的模型。此时多方用户终端可以是各个银行的用户终端。这些用户终端均和服务器通信,服务器搭建起数据共享平台,各个用户终端都可以在数据共享平台上发起数据共享任务。
[0020]根据本专利技术的实施例,基于多方全同态加密的数据共享方法包括如下步骤:
[0021]基于多方全同态加密的数据共享方法,其特征在于,由多方用户终端参与,所述方法包括:
[0022]S1:各方用户终端通过私钥生成算法生成自己的私钥并保存。
[0023]令P={P1,P2,

,P
N
}是分别拥有消息(x1,x2,

,x
N
)的N个参与方的集合。令f(x1,x2,

,x
N
)=y作为输入方输入的函数。
[0024]每一方用户终端P
i
从R3中随机均匀选取一个多项式s
i
作为自身的私钥;其中R3为多项式商环,多项式的模为(X
n
+1)且其系数分均匀布在{

1,0,1},n是2的幂次。
[0025]需要说明的是,在步骤S1开始之前,各方用户终端需要先接入服务器在数据共享平台上注册自己的账户。
[0026]S2:各方用户终端通过集体公钥生成协议生成数据共享任务的集体公钥。
[0027]数据共享任务由至少一方用户终端提前在服务器中建立,例如用户A在系统中建立一个数据共享任务,并且系统为该任务生成一个数据共享任务ID。为了让其他用户可以参与该数据共享任务,用户A可以将数据共享任务ID通过服务器发送给其他参与方的用户
终端。
[0028]步骤S2具体包括:
[0029](1)在随机公共字串模型(CRS)下,各用户终端(各参与方)获得一个公共多项式p1,其中p1随机均匀选取于R
q
是多项式商环,每一个R
q
中的多项式的模为(X
n
+1)且其系数均匀分布于n是2的幂次;模q为密文系数模。
[0030](2)每一方用户终端P
i
从错误分布χ中随机均匀选取噪音e
i
,向其它方用户终端广播p
0,i


(p1s
i
+e
i
);其中χ是R
q
上的一个离散高斯分布;
[0031](3)每一方用户终端计算生成集体公钥pk=(p0,p1);该集体公钥为每一方用户终端持有且公开;该集体公钥对应的私钥是其中符号[]q
表示模q。
[0032]S3:各方用户终端通过再线性化公钥生成协议生成再线性化公钥;
[0033]步骤S3具体包括:
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于多方全同态加密的数据共享方法,其特征在于,由多方用户终端参与,所述方法包括:各方用户终端通过私钥生成算法生成自己的私钥并保存;各方用户终端通过集体公钥生成协议协议生成面向指定数据共享任务的集体公钥;所述数据共享任务由至少一方用户终端提前在服务器中建立;各方用户终端通过再线性化公钥生成协议协议生成再线性化公钥;各方用户终端使用所述集体公钥加密自己的数据,并将密文传输给所述服务器;所述服务器对各用户终端上传的密文数据进行同态计算,并将计算结果返回给各个用户终端;所述同态计算包括同态加法和同态乘法,所述服务器每次执行同态乘法计算后都需要用所述再线性化公钥对密文执行再线性化操作;各个用户终端执行联合解密协议协议解密所述计算结果从而获得解密的结果;或各参与方收到所述计算结果与接收者公钥后执行密钥交换协议得到一个新的密文,所述新的密文由指定的接收者解密。2.根据权利要求1所述的基于多方全同态加密的数据共享方法,其特征在于,所述各方用户终端通过私钥生成算法生成自己的私钥包括:每一方用户终端P
i
从R3中随机均匀选取一个多项式s
i
作为自身的私钥;其中R3为多项式商环,多项式的模为(X
n
+1)且其系数分均匀布在{

1,0,1},n是2的幂次。3.根据权利要求1所述的基于多方全同态加密的数据共享方法,其特征在于,所述各方用户终端通过集体公钥生成协议协议生成数据共享任务的集体公钥包括:(1)在随机公共字串(CRS)模型下,各用户终端获得一个公共多项式p1,其中p1随机均匀选取于R
q
是多项式商环,每一个R
q
中的多项式的模为(X
n
+1)且其系数均匀分布于n是2的幂次;模q为密文系数模。(2)每一方用户终端P
i
从错误分布χ中随机均匀选取噪音e
i
,向其它方用户终端广播p
0,i


(p1s
i
+e
i
);其中χ是R
q
上的一个离散高斯分布;(3)每一方用户终端计算生成集体公钥pk=(p0,p1);该集体公钥为每一方用户终端持有且公开;该集体公钥对应的私钥是其中符号[]
q
表示模q。4.根据权利要求1所述的基于多方全同态加密的数据共享方法,其特征在于,所述各方用户终端通过再线性化公钥生成协议协议生成再线性化公钥包括:(1)令w=(w0,w1,

,w
l
)
T
是各方用户终端的公共参数,其中w是基,其中符号表示向上取整;(2)在随机公共字串模型下,各用户终端获得一个公共的(3)每一方用户终端P
i
从χ
l
中随机均匀选取e
0,i
,以及从R3中随机均匀选取u
i
;向其它方
用户终端广播h
i


u
i
a+s
i
w+e
0,i
;(4)每一方用户终端计算然后从χ
l
中随机均匀选取e
1,i
,e
2,i
,并且向其它方用户终端广播h

0,i
=s
i
h+e
1,i
和h

1,i
=s
i
a+e
2,i
;(5)每一方用户终端计算和然后从χ
l
中随机均匀选取e
3,i
,并且向其它方用户终端广播h

i
=(u
i

s
i
)h
′1+e<...

【专利技术属性】
技术研发人员:陈智罡宋新霞
申请(专利权)人:浙江万里学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1