当前位置: 首页 > 专利查询>王伟专利>正文

基于同态加密的安全的多方云计算的方法和系统技术方案

技术编号:25550959 阅读:49 留言:0更新日期:2020-09-08 18:50
提供一种能够进行安全的多方云计算的计算机可执行方法和系统。所述计算机可执行方法包括:在第一计算系统中接收多个密文,其中,所述多个密文采用公钥分别对多个明文进行加密而形成;在第二计算系统中接收私钥的至少一部分;和第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值,其中,所述加密基于加法同态的加密方案实现,所述公钥和所述私钥为基于所述加法同态的加密方案生成的公钥/私钥对,所述函数包括乘法运算、除法运算和比较运算中的至少一种。

【技术实现步骤摘要】
基于同态加密的安全的多方云计算的方法和系统
本专利技术涉及多方云计算的
,更具体地,涉及一种在多方云计算中保证数据安全的方法和系统,例如,涉及一种基于同态加密的安全的多方云计算的方法和系统。
技术介绍
近年来,随着云计算技术的迅速发展和云存储应用逐渐普及,越来越多的企业用户和个人用户选择将拥有的数据外包给云,以使用云计算和云存储服务。在理想情况下,通过将大量的物理计算资源虚拟化并将其整合,云计算可以提供几乎无限的计算能力和存储空间。对于企业用户而言,通过云计算服务可以显著降低计算和存储的维护成本;对于个人用户而言,通过将信息的存储和计算放在云端可以降低自身存储和计算资源有限所带来的很多约束。然而,用户在享受到云计算的好处的同时,不可避免地会产生很多的安全问题。用户存储在云端以及需要云计算的信息往往是用户的隐私信息,在云计算过程中容易被恶意窃取。也就是说,目前的云计算等服务面临着信息安全的问题。
技术实现思路
为了解决上述问题的至少一个方面,本公开实施例提供一种用于安全的多方计算的计算机可执行方法、计算机可读存储介质和计算机系统。在一个方面,提供一种计算机可执行方法,包括:在第一计算系统中接收多个密文,其中,所述多个密文采用公钥分别对多个明文进行加密而形成;在第二计算系统中接收私钥的至少一部分;和第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值,其中,所述加密基于加法同态的加密方案实现,所述公钥和所述私钥为基于所述加法同态的加密方案生成的公钥/私钥对,所述函数包括乘法运算、除法运算和比较运算中的至少一种。可选地,所述第一计算系统为公共云,所述第二计算系统为私有云或受用户信任的可信云。可选地,所述在第二计算系统中接收私钥的至少一部分包括:在第二计算系统中接收完整的私钥。可选地,所述第一计算系统和所述第二计算系统均为云,并且所述第一计算系统和所述第二计算系统中的任何一个都不受用户信任。可选地,所述计算机可执行方法还包括:在第一计算系统中接收所述私钥的第一部分,其中,在第二计算系统中接收私钥的至少一部分包括:在第二计算系统中接收私钥的第二部分。可选地,所述函数包括乘法运算,所述乘法运算基于以下公式:E(m1·m2)=E((m1-r1)·(m2-r2)+m1r2+m2r1-r1r2),其中,E表示基于Paillier加密方案进行加密,m1、m2表示多个明文,r1、r2为多个随机数,且n=pq,p、q为Paillier加密方案随机选取的2个大素数。可选地,所述第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值包括:所述第一计算系统选取2个随机数r1、r2;所述第一计算系统分别计算E(m1-r1)和E(m2-r2);所述第一计算系统将E(m1-r1)和E(m2-r2)传给所述第二计算系统;所述第二计算系统基于Paillier加密方案并且利用所述完整的私钥分别对E(m1-r1)和E(m2-r2)进行解密,以得到m1-r1和m2-r2;所述第二计算系统计算(m1-r1)·(m2-r2);所述第二计算系统基于Paillier加密方案对(m1-r1)·(m2-r2)进行加密,得到E((m1-r1)·(m2-r2));所述第二计算系统将E((m1-r1)·(m2-r2))传给所述第一计算系统;和所述第一计算系统分别计算和E(n-r1r2),并且将E((m1-r1)·(m2-r2))、和E(n-r1r2)四者相乘,以计算出E(m1·m2)的值。可选地,所述函数包括乘法运算,所述乘法运算基于以下公式:E(m1·m2)=E((m1-r1)·(m2-r2)+m1r2+m2r1-r1r2),其中,E表示基于Paillier加密方案进行加密,m1、m2表示多个明文,r1、r2为多个随机数,且n=pq,p、q为Paillier加密方案随机选取的2个大素数。可选地,所述第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值包括:所述第一计算系统选取2个随机数r1、r2;所述第一计算系统分别计算E(m1-r1)和E(m2-r2);所述第一计算系统基于Paillier加密方案且利用所述私钥的第一部分对E(m1-r1)和E(m2-r2)分别进行解密,得到中间解密结果D1′和D2′;所述第一计算系统将所述E(m1-r1)、所述E(m2-r2)以及所述中间解密结果D1′和D2′传给所述第二计算系统;所述第二计算系统基于Paillier加密方案且利用所述私钥的第二部分进行解密,以得到m1-r1和m2-r2;所述第二计算系统计算(m1-r1)·(m2-r2);所述第二计算系统基于Paillier加密方案对(m1-r1)·(m2-r2)进行加密,得到E((m1-r1)·(m2-r2));所述第二计算系统将E((m1-r1)·(m2-r2))传给所述第一计算系统;和所述第一计算系统分别计算和E(n-r1r2),并且将E((m1-r1)·(m2-r2))、和E(n-r1r2)四者相乘,以计算出E(m1·m2)的值。可选地,所述函数包括除法运算,所述除法运算基于以下公式:其中,E表示基于Paillier加密方案进行加密,m1、m2表示多个明文,r1、r2为多个随机数,且n=pq,p、q为Paillier加密方案随机选取的2个大素数。可选地,所述第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值包括:所述第一计算系统选取2个随机数r1、r2;所述第一计算系统分别计算E((m1+r2m2)·r1)和E(m2r1);所述第一计算系统将E((m1+r2m2)·r1)和E(m2r1)传给所述第二计算系统;所述第二计算系统基于Paillier加密方案并且利用所述完整的私钥分别对E((m1+r2m2)·r1)和E(m2r1)进行解密,以得到(m1+r2m2)·r1和m2r1;所述第二计算系统计算所述第二计算系统基于Paillier加密方案对进行加密,得到所述第二计算系统将传给所述第一计算系统;和所述第一计算系统计算E(n-r2),并且将和E(n-r2)两者相乘,以计算出的值。可选地,所述函数包括除法运算,所述除法运算基于以下公式:其中,E表示基于Paillier加密方案进行加密,m1、m2表示多个明文,r1、r2为多个随机数,且n=pq,p、q为Paillier加密方案随机选取的2个大素数。可选地,所述第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值包括:所述第一计算系统选取2个随机数r1、r2;所述第一计算系统分别计算E((m1+r2m2)·r1)和E(m本文档来自技高网...

【技术保护点】
1.一种计算机可执行方法,包括:/n在第一计算系统中接收多个密文,其中,所述多个密文采用公钥分别对多个明文进行加密而形成;/n在第二计算系统中接收私钥的至少一部分;和/n第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值,/n其中,所述加密基于加法同态的加密方案实现,所述公钥和所述私钥为基于所述加法同态的加密方案生成的公钥/私钥对,所述函数包括乘法运算、除法运算和比较运算中的至少一种。/n

【技术特征摘要】
1.一种计算机可执行方法,包括:
在第一计算系统中接收多个密文,其中,所述多个密文采用公钥分别对多个明文进行加密而形成;
在第二计算系统中接收私钥的至少一部分;和
第一计算系统和第二计算系统协作计算所述多个密文,以获得所述多个明文的函数的值,
其中,所述加密基于加法同态的加密方案实现,所述公钥和所述私钥为基于所述加法同态的加密方案生成的公钥/私钥对,所述函数包括乘法运算、除法运算和比较运算中的至少一种。


2.根据权利要求1所述的计算机可执行方法,其中,所述第一计算系统为公共云,所述第二计算系统为私有云或受用户信任的可信云。


3.根据权利要求2所述的计算机可执行方法,其中,所述在第二计算系统中接收私钥的至少一部分包括:在第二计算系统中接收完整的私钥。


4.根据权利要求1所述的计算机可执行方法,其中,所述第一计算系统和所述第二计算系统均为云,并且所述第一计算系统和所述第二计算系统中的任何一个都不受用户信任。


5.根据权利要求4所述的计算机可执行方法,还包括:在第一计算系统中接收所述私钥的第一部分,
其中,在第二计算系统中接收私钥的至少一部分包括:在第二计算系统中接收私钥的第二部分。


6.根据权利要求1-5中任一项所述的计算机可执行方法,其中,所述乘法运算基于以下公式:
E(m1·m2)=E((m1-r1)·(m2-r2)+m1r2+m2r1-r1r2),
所述除法运算基于以下公式:



所述比较运算基于以下公式:
cmp=((m1-m2)r1+r2)-r2,
其中,E表示基于...

【专利技术属性】
技术研发人员:王伟曹宁
申请(专利权)人:王伟
类型:发明
国别省市:北京;11

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

1