【技术实现步骤摘要】
N2),其中,M1、M2是同一密文分别使用密钥λ1、λ2的部分解密结果,
[0017]优选的,所述安全乘法协议SMUL的具体实现步骤如下:
[0018]S1
‑
1、密钥平台初始化生成公私密钥(pk,sk),公钥pk=(g,N),其中N=pq,g=N+1且p、q均为强素数;私钥sk=(λ,μ),其中λ=lcm(p
‑
1,q
‑
1),μ=λ
‑
1 mod N;将私钥sk分成两个部分(λ1,λ2),其中,部分私钥λ1为在区间(0,λμ)中的整数,部分私钥λ2=λμ
‑
λ1;再将密钥组(pk,λ1)和(pk,λ2)分别发送给云服务器ALICE和云服务器BOB;
[0019]S1
‑
2、云服务器ALICE利用随机数和Paillier同态计算方法对密文和进行加性致盲处理,然后将致盲后的密文X、Y合并为密文C,并使用部分私钥λ1对密文C进行部分解密得到密文C1,再将密文对<C,C1>发送给云服务器BOB,即:C=X
L
·
Y、C1=PDec(λ1,C),其中,r1、r2为随机数,且r1、r2∈{0,1}
σ
,σ为安全参数;L是一个常数,且满足L≥2
σ+2
;
[0020]S1
‑
3、云服务器BOB使用部分λ2对密文C进行部分解密得到密文C2,用阈值解密算法解密密文对<C1,C2>得到明文(x+r1)< ...
【技术保护点】
【技术特征摘要】
1.一种支持批处理的安全同态计算方法,包括密钥平台、云服务器ALICE和云服务器BOB,其中,所述密钥平台使用Paillier密码系统,其特征在于,所述云服务器ALICE和云服务器BOB为非共谋双服务器架构;所述密钥平台用于给云服务器ALICE和云服务器BOB分发公、私密钥;所述Paillier密码系统包括加密算法、部分解密算法和阈值解密算法;所述安全同态计算方法还包括安全乘法协议SMUL、批处理安全乘法协议BatchSMUL、安全比较协议SCMP和批处理部分解密协议BatchPDec;所述安全乘法协议SMUL为即通过对密文的一系列计算得到明文xy对应的密文所述批处理安全乘法协议BatchSMUL是所述安全乘法协议SMUL的拓展,用于实现对加密数据的批量乘法运算和传输;所述安全比较协议SCMP为即在密文状态下实现对明文x、y的比较;所述批处理部分解密协议BatchPDec是所述安全比较协议SCMP的扩展,用于实现对密文状态下的数据的批量比较和传输。2.根据权利要求1所述的一种支持批处理的安全同态计算方法,其特征在于,所述Paillier密码系统的加密算法为Enc(pk,m)=(1+mN)
·
r
N
mod N2,其中,m为待加密的明文,r为小于N的随即正整数。3.根据权利要求2所述的一种支持批处理的安全同态计算方法,其特征在于,所述Paillier密码系统的部分解密算法为其中,λ
i
为部分密钥,是明文m的密文。4.根据权利要求3所述的一种支持批处理的安全同态计算方法,其特征在于,所述Paillier密码系统的阈值解密算法为TDec(M1,M2)=L(M1.M2mod N2),其中,M1、M2是同一密文分别使用密钥λ1、λ2的部分解密结果,5.根据权利要求4所述的一种支持批处理的安全同态计算方法,其特征在于,所述安全乘法协议SMUL的具体实现步骤如下:S1
‑
1、密钥平台初始化生成公私密钥(pk,sk),公钥pk=(g,N),其中N=pq,g=N+1且p、q均为强素数;私钥sk=(λ,μ),其中λ=lcm(p
‑
1,q
‑
1),,=λ
‑1mod N;将私钥sk分成两个部分(λ1,λ2),其中,部分私钥λ1为在区间(0,λμ)中的整数,部分私钥λ2=λμ
‑
λ1;再将密钥组(pk,λ1)和(pk,λ2)分别发送给云服务器ALICE和云服务器BOB;S1
‑
2、云服务器ALICE利用随机数和Paillier同态计算方法对密文和进行加性致盲处理,然后将致盲后的密文X、Y合并为密文C,并使用部分私钥λ1对密文C进行部分解密得到密文C1,再将密文对<C,C1>发送给云服务器BOB,即:C=X
L
·
Y、C1=PDec(λ1,C),其中,r1、r2为随机数,且r1、r2∈{0,1}
σ
,σ为安全参数;L是一个常数,且满足L≥2
σ+2
;S1
‑
3、云服务器BOB使用部分私钥λ2对密文C进行部分解密得到密文C2,用阈值解密算法
解密密文对<C1,C2>得到明文(x+r1)
·
(y+r2),将加密后得到的发送给云服务器ALICE,计算的流程包括:C2=PDec(λ2,C)、L
·
(x+r1)+y+r2=TDec(C1,C2)、y+r2=(L
·
(x+r1)+y+r2)mod L;S1
‑
4、云服务器ALICE通过Paillier同态计算得到计算流程为:计算流程为:6.根据权利要求4所述的一种支持批处理的安全同态计算方法,其特征在于,所述批处理安全乘法协议BatchSMUL的具体实现步骤如下:S2
‑
1、密钥平台初始化生成公私密钥(pk,sk),公钥pk=(g,N),其中N=pq,g=N+1且p、q均为强素数;私钥sk=(λ,μ),其中λ=lcm(p
‑
1,q
‑
1),μ=λ
‑1mod N;将私钥sk分成两个部分(λ1,λ2),其中,部分私钥λ1为在区间(0,λμ)中的整数,部分私钥λ2=λμ
‑
λ1;再将密钥组(pk,λ1)和(pk,λ2)分别发送给云服务器ALICE和云服务器BOB;S2
‑
2、云服务器ALICE有δ个密文对且利用随机数和Paillier同态计算方法对每一个密文对进行加性致盲处理,然后将致盲后的密文X
i
、Y
i
合并为密文c
i
,得到密文组{c1,
…
,c
δ
},将密文组通过积运算聚合成一个单独的密文C,...
【专利技术属性】
技术研发人员:赵搏文,吴旻哲,肖阳,裴庆祺,
申请(专利权)人:广州链融信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。