一种理论安全的灵活多秘密共享方法转让专利

申请号 : CN201710453739.1

文献号 : CN107425967B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 夏喆佟铮胡晓勇

申请人 : 武汉理工大学

摘要 :

本发明公开的一种理论安全的灵活多秘密共享方法,包括如下步骤:初始化;选取随机数并传递给参与者;选取m个任意点;使用拉格朗日差值法得到一个阶为n+m‑1的多项式;在剩下的域中随机选择不同的整数并代入多项式计算;公开选取点的横坐标和计算出的多项式的值;参与者Pj根据已知信息计算出cj1、cj2,…,cjm;对于秘密S1,参与者Pj选择rj1,rj2,…,rjt,任意t个参与者可以重构秘密;Pj计算恢复秘密中间值rl,并发送给其它所有参与者;计算秘密S1;本发明可以使可以一次共享多个秘密,效率较单秘密共享更高效。

权利要求 :

1.一种理论安全的灵活多秘密共享方法,其特征在于,它包括如下步骤:

步骤100:初始化j个参与者Pj,(j=1,2,…,n)的公开身份信息,随机生成整数模q,q为大素数;

步骤200:分发者从GFq区间内选择n个任意数k1,k2,…,kn∈GFq,所述GFq区间表示整数模q的集合,并将kj,j=1,2,…,n通过安全私密信道分发给每个参与者Pj;

步骤201:分发者从GFq区间内选择m个任意数d1,d2,…,dm∈GFq,并从GFq区间内选择m个任意数s1,s2,…,sm∈GFq组成m个点(d1,s1),(d2,s2),…,(dm,sm),其中s1,s2,…,sm为待共享的秘密;

步骤202:分发者用n个点(j,kj),(j=1,2,…,n),与m个点(d1,s1),(d2,s2),…,(dm,sm)使用拉格朗日插值法插值出一个n+m-1次曲线f(x)=a0+a1x+…+an+m-1xn+m-1,其中,x为曲线的自变量,a0、a1x,…,an+m-1为曲线的系数,该系数通过上述n个点和m个点采用拉格朗日插值法得到;

步骤203:分发者从GFq-{1,2,…,n}∪{d1,d2,…,dm}中随机选取互不相同的整数wi,即选择的整数wi不在{1,2,...,n}和{d1,d2,...,dm}中但是在GFq中,并计算wi带入上述f(x)的函数值f(wi),其中i=1,2,…,n+m-t,t为门限值,任意t个参与者可以恢复秘密,但任何少于t个参与者不可以得到秘密的任何信息;

步骤204:分发者公开以下参数d1,d2,…,dm,f(w1),f(w2),…,f(wn+m-t)以供后续计算;

步骤300:参与者Pj按照如下公式计算,恢复秘密中间值cj1、cj2,…,cjm,其中,步骤301:对于秘密s1,参与者Pj从GFq区间选择t个任意数rj,1,rj,2,…,rj,(t-1)∈GFq作为恢复秘密调节值,并计算恢复秘密调节值rj,t,rj,t=cj1-rj,1-rj,2-…-rj,(t-1),恢复秘密调节值rj,t用于使rj,1,rj,2,…,rj,(t-1),rj,t之和等于cj1;

步骤302:任意t个参与者均能重构秘密,方法为参与者Pa将恢复秘密调节值ra,b通过私密信道发送给参与者Pb,a=1,2,…,t,b=1,2,…,t;

步骤303:参与者Pb计算恢复秘密调节值rb=r1,b+r2,b+…+rt,b并通过私密信道将rb发送给其它所有t-1个参与者,b=1,2,…,t;

步骤304:秘密s1通过以下等式恢复:

2.根据权利要求1所述的理论安全的灵活多秘密共享方法,其特征在于,它还包括步骤

305:采用步骤200~步骤304的方法分别恢复秘密s2,…,sm。

说明书 :

一种理论安全的灵活多秘密共享方法

技术领域

[0001] 本发明涉及信息安全技术领域,具体涉及一种理论安全的灵活多秘密共享方法。

背景技术

