一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法技术

技术编号:31744215 阅读:20 留言:0更新日期:2022-01-05 16:23
本发明专利技术属于密码学隐私保护领域,公开了一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,具体步骤包括:步骤1:生成公共参数;步骤2:生成秘密值和承诺值;步骤3:证明者将这些承诺值发送给验证者;步骤4:验证者向证明者发送挑战值;步骤5:证明者第一次生成回复值并发送给验证者;步骤6:验证者第二次向证明者发送挑战值;步骤7:证明者第二次生成回复值并发送给验证者;步骤8:验证者验证等式是否成立。本发明专利技术与其它方案相比,有更快的速度与更低的存储开销,并且无论的范围有多大,该方案所需要消耗的时间以及证明数据的大小都在一个常量范围内。大小都在一个常量范围内。大小都在一个常量范围内。

【技术实现步骤摘要】
一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法


[0001]本专利技术属于密码学隐私保护领域,尤其涉及一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法。

技术介绍

[0002]零知识证明在区块链中被广泛使用。例如,Zcash使用zk

SNARK作为其识别交易的核心技术。到目前为止,已经提出了各种范围证明,它们的效率和区间灵活性得到增强。Bootle等人使用内积方法和递归来构建有效的零知识证明。随后,Benediky Bunz等人提出了一种称为Bulletproofs的有效范围证明方案,它可以说服验证者一个秘密数字位于[0,2
κ

1]中,其中κ是正整数。通过结合内积和拉格朗日三平方定理,我们提出一个新的范围证明方案,该证明方案可以证明一个秘密数v∈[a,b]而不暴露v的额外信息。在Bulletproofs中,其通信成本为6+2logκ,而在我们的方案中,所有通信成本、证明时间和验证时间恒定不变。

技术实现思路

[0003]本专利技术的目的在于提供一种基于拉格朗日三整数定理和内积的零知识范围证明方法来证明v∈[a,b],以解决Bulletproofs中通信成本与κ成亚线性关系的问题。
[0004]为解决上述技术问题,本专利技术的一种基于拉格朗日三整数定理和内积的零知识范围证明方法的具体技术方案如下:
[0005]一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,包括如下步骤:
[0006]步骤1:生成公共参数;
[0007]步骤2:生成秘密值和承诺值;
[0008]步骤3:证明者将这些承诺值发送给验证者;
[0009]步骤4:验证者向证明者发送挑战值;
[0010]步骤5:证明者第一次生成回复值并发送给验证者;
[0011]步骤6:验证者第二次向证明者发送挑战值;
[0012]步骤7:证明者第二次生成回复值并发送给验证者;
[0013]步骤8:验证者验证等式是否成立。
[0014]进一步地,步骤1包括如下具体步骤:
[0015]步骤1.1:第三方可信设置根据安全参数λ来选取两个大素数p和q,设置p和q的长度为1024bit,并计算出p和q的积N;
[0016]步骤1.2:找出所有与N互素的数并构建出RSA群随机选出中的元素g、h、g、h,设置g、h、g、h、N、λ为公共参数,我们用粗体字母表示向量如(g=(g1,g2,...,g6)),另外0
x
表示长度为x,元素全为0的向量。
[0017]进一步地,步骤2包括如下具体步骤:
[0018]步骤2.1:秘密值的计算:
[0019]验证者计算满足步骤2.2:承诺值的计算:
[0020]验证者选取两个随机数和两个随机向量计算
[0021]进一步地,步骤3包括如下步骤:
[0022]证明者将A,S,V发送给验证者。
[0023]进一步地,步骤4包括如下具体步骤:
[0024]步骤4.1:计算挑战值:
[0025]验证者选择两个随机数y

并计算出挑战值y=g
y

,z=g
y

