一种高效门限可验证多秘密分享方法

文档序号:190899 发布日期:2021-11-02 浏览:21次 >En<

阅读说明:本技术 一种高效门限可验证多秘密分享方法 (Efficient threshold verifiable multi-secret sharing method ) 是由 高镇 王瑞泽 石璐 于 2021-08-04 设计创作,主要内容包括:本发明公开了一种高效门限可验证多秘密分享方法,包括秘密分发算法和秘密重建算法,在在所述秘密分发算法中,秘密分发者每个参与者P确定秘密份额x,当每个参与者P接收到自己的秘密份额x时,验证秘密份额合法性;在所述秘密重建算法中,重建者R基于中国余数定理通过取余运算恢复出对应的秘密。与现有技术相比,本发明1)在分享秘密数量一定的情况下,使多项式阶数减少m倍,从而大幅度降低秘密恢复的计算复杂度,可将分享密钥个数提升m倍,从而大大提高分享效率;2)计算开销较少;3)减少了份额重发的通信代价。(The invention discloses a high-efficiency threshold verifiable multi-secret sharing method, which comprises a secret distribution algorithm and a secret reconstruction algorithm, wherein in the secret distribution algorithm, each participant P of a secret distributor determines a secret share x, and when each participant P receives the own secret share x, the validity of the secret share is verified; in the secret reconstruction algorithm, a reconstructor R recovers a corresponding secret through a remainder taking operation based on the Chinese remainder theorem. Compared with the prior art, the invention 1) reduces the polynomial order by m times under the condition of a certain number of shared secrets, thereby greatly reducing the computational complexity of secret recovery, increasing the number of shared keys by m times and greatly improving the sharing efficiency; 2) the calculation cost is low; 3) the communication cost of the tranche retransmission is reduced.)

一种高效门限可验证多秘密分享方法

技术领域

本发明涉及密码学领域,特别涉及一种可验证的多秘密分享方法。

背景技术

在实际生活中,将敏感或重要信息(如银行密码或导弹发射密码)交由一个人保管是十分危险的,保管者手中的信息很容易受到攻击、篡改和丢失,因此使用分布式秘密存储方法是十分重要的。秘密分享技术可以实现将数据分散存储,这对于提高信息存储的安全性有很大意义,其在当今的加密领域有很重要的应用。

单一秘密的分享方法主要有Shamir、Blakley和Asmuth分别提出的阈值秘密分享方法。其设计思想是:秘密分发者将需要分享的秘密s分成n个份额,交给不同的n位参与者保管,需要t个或更多的参与者公开他们的份额时方可恢复秘密,而任意少于t个参与者公开其份额时不能得到关于秘密的任何信息。Shamir的方法是基于多项式及拉格朗日插值算法建立的,依靠t组点确定t-1阶多项式的性质对秘密进行分享和重构。Blakley的方法则是基于超几何多维空间点的概念建立的,将秘密s看作是t维空间的一个点,每个份额为包含该点的(t-1)维超平面的一个方程,任意t个超平面的交点刚好唯一确定这个秘密s。Asmuth等人的方法基于中国余数定理,将秘密s分解为余数向量来表示,并通过CRT来还原秘密。以上方法中均存在一些问题,比如此类方法中参与者无法验证自己获得的份额是否合法,容易导致分发者对参与者的欺骗。再比如此类方法都是一次性方法,每次方法只能分享一个秘密,一旦秘密被恢复,所有参与者的份额视为暴露,需要重新执行一次方法,为各个参与者分发新的份额。再比如,此类方法单次只能分享一个秘密,想要分享多个秘密需要重复执行方法,效率极低。

为了能在一次方法中分享多个秘密,学者提出了多秘密分享方法。每次可以分享多个秘密,但使用该方法分享的秘密必须按照一定顺序来恢复。更高效的多级分享方法是在公开参数数量不变的前提下分享更多数量的秘密。Harn基于拉格朗日插值多项式提出了可验证的多秘密分享方法,参与者可以验证自己的份额是否合法。但在该方法中,参与者的验证过程是需要交互的,且涉及到模指数运算,计算复杂度较高,故该方法的实用性较差。

