一种满足零知识证明的同态加密系统技术方案

技术编号:37381365 阅读:23 留言:0更新日期:2023-04-27 07:22
本发明专利技术涉及一种满足零知识证明的同态加密系统,包括:第一终端根据K

【技术实现步骤摘要】
一种满足零知识证明的同态加密系统


[0001]本专利技术属于隐私数据保护算法
,涉及一种满足零知识证明的同态加密系统。

技术介绍

[0002]在大数据时代,数据价值急剧增长,与国家安全、社会发展和个人合法权益的关系也日渐紧密。数据流通是释放数据价值的重要环节,但随着互联网的高速发展,隐私数据的泄露问题日趋严重。同态加密是一种特殊的加密方式,计算者能够直接在密文上进行运算,其计算解密后的结果与同一方法通过明文计算的结果相同。同态加密可以使参与计算者在无密钥的情况下进行计算,计算过程中不需要对每一步骤的计算结果进行解密,从而避免了高昂的计算开销。参与计算的密文也不需要发送给拥有密钥的一方,减少了在通信上的代价,也可以将分布式计算任务分配到多个参与方来平衡花销代价。通过密文计算可以使数据需求者只获得最后的结果,并不能知晓中间的计算过程以及中间密文的信息,提高了数据的安全性与隐私性。目前基于同态加密的交易隐私保护方案,存在验证率低和数据易泄露等问题,难以在公开性与保密性的矛盾中找到合理的利用方式,降低了在实际应用中的公平可信性和安全性,阻碍了隐私保护技术的发展。零知识证明能够向其他人证明数据的合法性。构建零知识证明系统及其设计一些其他安全协议最重要的一个技术便是“承诺”,与现实生活中作出的承诺类似,在承诺协议中,承诺方首先对其他人作出一个承诺,并在之后的验证阶段证明已经对作出的承诺进行了履行。简单来说,承诺协议是一类两方参与的两阶段协议,首先是承诺阶段,承诺方对某一消息v作出承诺,并发送给验证方,同时要保证验证方不知道关于消息v的任何信息。另一个是打开阶段,承诺者公开消息v,证明与在承诺阶段所做的承诺一致,没有篡改。承诺协议拥有两个基本性质隐藏性和绑定性。隐藏性是指在在承诺阶段除了承诺方任何人都不能知道关于所作承诺消息v的信息,可以对消息进行很好的隐藏。绑定性是指在承诺打开阶段,任何人不能用除了消息v以外的信息打开承诺,并且通过验证。同态加密与零知识证明技术结合应用能够很好的解决数据滥用、无法监管验证的问题。
[0003]通过上述分析,现有技术存在的问题及缺陷为:在日常应用中,同态加密算法由于具有计算复杂度低、性能较好的特点,被广泛应用在各大场景中,但是经过加密的数据都是不可见的,这又会导致数据滥用、无法监管验证的情况出现,已有的半同态加密算法并不能进行数据监管以及进行零知识相等性证明。

技术实现思路

[0004]为克服相关技术中存在的问题,本公开实施例提供一种满足零知识证明的同态加密系统。所述技术方案如下:
[0005]根据本公开实施例的第一方面,提供一种满足零知识证明的同态加密系统,包括:
[0006]第一终端,用于根据K

Elgamal算法和第二终端对应的公钥获取数据对应的第一
密文;
[0007]所述第一终端,还用于根据所述K

Elgamal算法和监管终端对应的公钥获取所述数据对应的第二密文;
[0008]所述第一终端,还用于根据M

