零知识范围证明方法、装置、终端设备及计算机存储介质制造方法及图纸

技术编号:38058109 阅读:9 留言:0更新日期:2023-06-30 11:24
本发明专利技术公开了一种零知识范围证明方法、装置、终端设备及计算机存储介质,基于需要证明的目标数值及密钥集生成第一证明公式,进而基于第一证明公式和目标证明范围的范围最小值生成第二证明公式,从而根据第一证明公式和第二证明公式得到第一待证明数值,并对第一待证明数值进行零知识范围证明,在确定第一待证明数值大于或等于0时确定目标数值大于或等于范围最小值,同时,基于第一证明公式和目标证明范围的范围最大值生成第三证明公式,从而根据第一证明公式和第三证明公式到第二待证明数值,并对第二待证明数值进行反向零知识范围证明,在确定第二待证明数值小于或等于0时确定目标数值小于或等于范围最大值。目标数值小于或等于范围最大值。目标数值小于或等于范围最大值。

【技术实现步骤摘要】
零知识范围证明方法、装置、终端设备及计算机存储介质


[0001]本专利技术涉及区块链
,尤其涉及一种零知识范围证明方法、装置、终端设备及计算机可读存储介质。

技术介绍

[0002]零知识范围证明(Zero knowledge range proof)指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某一数值在0至2
n

1这个范围内的一种证明方法,被广泛应用于区块链技术中以起到隐私交易或隐私金额的效果。
[0003]但是,目前零知识范围证明所能证明的目标范围的范围最小值只能为0,同时,目前零知识范围证明所能证明的目标范围的范围最大值无法低于2
32

1,如此就导致了零知识范围证明的证明范围精确度较低,因此,如何令零知识范围证明的证明范围能够更精确,也就成为了行业内亟需解决的技术问题。

技术实现思路

