一种基于零知识证明的多项式处理方法技术

技术编号:37864976 阅读:17 留言:0更新日期:2023-06-15 20:54
本申请公开了一种基于零知识证明的多项式处理方法及装置,本申请实施例中,将第一多项式的系数分为多组,分别采用独立的有限域数据处理器对各组系数进行并行处理,计算得到用于构成第二多项式的系数,快速实现了对多项式的处理。的处理。的处理。

【技术实现步骤摘要】
【国外来华专利技术】一种基于零知识证明的多项式处理方法


[0001]本申请涉及但不限于信息安全技术,尤指一种基于零知识证明的多项式处理方法。

技术介绍

[0002]零知识证明(Zero—Knowledge Proof),是由S.Goldwasser、S.Micali及C.Rackoff在20世纪80年代初提出的。零知识证明指的是证明方能够在不向验证方提供任何有用的信息的情况下,使验证方相信某个论断是正确的。零知识证明实质上是一种涉及两方或更多方的协议,换句话讲,也即两方或更多方完成一项任务所需采取的一系列步骤。在零知识证明中,证明方向验证方证明并使其相信自己知道或拥有某一消息,但证明过程不能向验证方泄漏任何关于被证明消息的信息。零知识证明在分布式存储以及web3.0应用中得到了大量应用。
[0003]专利技术概述
[0004]本申请提供一种基于零知识证明的多项式处理方法,能够提升零知识证明中多项式计算的速度,从而加快零知识证明的实现。
[0005]本申请实施例提供一种基于零知识证明的多项式处理方法,包括:
[0006]证明方获取第一多项式的系数和来自验证方的随机数并存储;
[0007]根据所述第一多项式的阶和预先设置的组数对所述第一多项式的系数进行分组并存储;
[0008]针对每组系数,分别根据所述随机数、循环次数和所述第一多项式的阶对各自负责的系数进行迭代处理;
[0009]根据所述迭代处理得到的系数构建第二多项式,所述第二多项式为所述证明方提供给所述验证方的证明信息。
[0010]在一种示例性实例中,所述预先设置的组数包括两组或两组以上;
[0011]不同所述组的系数由不同的处理器并行进行所述迭代处理。
[0012]在一种示例性实例中,所述对各自负责的系数进行迭代处理,包括:
[0013]将所述第一多项式的系数作为所述迭代处理的初始值;
[0014]从Q=0开始循环,每次循环结束Q加一,直到下一轮的2
Q
>N结束所述迭代计算;在每次所述循环中,对于i>N
‑2Q
的系数a
i
,系数a
i
为上一轮计算得到的值,对于i≤N
‑2Q
的系数a
i
,系数a
i
为上一轮存储的与随机数的2
Q
次方即的乘积,再加上上一轮存储的a
i
,迭代公式表示为:存储本次循环迭代计算得到的系数;
[0015]其中,Q为所述循环次数;z为所述随机数;所述第一多项式表达为其中,x为所述第一多项式p(x)的变量,N为所述第一多项式的阶;a
i
为所述第一多项式的系数,0≤i≤N,a
i
为有限域GF(p)中的元素。
[0016]在一种示例性实例中,所述根据所述迭代处理得到的系数构建第二多项式,包括:
[0017]所述第二多项式为:a
N
X
N
+a
N
‑1X
N
‑1+

+a1X+a0,所述第二多项式中的各系数为所述结束所述循环迭代计算时存储的系数值。
[0018]在一种示例性实例中,所述对各自负责的系数进行迭代处理,包括:
[0019]将所述第一多项式的系数作为所述迭代处理的初始值;
[0020]从所述循环次数Q=0开始循环,每次循环结束Q加一,直到下一轮的M
×2Q
>N结束所述迭代计算;在每次所述循环中,对于i>N

M
×2Q
的系数a
i
,系数a
i
为上一轮计算得到的值,对于i≤N

M
×2Q
的系数a
i
,系数a
i
为上一轮存储的加上上一轮存储的a
i
,迭代公式表示为:存储本次循环迭代计算得到的系数;
[0021]其中,Q为所述循环次数;z为所述随机数,z=1;M为针对某个子群H的阶数;所述第一多项式表达为其中,x为所述第一多项式p(x)的变量,N为所述第一多项式的阶;a
i
为所述第一多项式的系数,0≤i≤N,a
i
为有限域GF(p)中的元素。
[0022]在一种示例性实例中,所述根据所述迭代处理得到的系数构建第二多项式,包括:
[0023]所述第二多项式的商为a
N
X
N

M
+a
N
‑1X
N

M
‑1+

+a
M+1
X+a
M
,余数为a
M
‑1X
M
‑1+a
M
‑2X
M
‑2+