目前,如何实现一种能够在兼顾可验证性、复用性的同时,保证高效性的多秘密分享方法是亟待解决的技术问题。

发明内容

针对上述问题,本发明提出了一种高效的门限可验证多秘密分享方法,实现了具有可验证性的高效的多秘密分享方法。

本发明由以下技术方案实现:

在所述秘密分发算法中,包括以下流程;

步骤1.1、秘密分发者D确定一个安全质数p,大质数q,从而确定一个p阶有限域GF(q),生成元记为g;秘密分发者D为每个参与者Pi生成一个秘密份额xi,xi∈{x1…,…,xn},并将秘密份额xi发给对应的参与者Pi;最后,秘密分发者D确定一组互质的模值基向量

步骤1.2、计算t-1阶多项式H(x)的系数ai,表达式如下:

其中,CRT为中国余数定理算法,为模值基向量,q1,q2,…,qm两两互质,为第i组秘密向量;

步骤1.3、构建t-1阶的多项式H(x),表达式如下:

H(x)=a0+a1x+…+at-1xt-1mod q

选择本次共享的随机数r∈Z,Z为整数集;

计算每个参与者的公开份额yi,表达式如下:

yi=H(f(r,xi))mod q,i=1,…,n

其中,f()为双变量单向映射函数;

计算每个参与者的验证信息Gi,表达式如下:

步骤1.4、将参数公开至公开板上,提供参与者P查看和下载;

当每个参与者Pi接收到秘密份额xi时,若验证等式成立,则秘密份额xi合法,其中,g为生成元,yi为公开份额,Gj为公开验证信息;

在所述秘密重建算法中,包括以下流程:

步骤2.1、参与者Pi使用秘密份额xi和公开本次共享的随机数r,计算伪份额f(r,xi);

步骤2.2、重建者R从任意节点收集伪份额f(r,xri),i=1,…,t;其中,f()为双变量单向映射函数;

步骤2.3、重建者R读取公开板上对应节点的公开信息(如参数),组成t组拉格朗日多项式的插值点(yri,f(r,xri));

步骤2.4、重建者R通过拉格朗日插值算法获得插值多项式h(x)=H(x),表达式如下:

h(x)=a0+a1x+…+at-1xt-1

其中,a0~at-1为系数;

步骤2.5、根据公开参数,重建者R通过取余运算恢复出对应的秘密ki,j=ajmod qi

与现有基于shamir方法的多密钥分享方法相比,本发明的一种高效门限可验证多秘密分享方法具有以下优点:

1)在分享秘密数量一定的情况下,使多项式阶数减少m倍,从而大幅度降低秘密恢复的计算复杂度,可将分享密钥个数提升m倍,从而大大提高分享效率;

2)分发和恢复秘密的算法的复杂度较低,计算开销较少;

3)作为复用性方法,无须刷新参与者的秘密份额,减少了份额重发的通信代价。

附图说明

图1是本发明的高效门限可验证多秘密分享方法架构图;

图2是本发明的高效门限可验证多秘密分享方法的秘密分发算法流程图;

图3是本发明的高效门限可验证多秘密分享方法的秘密重建算法流程图;

图4是本发明的高效门限可验证多秘密分享方法的算法复杂度比较图;

图5是本发明的高效门限可验证多秘密分享方法的公开参数数量比较图。

具体实施方式

下面结合附图和具体实施例对本发明技术方法作进一步详细描述。

本发明所涉及具体参数如下:

设参与者集合记为P∈{P1,…Pi…,Pn},其中n为参与者个数;

预先将秘密分为t组,每组包含m个秘密,因此共有m×t个秘密。秘密集合记为对应一组内的每个秘密设置一个互质的余数基,因此有m个互质的余数基q1<q2<q3<qm,由余数基组成的余数基向量集合记作ki,j为要在n个参与者中进行分享的秘密,i、j分别为秘密集合的组号和组内序号,i=0,…,t-1,j=1,…,m。

