一种无可信中心的(2,3)门限SM2签名方法技术

技术编号:39242345 阅读:8 留言:0更新日期:2023-10-30 11:54
本发明专利技术涉及一种无可信中心的(2,3)门限SM2签名方法。所述方法包括系统初始化阶段、(2,3)门限密钥生成阶段、消息哈希值计算阶段、签名随机数分布式生成阶段、针对私钥d,分享(d+1)

【技术实现步骤摘要】
一种无可信中心的(2,3)门限SM2签名方法


[0001]本专利技术涉及信息安全中的数字签名
,特别是一种无可信中心的(2,3)门限SM2签名方法。

技术介绍

[0002]在密码学中,密钥是保证信息安全的关键。密钥的安全存储是保证信息安全的重要保障。如果密钥被泄露,那么攻击者就可以轻易地解密加密数据或者篡改数据,从而对信息的机密性、完整性和可用性造成极大的威胁。而秘密分享是一种新型的密码学技术,相对于传统公钥密码学,其密钥存储方式具有更高的安全性和更加灵活的密钥管理方式。秘密分享将密钥分成多个部分,每个部分由不同的持有者保管,可以避免传统公钥密码学中私钥泄露所带来的风险。多个密钥部分可以分布在不同的地理位置、信任域或安全域中,从而降低了密钥管理的复杂性。此外,密钥部分可以根据需要进行重新组合,灵活地控制密钥的使用范围和访问权限。秘密分享具有高度的安全性,即使攻击者获取了部分密钥,也无法推算出完整的密钥,从而保证了密钥的机密性。总之,秘密分享成为了一种重要的密码学技术,被广泛应用于信息安全领域,为用户提供了更加安全和灵活的密钥管理方式。
[0003]秘密分享是信息安全和数据保密中的重要手段,其概念最早是由Shamir和Blakley于1979年各自独立提出的。它是指将秘密s分割成若干个份额(share)在一组参与者P={P1,P2,...,P
n
}中进行分配,使得每一个参与者都得到关于该秘密的一个秘密份额,而只有P的一些特定子集(称为合格子集或授权子集)才能有效地恢复s,而P的其它子集(非合格子集)不能有效地恢复s,甚至得不到关于秘密s的任何有用信息。
[0004]Boyd和Desmedt提出的门限签名是最著名的门限密码系统之一,它是一种基于秘密分享技术之上的多方签名方案,在其运行过程中,私钥信息被分割成多个部分,并分享给多个独立的参与者,每次进行私钥计算时,需要获得多个参与者的同意才能完成计算,从而提高算法的安全性和健壮性,即使有少量参与者发生故障或不可用,也不会影响私钥的可用性。
[0005]近年来,随着区块链技术的飞速发展,比特币中为确保用户私有签名密钥的安全性所采用的ECDSA(Elliptic Curve Digital SignatureAlgorithm)逐渐成为大家研究的热点,尤其是门限ECDSA。ECDSA是一种椭圆曲线密码系统,由于椭圆曲线密码系统在安全性和效率方面优于传统密码系统(如RSA和DSA密码系统),所以其已逐步成为公钥算法领域的主流算法。
[0006]为了满足电子认证服务系统中的应用需求,中国国家密码管理局于2010年12月17日发布了基于椭圆曲线的公钥密码算法SM2,它可以满足各种加密应用中的身份验证、数据完整性和真实性。作为中国政府发布的第一个公钥算法标准,SM2椭圆曲线公钥算法在构建中国信息安全系统方面发挥了重要作用。有效的门限SM2椭圆曲线签名方案可以取代ECDSA在大多数应用中,特别是国内机密应用中的使用。然而,与ECDSA的几种安全门限签名方案相比,对安全的门限SM2签名方案的研究仍然较少。因此,提出一个安全的门限SM2签名方案
具有重要意义。

技术实现思路

