本发明涉及一种保护外包计算中数据和计算结果的方法,以保证其隐私性和完整性。
背景技术:
1、随着互联网技术的不断发展,云计算和边缘计算等新型计算模式已经逐渐普及,并成为了现代社会中不可或缺的一部分。在这些计算模式中,由于计算任务规模较大,需要消耗大量的计算资源和存储资源。然而,对于许多小型和中型企业以及个人用户而言,建立自己的计算平台成本较高,因此他们通常会选择将计算任务外包给云服务提供商或者边缘节点进行处理。
2、在这种计算模式下,外包计算的隐私和安全问题就成为了一个重要的研究方向。因为云服务提供商或者边缘节点有可能会窃取或篡改外包计算中的数据和计算结果,从而威胁到用户的隐私和安全。因此,如何保护外包计算中的数据和计算结果,保证其隐私性和完整性,成为了云计算和边缘计算领域中的一个重要问题。
3、全同态加密技术是最常用的保护外包计算隐私性的方法。全同态加密技术可以在不破坏密文的情况下进行加密数据的处理和计算,从而保护数据的隐私性。但是,全同态加密方案的计算效率较低,通常需要消耗大量的时间和计算资源。为了解决这个问题,同态秘密分享技术被提出,通过引入一个新的计算服务器,减少在加密数据上实施计算的消耗。
4、可验证计算技术是最常用的保护外包计算完整性的方法。在外包计算中,由于计算过程通常由云服务提供商完成,因此用户无法直接验证计算结果的正确性。可验证计算技术要求计算服务器在返回计算结果的同时,返回一个证据,用户可以用较少的时间和计算资源来对接收到的计算结果和证据进行验证,从而相信接收到的计算结果是正确的。
技术实现思路
1、本发明的目的是:实现安全高效的多项式外包计算,保障数据隐私和计算结果的正确性和完整性。
2、为了达到上述目的,本发明的技术方案是提供了一种安全高效的多服务器外包多项式计算的方法,其特征在于,包括以下步骤:
3、步骤1、由可信的第三方运用基于paillier加密的同态秘密分享方法生成公钥pkhss和计算密钥ek0和ek1,pkhss是公开信息,计算密钥ek0和ek1分别发送给两个计算服务器;
4、步骤2、可信的第三方运用线性同态承诺方案的共识生成算法,生成公开信息其中,g1,h是群g1中的两个生成元,分别是g1,h在群g1中的α倍偏移,即α是随机数,g2是群g2中的一个生成元,e表示一个双线性映射操作;
5、步骤3、用户用公钥pkhss和计算密钥对输入x进行加密,获得密文,并将其分发给两个计算服务器;
6、步骤4、每个计算服务器用各自的计算密钥ek0和ek1,在加密后的密文上进行运算,分别输出各自的部分计算结果,表示为密文<y>0和密文<y>1;
7、步骤5、随机选取秘密标记a,使两个计算服务器分别持有秘密标记<a>0和秘密标记<a>1,且有<a>1-<a>0=a,两个计算服务器分别利用秘密标记<a>0和秘密标记<a>1对步骤4得到两个对应的密文<y>0、<y>1进行计算,得到<ay>0和<ay>1;
8、步骤6、计算服务器运用线性同态承诺方案将<ay>0和<ay>1映射到双线性群中,分别得到群中元素c0,c1和承诺信息υ0,υ1,其中
9、步骤7、基于非交互式的零知识证明schnorrproof过程,每个计算服务器分别通过伪随机函数生成噪声j,j0,j1,其中j1-j0=j,并使用随机预言机生成公共随机噪声e=hash(e(hj,g2)),计算τ0=j0-e·υ0,τ1=j1-e·υ1,此时,τ0,τ1是看起来均匀分布的随机数;
10、步骤8、每个计算服务器分别输出(<y>b,cb,e,τb),b∈{0,1};
11、步骤9、验证者接收到两个服务器的输出,首先恢复出计算结果y=<y>1-<y>0;
12、步骤10、验证者首先验证两个服务器返回的公共噪声e是否相等以及c0,c1是否是正确的承诺形式,若验证失败,则拒绝接受计算结果y;
13、步骤11、验证者在双线性群中验证式子是否等于公共噪声e,若不相等,则拒绝接受计算结果y,反之,通过验证。
14、本发明运用同态秘密分享技术、可验证计算技术以及零知识证明技术,实现了保护计算隐私性、结果完整性、零知识性的公开可验证的高效外包计算方案,本发明同时满足了隐私性、公开可验证性、零知识性和可外包性。
1.一种安全高效的多服务器外包多项式计算的方法,其特征在于,包括以下步骤: