一种云计算平台下最小值的保密计算方法技术

技术编号:19547194 阅读:26 留言:0更新日期:2018-11-24 21:11
本发明专利技术公开一种云计算平台下最小值的保密计算方法,包括以下步骤:S1、每个参与者Pi分别依次输入各自所持的隐私数据xi;S2、每个参与者Pi将各自所持的隐私数据xi编码成一个与其对应的m维的0‑1数组Xi=(αi1,…,αim);S3、每个参与者Pi各自利用NTRU加密算法和自己的公钥pki=hi对数组Xi加密,得到E(Xi)=(E(αi1),…,E(αim));S4、每个参与者Pi将加密的数组E(Xi)发送给云服务器,云服务器做全同态计算得到E(k);S5、对云服务器的运算结果E(k)进行联合解密,得到最小值vk=min{x1,…,xN};S6、输出最小值vk。本发明专利技术的方法效率高,实用性好,值得推广。

A Minimum Secret Computing Method on Cloud Computing Platform

The invention discloses a method for calculating the minimum value of confidentiality under cloud computing platform, which includes the following steps: S1, each participant Pi inputs their own private data Xi in turn; S2, each participant Pi encodes their own private data Xi into an array Xi= (alphai1,...) corresponding to m-dimension. Each participant Pi uses NTRU encryption algorithm and his own public key pki=hi to encrypt the array Xi, and gets E(Xi)=(E(alphai1),... 4, Pi sends the encrypted array E (Xi) to the cloud server, and the cloud server calculates the homomorphism to get E (k); S5, decrypts the operation result E (k) of the cloud server jointly, and gets the minimum value VK = min {x1,... XN}; S6; output minimum vk. The method of the invention has high efficiency and good practicability, and is worth popularizing.

【技术实现步骤摘要】
一种云计算平台下最小值的保密计算方法
本专利技术属于计算机应用
,具体涉及一种云计算平台下最小值的保密计算方法。
技术介绍
2017年窦家维等人首次给出了安全多方计算最小值的解决方法1,该方法是基于编码,ElGamal同态加密算法,并结合秘密共享以及门限密码体制设计的,方法1不可抵抗含拥有私钥参与者的合谋攻击;接着,基于编码、ElGamal同态加密和秘密分割等方法设计了另一个保密计算最小值的方法2,该方法由于采用了密文分割技术,并要通过不经意传输进行实现,使得的通信复杂度和计算复杂度骤增;窦等人巧妙采用ElGamal门限密码体制设计了保密计算最小值的方法2,较方法1,方法2其安全性提高了。但是由于窦等人所有的方法都是通过参与者之间进行交互完成计算的,而且是多个参与者交互完成,计算能力仅仅依靠参与者自身,而在解决复杂问题时参与者自身计算能力往往是有限的,同时效率也较低。
技术实现思路
有鉴于此,本专利技术提供一种云计算平台下最小值的保密计算方法,针对现有技术的不足,采用0-1编码,将隐私数据隐藏于对应编码的数组中,接着采用多秘钥NTRU全同态加密算法,将最小值问题架构在云计算平台上进行解决,设计相应的安全多方计算方法。本专利技术的技术方案是:一种云计算平台下最小值的保密计算方法,包括以下步骤:S1、每个参与者Pi分别依次输入各自所持的隐私数据xi,xi=x1,…,xN∈{v1,v2,…,vm}=U,其中,i=1,2...N,U是一个全序集,满足v1<v2<…<vm;S2、每个参与者Pi将各自所持的隐私数据xi通过式(1)编码成一个与其对应的m维的0-1数组Xi=(αi1,…,αim),所述式(1)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S3、每个参与者Pi执行多秘钥NTRU加密算法的密钥生成系统,产生公钥pki=hi和私钥ski=fi,每个参与者Pi各自利用NTRU加密算法和自己的公钥pki=hi对数组Xi加密,得到E(Xi)=(E(αi1),…,E(αim));S4、每个参与者Pi将加密的数组E(Xi)发送给云服务器,云服务器利用式(2)做全同态计算,所述式(2)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S5、对云服务器的运算结果E(k)进行联合解密,得到最小值vk=min{x1,…,xN};S6、输出最小值vk。优选的,所述S5中联合解密的方法包括以下步骤:S1、云服务器将E(k)发送给Pi中的任意一个参与者Pλ,其中λ∈{1,2...N},Pλ收到云服务器发来的E(k)后,利用私钥skλ=fλ进行解密,计算uλ=E(k)fλ=E(k)·skλ;S2、Pλ将uλ发送给除过Pλ之外的其他N-1个参与者中的任意一个参与者Pβ,其中β∈{1,2...λ-1,λ+1...N},Pβ收到云服务器发来的uλ后,利用私钥skβ=fβ进行再次解密,计算uβ=uλfβ=E(k)fλfβ=E(k)·skλ·skβ;S3、Pβ再次将uβ发送给除过Pβ和Pλ之外的其他N-2个参与者中的任意一个参与者,再次利用参与者的私钥进行解密,如此执行下去,直至所有的参与者Pi均参与过解密,计算出k=uN=E(k)f1f2...fN。与现有技术相比,本专利技术提供的一种云计算平台下最小值的保密计算方法,其有益效果是:1、本专利技术提出了一种新的0-1编码,并结合NTRU同态加密算法给出最小值的计算方法,该方法由于采用NTRU加密方案,具有抗量子攻击的功能;2、本专利技术首次将最小值求解问题架构在云计算平台上,并提出了解决的方法;3、本专利技术的计算效率高,由于采用了云计算的云外包技术,为用户节省了大量的计算成本,而且本方案使用的加密方案的效率较高,因此二者都导致本方法的效率较优。4、本专利技术实用性好,值得推广。附图说明图1为本专利技术的总体结构示意图。具体实施方式本专利技术提供了一种云计算平台下最小值的保密计算方法,下面结合图1的结构示意图,对本专利技术进行说明。如图1所示,本专利技术提供的一种云计算平台下最小值的保密计算方法,包括以下步骤:S1、每个参与者Pi分别依次输入各自所持的隐私数据xi,xi=x1,…,xN∈{v1,v2,…,vm}=U,其中,i=1,2...N,U是一个全序集,满足v1<v2<…<vm;S2、每个参与者Pi将各自所持的隐私数据xi通过式(1)编码成一个与其对应的m维的0-1数组Xi=(αi1,…,αim),所述式(1)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S3、每个参与者Pi执行多秘钥NTRU加密算法的密钥生成系统,产生公钥pki=hi和私钥ski=fi,每个参与者Pi各自利用NTRU加密算法和自己的公钥pki=hi对数组Xi加密,得到E(Xi)=(E(αi1),…,E(αim));S4、每个参与者Pi将加密的数组E(Xi)发送给云服务器,云服务器利用式(2)做全同态计算,所述式(2)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S5、对云服务器的运算结果E(k)进行联合解密,得到最小值vk=min{x1,…,xN};S6、输出最小值vk。进一步的,所述S5中联合解密的方法包括以下步骤:S1、云服务器将E(k)发送给Pi中的任意一个参与者Pλ,其中λ∈{1,2...N},Pλ收到云服务器发来的E(k)后,利用私钥skλ=fλ进行解密,计算uλ=E(k)fλ=E(k)·skλ;S2、Pλ将uλ发送给除过Pλ之外的其他N-1个参与者中的任意一个参与者Pβ,其中β∈{1,2...λ-1,λ+1...N},Pβ收到云服务器发来的uλ后,利用私钥skβ=fβ进行再次解密,计算uβ=uλfβ=E(k)fλfβ=E(k)·skλ·skβ;S3、Pβ再次将uβ发送给除过Pβ和Pλ之外的其他N-2个参与者中的任意一个参与者,再次利用参与者的私钥进行解密,如此执行下去,直至所有的参与者Pi均参与过解密,计算出k=uN=E(k)f1f2...fN。本专利技术的实施例之一为云计算平台下最小值的保密计算方法,其计算过程如下所示:1、问题描述设有N个参与者P1,…,PN,分别持有一个隐私数据x1,…,xN,他们想计算这N个参与者的最小值,但每一位参与者都不想泄漏自己的隐私数据信息。2、问题转化先让每一位参与者Pi将自己的隐私数据xi按照本文给出的0-1编码方法编码一个0-1数组,然后结合多秘钥NTRU同态加密算法解决了上述提出的最值问题。0-1编码:设x1,…,xN∈{v1,v2,…,vm}=U,这里U是一个全序集,即满足v1<v2<…<vm,每一位参与者Pi将所持的隐私数据xi编码成一个m维0-1数组Xi=(αi1,…,αim),方法如下:这样,Pi的隐私数据xi与编码的数组Xi=(αi1,…,αim)是对应的,对N个数组X1,X2,…,XN作乘积,即将数组对应的元素相乘,得到新的数组Y=(y1,…,ym),其中再将数组Y的所有元素相加,得到即:由Xi的构造式(1)以及计算k的表达式(2),得出以下结论:如果对于每一个xi(i=[m]),按照式(1)构造数组Xi,并以表达式(2)计算k,本文档来自技高网...

【技术保护点】
1.一种云计算平台下最小值的保密计算方法,其特征在于,包括以下步骤:S1、每个参与者Pi分别依次输入各自所持的隐私数据xi,xi=x1,…,xN∈{v1,v2,…,vm}=U,其中,i=1,2...N,U是一个全序集,满足v1

【技术特征摘要】
1.一种云计算平台下最小值的保密计算方法,其特征在于,包括以下步骤:S1、每个参与者Pi分别依次输入各自所持的隐私数据xi,xi=x1,…,xN∈{v1,v2,…,vm}=U,其中,i=1,2...N,U是一个全序集,满足v1<v2<…<vm;S2、每个参与者Pi将各自所持的隐私数据xi通过式(1)编码成一个与其对应的m维的0-1数组Xi=(αi1,…,αim),所述式(1)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S3、每个参与者Pi执行多秘钥NTRU加密算法的密钥生成系统,产生公钥pki=hi和私钥ski=fi,每个参与者Pi各自利用NTRU加密算法和自己的公钥pki=hi对数组Xi加密,得到E(Xi)=(E(αi1),…,E(αim));S4、每个参与者Pi将加密的数组E(Xi)发送给云服务器,云服务器利用式(2)做全同态计算,所述式(2)如下所示:其中,i=1,2,…,N;j=1,2,…,m;S...

【专利技术属性】
技术研发人员:李占利陈立朝陈振华
申请(专利权)人:西安科技大学
类型:发明
国别省市:陕西,61

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

1