[0007]本专利技术的目的在于针对现有的门限SM2签名方案仍然存在很大的局限性,因此提供一种无可信中心的(2,3)门限SM2签名方法,不仅避免了零知识证明,提高了整个方案的效率,而且成功地保证了整个签名方案中的门限值是固定的t=2。
[0008]为实现上述目的,本专利技术的技术方案是:一种无可信中心的(2,3)门限SM2签名方法,包括如下步骤:
[0009]步骤A系统初始化阶段:根据安全参数,运行系统参数生成算法,输出系统的全局公开参数集SP;
[0010]步骤B(2,3)门限密钥生成阶段:根据系统的全局公开参数集SP,所有参与方随机选取各自的随机数r
i
,并将其用(2,3)Shamir门限方案分享给所有参与者,同时使用Feldman

s VSS广播对应分享多项式的承诺;在验证各参与者的分享均有效后,各方生成各自关于群体私钥sk=d=(r1+r2+r3)的份额d
i
,同时各自计算出对应的群体公钥pk;
[0011]步骤C消息哈希值计算阶段:根据被签消息m,每位参与者P
i
计算出其对应的哈希值e;
[0012]步骤D签名随机数分布式生成阶段:根据系统的全局公开参数集SP,调用步骤B合作生成随机数k,使用Feldman

s VSS公开其对应的承诺,并秘密保存各自选取的随机值;
[0013]步骤E针对私钥d,分享(d+1)
‑1:首先各参与方由d的份额产生分享(d+1)的份额,其次通过(2,3)门限密钥生成算法得到随机数k',进而产生对(d+1)k'的(2,3)秘密分享,之后恢复出u=(d+1)k'并计算u
‑1,最后各自计算出分享(d+1)
‑1的份额;
[0014]步骤F根据步骤C和步骤D得到的结果,各参与方P
i
计算出签名的第一部分信息r;
[0015]步骤G分享(k

rd)阶段:根据步骤B和步骤D得到的份额信息以及步骤F中计算出的签名的第一部分信息r,各参与方P
i
能够计算出自己拥有的关于(k

rd)的秘密份额;
[0016]步骤H分享(d+1)
‑1(k

rd)阶段:根据步骤E和步骤G得到的份额信息,各参与方P
i
能够计算出自己拥有的关于(d+1)
‑1(k

rd)的秘密份额;
[0017]步骤I输出签名阶段:各参与方P
i
输出其拥有的关于(d+1)
‑1(k

rd)的秘密份额信息后;通过组合其中任意两名参与方输出的有效秘密份额信息,即可得到签名的第二部分信息s;最终输出对消息m的有效签名(r,s)。
[0018]在本专利技术一实施例中,步骤A具体实现如下:
[0019]给定安全参数λ,生成系统全局公开参数集SP=(F
p
,E(F
p
),G,p,q,H),其中,p为长度不小于160比特的大素数,F
p
为有限域,E(F
p
)为选择a、b∈F
p
作为参数的椭圆曲线(y2=x3+ax+b modp),满足椭圆曲线方程的点构成一个阶为q的阿贝尔群G,H:{0,1}
*

{0,1}
256
为SM3密码杂凑算法。
[0020]在本专利技术一实施例中,步骤B具体实现如下:
[0021]B.1、各参与方P
i
随机选取各自的随机数r
i
,分别构造一次随机秘密分享多项式f
i
(x)=a
i,0<本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种无可信中心的(2,3)门限SM2签名方法,其特征在于,包括如下步骤:步骤A系统初始化阶段:根据安全参数,运行系统参数生成算法,输出系统的全局公开参数集SP;步骤B(2,3)门限密钥生成阶段:根据系统的全局公开参数集SP,所有参与方随机选取各自的随机数r
i
,并将其用(2,3)Shamir门限方案分享给所有参与者,同时使用Feldman

s VSS广播对应分享多项式的承诺;在验证各参与者的分享均有效后,各方生成各自关于群体私钥sk=d=(r1+r2+r3)的份额d
i
,同时各自计算出对应的群体公钥pk;步骤C消息哈希值计算阶段:根据被签消息m,每位参与者P
i
计算出其对应的哈希值e;步骤D签名随机数分布式生成阶段:根据系统的全局公开参数集SP,调用步骤B合作生成随机数k,使用Feldman