[0002] 秘密共享方法(如参考文献1所示)一般为分发者将一个秘密拆分给多个参与者,只有达到一定数量(记为门限)的参与者合作才可以恢复秘密,从而达到保护该秘密的目的。其保护的秘密可以是系统主密钥,银行金库密码等重要信息。在普通秘密共享中,恢复一个秘密需要用到多个秘密份额,而且这些秘密份额只能使用一次,效率不高。在多秘密共享中,秘密份额可以被使用多次,用以恢复多个秘密,提高了秘密的使用效率。随着信息安全的发展,现有多秘密共享的方法并不能满足更高标准的要求,因此也限制了此技术在更广泛领域中的应用。
[0003] 现有的多秘密共享方法主要分为以下两种:
[0004] 1、此类多秘密共享方法(如参考文献2所示)中令多个秘密作为分发者产生的多项式的系数,基于此的一系列多秘密共享方法都使用了双变量哈希函数以用于验证。此方法优点为公开数据相对较少,然而将多项式系数作为带分享的秘密首先需要多个秘密(多项式系数相互独立),其次多个秘密只会被同时恢复,不够灵活。
[0005] 2、将多个秘密作为分发者产生的多项式的函数值。参考文献3 正是基于这个思想,它提出了一种新的多秘密共享方法并避免了将秘密作为多项式系数。经过分析,此方法也存在一定的安全隐患,在已经恢复出一定数量的秘密的前提下,一个恶意攻击者也许可以根据公开信息来排除一些不可能的情况,这在特定的应用场景中也是不允许的。
[0006] 参考文献
[0007] [1]Adi Shamir.How to share a secret.Proceedings of 22nd Comminocation of ACM,pages 612-613,1979.
[0008] [2]Yang C C,Chang T Y,Hwang M  S.A(t,n)multi-secret sharing scheme.Applied Mathematics and Computations,2004,151(2):483-490.
[0009] [3]Harn L.Secure secret reconstruction and multi-secret sharing schemes with unconditional security[J].Security&Communication Networks,2014,7(3):567-573.

发明内容

[0010] 本发明的目的在于提供一种理论安全的灵活多秘密共享方法,该方法具有较高的安全性。
[0011] 为解决上述技术问题,本发明所设计的理论安全的灵活多秘密共享方法,其特征在于,它包括如下步骤:
[0012] 步骤100:初始化j个参与者Pj,(j=1,2,...,n)的公开身份信息,随机生成整数模q,q为大素数;
[0013] 步骤200:分发者从GFq区间内选择n个任意数k1,k2,...,kn∈GFq,所述 GFq区间表示整数模q的集合,并将kj,j=1,2,...,n通过安全私密信道分发给每个参与者Pj;
[0014] 步骤201:分发者从GFq区间内选择m个任意数d1,d2,...,dm∈GFq,并从GFq区间内选择m个任意数s1,s2,...,sm∈GFq组成m个点  (d1,s1),(d2,s2),...,(dm,sm),其中s1,s2,...,sm为待共享的秘密;
[0015] 步骤202:分发者用n个点(j,kj),(j=1,2,...,n),与m个点 (d1,s1),(d2,s2),...,(dm,sm)使用拉格朗日插值法插值出一个n+m-1次曲线 f(x)=a0+a1x+…+an+m-1xn+m-1,其中,x为曲线的自变量, a0、a1x,...,an+m-1为曲线的系数,该系数通过上述n个点和m个点采用拉格朗日插值法得到;
[0016] 步骤203:分发者从GFq-{1,2,...,n}∪{d1,d2,...,dm}中随机选取互不相同的整数wi,即选择的整数wi不在{1,2,...,n}和{d1,d2,...,dm}中但是在 GFq中,并计算wi带入上述f(x)的函数值f(wi),其中i=1,2,...,n+m-t, t为门限值,任意t个参与者可以恢复秘密,但任何少于t个参与者不可以得到秘密的任何信息;
[0017] 步骤204:分发者公开以下参数d1,d2,...,dm,f(w1),f(w2),...,f(wn+m-t)以供后续计算;
[0018] 步骤300:参与者Pj按照如下公式计算,恢复秘密中间值cj1、 cj2,...,cjm,其中,[0019] 步骤301:对于秘密s1,参与者Pj从GFq区间选择t个任意数 rj,1,rj,2,...,rj,(t-1)∈GFq作为恢复秘密调节值,并计算恢复秘密调节值rj,t, rj,t=cj1-rj,1-rj,2-...-rj,(t-1),恢复秘密调节值rjt用于使rj,1,rj,2,...,rj,(t-1),rj,t之和等于cj1;
[0020] 步骤302:任意t个参与者均能重构秘密,假设前t个参与者(身份信息为从1到t)想要恢复秘密,方法为参与者Pa将恢复秘密调节值ra,b通过私密信道发送给参与者Pb,a=1,2,...,t,b=1,2,...,t;
[0021] 步骤303:参与者Pb计算恢复秘密调节值rb=r1,b+r2,b+…+rt,b并通过私密信道将rb发送给其它所有t-1个参与者,b=1,2,...,t;(广播)
[0022] 步 骤 3 0 4 :秘 密 s 1 通 过 以 下 等 式 恢 复 :
[0023] 本发明的有益效果:
[0024] 常规的秘密共享一次只能保护一个秘密,本发明一次计算可以保护多个秘密,且秘密可以一个一个的被恢复,功能更强大。
[0025] 本发明的安全分析为:
[0026] 外部敌手:对于秘密s1,参与者Pj所计算出的cj1为拉格朗日插值多项式的一项,t个参与者的t项加上公开数据可以组成的n+m-t项相加正好等于f(d1),即s1。假设外部敌手最大限度获取到t-1个参与者的cj1,根据拉格朗日插值法,少任何一项都无法得到待求数的任何信息。又由于本方案多个秘密的恢复过程相互独立,因此外部敌手无法攻破本方案。
[0027] 内部敌手:对于内部敌手,假设t-1个参与者合谋,他们同样拥有t-1项拉格朗日多项式组件,在步骤302中,每个参与者的rab独立且随机,因此rb独立且随机,因此rb没有透露诚实参与者的任何私密信息,t-1个参与者合谋也只能得到t-1项拉格朗日多项式组件,那么根据拉格朗日插值法,少任何一项都无法得到待求数的任何信息。