选定一个双变量单向映射函数f(s,r),选定一个安全质数p,使得p满足q|(p-1),即q整除(p-1),其中q是一个大质数,g代表q阶有限域GF(p)的生成元,所有参数均处于有限域GF(p)内。

如图1所示,本发明的一种高效门限可验证多秘密分享方法架构图。该方法包括秘密分发算法阶段和秘密重建算法阶段。

如图2所示,是本发明的一种高效门限可验证多秘密分享方法的秘密分发算法流程图,该流程包括以下步骤:

步骤1.1、秘密分发者D确定一个安全质数p,使得p满足q|(p-1),即q整除(p-1),其中q是一个大质数,g代表q阶有限域GF(p)的生成元,所有参数均处于有限域GF(p)内。秘密分发者D为每个参与者Pi生成一个秘密份额xi,xi∈{x1…,…,xn},秘密份额安全地发给对应的参与者Pi,确定一组互质的模值基向量

步骤1.2、计算t-1阶多项式的系数ai,表达式如下:

其中,CRT为中国余数定理算法,为模值基向量,q1,q2,…,qm两两互质,为第i组秘密向量,t-1阶多项式的系数;

步骤1.3、构建t-1阶的多项式H(x),表达式如下:

H(x)=a0+a1x+…+at-1xt-1mod q

选择本次共享的随机数r∈Z,Z为整数集;

通过下式计算公开份额yi

yi=H(f(r,xi))mod q,i=1,…,n

其中,f()为双变量单向映射函数,y为公开份额。

计算验证信息Gi,表达式如下:

步骤1.4、将参数公开至公开板上,提供参与者P查看和下载;

当每个参与者Pi接收到秘密份额xi时,验证等式若相等则秘密份额xi合法,其中,g为生成元,yi为公开份额,Gj为公开验证信息;

在所述秘密重建算法中,包括以下流程:

步骤2.1、参与者Pi使用自己的秘密份额xi和公开本次共享的随机数r,计算伪份额f(r,xi);

步骤2.2、重建者R从任意节点收集伪份额f(r,xri),i=1,…,t;其中,f()为双变量单向映射函数;

步骤2.3、重建者R读取公开板上对应节点的公开信息(如参数),组成t组拉格朗日多项式的插值点(yri,f(r,xri)),i=1,…,t;

步骤2.4、重建者R通过拉格朗日插值算法获得插值多项式h(x)=H(x),并确定系数a0~at-1

步骤2.5、根据公开参数,重建者R通过取余运算恢复出对应的秘密ki,j=ajmod qi

通过实验验证本发明的正确性:设余数基的个数m=3,余数基为多项式的阶数t=3,一共可以共享9个秘密。设第一组秘密为对应的系数为第二组秘密为:对应的系数为 第三组秘密为:对应的系数为其对应的多项式为:H(x)=29147+16298x+4956x2,门限t=3,参与者n=4,随机数r=64。随机选择秘密份额x1=35,x2=28,x3=74,x4=59。安全质数p和生成元g可通过算法获得,均为很大的整数,不必要展示,可以保证以下计算结果均处于GF(p)内。

使用映射函数f计算伪份额:

f(r,x1)=84058,f(r,x2)=67710,

f(r,x3)=53532,f(r,x4)=11138,

计算验证信息:

计算yi=H(f(r,xi)):

y1=H(f(r,x1))=35019213942415,

y2=H(f(r,x2))=22722599726327,

y3=H(f(r,x3))=14203157912627,

y4=H(f(r,x4))=614998354335

参与者验证份额有效性(以y1为例):

如果等式成立则份额合法,否则份额不合法,要求分发者D重新分发份额。

收集份额并通过多项式插值后可确定系数a0~a2(以y1、y2、y3为例),重建t-1阶多项式H(x):

解得:a0=29147,a1=16298,a2=4956

恢复秘密:

a0mod 31=07;a1mod 31=23;a2mod 31=27;

a0mod 37=28;a1mod 37=18;a2mod 37=35;

a0mod 41=37;a1mod 41=35;a2mod 41=36;

为验证本发明的高效性,分别从重建秘密的算法复杂度以及公开参数数量与其他方法进行比较。如图4所示,是本发明的高效门限可验证多秘密分享方法的算法复杂度比较图。以Yang的方法为例,如果需要共享p个秘密,则应构造p-1阶多项式,其对应的复杂度为O((p-1)3)。在本方法中,如果需要共享p=m*t个秘密,则需要构造阶多项式,其对应的复杂度为由图可以看出,要分配固定数量p个秘密,选取更大的余数基个数m可以有效降低多项式的阶数,从而降低插值算法的运算复杂度,与基于shamir的多秘密分享方法的算法复杂度对比下降明显。分享同样多秘密时,秘密重构算法的计算复杂度O随秘密个数p的变化示意图。可见和基于shamir的Yang的多秘密分享方法的计算复杂度随要分享的秘密个数p呈立方增长。而本方法恢复秘密的算法复杂度远低于Yang的方法,与成正比,而且随着余数基个数m的增加,恢复秘密的算法复杂度将进一步降低。

公开参数的数量是表征效率很重要的参数,公开参数数量越少代表秘密分发和重建时占用的计算和存储资源越少,秘密分享效率越高。假设n为参与者的个数,t为解密门限值(与秘密组数是同一个参数t),m为余数基的个数,p为共享的秘密个数。He-Dawson等人的多级秘密分享方法中需要的公开参数为n*p个,He-Dawson’s等人的多秘密分享方法中需要(n+1)*p个参数。2004年,Chang等人提出了可验证多秘密分享CHY方法,需要3*p个公开参数。该方法需要的公开参数随分享的秘密个数成倍增长,代价太大。Yang的多秘密分享方法中需要n+p-t+1个公开参数,Shao等人的可验证多秘密分享方法需要2p+n+1-t个公开参数,Chen的可验证多级分享方法需要p*(n-t+1)个公开参数。M.H.Dehkordi等人的高效可验证多秘密分享方法需要3n+p-t+1个公开参数。本方法需要的公开参数数量为n+m+t+1个,与现有方法相比,分享多秘密时需要的公开参数的数量更少,大大提高了效率。当需要分享的秘密数量p很大时,本文中提到的方法只需要增加极小的公开参数数量为代价即可共享更多的秘密,而其他方法则需要成倍增加公开参数数量,故本方法更高效。

如图5所示,是本发明的高效门限可验证多秘密分享方法的公开参数数量比较图。在参与者数量n、门限t一定时,公开参数p随秘密个数p变化趋势的示意图。可以看出在要分享的秘密数量p增加时,其他方法需要的公开参数个数呈线性成倍增长,需要的公开板存储更大,占用资源更多。而本文方法需要的公开参数较其他方法更少,且增加的趋势更小,呈的趋势增加,当需要分享的秘密数量p很大时,本方法只需要增加少量的公开参数即可共享更多的秘密,而其他方法则需要成倍增加公开参数数量,故本方法更高效。

综上所述,本发明的一种高效的可验证多秘密分享方法基于shamir的秘密分享方法和中国剩余定理(Chinese Remainder Theorem,CRT),使用更少的公开参数共享更多的秘密,进一步提高了秘密分享效率;在n位参与者之间,通过n+m+t+1个公开参数可以一次分享p=t*m个秘密,每个参与者可验证手中份额的正确性,且任意t个参与者联合起来可以恢复出任何一个秘密。

本发明在分享秘密数量相同时,该方法使用的公开参数相较于同类型的方法更少,且随着秘密增多,该方法只需增加少量的公开参数作为代价,公开参数的增加趋势相较于其他方法的更慢;秘密重建时的算法复杂度也会尽量小。

本发明实施例仅为示例性,不能理解为对本发明的限制,在不脱离本发明的原理和宗旨的前提下,可以对上述实施例进行修改和扩展。

11页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:社交平台日常对话加密方法、系统、存储介质及计算设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类