+a1X+a0,所述第二多项式中的各系数为所述结束所述循环迭代计算时存储的系数值。
[0024]本申请实施例还提供一种基于零知识证明的多项式处理装置,包括:控制器,K个有限域数据处理器,m个存储器,K≥2、m≥1;其中,
[0025]所述控制器,K个所述有限域数据处理器和m个所述存储器挂接在总线上;
[0026]所述有限域数据处理器,用于根据随机数、循环次数和第一多项式的阶对自身对应的组的系数进行迭代处理;
[0027]所述存储器,用于存储所述第一多项式的系数和所述随机数,存储根据第一多项式的阶和预先设置的组数对第一多项式的系数进行分组,不同组的系数对应不同有限域数据处理器;
[0028]控制器,用于根据所述循环次数和所述第一多项式的阶数控制每个所述有限域数据处理器进行循环处理;从每个所述有限域数据处理器中读取迭代处理得到的系数,根据读取到的多组系数构建第二多项式,所述第二多项式为证明方提供给验证方的证明信息。
[0029]在一种示例性实例中,所述K个有限域数据处理器,用于:
[0030]将所述第一多项式的系数作为所述迭代处理的初始值;
[0031]从Q=0开始循环,每次循环结束Q加一,直到下一轮的2
Q
>N结束所述迭代计算;在每次所述循环中,对于i>N
‑2Q
的系数a
i
,系数a
i
为上一轮计算得到的值,对于i≤N
‑2Q
的系数a
i
,系数a
i
为上一轮存储的与随机数的2
Q
次方即的乘积,再加上上一轮存储的a
i
,迭代公式表示为:存储本次循环迭代计算得到的系数;
[0032]其中,Q为所述循环次数;z为所述随机数;所述第一多项式表达为其中,x为所述第一多项式p(x)的变量,N为所述第一多项式的阶;a
i
为所述第一多项式的系数,0≤i≤N,a
i
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种基于零知识证明的多项式处理方法,包括:证明方获取第一多项式的系数和来自验证方的随机数并存储;根据所述第一多项式的阶和预先设置的组数将所述第一多项式的系数进行分组并存储;针对每组系数,分别根据所述随机数、循环次数和所述第一多项式的阶对各自负责的系数进行迭代处理;根据所述迭代处理得到的系数构建第二多项式,所述第二多项式为所述证明方提供给所述验证方的证明信息。2.根据权利要求1所述的多项式处理方法,其中,所述预先设置的组数包括两组或两组以上;不同所述组的系数由不同的处理器并行进行所述迭代处理。3.根据权利要求1或2所述的多项式处理方法,其中,所述对各自负责的系数进行迭代处理,包括:将所述第一多项式的系数作为所述迭代处理的初始值;从Q=0开始循环,每次循环结束Q加一,直到下一轮的2
Q
>N结束所述迭代计算;在每次所述循环中,对于i>N
‑2Q
的系数a
i
,系数a
i
为上一轮计算得到的值,对于i≤N
‑2Q
的系数a
i
,系数a
i
为上一轮存储的与随机数的2
Q
次方即的乘积,再加上上一轮存储的a
i
,迭代公式表示为:存储本次循环迭代计算得到的系数;其中,Q为所述循环次数;z为所述随机数;所述第一多项式表达为其中,x为所述第一多项式p(x)的变量,N为所述第一多项式的阶;a
i
为所述第一多项式的系数,0≤i≤N,a
i
为有限域GF(p)中的元素。4.根据权利要求3所述的多项式处理方法,其中,所述根据所述迭代处理得到的系数构建第二多项式,包括:所述第二多项式为:a
N
X
N
+a
N
‑1X
N
‑1+

+a1X+a0,所述第二多项式中的各系数为所述结束所述循环迭代计算时存储的系数值。5.根据权利要求1或2所述的多项式处理方法,其中,所述对各自负责的系数进行迭代处理,包括:将所述第一多项式的系数作为所述迭代处理的初始值;从所述循环次数Q=0开始循环,每次循环结束Q加一,直到下一轮的M
×2Q
>N结束所述迭代计算;在每次所述循环中,对于i>N

M
×2Q
的系数a
i
,系数a
i
为上一轮计算得到的值,对于i≤N

M
×2Q
的系数a
i
,系数a
i
为上一轮存储的加上上一轮存储的a
i
,迭代公式表示为:存储本次循环迭代计算得到的系数;其中,Q为所述循环次数;z为所述随机数,z=1;M为针对某个子群H的阶数;所述第一多项式表达为其中,x为所述第一多项式p(x)的变量,N为所述第一多项式的阶;a
i
为所述第一多项式的系数,0≤i≤N,a
i
为有限域GF(p)中的元素。6.根据权利要求4所述的多项式处理方法,其中,所述根据所述迭代处理得到的系数构建第二多项式,包括:
所述第二多项式的商为a
N
X
N

M
+a
N
‑1X
N

M
‑1+

+a
M+1
X+a
M
,余数为a
M
‑1X
M
‑1+a
M
‑2X
M
‑2+

+a1X+a0,所述第二多项式中的各系数为所述结束所述循环迭代计算时存储的系数值。7.一种基于零知识证明的多项式处理装置,包括:控制器,K个有限域数据处理器,m个存储器,K≥2、m≥1;其中,所述控制器,K个所述有限域数据处理器和m个所述存储器挂接在总线上;所述有限域数据处理器,用于根据随...

【专利技术属性】
技术研发人员:汪福全刘明
申请(专利权)人:声龙新加坡私人有限公司
类型:发明
国别省市:

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

1