Pedersen承诺、所述第二终端对应的公钥、所述监管终端对应的公钥构建所述数据对应的验证参数;
[0009]所述第一终端,还用于将所述第一密文发送给第二终端,将所述第二密文发送给所述监管终端,将所述验证参数上传至区块链平台;
[0010]所述第二终端,用于根据所述第二终端对应的私钥对所述第一密文进行解密得到所述数据;
[0011]所述监管终端,用于根据所述监管终端对应的私钥对所述第二密文进行解密得到所述数据;
[0012]所述区块链平台,用于根据所述第一密文、所述第二密文和所述验证参数进行相等性验证,若验证通过,则所述区块链平台记录所述第一终端与所述第二终端之间传输的所述数据,若验证不通过,则所述区块链平台不记录所述第一终端与所述第二终端户之间传输的所述数据。
[0013]在一个实施例中,
[0014]所述第二终端,用于根据公式生成所述第二终端对应的公钥;
[0015]所述监管终端,用于根据公式生成所述监管终端对应的公钥;
[0016]其中,所述β1为所述第二终端对应的公钥;所述a1为所述第二终端对应的私钥;所述β2为所述监管终端对应的公钥;所述a2为所述监管终端对应的私钥;(g,h,q)为系统参数,所述p为随机的素数,根据所述q构建一个q阶有限域Z
q
,g和h是中的生成元,所述为所述Z
q
的乘法群;所述a1为随机整数且a1<q;所述a2为随机整数且a2<q。
[0017]在一个实施例中,
[0018]所述第一终端,用于根据下述公式获取密文:
[0019][0020][0021][0022]其中,所述M为所述数据;
[0023]所述i=1时,(y
11
、y
21
、y
31
)表示所述第一密文;所述k
11
,k
21
∈Z
q
‑1;且(k
11
,q

1)=1;(k
21
,q

1)=1,表示第一随机数;
[0024]所述i=2时,(y
12
、y
22
、y
32
)表示所述第二密文;所述k
12
,k
22
∈Z
q
‑1;且(k
12
,q

1)=1;(k
22
,q

1)=1,表示第二随机数。
[0025]在一个实施例中,
[0026]所述第二终端,用于根据获取所述数据;
[0027]所述监管终端,用于根据获取所述数据。
[0028]在一个实施例中,
[0029]所述第一终端,还用于使用不同的参数对所述数据进行承诺得到:
[0030][0031][0032]其中,所述b1、所述d1、所述b2和所述d2为第三随机数;所述M为所述数据;
[0033]所述第一终端,还用于根据下述公式计算t1和t2;
[0034][0035][0036]其中,所述r1,所述r2和所述r3为第二随机数;
[0037]所述第一终端,还用于根据第一哈希函数对β1,β2,t1,t2,y
21
,y
22
进行哈希运算得到哈希值c1;
[0038]所述第一终端,还用于根据下述公式计算s1、s2和s3;
[0039][0040]s2=r2+c1*d1;
[0041]s3=r3+c1*d2;
[0042]所述第一终端,还用于根据所述t1,t2,s1,s2,s3获取所述验证参数(t1,t2,s1,s2,s3)。
[0043]在一个实施例中,
[0044]所述区块链平台,还用于本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种满足零知识证明的同态加密系统,其特征在于,包括:第一终端,用于根据K

Elgamal算法和第二终端对应的公钥获取数据对应的第一密文;所述第一终端,还用于根据所述K

Elgamal算法和监管终端对应的公钥获取所述数据对应的第二密文;所述第一终端,还用于根据M

Pedersen承诺、所述第二终端对应的公钥、所述监管终端对应的公钥构建所述数据对应的验证参数;所述第一终端,还用于将所述第一密文发送给第二终端,将所述第二密文发送给所述监管终端,将所述验证参数上传至区块链平台;所述第二终端,用于根据所述第二终端对应的私钥对所述第一密文进行解密得到所述数据;所述监管终端,用于根据所述监管终端对应的私钥对所述第二密文进行解密得到所述数据;所述区块链平台,用于根据所述第一密文、所述第二密文和所述验证参数进行相等性验证,若验证通过,则所述区块链平台记录所述第一终端与所述第二终端之间传输的所述数据,若验证不通过,则所述区块链平台不记录所述第一终端与所述第二终端户之间传输的所述数据。2.根据权利要求1所述的满足零知识证明的同态加密系统,其特征在于,所述第二终端,用于根据公式生成所述第二终端对应的公钥;所述监管终端,用于根据公式生成所述监管终端对应的公钥;其中,所述β1为所述第二终端对应的公钥;所述a1为所述第二终端对应的私钥;所述β2为所述监管终端对应的公钥;所述a2为所述监管终端对应的私钥;(g,h,q)为系统参数,所述p为随机的素数,根据所述q构建一个q阶有限域Z
q
,g和h是中的生成元,所述为所述Z
q
的乘法群;所述a1为随机整数且a1<q;所述a2为随机整数且a2<q。3.根据权利要求2所述的满足零知识证明的同态加密系统,其特征在于,所述第一终端,用于根据下述公式获取密文:所述第一终端,用于根据下述公式获取密文:所述第一终端,用于根据下述公式获取密文:其中,所述M为所述数据;所述i=1时,(y
11
、y
21
、y
31
)表示所述第一密文;所述k
11
,k
21
∈Z
q
‑1;且(k
11
,q

1)=1;(k
21
,q

1)=1,表示第一随机数;所述i=2时,(y
12
、y
22...

【专利技术属性】
技术研发人员:谢敏房春朋裴庆祺肖阳马立川
申请(专利权)人:广州链融信息技术有限公司
类型:发明
国别省市:

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

1