[0004]本专利技术的主要目的在于提供一种零知识范围证明方法、装置、终端设备及计算机可读存储介质,旨在可以让零知识范围证明证明某一数值在任意的两个非0正整数组成的数值区间内,从而令零知识范围证明的证明范围更精确,提高区块链隐私保护系统隐私保护的范畴。
[0005]为实现上述目的,本专利技术提供一种零知识范围证明方法,所述零知识范围证明方法包括以下步骤:
[0006]获取需要证明的目标数值、目标证明范围及密钥集,并基于所述目标数值和所述密钥集生成第一证明公式;
[0007]基于所述第一证明公式和所述目标证明范围的范围最小值生成第二证明公式,并基于所述第一证明公式和所述第二证明公式得到第一待证明数值;
[0008]对所述第一待证明数值进行零知识范围证明得到第一证明结果,在所述第一证明结果为所述第一待证明数值大于或等于0时,确定所述目标数值大于或等于所述范围最小值;
[0009]基于所述第一证明公式和所述目标证明范围的范围最大值生成第三证明公式,并基于所述第一证明公式和所述第三证明公式得到第二待证明数值;
[0010]对所述第二待证明数值进行反向零知识范围证明得到第二证明结果,在所述第二证明结果为所述第二待证明数值小于或等于0时,确定所述目标数值小于或等于所述范围最大值。
[0011]进一步地,所述对所述第一待证明数值进行零知识范围证明得到第一证明结果的步骤,包括:
[0012]确定所述第一待证明数值对应的第一生成元和所述密钥集,并基于预设的RangeProof算法和所述密钥集对所述第一生成元进行计算得到与所述第一待证明数值对
应的第一环签名;
[0013]对所述第一环签名进行验证得到第一验证结果,在所述第一验证结果为验证成功时,确定第一证明结果为所述第一待证明数值大于或等于0。
[0014]进一步地,所述对所述第一环签名进行验证得到第一验证结果的步骤,包括:
[0015]根据所述密钥集对所述第一环签名进行验证得到所述第一环签名对应的多个证明结果分片;
[0016]在多个所述证明结果分片对应的分片之和与所述第一环签名相等时,确定第一验证结果为验证成功。
[0017]进一步地,所述对所述第二待证明数值进行反向零知识范围证明得到第二证明结果的步骤,包括:
[0018]确定所述第二待证明数值对应的第二生成元和所述密钥集,并基于预设的反向RangeProof算法和所述密钥集对所述第二生成元进行计算得到与所述第二待证明数值对应的第二环签名;
[0019]对所述第二环签名进行验证得到第二验证结果,在所述第二验证结果为验证成功时,确定第二证明结果为所述第二待证明数值小于或等于0。
[0020]进一步地,所述基于所述目标数值和所述密钥集生成第一证明公式的步骤,包括:
[0021]确定初始证明公式;
[0022]将所述目标数值和所述密钥集带入所述初始证明公式以生成第一证明公式。
[0023]进一步地,所述基于所述第一证明公式和所述目标证明范围的范围最小值生成第二证明公式,并基于所述第一证明公式和所述第二证明公式得到第一待证明数值的步骤,包括:
[0024]确定所述目标证明范围的范围最小值,并基于所述范围最小值与所述第一证明公式生成第二证明公式;
[0025]对所述第一证明公式和所述第二证明公式进行差值计算得到第一差值,将所述第一差值确定为第一待证明数值。
[0026]进一步地,所述基于所述第一证明公式和所述目标证明范围的范围最大值生成第三证明公式,并基于所述第一证明公式和所述第三证明公式得到第二待证明数值的步骤,包括:
[0027]确定所述目标证明范围的范围最大值,并基于所述范围最大值与所述第一证明公式生成第三证明公式;
[0028]对所述第三证明公式和所述第一证明公式进行差值计算得到第二差值,将所述第二差值确定为第二待证明数值。
[0029]此外,为实现上述目的,本专利技术还提供一种零知识范围证明装置,所述装置包括:
[0030]第一构建模块,用于获取需要证明的目标数值、目标证明范围及密钥集,并基于所述目标数值和所述密钥集生成第一证明公式;
[0031]第二构建模块,用于基于所述第一证明公式和所述目标证明范围的范围最小值生成第二证明公式,并基于所述第一证明公式和所述第二证明公式得到第一待证明数值;
[0032]第一证明模块,用于对所述第一待证明数值进行零知识范围证明得到第一证明结果,在所述第一证明结果为所述第一待证明数值大于或等于0时,确定所述目标数值大于或
等于所述范围最小值;
[0033]第三构建模块,用于基于所述第一证明公式和所述目标证明范围的范围最大值生成第三证明公式,并基于所述第一证明公式和所述第三证明公式得到第二待证明数值;
[0034]第二证明模块,用于对所述第二待证明数值进行反向零知识范围证明得到第二证明结果,在所述第二证明结果为所述第二待证明数值小于或等于0时,确定所述目标数值小于或等于所述范围最大值。
[0035]此外,为实现上述目的,本专利技术还提供一种终端设备,所述终端设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的零知识范围证明程序,所述零知识范围证明程序被所述处理器执行时实现如上述的零知识范围证明方法的步骤。
[0036]此外,为实现上述目的,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有零知识范围证明程序,所述零知识范围证明程序被处理器执行时实现如上述的零知识范围证明方法的步骤。
[0037]本专利技术实施例提供的一种零知识范围证明方法、装置、终端设备及计算机可读存储介质,通过获取需要证明的目标数值、目标证明范围及密钥集,并基于所述目标数值和所述密钥集生成第一证明公式;基于所述第一证明公式和所述目标证明范围的范围最小值生成第二证明公式,并基于所述第一证明公式和所述第二证明公式得到第一待证明数值;对所述第一待证明数值进行零知识范围证明得到第一证明结果,在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种零知识范围证明方法,其特征在于,所述零知识范围证明方法包括以下步骤:获取需要证明的目标数值、目标证明范围及密钥集,并基于所述目标数值和所述密钥集生成第一证明公式;基于所述第一证明公式和所述目标证明范围的范围最小值生成第二证明公式,并基于所述第一证明公式和所述第二证明公式得到第一待证明数值;对所述第一待证明数值进行零知识范围证明得到第一证明结果,在所述第一证明结果为所述第一待证明数值大于或等于0时,确定所述目标数值大于或等于所述范围最小值;基于所述第一证明公式和所述目标证明范围的范围最大值生成第三证明公式,并基于所述第一证明公式和所述第三证明公式得到第二待证明数值;对所述第二待证明数值进行反向零知识范围证明得到第二证明结果,在所述第二证明结果为所述第二待证明数值小于或等于0时,确定所述目标数值小于或等于所述范围最大值。2.如权利要求1所述的零知识范围证明方法,其特征在于,所述对所述第一待证明数值进行零知识范围证明得到第一证明结果的步骤,包括:确定所述第一待证明数值对应的第一生成元和所述密钥集,并基于预设的RangeProof算法和所述密钥集对所述第一生成元进行计算得到与所述第一待证明数值对应的第一环签名;对所述第一环签名进行验证得到第一验证结果,在所述第一验证结果为验证成功时,确定第一证明结果为所述第一待证明数值大于或等于0。3.如权利要求2所述的零知识范围证明方法,其特征在于,所述对所述第一环签名进行验证得到第一验证结果的步骤,包括:根据所述密钥集对所述第一环签名进行验证得到所述第一环签名对应的多个证明结果分片;在多个所述证明结果分片对应的分片之和与所述第一环签名相等时,确定第一验证结果为验证成功。4.如权利要求1所述的零知识范围证明方法,其特征在于,所述对所述第二待证明数值进行反向零知识范围证明得到第二证明结果的步骤,包括:确定所述第二待证明数值对应的第二生成元和所述密钥集,并基于预设的反向RangeProof算法和所述密钥集对所述第二生成元进行计算得到与所述第二待证明数值对应的第二环签名;对所述第二环签名进行验证得到第二验证结果,在所述第二验证结果为验证成功时,确定第二证明结果为所述第二待证明数值小于或等于0。5.如权利要求1所述的零知识范围证明方法,其特征在于,所述基于所述目标数值和所述密钥集生成第一证明公式的步骤,包括:确定初始证明公式;将所述目标数值和所述密钥集带入所述初始证明公式...

【专利技术属性】
技术研发人员:桂宏昱张骁许强商松庞同庆简海波田翔王恩凯符捷沈书航宋慧敏胡醒空
申请(专利权)人:无锡吉利区块链科技有限公司
类型:发明
国别省市:

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

1