s VSS公开其对应的承诺,并秘密保存各自选取的随机值;步骤E针对私钥d,分享(d+1)
‑1:首先各参与方由d的份额产生分享(d+1)的份额,其次通过(2,3)门限密钥生成算法得到随机数k',进而产生对(d+1)k'的(2,3)秘密分享,之后恢复出u=(d+1)k'并计算u
‑1,最后各自计算出分享(d+1)
‑1的份额;步骤F根据步骤C和步骤D得到的结果,各参与方P
i
计算出签名的第一部分信息r;步骤G分享(k

rd)阶段:根据步骤B和步骤D得到的份额信息以及步骤F中计算出的签名的第一部分信息r,各参与方P
i
能够计算出自己拥有的关于(k

rd)的秘密份额;步骤H分享(d+1)
‑1(k

rd)阶段:根据步骤E和步骤G得到的份额信息,各参与方P
i
能够计算出自己拥有的关于(d+1)
‑1(k

rd)的秘密份额;步骤I输出签名阶段:各参与方P
i
输出其拥有的关于(d+1)
‑1(k

rd)的秘密份额信息后;通过组合其中任意两名参与方输出的有效秘密份额信息,即可得到签名的第二部分信息s;最终输出对消息m的有效签名(r,s)。2.根据权利要求1所述的一种无可信中心的(2,3)门限SM2签名方法,其特征在于,步骤A具体实现如下:给定安全参数λ,生成系统全局公开参数集SP=(F
p
,E(F
p
),G,p,q,H),其中,p为长度不小于160比特的大素数,F
p
为有限域,E(F
p
)为选择a、b∈F
p
作为参数的椭圆曲线(y2=x3+ax+b modp),满足椭圆曲线方程的点构成一个阶为q的阿贝尔群G,H:{0,1}
*

{0,1}
256
为SM3密码杂凑算法。3.根据权利要求1所述的一种无可信中心的(2,3)门限SM2签名方法,其特征在于,步骤B具体实现如下:B.1、各参与方P
i
随机选取各自的随机数r
i
,分别构造一次随机秘密分享多项式f
i
(x)=a
i,0
+a
i,1
x使得a
i,0
=r
i
,其中a
i,0
和a
i,1
从有限域F
p
中随机均匀选取,计算f
i
(1),f
i
(2),f
i
(3)并分别分发给参与者P1,P2,P3;同时,P
i
通过Feldman

s VSS计算对a
i,0
和a
i,1
的承诺[a
i,0
]G,[a
i,1
]G并进行广播;B.2、各接收方P
j
(j≠i)在收到来自P
i
的消息后,通过Feldman

s VSS验证f
i
(j)G=[a
i,0
]G+[a
i,1
][j]G是否成立,若成立则证实其份额有效;否则重复步骤B.1;B.3、经过步骤B.1、B.2得到群体私钥群体公钥pk=[d]G=[r1]G+[r2]G+[r3]G;P1拥有关于群体私钥d的秘密份额为d1=f1(1)+f2(1)+f3(1),P2拥有关于群体私钥d的秘密份额为d2=f1(2)+f2(2)+f3(2),P3拥有关于群体私钥d的秘密份额为
(2)+w2(2)+w3(2),P3拥有关于(d+1)k'的秘密份额为v3=w1(3)+w2(3)+w3(3);E.8、参与者P1,P2,P3中的任意两方凭借其拥有的关于(d+1)k'的秘密份额即可通过合作恢复秘密u=(d+1)k',再进行求逆运算即可得到u
‑1=(d+1)
‑1k'
‑1;E.9、各参与方P
i
能够计算出关于(d+1)
‑1的秘密份额d
i
...

【专利技术属性】
技术研发人员:张福泰李诗洋田金梅杨文杰
申请(专利权)人:福建师范大学
类型:发明
国别省市:

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

1