附图说明

[0028] 图1为本发明的流程图;

具体实施方式

[0029] 以下结合附图和具体实施例对本发明作进一步的详细说明:
[0030] 本发明的提出的理论安全的灵活多秘密共享方法,该方法可以使可以一次共享多个秘密,效率较单秘密共享更高效。秘密共享后,可以在不同阶段分别恢复不同的秘密,恢复出的秘密不会泄露未恢复的秘密。为实现此目的,本发明所设计的理论安全的灵活多秘密共享方法,如图1所示包括如下步骤:
[0031] 步骤100:初始化j个参与者Pj,(j=1,2,...,n)的公开身份信息,随机生成整数模q,q为大素数;
[0032] 步骤200:分发者从GFq区间内选择n个任意数k1,k2,...,kn∈GFq,所述GFq区间表示整数模q的集合,并将kj,j=1,2,...,n通过安全私密信道分发给每个参与者Pj;
[0033] 步骤201:分发者从GFq区间内选择m个任意数d1,d2,...,dm∈GFq,并从GFq区间内选择m个任意数s1,s2,...,sm∈GFq组成m个点  (d1,s1),(d2,s2),...,(dm,sm),其中 s1,s2,...,sm为待共享的秘密;
[0034] 步骤202:分发者用n个点(j,kj),(j=1,2,...,n),与m个点 (d1,s1),(d2,s2),...,(dm,sm)使用拉格朗日插值法插值出一个n+m-1 次曲线f(x)=a0+a1x+…+an+m-1xn+m-1,其中,x为曲线的自变量,a0、a1x,...,an+m-1为曲线的系数,该系数通过上述n个点和 m个点采用拉格朗日插值法得到;
[0035] 步骤203:分发者从GFq-{1,2,...,n}∪{d1,d2,...,dm}(GFq区间中集合{1,2,...,n}∪{d1,d2,...,dm}的补集)中随机选取互不相同的整数wi,即选择的整数wi不在{1,2,...,n}和{d1,d2,...,dm}中但是在GFq中,并计算wi带入上述f(x)的函数值f(wi),其中i=1,2,...,n+m-t,t为门限值,任意t个参与者可以恢复秘密,但任何少于t个参与者不可以得到秘密的任何信息;
[0036] 步骤204:分发者公开以下参数d1,d2,...,dm,f(w1),f(w2),...,f(wn+m-t)以供后续计算;
[0037] 步骤300:参与者Pj按照如下公式计算,恢复秘密中间值cj1、 cj2,...,cjm,其中,[0038] 步骤301:对于秘密s1,参与者Pj从GFq区间选择t个任意数 rj,1,rj,2,...,rj,(t-1)∈GFq作为恢复秘密调节值,并计算恢复秘密调节值rj,t,rj,t=cj1-rj,1-rj,2-...-rj,(t-1),恢复秘密调节值rj,t用于使 rj,1,rj,2,...,rj,(t-1),rj,t之和等于cj1;
[0039] 步骤302:任意t个参与者均能重构秘密,假设前t个参与者(身份信息为从1到t)想要恢复秘密,方法为参与者Pa将恢复秘密调节值ra,b通过私密信道发送给参与者Pb,a=1,2,...,t,b=1,2,...,t;
[0040]
[0041] 步骤303:参与者Pb计算恢复秘密调节值rb=r1,b+r2,b+…+ rt,b并通过私密信道将rb发送给其它所有t-1个参与者,b=1,2,...,t; (广播)
[0042] 步 骤 3 0 4 :秘 密 s 1 通 过 以 下 等 式 恢 复 :
[0043] 步骤305:采用步骤200~步骤304的方法分别恢复秘密 s2,...,sm。(s2就把步骤304中的公式中的d1换成d2)
[0044] 上述技术方案的步骤100为初始化阶段,步骤200~204为分发者操作的分发阶段,步骤300~305为参与者操作的恢复阶段。本发明中秘密分发者与每个参与者建立一个私密信道;每个参与者之间存在两两相连的私密信道;此外还存在一个所有人道可以访问的广播信道。本发明中假想敌手分为外部敌手与内部敌手。外部敌手会根据已知信息最大限度的破解本方案,且他可以通过各种手段获取至多t-1个参与者的数据;内部敌手为参与者本身,他可能与另外t-2个参与者合谋破解本方案。本发明中n为参与者个数,t为门限值,任意t个参与者可以恢复秘密,但任何少于t个参与者不可以得到秘密的任何信息。
[0045] 本说明书未作详细描述的内容属于本领域专业技术人员公知的现有技术。