[0026]步骤4.2:发送挑战值:
[0027]验证者将y,z发送给证明者。
[0028]进一步地,步骤5包括如下具体步骤:
[0029]步骤5.1:计算t1,t2:
[0030]证明者根据公式以及以及以及来计算出t1,t2;其中<I(x),r(x)>表示为向量I(x)与向量r(x)的内积,||表示为两个向量的拼接,d
[:l]=d
[0:l]=(d1,...,d
l
),d
[l:]=d
[l:s]=(d
l+1
,...,d
s
);y=(y,2y,3y,4y,5y,6y);
[0031]步骤5.2:计算回复值T1,T2:
[0032]证明者随机选取计算证明者将T1,T2发送给验证者。
[0033]进一步地,步骤6中验证者随机选择计算然后将x发送给证明者。
[0034]进一步地,步骤7包括如下具体步骤:
[0035]证明者收到x后,计算证明者收到x后,计算然后将再计算r1=4r,=4r,
[0036]证明者将发送给验证者。
[0037]进一步地,步骤8验证者使用从证明者处获取的数值,构建等式并验证它们是否相等,包括如下具体步骤:
[0038]步骤8.1:
[0039]计算计算
[0040]步骤8.2:
[0041]验证以下等式是否成立:
[0042]其中表示为向量(1,2);
°
表示为向量之间的Hadamard积;δ(y)=<y,y>
[0043]如果所有等式成立,证明者就成功证明v∈[a,b]。
[0044]专利技术了一种基于拉格朗日三整数定理和内积的零知识范围证明方法具有以下优点:本专利技术证明的范围区间可以是任意的,本专利技术的方案具有完备性,合理性以及零知识性。通过本专利技术设计的零知识证明方案提供了保护信息安全的能力。在实验中,成功的将拉格朗日三整数定理和内积计算相结合,从生成公共参数和秘密值开始,到证明的生成与验证,提供了一套完整的解决方案。同时通过实验表明,本专利技术的方案在通信开销和计算开销上也更具实用性。
附图说明
[0045]图1为本专利技术的一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法的流程框图;
[0046]图2为本专利技术的证明生成时间以及验证时间折线图;
[0047]图3为本专利技术的不同区间的范围证明的证明大小图。
具体实施方式
[0048]为了更好地了解本专利技术的目的、结构及功能,下面结合附图,对本专利技术一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法做进一步详细的描述。
[0049]如图1所示,本专利技术的一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,包括如下步骤:
[0050]步骤1:生成公共参数。
[0051]为了确保信息的安全性,第三方可信设置根据安全参数λ来选取两个大素数p和q,设置p和q的长度为1024bit,只有当p和q足够大时,才能够确保别人不会通过p和q的乘积N来分解出p和q。随后找出所有与N互素的数并构建出RSA群在该专利技术中,所有有关群元素的运算都是要去模N的。为了确保恶意的证明者只能以很小的概率通过验证者的验证p和q必须足够大。随机选出中的元素g、h、g、h,设置g、h、g、h、N、λ为公共参数,我们用粗体字母表示向量如(g=(g1,g2,...,g6)),另外0
x
表示长度为x,元素全为0的向
量。在该方案中g、h、g、本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,其特征在于,包括如下步骤:步骤1:生成公共参数;步骤2:生成秘密值和承诺值;步骤3:证明者将这些承诺值发送给验证者;步骤4:验证者向证明者发送挑战值;步骤5:证明者第一次生成回复值并发送给验证者;步骤6:验证者第二次向证明者发送挑战值;步骤7:证明者第二次生成回复值并发送给验证者;步骤8:验证者验证等式是否成立。2.根据权利要求1所述的基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,其特征在于,步骤1包括如下具体步骤:步骤1.1:第三方可信设置根据安全参数λ来选取两个大素数p和q,设置p和q的长度为1024bit,并计算出p和q的积N;步骤1.2:找出所有与N互素的数并构建出RSA群随机选出中的元素g、h、g、h,设置g、h、g、h、N、λ为公共参数,我们用粗体字母表示向量如(g=(g1,g2,...,g6)),另外0
x
表示为长度为x,元素全为0的向量。3.根据权利要求2所述的基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,其特征在于,步骤2包括如下具体步骤:步骤2.1:秘密值的计算:验证者计算v1=4v

4a+1,满足步骤2.2:承诺值的计算:验证者选取两个随机数和两个随机向量计算4.根据权利要求3所述的基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,其特征在于,步骤3包括如下步骤:证明者将A,S,V发送给验证者。5.根据权利要求4所述的基于拉格朗日三整数定理和内积的大小恒定的零知识范围证明方法,其特征在于,步骤4包括如下具体步骤:步骤4.1:计算挑战值:验证者选择两个随机数y

【专利技术属性】
技术研发人员:邓聪唐向宏游林
申请(专利权)人:杭州电子科技大学
类型:发明
国别省市:

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

1