【技术实现步骤摘要】
基于多方全同态加密的数据共享方法和系统
[0001]本专利技术涉及数据加密
,特别是一种基于多方全同态加密的数据共享方法和系统。
技术介绍
[0002]在大数据和云环境背景下,用户担心自身的敏感数据被泄漏,金融服务商担心服务模型的相关信息被窃取,同时还存在攻击者通过一些手段获取数据来进行牟利。因此市场上急需能够保护计算安全的方法与工具。
[0003]全同态加密是指在不解密的情况下,对密文进行任意计算。因此使用全同态加密能够实现数据外包计算的隐私安全。
[0004]但是,传统的全同态加密无法满足多方参与的需求,例如几家银行想要刻画某个用户的金融信用。虽然每个银行都可以根据自己掌握的用户数据,独立的训练机器学习模型。但是他们还可以通过共享各自的数据,训练出更好的模型。然而在数据安全方面,各银行之间共享情报数据显然是不可能的。
[0005]随后,相关技术中提出了多钥全同态加密概念。尽管多钥全同态加密从概念上讲具有吸引力,但其缺乏紧凑性,其密文的大小和算术运算的时间与参与方的密钥分别呈线性和平方增长。而且其多钥的特性在时间和空间上都有很高的成本开销,从而限制了其在实际应用中的适用性。
[0006]因鉴于此,特提出本专利技术。
技术实现思路
[0007]本专利技术的目的在于提供一种基于多方全同态加密的数据共享方法和系统,既保证了各方数据的隐私安全,又实现了数据分享,与多钥全同态加密相比,生成的密钥与密文更小,能做到和单钥全同态加密一样的效率,并且能支持上千规模的参与方。此外 ...
【技术保护点】
【技术特征摘要】
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<...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。