CN113972981B - 一种基于sm2密码算法的高效门限签名方法 - Google Patents

一种基于sm2密码算法的高效门限签名方法 Download PDF

Info

Publication number
CN113972981B
CN113972981B CN202111153521.7A CN202111153521A CN113972981B CN 113972981 B CN113972981 B CN 113972981B CN 202111153521 A CN202111153521 A CN 202111153521A CN 113972981 B CN113972981 B CN 113972981B
Authority
CN
China
Prior art keywords
signature
sub
share
random number
participant
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202111153521.7A
Other languages
English (en)
Other versions
CN113972981A (zh
Inventor
荆继武
张译尹
王平建
王跃武
雷灵光
刘丽敏
寇春静
孙思维
王鹏
杨峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Chinese Academy of Sciences
Original Assignee
University of Chinese Academy of Sciences
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Chinese Academy of Sciences filed Critical University of Chinese Academy of Sciences
Priority to CN202111153521.7A priority Critical patent/CN113972981B/zh
Publication of CN113972981A publication Critical patent/CN113972981A/zh
Application granted granted Critical
Publication of CN113972981B publication Critical patent/CN113972981B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/72Signcrypting, i.e. digital signing and encrypting simultaneously

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种基于SM2密码算法的高效门限签名方法。本方法包括密钥生成阶段和数字签名生成阶段。密钥生成阶段包括有可信中心和无可信中心两种模式,其中在有可信中心模式下签名参与方数量阈值为t+1,每个签名参与方只需与可信中心通信1次;在无可信中心模式下签名参与方数量阈值为2t+1,每个签名参与方只需与其余签名参与方各通信2次。在数字签名生成阶段,签名参与方数量阈值为t+1,每个签名参与方只需与其余签名参与方各通信2次。当签名参与方中被窃听的数量最多为t个时,达到上述阈值的过程将是安全的。在密钥生成阶段无需事先获得完整的签名私钥;在数字签名生成阶段和无可信中心模式下的密钥生成阶段从未出现完整的签名私钥。

Description

一种基于SM2密码算法的高效门限签名方法
技术领域
本发明属于信息安全技术领域,具体涉及一种基于SM2密码算法的高效门限签名的安全实现方法。
背景技术
SM2算法是国家密码管理局发布的一种椭圆曲线公钥密码算法,可用于加密/解密、数字签名/验签、密钥交换,在密码领域中应用广泛。数字签名算法的安全性取决于用于产生数字签名的私钥的安全性;在SM2数字签名算法中,私钥仅由1个用户持有,一旦私钥被窃取,则攻击者可以伪造数字签名。
门限密码是保护密钥安全的一种有效的技术手段,基于门限密码的密码算法签名方法在实际应用中具有较高的应用价值。然而,在现有的基于门限密码的SM2签名方法中,存在签名参与方数量阈值较高、方案所需通信次数较多、计算较复杂等不足,使得方案在实际应用中难以获得较高的效率,从而影响了方案的普遍应用。
2014年,尚铭等人提出了一种基于SM2算法的门限签名方法,将门限密码技术与SM2签名算法结合了起来。然而,该门限签名方法存在以下不足:(1)该方法要求签名参与方数量的阈值为2t+1,不适用于(2,2)门限等应用场景;(2)该方法包括Joint-ZSS、Joint-RSS和PM-SS一共3个门限密码子算法,要求签名参与方之间进行多次通信,不适合在通信成本较高的场景下应用。
2016年,杨国强等人借助多方安全计算协议,提出了一种新的基于SM2算法的门限签名方法,将签名参与方数量的阈值降低为t+1。然而,该门限签名方法存在以下不足:(1)该方法在密钥生成阶段要求可信中心参与,由可信中心生成并分发私钥份额,不适用于难以指定可信中心的场景,且一旦可信中心受到攻击,将对密钥的安全造成直接且严重的影响;(2)该方法要求签名参与方共同执行多方安全计算协议来完成数字签名的计算,现有常用的多方安全计算协议包括混淆电路、不经意传输等,均要求协议参与方之间进行多次通信,且协议参与方需要完成复杂的计算,不适合在通信成本较高或签名参与方的计算能力有限的场景下应用。
2017年,龙毅宏通过对SM2签名算法进行变换,提出了3种新的基于SM2算法的门限签名方法,同样将签名参与方数量的阈值降低为t+1。然而,这3种门限签名方法均存在以下不足:(1)上述3种方法均要求在生成数字签名前,由可信中心对每个签名参与方(装置)进行初始化操作,由可信中心根据用户的SM2私钥计算并分发用于计算数字签名的秘密份额或秘密数,不适用于难以指定可信中心的场景;(2)上述3种方法均要求先存在用户的完整私钥,然后再根据用户的私钥进行门限拆分,不适用于直接生成私钥份额而不计算出完整私钥的应用场景,且完整私钥的出现和传输将面临私钥泄露的风险。
2018年,范佳等人借助同态加密协议和零知识证明技术,提出了一种可验证的基于SM2算法的门限签名方法,同样将签名参与方数量的阈值降低为t+1。然而,该门限签名方法存在以下不足:(1)该方法需要签名参与方完成同态加密和解密计算,要求签名参与方之间进行多次通信,且签名参与方需要完成额外的复杂计算,不适合在通信成本较高或签名参与方的计算能力有限的场景下应用;(2)该方法需要依赖RSA等额外的算法,为签名方法带来了较大的存储和计算成本,不适合在签名参与方的存储能力或计算能力有限的场景下应用。
2019年,黄章杰借助多方安全计算协议,提出了一种基于SM2算法的多方协同签名方法,能够实现签名参与方数量的阈值为t+1的SM2门限签名算法。然而,该方法存在以下不足:该方法要求签名参与方共同执行多次多方安全计算协议来完成数字签名的计算,如多方乘法子协议,要求协议参与方之间进行多次通信,且协议参与方需要完成复杂的计算,不适合在通信成本较高或签名参与方的计算能力有限的场景下应用。
发明内容
为了克服现有基于SM2算法的门限签名方法要求签名参与方数量阈值较高、签名参与方之间所需通信次数较多、基于已经存在的签名私钥、签名参与方所需计算较复杂等不足,本发明提供一种基于SM2密码算法的高效门限签名方法。
本发明所述方法包括密钥生成阶段和数字签名生成阶段。在密钥生成阶段,本方法包括有可信中心和无可信中心两种模式,其中在有可信中心模式下,签名参与方数量阈值为t+1,每个签名参与方需要与可信中心通信1次,完成1次接收数据;在无可信中心模式下,签名参与方数量阈值为2t+1,每个签名参与方需要与其余签名参与方通信2次,完成2次发送数据和2(N-1)次接收数据,其中N是签名参与方的总数。在数字签名生成阶段,签名参与方数量阈值为t+1,每个签名参与方需要与其余签名参与方通信2次,完成2次发送数据和2(M-1)次接收数据,其中M是参与数字签名生成阶段的签名参与方数量。当签名参与方中被攻击者窃听的数量最多为t个时,达到上述阈值的密钥生成过程和数字签名生成过程将是安全的,即攻击者既无法获取或计算出签名私钥,也无法伪造出能通过相应公钥验证的数字签名。
为了叙述方便,将本发明中签名参与方的总数记为N,N个签名参与方分别记为C1,...,CN,每个签名参与方具有唯一且互不相同的标号,
Figure BDA0003287934250000031
表示参与当前计算过程的任意i个签名方的标号组成的集合。理论上两个阶段的签名参与方的数量只要大于等于阈值且小于等于N即可,但因为参加生成数字签名阶段的签名参与方要求先参与过密钥生成阶段来获得子私钥,所以设定参加密钥生成阶段的签名参与方数量为N(即全部签名参与方都需要参加密钥生成阶段),而数字签名生成阶段每一次生成数字签名只需要其中任意M个签名参与方参加即可(其中要求满足t+1≤M≤N)。本发明中所有签名参与方以及可信中心均持有一致的SM2密码算法参数Fq、E、G和n,其中Fq是包含q个元素的有限域,E是定义在有限域Fq上的椭圆曲线,G是椭圆曲线E上的基点,n是基点G的阶,参数Fq、E、G和n的选取方法与标准SM2签名算法一致。
本发明在有可信中心的模式下密钥生成阶段需要1个可信中心和至少t+1个签名参与方共同完成,具体技术方案如下:
(1)可信中心选取随机数d′,并构造一个(t+1,N)-门限方案来计算其份额;例如可信中心选取随机数d′,并构造t次随机多项式
Figure BDA0003287934250000032
使得d′0=d′;
(2)可信中心计算签名公钥P=(d′-1-1)[*]G,其中[*]表示椭圆曲线E上的数乘运算;
(3)可信中心计算第一签名参数Q=G[+]P,其中[+]表示椭圆曲线E上的加法运算;
(4)可信中心计算随机数d′的份额
Figure BDA0003287934250000033
并将其分别作为标号为i的签名参与方Ci的子私钥;/>
Figure BDA0003287934250000034
表示参与当前计算过程的N个签名方的标号组成的集合;
(5)可信中心将签名公钥、第一签名参数、子私钥分别发送给对应的签名参与方,例如可信中心将P、Q、(d′)i发送给标号为i的签名参与方Ci,其中需要保证子私钥(d′)i在传输过程中是安全的;
(6)各个签名参与方接收并存储签名公钥、第一签名参数、子私钥。
本发明在无可信中心的模式下密钥生成阶段的技术方案如下:
(1)各签名参与方各自选取第一子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;例如各个签名参与方选取第一子随机数并构造相应的随机多项式,例如标号为i的签名参与方Ci选取第一子随机数
Figure BDA0003287934250000035
并构造t次随机多项式/>
Figure BDA0003287934250000036
随机数/>
Figure BDA0003287934250000037
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式fi(x)是指多项式系数均为随机数的多项式,其中系数/>
Figure BDA0003287934250000038
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的;
(2)各签名参与方各自选取第二子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;例如各个签名参与方选取第二子随机数并构造相应的随机多项式,例如标号为i的签名参与方Ci选取第二子随机数
Figure BDA0003287934250000041
并构造t次随机多项式/>
Figure BDA0003287934250000042
随机数/>
Figure BDA0003287934250000043
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式gi(x)是指多项式系数均为随机数的多项式,其中系数/>
Figure BDA0003287934250000044
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的;
(3)各签名参与方各自构造一个(2t+1,N)-门限方案来计算子零参数0的份额;例如各个签名参与方构造常数项为0的随机多项式,用来分享子零参数,例如标号为i的签名参与方Ci构造2t次常数项为0的随机多项式
Figure BDA0003287934250000045
使得/>
Figure BDA0003287934250000046
随机多项式hi(x)是指多项式系数除常数项以外均为随机数的多项式,其中系数/>
Figure BDA0003287934250000047
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。子零参数与零参数在数值上均等于0,具体来说子零参数是指/>
Figure BDA0003287934250000048
零参数是指β,/>
Figure BDA0003287934250000049
(4)各个签名参与方为每个签名参与方分别计算第一子随机数、第二子随机数、子零参数的份额,例如标号为i的签名参与方Ci为标号为j的签名参与方Cj计算
Figure BDA00032879342500000410
Figure BDA00032879342500000411
(5)各个签名参与方根据第一子随机数和基点G计算签名公钥分片,例如标号为i的参与方Ci计算签名公钥分片
Figure BDA00032879342500000412
(6)各个签名参与方将在步骤(4)中为每个签名参与方分别计算的第一子随机数的份额、第二子随机数的份额、子零参数的份额以及在步骤(5)中计算的签名公钥分片分别发送给对应的签名参与方,例如标号为i的签名参与方Ci将第一子随机数的份额
Figure BDA00032879342500000413
第二子随机数的份额/>
Figure BDA00032879342500000414
子零参数的份额/>
Figure BDA00032879342500000415
签名公钥分片/>
Figure BDA00032879342500000416
发送给标号为j的签名参与方Cj,其中需要保证第一子随机数的份额/>
Figure BDA00032879342500000417
第二子随机数的份额/>
Figure BDA00032879342500000418
子零参数的份额/>
Figure BDA00032879342500000419
在传输过程中是安全的;
(7)各个签名参与方在接收其他所有签名参与方发送来的第一子随机数的份额、第二子随机数的份额、子零参数的份额、签名公钥分片后,根据签名公钥分片计算签名公钥
Figure BDA00032879342500000420
Figure BDA00032879342500000421
若P=O则返回步骤(1);其中O为椭圆曲线上的零点,签名参与方的总数为N;
(8)各个签名参与方根据签名公钥和基点计算第一签名参数Q=G[+]P;
(9)各个签名参与方根据第一子随机数的份额、第二子随机数的份额、子零参数的份额计算自己所持第一随机数的份额、第二随机数的份额、零参数的份额,例如标号为i的签名参与方Ci计算
Figure BDA0003287934250000051
Figure BDA0003287934250000052
其中第一随机数记为d,第二随机数记为α,零参数记为β;
(10)各个签名参与方根据自己所持第一随机数的份额、第二随机数的份额、零参数的份额计算私钥子参数,例如标号为i的签名参与方Ci计算((d+1)α)i=((d)i+1)(α)i+(β)imod n;
(11)各个签名参与方向其他签名参与方发送私钥子参数,例如标号为i的签名参与方Ci向其他签名参与方发送((d+1)α)i
(12)各签名参与方将接收的私钥子参数作为门限方案的份额,利用重建门限秘密的方法计算得到私钥参数,若私钥参数值为0则返回步骤(1);例如各个签名参与方在接收私钥子参数后,计算私钥参数
Figure BDA0003287934250000053
若(d+1)α=0则返回步骤(1);/>
Figure BDA0003287934250000054
的含义是任意2t+1个签名参与方的标号组成的集合;
(13)各个签名参与方根据私钥参数、自己所持第二随机数的份额计算自己的子私钥,例如标号为i的签名参与方Ci计算(d′)i=((d+1)α)-1(α)imod n。
本发明数字签名生成阶段共M个签名参与方参与,其中M是不小于t+1且不超过N的整数,具体的技术方案如下:
(1)各签名参与方各自选取签名子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;例如各个签名参与方选取签名子随机数,并构造t次随机多项式,例如标号为i的签名参与方Ci选取随机数
Figure BDA0003287934250000055
并构造t次随机多项式/>
Figure BDA0003287934250000056
(2)各签名参与方根据签名子随机数、第一签名参数计算自己的第二签名子参数;例如各个签名参与方根据步骤(1)中构造的t次随机多项式计算每个签名参与方的签名子随机数的份额,例如标号为i的签名参与方Ci计算
Figure BDA0003287934250000057
(3)各个签名参与方根据签名子随机数、第一签名参数计算第二签名子参数,例如标号为i的签名参与方Ci计算
Figure BDA0003287934250000058
(4)各个签名参与方向其他签名参与方发送签名子随机数的份额、第二签名子参数,例如标号为i的签名参与方Ci
Figure BDA0003287934250000061
发送给标号为j的签名参与方Cj,其中需要保证签名子随机数的份额/>
Figure BDA0003287934250000062
在传输过程中是安全的;
(5)各个签名参与方在接收其他签名参与方发送的签名子随机数的份额、第二签名子参数后,根据签名子随机数的份额计算签名随机数的份额,例如标号为i的签名参与方Ci计算
Figure BDA0003287934250000063
(6)各个签名参与方根据接收的各第二签名子参数计算第二签名参数
Figure BDA0003287934250000064
Figure BDA0003287934250000065
(7)各个签名参与方计算签名的第一部分r=e+x1mod n,若r=0则返回步骤(1),其中e是待签名消息按照SM2数字签名算法中所述方法计算得到的消息摘要;
(8)各个签名参与方根据子私钥、签名的第一部分、签名随机数的份额计算签名的第二部分的份额,例如标号为i的签名参与方Ci计算(s)i=(d′)ir+(k′)i-r mod n;
(9)各个签名参与方向其他签名参与方发送签名的第二部分的份额,例如标号为i的签名参与方Ci向其他签名参与方发送(s)i
(10)各签名参与方根据签名的第二部分的份额,利用重建门限秘密的方法计算得到签名的第二部分s;例如各个签名参与方计算签名的第二部分
Figure BDA0003287934250000066
若s=0或s+r=n则返回步骤(1);
(11)得到签名(r,s)。
本发明的有益效果包括:
(1)本发明所述基于SM2密码算法的门限签名方法,在密钥生成阶段,可适用于不同的应用场景,即包括有可信中心模式和无可信中心模式,其中在有可信中心模式下,可信中心仅参与完成密钥生成阶段,在密钥生成之后将删除与完整签名私钥相关的数据,保证私钥的安全,用户可根据自身需求和应用条件选择相应的模式;
(2)本发明所述基于SM2密码算法的门限签名方法,在密钥生成阶段无需事先获得完整的签名私钥,尤其是在无可信中心模式下,完整的签名私钥从未出现,提高了签名私钥的安全性;
(3)本发明所述基于SM2密码算法的门限签名方法,在生成数字签名阶段,签名参与方数量阈值为t+1,即当参与生成数字签名阶段的签名参与方的数量M不小于t+1时,可容忍最多t个具有窃听能力的签名参与方的攻击而不泄露签名私钥,且攻击者无法伪造有效的签名;
(4)本发明所述基于SM2密码算法的门限签名方法,有效减少了生成密钥阶段和生成数字签名阶段各个签名参与方之间所需通信次数,具体而言,在有可信中心的模式下密钥生成阶段每个签名参与方需要与可信中心通信1次,完成1次接收数据;在无可信中心的模式下密钥生成阶段每个签名参与方需要与其余签名参与方通信2次,完成2次发送数据和2(N-1)次接收数据;在数字签名生成阶段每个签名参与方需要与其余签名参与方通信2次,完成2次发送数据和2(m-1)次接收数据;
(5)本发明所述基于SM2密码算法的门限签名方法,不需要依赖除SM2算法以外的其它算法,适用于签名参与方计算能力有限或为实现SM2算法的专门设备等应用场景;
(6)本发明所述基于SM2密码算法的门限签名方法,产生的数字签名可由标准SM2验签算法进行验签,即与标准SM2数字签名算法具有良好的兼容性。
附图说明
图1是本发明在有可信中心的模式下密钥生成阶段的过程示意图。
图2是本发明在无可信中心的模式下密钥生成阶段的过程示意图。
图3是本发明数字签名生成阶段的过程示意图。
具体实施方式
下面结合附图对本发明进行进一步详细描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
图1是本发明在有可信中心的模式下密钥生成阶段的过程示意图,包括可信中心的计算步骤、标号为i的签名参与方Ci的计算步骤、可信中心与标号为i的签名参与方Ci的通信内容,其它标号的签名参与方的计算步骤及其与可信中心的通信内容是类似的;其中[data]表示数据data需要被安全地传输。如图1所示,本发明方法包括如下步骤101-106。
步骤101:可信中心选取随机数d′,并构造t次随机多项式
Figure BDA0003287934250000071
使得d′0=d′。
随机数d′的选取范围为[2,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式f(x)是指多项式系数均为随机数的多项式,其中系数d′1,...,d′t的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。
在一些实施例中,可信中心可以直接生成随机多项式f(x),使得其系数满足d′0∈[2,n-1]且d′1,...,d′t∈[0,n-1],而不用先选取随机数d′。
在一些实施例中,可信中心可以在选取随机数d′后不构造随机多项式f(x),而在步骤104中选取t个[0,n-1]内的整数随机数d′1,...,d′t,通过公式
Figure BDA0003287934250000081
来计算各个签名参与方的子私钥。
步骤102:可信中心计算签名公钥P=(d′-1-1)[*]G。
步骤103:可信中心计算第一签名参数Q=G[+]P。
步骤104:可信中心计算随机数d′的份额
Figure BDA0003287934250000082
并将其分别作为标号为i的签名参与方Ci的子私钥。
步骤105:可信中心将签名公钥、第一签名参数、子私钥分别发送给对应的签名参与方,例如可信中心将P、Q、(d′)i发送给标号为i的签名参与方Ci,其中需要保证子私钥(d′)i在传输过程中是安全的。
在一些实施例中,可信中心可以使用相应标号的签名参与方的对称密钥加密子私钥,然后将子私钥的密文发送给相应标号的签名参与方,相应标号的签名参与方在步骤106中对密文进行解密运算即可获得子私钥,从而保证了在传输过程中子私钥的份额是安全的。
在一些实施例中,可信中心可以使用数字信封的方式将子私钥发送给相应标号的签名参与方,相应标号的签名参与方在步骤106中对密文进行解密运算即可获得子私钥,从而保证了在传输过程中子私钥的份额是安全的。
在一些实施例中,可信中心可以通过线下的方式将子私钥发送给相应标号的签名参与方,例如通过U盘拷贝、纸张传递等方式,从而保证了在传输过程中子私钥的份额是安全的。
在一些实施例中,可信中心可以通过包括且不限于上述方式的现有通信技术,将子私钥安全地发送给相应标号的签名参与方。
步骤106:标号为i的签名参与方Ci接收并存储由可信中心发送来的签名公钥、第一签名参数、子私钥。
图2是本发明在无可信中心的模式下密钥生成阶段的过程示意图,包括标号为i的签名参与方Ci的计算步骤、标号为i的签名参与方Ci向其他签名参与方发送的数据内容,其它标号的签名参与方的计算步骤,其它标号的签名参与方发送的数据内容是类似的,而各个签名参与方接收的数据内容与相应数据发送方所发送的数据内容是一一对应的;如图2所示,包括如下步骤201-213。
步骤201:标号为i的签名参与方Ci选取随机数
Figure BDA0003287934250000083
并构造t次随机多项式/>
Figure BDA0003287934250000084
Figure BDA0003287934250000085
随机数
Figure BDA0003287934250000086
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式fi(x)是指多项式系数均为随机数的多项式,其中系数/>
Figure BDA0003287934250000091
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。
在一些实施例中,标号为i的签名参与方Ci可以直接生成随机多项式fi(x),使得其系数满足
Figure BDA0003287934250000092
而不用先选取随机数/>
Figure BDA0003287934250000093
在一些实施例中,标号为i的签名参与方Ci可以在选取随机数
Figure BDA0003287934250000094
后不构造随机多项式fi(x),而在步骤204中选取t个[0,n-1]内的整数随机数/>
Figure BDA0003287934250000095
通过公式
Figure BDA0003287934250000096
Figure BDA0003287934250000097
来计算各个签名参与方的第一子随机数的份额。
步骤202:标号为i的签名参与方Ci选取随机数
Figure BDA0003287934250000098
并构造t次随机多项式/>
Figure BDA0003287934250000099
Figure BDA00032879342500000910
随机数
Figure BDA00032879342500000911
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式gi(x)是指多项式系数均为随机数的多项式,其中系数/>
Figure BDA00032879342500000912
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。
在一些实施例中,标号为i的签名参与方Ci可以直接生成随机多项式gi(x),使得其系数满足
Figure BDA00032879342500000913
而不用先选取随机数/>
Figure BDA00032879342500000914
在一些实施例中,标号为i的签名参与方Ci可以不构造随机多项式gi(x),而在步骤204中选取t+1个[0,n-1]内的整数随机数
Figure BDA00032879342500000915
通过公式/>
Figure BDA00032879342500000916
Figure BDA00032879342500000917
来计算各个签名参与方的第二子随机数的份额。
步骤203:标号为i的签名参与方Ci构造2t次随机多项式
Figure BDA00032879342500000918
使得
Figure BDA00032879342500000919
用来分享子零参数/>
Figure BDA00032879342500000920
随机多项式hi(x)是指多项式系数除常数项以外均为随机数的多项式,其中系数
Figure BDA00032879342500000921
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。
在一些实施例中,标号为i的签名参与方Ci可以不构造随机多项式hi(x),而在步骤204中选取2t个[0,n-1]内的整数随机数
Figure BDA00032879342500000922
通过公式/>
Figure BDA00032879342500000923
Figure BDA00032879342500000924
来计算各个签名参与方的子零参数的份额。
步骤204:标号为i的签名参与方Ci计算第一子随机数的份额
Figure BDA00032879342500000925
Figure BDA0003287934250000101
第二子随机数的份额/>
Figure BDA0003287934250000102
子零参数的份额/>
Figure BDA0003287934250000103
Figure BDA0003287934250000104
步骤205:标号为i的签名参与方Ci计算签名公钥分片
Figure BDA0003287934250000105
步骤206:标号为i的签名参与方Ci将第一子随机数的份额
Figure BDA0003287934250000106
第二子随机数的份额/>
Figure BDA0003287934250000107
子零参数的份额/>
Figure BDA0003287934250000108
签名公钥分片/>
Figure BDA0003287934250000109
分别发送给对应的签名参与方,其中需要保证第一子随机数的份额、第二子随机数的份额、子零参数的份额在传输过程中是安全的。
在一些实施例中,标号为i的签名参与方Ci可以使用相应标号的签名参与方的对称密钥加密第一子随机数的份额、第二子随机数的份额、子零参数的份额,然后将密文发送给相应标号的签名参与方,相应标号的签名参与方对密文进行解密运算即可获得相应份额,从而保证了在传输过程中相应份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以使用数字信封的方式将第一子随机数的份额、第二子随机数的份额、子零参数的份额发送给相应标号的签名参与方,相应标号的签名参与方对密文进行解密运算即可获得相应份额,从而保证了在传输过程中相应份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以通过线下的方式将第一子随机数的份额、第二子随机数的份额、子零参数的份额发送给相应标号的签名参与方,例如通过U盘拷贝、纸张传递等方式,从而保证了在传输过程中相应份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以通过包括且不限于上述方式的现有通信技术,将第一子随机数的份额、第二子随机数的份额、子零参数的份额安全地发送给相应标号的签名参与方。
步骤207:标号为i的签名参与方Ci在接收到其他签名参与方发送来的第一子随机数的份额、第二子随机数的份额、子零参数的份额、签名公钥分片后,计算签名公钥
Figure BDA00032879342500001010
Figure BDA00032879342500001011
若P=O则返回步骤201;其中O为椭圆曲线上的零点。
当签名参与方判断条件P=O为真时,意味着当前次密钥生成失败,需要返回步骤201重新生成密钥。
步骤208:标号为i的签名参与方Ci计算第一签名参数Q=G[+]P。
步骤209:标号为i的签名参与方Ci计算自己所持第一随机数的份额
Figure BDA00032879342500001012
Figure BDA00032879342500001013
第二随机数的份额/>
Figure BDA00032879342500001014
零参数的份额
Figure BDA0003287934250000111
使用第一随机数的份额
Figure BDA00032879342500001116
可以计算出第一随机数d,而第一随机数d满足
Figure BDA0003287934250000112
Figure BDA0003287934250000113
类似的,使用第二随机数的份额/>
Figure BDA0003287934250000114
和第三随机数的份额
Figure BDA0003287934250000115
Figure BDA0003287934250000116
可以分别计算出第二随机数α和第三随机数β,而第二随机数α和零参数β分别满足/>
Figure BDA0003287934250000117
Figure BDA0003287934250000118
和/>
Figure BDA0003287934250000119
第一随机数d、第二随机数α的完整数据将不会出现,仅以份额的形式参与计算,零参数β也仅以份额的形式参与计算。
步骤210:标号为i的签名参与方Ci计算私钥子参数((d+1)α)i=((d)i+1)(α)i+(β)imod n。
步骤211:标号为i的签名参与方Ci将私钥子参数((d+1)α)i发送给其他所有签名参与方。
步骤212:标号为i的签名参与方Ci在接收到其他签名参与方发送来的私钥子参数后,计算私钥参数
Figure BDA00032879342500001110
若(d+1)α=0则返回步骤201。
私钥子参数实际上是私钥参数的份额,通过门限计算可以得到私钥参数。
当签名参与方判断条件(d+1)α=0为真时,意味着当前次密钥生成失败,需要返回步骤201重新生成密钥。
步骤213:标号为i的签名参与方Ci计算自己的子私钥(d′)i=((d+1)α)-1(α)imodn。
图3是本发明数字签名生成阶段的过程示意图,包括标号为i的签名参与方Ci的计算步骤、标号为i的签名参与方Ci向其他签名参与方发送的数据内容,其它标号的签名参与方的计算步骤,其它标号的签名参与方发送的数据内容是类似的,而各个签名参与方接收的数据内容与相应数据发送方所发送的数据内容是一一对应的;如图3所示,包括如下步骤301-311。
步骤301:标号为i的签名参与方Ci选取签名子随机数
Figure BDA00032879342500001111
并构造t次随机多项式
Figure BDA00032879342500001112
Figure BDA00032879342500001113
随机数
Figure BDA00032879342500001114
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。随机多项式li(x)是指多项式系数均为随机数的多项式,其中系数/>
Figure BDA00032879342500001115
的选取范围为[0,n-1]内的整数,每个整数被选取的概率是均等的。
在一些实施例中,标号为i的签名参与方Ci可以直接生成随机多项式li(x),使得其系数满足
Figure BDA0003287934250000121
而不用先选取随机数/>
Figure BDA0003287934250000122
在一些实施例中,标号为i的签名参与方Ci可以在选取随机数
Figure BDA0003287934250000123
后不构造随机多项式li(x),而在步骤302中选取t个[0,n-1]内的整数随机数/>
Figure BDA0003287934250000124
通过公式
Figure BDA0003287934250000125
Figure BDA0003287934250000126
来计算各个签名参与方的第一子随机数的份额。
步骤302:标号为i的签名参与方Ci计算签名子随机数的份额
Figure BDA0003287934250000127
Figure BDA0003287934250000128
步骤303:标号为i的签名参与方Ci计算第二签名子参数
Figure BDA0003287934250000129
步骤304:标号为i的签名参与方Ci向其他相应的签名参与方发送签名子随机数的份额
Figure BDA00032879342500001210
第二签名子参数/>
Figure BDA00032879342500001211
其中需要保证签名子随机数的份额在传输过程中是安全的。
在一些实施例中,标号为i的签名参与方Ci可以使用相应标号的签名参与方的对称密钥加密签名子随机数的份额,然后将密文发送给相应标号的签名参与方,相应标号的签名参与方对密文进行解密运算即可获得签名子随机数的份额,从而保证了在传输过程中签名子随机数的份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以使用数字信封的方式将签名子随机数的份额发送给相应标号的签名参与方,相应标号的签名参与方对密文进行解密运算即可获得签名子随机数的份额,从而保证了在传输过程中签名子随机数的份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以通过线下的方式将第签名子随机数的份额发送给相应标号的签名参与方,例如通过U盘拷贝、纸张传递等方式,从而保证了在传输过程中签名子随机数的份额是安全的。
在一些实施例中,标号为i的签名参与方Ci可以通过包括且不限于上述方式的现有通信技术,将签名子随机数的份额安全地发送给相应标号的签名参与方。
步骤305:标号为i的签名参与方Ci在接收其他签名参与方发送的签名子随机数的份额、第二签名子参数后,计算签名随机数的份额
Figure BDA00032879342500001212
使用签名随机数的份额
Figure BDA00032879342500001213
可以计算出签名随机数k′,而签名随机数满足/>
Figure BDA00032879342500001214
Figure BDA00032879342500001215
签名随机数k′的完整数据将不会出现,仅以份额的形式参与计算。
步骤306:标号为i的签名参与方Ci计算第二签名参数
Figure BDA00032879342500001216
步骤307:标号为i的签名参与方Ci计算签名的第一部分r=e+x1mod n,若r=0则返回步骤301。
当签名参与方判断条件r=0为真时,意味着当前次数字签名生成失败,需要返回步骤301重新生成数字签名。
步骤308:标号为i的签名参与方Ci计算签名的第二部分的份额(s)i=(d′)ir+(k′)i-r mod n。
步骤309:标号为i的签名参与方Ci向其他签名参与方发送签名的第二部分的份额(s)i
步骤310:标号为i的签名参与方Ci计算签名的第二部分
Figure BDA0003287934250000131
若s=0或s+r=n则返回步骤301。
当签名参与方判断条件=0或s+r=n为真时,意味着当前次数字签名生成失败,需要返回步骤301重新生成数字签名。
在一些实施例中,步骤310可由其中一个签名参与方单独完成,而其余签名参与方则无需继续计算,完成步骤310的签名参与方需继续执行步骤311。
步骤311:得到SM2数字签名(r,s)。
在一些实施例中,可事先指定由某一签名参与方输出数字签名,也可要求所有签名参与方计算并输出数字签名。
尽管为说明目的公开了本发明的具体实施例,其目的在于帮助理解本发明的内容并据以实施,本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (11)

1.一种基于SM2密码算法的高效门限签名方法,其步骤包括:
密钥生成阶段:
(1)可信中心选取随机数d′,并构造一个(t+1,N)-门限方案来计算其份额;根据随机数d′的份额生成各签名参与方的子私钥;其中N为签名参与方的总数,签名参与方至少为t+1;
(2)可信中心计算签名公钥P=(d′-1-1)[*]G;其中,[*]表示椭圆曲线E上的数乘运算,G是椭圆曲线E上的基点,n是基点G的阶;
(3)可信中心计算第一签名参数Q=G[+]P,其中[+]表示椭圆曲线E上的加法运算;
(4)可信中心将签名公钥P、第一签名参数Q、子私钥分别发送给对应的签名参与方;
(5)各签名参与方接收并存储签名公钥、第一签名参数、子私钥;
签名阶段:
(21)各签名参与方各自选取签名子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;
(22)各签名参与方根据签名子随机数、第一签名参数计算自己的第二签名子参数;
(23)各签名参与方向其他签名参与方发送对应的签名子随机数的份额以及自己的第二签名子参数;
(24)各签名参与方在接收其他签名参与方发送的签名子随机数的份额、第二签名子参数后,根据签名子随机数的份额计算自己的签名随机数的份额;
(25)各签名参与方根据收到的各第二签名子参数计算第二签名参数(x1,y1);
(26)各签名参与方计算签名的第一部分r=e+x1mod n,若r=0则返回步骤(21),其中e是按照SM2数字签名算法标准中所给方法计算待签名消息得到的消息摘要;
(27)各签名参与方根据子私钥、签名的第一部分r、签名随机数的份额计算签名的第二部分的份额;
(28)各签名参与方向其他签名参与方发送签名的第二部分的份额;
(29)各签名参与方根据签名的第二部分的份额,利用重建门限秘密的方法计算得到签名的第二部分s,从而得到签名(r,s);若s=0或s+r=n则返回步骤(21)。
2.如权利要求1所述的方法,其特征在于,所述随机数d′的选取范围为[2,n-1]内的整数。
3.如权利要求1所述的方法,其特征在于,步骤(1)中,可信中心生成各签名参与方的子私钥的方法为:可信中心选取随机数d′,并构造t次随机多项式
Figure FDA0003287934240000011
使得d′0=d′,d′j为多项式f(x)的第j项系数;然后计算随机数d′的份额/>
Figure FDA0003287934240000012
并将其分别作为签名参与力/>
Figure FDA0003287934240000013
的子私钥;/>
Figure FDA0003287934240000014
表示密钥生成阶段的N个签名参与方的标号组成的集合。
4.如权利要求1所述的方法,其特征在于,步骤(1)中,可信中心生成各签名参与方的子私钥的方法为:可信中心选取随机数d′,以及t个[0,n-1]内的整数随机数d′1,...,d′t,通过公式
Figure FDA0003287934240000021
来计算随机数d′的份额(d′)i并将其作为签名参与方Ci的子私钥;/>
Figure FDA0003287934240000022
表示密钥生成阶段的N个签名参与方的标号组成的集合。
5.如权利要求1所述的方法,其特征在于,步骤(21)中,签名参与方Ci在[0,n-1]内选取随机整数
Figure FDA0003287934240000023
并构造t次随机多项式/>
Figure FDA0003287934240000024
系数/>
Figure FDA0003287934240000025
的选取范围为[0,n-1]内的整数;步骤(22)中,签名参与方Ci计算每个签名参与方的签名子随机数的份额
Figure FDA0003287934240000026
Figure FDA0003287934240000027
表示M个签名参与方的标号组成的集合;步骤(23)中,参与方Ci计算自己的第二签名子参数/>
Figure FDA0003287934240000028
步骤(24)中,签名参与方Ci计算自己的签名随机数的份额/>
Figure FDA0003287934240000029
步骤(25)中,签名参与方Ci计算第二签名参数/>
Figure FDA00032879342400000210
步骤(28)中,签名参与方Ci计算自己的签名的第二部分的份额(s)i=(d′)ir+(k′)i-r mod n;步骤(29)中,各签名参与方根据公式
Figure FDA00032879342400000211
计算得到签名的第二部分s;其中/>
Figure FDA00032879342400000212
表示任意t+1个签名参与方的标号组成的集合。
6.一种基于SM2密码算法的高效门限签名方法,其步骤包括:
密钥生成阶段:
(1)各签名参与方各自选取第一子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;其中N为签名参与方的总数,签名参与方至少为t+1;
(2)各签名参与方各自选取第二子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;
(3)各签名参与方各自构造一个(2t+1,N)-门限方案来计算子零参数0的份额;
(4)各签名参与方根据第一子随机数和基点G计算签名公钥分片;
(5)各签名参与方将第一子随机数的份额、第二子随机数的份额、子零参数的份额、签名公钥分片分别发送给对应的签名参与方;
(6)各签名参与方根据接收的第一子随机数的份额、第二子随机数的份额、子零参数的份额、签名公钥分片,计算签名公钥P,若P=O则返回步骤(1);其中O为椭圆曲线上的零点;
(7)各签名参与方计算第一签名参数Q=G[+]P;其中,[+]表示椭圆曲线E上的加法运算,G是椭圆曲线E上的基点,n是基点G的阶;
(8)各签名参与方根据第一子随机数的份额、第二子随机数的份额、子零参数的份额计算自己所持第一随机数的份额、第二随机数的份额、零参数的份额;
(9)各签名参与方根据自己所持第一随机数的份额、第二随机数的份额、零参数的份额计算私钥子参数;
(10)各签名参与方向其他签名参与方发送自己的私钥子参数;
(11)各签名参与方将接收的私钥子参数作为门限方案的份额,利用重建门限秘密的方法计算得到私钥参数,若私钥参数值为0则返回步骤(1);
(12)各签名参与方根据私钥参数、自己所持第二随机数的份额计算自己的子私钥;
签名阶段:
(21)各签名参与方各自选取签名子随机数,并各自构造一个(t+1,N)-门限方案来计算其份额;
(22)各签名参与方根据签名子随机数、第一签名参数计算自己的第二签名子参数;
(23)各签名参与方向其他签名参与方发送对应的签名子随机数的份额以及自己的第二签名子参数;
(24)各签名参与方在接收其他签名参与方发送的签名子随机数的份额、第二签名子参数后,根据签名子随机数的份额计算自己的签名随机数的份额;
(25)各签名参与方根据收到的各第二签名子参数计算第二签名参数(x1,y1);
(26)各签名参与方计算签名的第一部分r=e+x1mod n,若r=0则返回步骤(21),其中e是按照SM2数字签名算法标准中所给方法计算待签名消息得到的消息摘要;
(27)各签名参与方根据子私钥、签名的第一部分r、签名随机数的份额计算签名的第二部分的份额;
(28)各签名参与方向其他签名参与方发送签名的第二部分的份额;
(29)各签名参与方根据签名的第二部分的份额,利用重建门限秘密的方法计算得到签名的第二部分s,从而得到签名(r,s);若s=0或s+r=n则返回步骤(21)。
7.如权利要求6所述的方法,其特征在于,步骤(1)中所述第一子随机数的选取范围均为[0,n-1]内的整数;或者步骤(1)中,签名参与方Ci选取第一子随机数
Figure FDA0003287934240000031
并构造t次随机多项式/>
Figure FDA0003287934240000032
然后计算第一子随机数/>
Figure FDA0003287934240000033
的份额/>
Figure FDA0003287934240000034
Figure FDA0003287934240000035
Figure FDA0003287934240000036
表示密钥生成阶段的N个签名参与方的标号组成的集合;或者步骤(1)中,签名参与方Ci选取第一子随机数/>
Figure FDA0003287934240000041
以及t个[0,n-1]内的整数随机数/>
Figure FDA0003287934240000042
通过公式/>
Figure FDA0003287934240000043
来计算各个签名参与方的第一子随机数的份额;/>
Figure FDA0003287934240000044
表示密钥生成阶段的N个签名参与方的标号组成的集合。
8.如权利要求6所述的方法,其特征在于,步骤(2)中,所述第二子随机数的选取范围均为[0,n-1]内的整数;或者步骤(2)中签名参与方Ci选取第二子随机数
Figure FDA0003287934240000045
并构造t次随机多项式/>
Figure FDA0003287934240000046
然后计算第二子随机数/>
Figure FDA0003287934240000047
的份额/>
Figure FDA0003287934240000048
Figure FDA0003287934240000049
Figure FDA00032879342400000410
表示密钥生成阶段的N个签名参与方的标号组成的集合;或者步骤(2)中签名参与方Ci选取第二子随机数/>
Figure FDA00032879342400000411
以及t个[0,n-1]内的整数随机数
Figure FDA00032879342400000412
通过公式/>
Figure FDA00032879342400000413
来计算各个签名参与方的第二子随机数的份额;/>
Figure FDA00032879342400000414
表示密钥生成阶段的N个签名参与方的标号组成的集合。
9.如权利要求6所述的方法,其特征在于,步骤(3)中,签名参与方Ci构造2t次随机多项式
Figure FDA00032879342400000415
使得/>
Figure FDA00032879342400000416
然后计算子零参数/>
Figure FDA00032879342400000417
的份额/>
Figure FDA00032879342400000418
Figure FDA00032879342400000419
Figure FDA00032879342400000420
表示密钥生成阶段的N个签名参与方的标号组成的集合;或者步骤(3)中,签名参与方Ci选取2t个[0,n-1]内的整数随机数/>
Figure FDA00032879342400000421
通过公式/>
Figure FDA00032879342400000422
Figure FDA00032879342400000423
来计算各个签名参与方的子零参数/>
Figure FDA00032879342400000424
的份额;/>
Figure FDA00032879342400000425
表示密钥生成阶段的N个签名参与方的标号组成的集合。
10.如权利要求6所述的方法,其特征在于,步骤(4)中,签名参与方Ci计算的公钥分片为
Figure FDA00032879342400000426
步骤(8)中,签名参与方Ci计算所持第一随机数的份额/>
Figure FDA00032879342400000427
Figure FDA00032879342400000428
第二随机数的份额/>
Figure FDA00032879342400000429
零参数的份额
Figure FDA00032879342400000430
步骤(9)中,签名参与方Ci计算的私钥子参数为((d+1)α)i=((d)i+1)(α)i+(β)imod n;步骤(11)中,各签名参与方根据公式/>
Figure FDA00032879342400000431
Figure FDA00032879342400000432
计算得到私钥参数(d+1)α,若(d+1)α=0则返回步骤(1);其中/>
Figure FDA00032879342400000433
表示任意2t+1个签名参与方的标号组成的集合;步骤(12)中,签名参与方Ci计算的子私钥为(d′)i=((d+1)α)-1(α)imod n。
11.如权利要求6所述的方法,其特征在于,步骤(21)中,签名参与方Ci在[0,n-1]内选取随机整数
Figure FDA0003287934240000051
并构造t次随机多项式/>
Figure FDA0003287934240000052
系数/>
Figure FDA0003287934240000053
的选取范围为[0,n-1]内的整数;步骤(22)中,签名参与方Ci计算每个签名参与方的签名子随机数的份额
Figure FDA0003287934240000054
Figure FDA0003287934240000055
表示M个签名参与方的标号组成的集合;步骤(23)中,参与方Ci计算自己的第二签名子参数/>
Figure FDA0003287934240000056
步骤(24)中,签名参与方Ci计算自己的签名随机数的份额/>
Figure FDA0003287934240000057
步骤(25)中,签名参与方Ci计算第二签名参数/>
Figure FDA0003287934240000058
步骤(28)中,签名参与方Ci计算自己的签名的第二部分的份额(s)i=(d′)ir+(k′)i-r mod n;步骤(29)中,各签名参与方根据公式
Figure FDA0003287934240000059
计算得到签名的第二部分s;其中/>
Figure FDA00032879342400000510
表示任意t+1个签名参与方的标号组成的集合。
CN202111153521.7A 2021-09-29 2021-09-29 一种基于sm2密码算法的高效门限签名方法 Active CN113972981B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111153521.7A CN113972981B (zh) 2021-09-29 2021-09-29 一种基于sm2密码算法的高效门限签名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111153521.7A CN113972981B (zh) 2021-09-29 2021-09-29 一种基于sm2密码算法的高效门限签名方法

Publications (2)

Publication Number Publication Date
CN113972981A CN113972981A (zh) 2022-01-25
CN113972981B true CN113972981B (zh) 2023-07-04

Family

ID=79587156

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111153521.7A Active CN113972981B (zh) 2021-09-29 2021-09-29 一种基于sm2密码算法的高效门限签名方法

Country Status (1)

Country Link
CN (1) CN113972981B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI795284B (zh) * 2022-05-05 2023-03-01 英屬開曼群島商現代財富控股有限公司 基於混淆電路的門檻式簽章生成系統及其方法
CN115001672B (zh) * 2022-05-27 2024-05-17 建信金融科技有限责任公司 一种安全多方计算方法、装置、系统、设备及存储介质
CN117155584B (zh) * 2023-10-27 2024-01-26 北京信安世纪科技股份有限公司 Schnorr数字签名方法、系统及设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547199A (zh) * 2018-11-19 2019-03-29 武汉大学 一种多方联合生成sm2数字签名的方法
CN111934877A (zh) * 2020-06-23 2020-11-13 中国科学院信息工程研究所 一种sm2协同门限签名方法及电子装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547199A (zh) * 2018-11-19 2019-03-29 武汉大学 一种多方联合生成sm2数字签名的方法
CN111934877A (zh) * 2020-06-23 2020-11-13 中国科学院信息工程研究所 一种sm2协同门限签名方法及电子装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A SM2 Elliptic Curve Threshold Signature Scheme without a Trusted Center;Jie Yan, etc.;《KoreaScience》;全文 *
ALTEE:Constructing trustworthy execution environment for mobile app dynamically;Yang Cai, etc.;《IEEE》;全文 *

Also Published As

Publication number Publication date
CN113972981A (zh) 2022-01-25

Similar Documents

Publication Publication Date Title
CN112367175B (zh) 基于sm2数字签名的隐式证书密钥生成方法
CN113972981B (zh) 一种基于sm2密码算法的高效门限签名方法
US6483921B1 (en) Method and apparatus for regenerating secret keys in Diffie-Hellman communication sessions
CN110011795B (zh) 基于区块链的对称群组密钥协商方法
US9172529B2 (en) Hybrid encryption schemes
CN114157427B (zh) 基于sm2数字签名的门限签名方法
CN112906030B (zh) 基于多方全同态加密的数据共享方法和系统
CN110120939B (zh) 一种基于异构系统的可否认认证的加密方法和系统
CN111049647B (zh) 一种基于属性门限的非对称群组密钥协商方法
US9088419B2 (en) Keyed PV signatures
CN112422276B (zh) 一种多方密钥协商的实现方法及系统
CN111030801A (zh) 一种多方分布式的sm9密钥生成、密文解密方法与介质
CN110855425A (zh) 一种轻量级多方协同sm9密钥生成、密文解密方法与介质
Lee et al. Security analysis of end-to-end encryption in Telegram
CN110086630B (zh) 基于爱德华兹曲线数字签名的生成方法
CN114070549B (zh) 一种密钥生成方法、装置、设备和存储介质
CN111565108B (zh) 签名处理方法、装置及系统
CN111756537B (zh) 基于sm2标准的两方协同解密方法、系统及存储介质
CN111865578A (zh) 一种基于sm2的多接收方公钥加密方法
CN111526131A (zh) 基于秘密共享和量子通信服务站的抗量子计算的电子公文传输方法和系统
CN115865313A (zh) 一种轻量级隐私保护纵向联邦学习模型参数聚合方法
CN114070550B (zh) 一种信息处理方法、装置、设备和存储介质
CN110321722B (zh) Dna序列相似率安全计算方法及系统
CN111934887A (zh) 基于插值多项式的多接受者签密方法
Tseng et al. An efficient anonymous key agreement protocol based on chaotic maps

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant