CN107248909B - 一种基于sm2算法的无证书安全签名方法 - Google Patents
一种基于sm2算法的无证书安全签名方法 Download PDFInfo
- Publication number
- CN107248909B CN107248909B CN201710157604.0A CN201710157604A CN107248909B CN 107248909 B CN107248909 B CN 107248909B CN 201710157604 A CN201710157604 A CN 201710157604A CN 107248909 B CN107248909 B CN 107248909B
- Authority
- CN
- China
- Prior art keywords
- user
- signature
- public key
- sending
- key
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
一种基于SM2算法的无证书安全签名方法,属于公钥密码应用领域,用于解决椭圆曲线上无双性对运算的无证书公钥密码体制中任意N(N≥2)个用户的私钥生成、并由N个用户联合完成对一个消息的SM2签名问题。在本发明中,每个用户均无法获取其他用户的私钥信息,少于N个用户的用户子集不能生成完整的数字签名,充分保证签名的安全性。攻击者也不能在未窃取全部N个私钥的情况下伪造合法签名。本发明所述安全签名过程简单,运算效率高,签名结果符合国密SM2签名算法标准。
Description
技术领域
本发明属于公钥密码领域,特别涉及基于国密SM2算法的无证书认证系统的安全签名方法。
背景技术
公钥密码技术在计算机技术和网络技术高度发展的今天,已得到了广泛应用。数字签名技术和公钥加密技术已深入到人们的日常生活。为了保证数字签名的唯一性和签名私钥的安全性,通常由私钥所有者将签名私钥保存在密码设备内,签名运算也在密码设备内执行。所采用的密码设备在服务器端通常为密码机,在客户端为带CPU的USBKEY和IC卡等。在云计算环境和手机移动终端等环境下,使用这些密码设备来保存密钥和执行密码运算就很不方便,因而出现了将密钥保存在手机文件中并在手机上执行密码运算的应用需求。这种软环境给密钥的存储安全和使用安全带来很大隐患。为了提高密钥存储和密码运算的安全性,可以采用密钥共享的方式,由多个用户联合对同一消息签名,最后形成的签名可使用共享的公钥进行验证。对于国密SM2签名算法,由于其算法的特殊性,实现密钥共享和联合签名比较困难。此外,对于一种无双性对运算的无证书公钥密码体制(参见申请号为201410772127.5的专利),由多方联合完成基于SM2算法的签名则更加困难,目前尚未发现解决这种应用需求的方法。
发明内容
本发明针对无双性对运算的无证书公钥密码体制,提出一种用户密钥共享方法,在无证书密钥生成中心的协助下,N(N≥2)个用户分别生成不同的私钥,并生成一个共享公钥。在需要对消息作数字签名时,由多方联合完成对消息的SM2签名,签名依赖方可用共享公钥按SM2验证签名算法进行验证。这种密钥共享和签名方法满足以下要求:
(1)N个用户对各自的私钥具有完全自主权,其他用户或任何第三方(包括无证书密钥生成中心)对该私钥都不可知。
(2)多方合作完成的数字签名符合国密SM2签名标准要求,签名依赖方可使用共享公钥进行验证。
(3)少于N个用户合作不能构造完整合法的SM2签名。
本发明所涉及到的椭圆曲线参数按国密SM2算法标准设置。有限域上的椭圆曲线记为E(Fq),其基点为G,而G的阶为素数n。
本发明中,无证书密钥生成中心称为KGC,N个用户分别记为U1,U2,…,UN,他们共享一个标识ID,h(x)为SM3杂凑函数。
一、密钥生成
本发明所述生成无证书共享密钥的方法涉及KGC和用户U1,U2,…,UN,具体技术方案描述如下。
G01所述KGC设置系统私钥sM和系统公钥Ppub,完成系统建立。
G02所述用户U1随机选取k1∈[1,n-1],计算P1=k1G,发送P1到用户U2。
G03对于i=2,3,…,N-1,所述用户Ui在收到Pi-1后随机选取di,ki∈[1,n-1],计算Pi=(di)-1Pi-1+kiG,发送Pi到Ui+1。
G04所述用户UN在收到PN-1后随机选取dN,kN∈[1,n-1],计算PN=(dN)-1PN-1+kNG,发送PN到KGC。
G05所述KGC随机选取k0∈[1,n-1],计算P=PN+k0G,s0=k0+h(ID||P)sM(mod n),KGC将P作为用户实体的部分公钥发布,发送s0到用户UN。
G06所述用户UN计算sN=dN(kN+s0+1)(mod n),QN=(dN)-1G,发送sN和QN到用户UN-1。并将dN作为用户UN的私钥保存,将QN作为用户UN的公钥参数保存。
G07对于i=N-1,N-2,…,2,所述用户Ui计算si=di(ki+si+1)(mod n),Qi=(di)- 1Qi+1,发送si和Qi到Ui-1。并将di作为用户Ui的私钥保存,将Qi作为用户Ui的公钥参数保存。
G08所述用户U1计算d1=(k1+s2)-1(mod n),Q1=(d1)-1Q2,将d1作为用户U1的私钥保存,将Q1作为用户U1的公钥参数保存。
按此过程生成的用户密钥信息汇总如下:
(1)用户Ui的私钥为di(i=1,2,…,N)。
(2)用户Ui的公钥参数为Qi=(di…dN)-1G(i=1,2,…,N)。
(3)N个用户的共享公钥为Q=((d1d2…dN)-1–1)G。
(4)N个用户的共同私钥为d=(d1d2…dN)-1–1(mod n)。
(5)N个用户的共同部分公钥为P。
在密钥生成的所有环节中,共同私钥d并不实际出现,任何人都可以通过公式Q=P+h(ID||P)Ppub计算得到共享公钥。
二、签名与验签
本发明所述安全签名方法是指用户实体需要对消息作数字签名时,由N个用户联合按序完成对消息的签名,且签名结果为普通的SM2签名,签名接收方可以使用共享公钥进行验证。
所述安全签名方法涉及到的N个用户为U1,U2,…,UN。用户Ui具有私钥di和公钥参数Qi,他们的共享公钥为Q=((d1d2…dN)-1–1)G,且有Q1=(d1d2…dN)-1G,Q2=(d2…dN)-1G,…,QN=(dN -1)G。
设待签名的消息为M,e=h(Z||M)是对消息M的摘要值。由N个用户按次序联合完成对摘要值e的SM2签名。所述多方联合签名的方案如下。
S01所述用户U1计算摘要值e,再随机选取k1∈[1,n-1],计算R1=k1Q1,发送e和R1到用户U2。
S02对于i=2,3,…,N-1,所述用户Ui在收到Ri-1后随机选取ki∈[1,n-1],计算Ri=Ri-1+kiQi,发送e和Ri到用户Ui+1。
S03所述用户UN在收到RN-1后随机选取kN∈[1,n-1],计算RN=RN-1+kNQN。
S04设RN=(x1,y1),所述用户UN计算r=(e+x1)(mod n),sN=kN+rdN(mod n),生成部分签名(r,sN),发送部分签名(r,sN)到用户UN-1。
S05对于i=N-1,N-2,…,1,所述用户Ui在收到用户Ui+1的部分签名(r,si+1)后,首先验证该部分签名。验证过程为:计算Qi+1=diQi,Ri+si+1Qi+1–rG=(x1’,y1’),检验r=(e+x1’)(mod n)是否成立。若验证通过,再计算si=ki+si+1di(mod n),生成部分签名(r,si),当i>1时,用户Ui发送部分签名(r,si)到用户Ui-1。
S06所述用户U1计算s=s1–r(mod n),生成最终签名(r,s)。
按此步骤生成的签名(r,s)可以使用共享公钥Q按SM2签名的验证算法进行验证。
签名接收者在接收到消息M和签名(r,s)后,首先根据用户ID及部分公钥P计算共享公钥Q,再按SM2签名验证算法,令u=r+s(mod n),计算摘要值e=h(Z||M),sG+uQ=(x1’,y1’),最后验证r=(e+x1’)(mod n)是否成立。
通过下面三个步骤,可以证明本发明所述的多方联合签名方法生成的签名能够通过SM2签名验证算法的验证。首先证明对于i=N-1,N-2,…,1,步骤S05中对部分签名(r,si+1)的验证是正确的,然后证明最终签名能够使用共享公钥Q进行验证。
V01验证部分签名(r,sN)。
由于sN=kN+rdN(mod n),QN=(dN)-1G,所以(x1’,y1’)=RN-1+sNQN–rG=RN-1+kNQN+rG–rG=RN-1+kNQN=RN=(x1,y1),因此有x1’=x1,所以r=(e+x1’)(mod n)成立。
V02对于i=N-1,N-2,…,2,假定已经验证了部分签名(r,si+1),即已经有Ri+si+ 1Qi+1–rG=RN成立,来验证部分签名(r,si),即验证Ri-1+siQi–rG=RN成立。
由于Qi=(di)-1Qi+1,Ri-1=Ri–kiQi,si=ki+si+1di(mod n),
所以Ri-1+siQi–rG=(Ri–kiQi)+(kiQi+si+1di(di)-1Qi+1)–rG=Ri+si+1Qi+1–rG=RN。
于是部分签名(r,si)得到验证。
V03验证最终签名(r,s)。
按SM2签名验证算法,只需要验证sG+uQ=RN成立,其中Q为用户实体的实际公钥。
在验证过程V02中,已经验证了R1+s2Q2–rG=RN成立。由于s=s1–r(mod n),所以u=r+s=s1(mod n),又因为s1=k1+s2d1(mod n),R1=k1Q1,Q1=(d1)-1Q2,Q=Q1–G,所以
sG+uQ=(s1–r)G+s1(Q1–G)
=s1Q1–rG=(k1+s2d1)Q1–rG
=k1Q1+s2d1(d1)-1Q2–rG
=R1+s2Q2–rG=RN
至此,所述最终签名(r,s)得到完全验证,因此(r,s)就是一个标准的SM2签名。
本发明所述安全签名方法,共享公钥的N个用户都不能获取其他用户私钥的信息,少于N个用户联合不能构造对消息的合法数字签名,必须由N个用户联合才能完成签名。本发明所述签名过程简单,签名过程中,每个用户只需要各做一次多倍点运算,运算效率高,签名结果符合国密SM2签名算法标准。
从前面的签名过程和验证签名的过程可见,本发明所述安全签名方法,不仅适应于基于SM2的无证书公钥密码体制,而且可以适用于任何使用SM2算法的系统,只要N个用户分别持有的私钥d1,d2,…,dN与共享公钥Q之间满足Q=((d1d2…dN)-1–1)G,这N个用户就可以按上述签名过程联合完成对一个消息的SM2签名。
本发明所述由N个用户联合完成签名的方法,签名过程是按次序完成的,但这个次序是可以调整的。如果需要调整签名次序,只需要按新的签名次序重新生成公钥序列Q1,Q2,…,QN即可。例如,将签名次序调整为Ui1,Ui2,…,UiN后,N个用户重新依次计算QiN=(diN)- 1G,Qi(N-1)=(di(N-1))-1QiN,…,Q1=(d1)-1Q2,则可按新的次序来完成联合签名。
附图说明
图1为本发明所述无证书共享密钥生成流程。
图2为本发明所述多方联合安全签名流程。
具体实施方式
本发明针对基于SM2算法无证书公钥密码体制提出了一种安全的签名方案,下面根据附图详细说明本发明的实施方式。
图1所示为基于无证书公钥密码体制的密钥生成实施流程。本发明所涉及到的有限域上的椭圆曲线参数按国密SM2算法标准设置,所使用的有限域上椭圆曲线记为E(Fq),其基点为G,而G的阶为素数n,h(x)为SM3杂凑函数。
无证书密钥生成中心称为KGC,共享密钥的N个用户分别记为U1,U2,…,UN,他们共享一个用户标识ID。
步骤(1)所述KGC设置系统私钥sM和系统公钥Ppub,完成系统建立。
步骤(2)所述用户U1随机选取k1∈[1,n-1],计算P1=k1G,发送P1到用户U2。
步骤(3)对于i=2,3,…,N-1,所述用户Ui在收到Pi-1后随机选取di,ki∈[1,n-1],计算Pi=(di)-1Pi-1+kiG,发送Pi到用户Ui+1。
步骤(4)所述用户UN在收到PN-1后随机选取dN,kN∈[1,n-1],计算PN=(dN)-1PN-1+kNG,发送PN到KGC。
步骤(5)所述KGC根据所述用户ID和PN为用户生成部分私钥s0,发送s0到用户UN。
步骤(6)所述用户UN计算sN=dN(kN+s0+1)(mod n),QN=(dN)-1G,发送sN和QN到用户UN-1。并将dN作为用户UN的私钥保存,将QN作为用户UN的公钥参数保存。
步骤(7)对于i=N-1,N-2,…,2,所述用户Ui计算si=di(ki+si+1)(mod n),Qi=(di)-1Qi+1,发送si和Qi到Ui-1。并将di作为用户Ui的私钥保存,将Qi作为用户Ui的公钥参数保存。
步骤(8)所述用户U1计算d1=(k1+s2)-1(mod n),Q1=(d1)-1Q2,将d1作为用户U1的私钥保存,将Q1作为用户U1的公钥参数保存。
本实施例生成的共享公钥为Q=((d1d2…dN)-1–1)G,公众用户可以按无证书公钥密码体制的算法根据用户标识ID和部分公钥计算用户的共享公钥,符合无证书公钥密码体制的特征。
图2所示为用户U1,U2,…,UN联合对一个消息进行签名的实施流程。
有关椭圆曲线和密钥的记号如前,各参数的选择符合国密SM2算法标准的要求。假定待签名的消息为M,e=H(Z||M),其中Z为用户标识和公钥信息。多方联合签名按以下步骤实施。
步骤(9)所述用户U1计算摘要值e,再随机选取k1∈[1,n-1],计算R1=k1Q1,发送e和R1到用户U2。
步骤(10)对于i=2,3,…,N-1,所述用户Ui在收到Ri-1后随机选取ki∈[1,n-1],计算Ri=Ri-1+kiQi,发送e和Ri到用户Ui+1。
步骤(11)所述用户UN在收到RN-1后随机选取kN∈[1,n-1],计算RN=RN-1+kNQN。
步骤(12)设RN=(x1,y1),所述用户UN计算r=(e+x1)(mod n),sN=kN+rdN(mod n),生成部分签名(r,sN),发送部分签名(r,sN)到用户UN-1。
步骤(13)对于i=N-1,N-2,…,2,所述用户Ui在收到用户Ui+1的部分签名(r,si+1)后,首先验证该部分签名。若验证通过,再计算si=ki+si+1di(mod n),生成部分签名(r,si),发送部分签名(r,si)到用户Ui-1。
步骤(14)所述用户U1在收到用户U2的部分签名(r,s2)后,首先验证该部分签名。若验证通过,计算s=k1+s2d1–r(mod n),输出签名(r,s)。
上述实施例仅从原理上描述了本发明的内容,任何对本发明实质内容所作的数学上的变形和修饰都包含在本发明专利的保护范围。
Claims (6)
1.一种基于SM2算法的无证书安全签名方法,其特征在于:无证书密钥生成中心KGC协助N(N≥2)个用户U1,U2,…,UN分别生成自已的私钥d1,d2,…,dN,以及共享的公钥Q,在需要对消息作数字签名时,由N个用户联合完成对消息的SM2签名,而签名接收者可以使用共享公钥Q对签名进行验证;
由无证书密钥生成中心KGC和N个用户协同完成用户密钥的生成,所述方法使用SM2算法椭圆曲线参数,G是椭圆曲线的基点,G的阶为素数n,ID为用户标识,密钥生成方法包括以下步骤:
步骤一 KGC设置系统私钥和系统公钥,完成系统建立;
步骤二 用户U1随机选取k1∈[1,n-1],计算P1=k1G,发送P1到用户U2;
步骤三 对于i=2,3,…,N-1,用户Ui在收到Pi-1后随机选取di,ki∈[1,n-1],计算Pi=(di)-1Pi-1+kiG,发送Pi到Ui+1;
步骤四 用户UN在收到PN-1后随机选取dN,kN∈[1,n-1],计算PN=(dN)-1PN-1+kNG,发送用户ID和PN到KGC;
步骤五KGC根据用户ID和PN为用户生成部分私钥s0,发送s0到用户UN;
步骤六 用户UN计算sN=dN(kN+s0+1)(mod n),QN=(dN)-1G,发送sN和QN到用户UN-1,并将dN作为用户UN的私钥保存,将QN作为用户UN的公钥参数保存;
步骤七 对于i=N-1,N-2,…,1,用户Ui计算si=di(ki+si+1)(mod n),Qi=(di)-1Qi+1,发送si和Qi到用户Ui-1,并将di作为用户Ui的私钥保存,将Qi作为用户Ui的公钥参数保存;
步骤八 用户U1计算d1=(k1+s2)-1(mod n),Q1=(d1)-1Q2,将d1作为用户U1的私钥保存,将Q1作为用户U1的公钥参数保存;
按此步骤生成的密钥符合无证书公钥密码体制的特征,N个用户的私钥分别为d1,d2,…,dN,满足Q=((d1d2…dN)-1–1)G。
2.根据权利要求1所述的安全签名方法,其特征在于:N个用户对各自的私钥具有完全自主权,其他人和任何第三方(包括KGC)对该私钥都不可知;N个私钥所代表的真实私钥对任何人都不可知,包括用户各方和KGC。
3.根据权利要求1所述的安全签名方法,其特征在于:共享公钥Q的N个用户分别持有私钥d1,d2,…,dN,满足Q=((d1d2…dN)-1–1)G,假设待签名消息的摘要值为e,所述安全签名方法包括以下步骤:
步骤一 用户U1随机选取k1∈[1,n-1],计算R1=k1Q1,发送R1到用户U2;
步骤二 对于i=2,3,…,N-1,用户Ui在收到Ri-1后随机选取ki∈[1,n-1],计算Ri=Ri-1+kiQi,发送Ri到用户Ui+1;
步骤三 用户UN在收到RN-1后随机选取kN∈[1,n-1],计算RN=RN-1+kNQN;
步骤四 设RN=(x1,y1),用户UN计算r=(e+x1)(mod n),sN=kN+rdN(mod n),生成部分签名(r,sN),发送部分签名(r,sN)到UN-1;
步骤五 对于i=N-1,N-2,…,1,用户Ui在收到部分签名(r,si+1)后,计算Qi+1=diQi,Ri+si+1Qi+1–rG=(x1’,y1’),检验r=(e+x1’)(mod n)是否成立,若成立,再计算si=ki+si+1di(mod n),生成部分签名(r,si),当i>1时,用户Ui发送部分签名(r,si)到用户Ui-1;
步骤六 用户U1计算s=s1–r(mod n),生成最终签名(r,s);
按此步骤生成的签名(r,s)可以使用共享公钥Q按SM2签名验证方法予以验证。
4.根据权利要求1所述的安全签名方法,其特征在于:签名过程中N个签名人只需各进行一次椭圆曲线上的多倍点运算,签名过程不会暴露各自的私钥和共同的私钥,因此所述方法是高效的和安全的。
5.根据权利要求1所述的安全签名方法,其特征在于:本安全签名方法不仅适合于基于SM2的无证书密码体制,也适用于一般的SM2签名算法,只要生成的私钥d1,d2,…,dN和共享公钥Q之间满足关系Q=((d1d2…dN)-1–1)G即可。
6.根据权利要求1所述的安全签名方法,其特征在于:本安全签名方法的签名次序可以根据需要进行调整,只需要在调整次序后重新计算公钥参数序列Q1,Q2,…,QN即可。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710157604.0A CN107248909B (zh) | 2017-03-16 | 2017-03-16 | 一种基于sm2算法的无证书安全签名方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710157604.0A CN107248909B (zh) | 2017-03-16 | 2017-03-16 | 一种基于sm2算法的无证书安全签名方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107248909A CN107248909A (zh) | 2017-10-13 |
CN107248909B true CN107248909B (zh) | 2020-07-03 |
Family
ID=60017476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710157604.0A Active CN107248909B (zh) | 2017-03-16 | 2017-03-16 | 一种基于sm2算法的无证书安全签名方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107248909B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107612934A (zh) * | 2017-10-24 | 2018-01-19 | 济南浪潮高新科技投资发展有限公司 | 一种基于密钥分割的区块链移动端计算系统和方法 |
CN107864037A (zh) * | 2017-10-25 | 2018-03-30 | 深圳奥联信息安全技术有限公司 | Sm9联合数字签名方法和装置 |
CN107968710B (zh) * | 2017-11-27 | 2020-08-25 | 武汉理工大学 | Sm9数字签名分离交互生成方法及系统 |
CN109064170B (zh) * | 2018-07-23 | 2021-10-22 | 西安电子科技大学 | 无可信中心的群签名方法 |
CN110868299A (zh) * | 2018-08-27 | 2020-03-06 | 上海铠射信息科技有限公司 | 一种新型的协同数字签名方法和装置 |
CN109274506B (zh) * | 2018-11-23 | 2021-04-02 | 浙江工商大学 | 一种基于国密sm2的无证书签名方法 |
CN111447065B (zh) * | 2019-01-16 | 2021-03-09 | 中国科学院软件研究所 | 一种主动安全的sm2数字签名两方生成方法 |
CN110166235B (zh) * | 2019-05-21 | 2020-08-11 | 武汉理工大学 | 增强安全的sm9数字签名协同生成方法及系统 |
CN110266478B (zh) * | 2019-05-31 | 2021-05-18 | 联想(北京)有限公司 | 一种信息处理方法、电子设备 |
CN111147246B (zh) * | 2020-02-18 | 2023-08-08 | 数据通信科学技术研究所 | 一种基于sm2的多方协同签名方法及系统 |
CN113541926A (zh) * | 2020-04-14 | 2021-10-22 | 成都天瑞芯安科技有限公司 | Sm2三方联合签名方法与系统 |
CN112367175B (zh) * | 2020-11-12 | 2021-07-06 | 西安电子科技大学 | 基于sm2数字签名的隐式证书密钥生成方法 |
CN114039722A (zh) * | 2021-01-26 | 2022-02-11 | 中安网脉(北京)技术股份有限公司 | 一种可秘密共享的隐藏身份sm2签名私钥产生装置及其方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277513A (zh) * | 2007-03-27 | 2008-10-01 | 厦门致晟科技有限公司 | 无线移动终端通讯加密的方法 |
CN104539423A (zh) * | 2014-12-16 | 2015-04-22 | 熊荣华 | 一种无双线性对运算的无证书公钥密码体制的实现方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2334008A1 (en) * | 2009-12-10 | 2011-06-15 | Tata Consultancy Services Limited | A system and method for designing secure client-server communication protocols based on certificateless public key infrastructure |
CN102594570A (zh) * | 2012-04-11 | 2012-07-18 | 福建师范大学 | 基于等级身份加密的密钥门限算法 |
CN103023648B (zh) * | 2012-11-27 | 2015-10-07 | 中国科学技术大学苏州研究院 | 基于椭圆曲线离散对数问题的无证书签名方法 |
US8971528B2 (en) * | 2013-01-29 | 2015-03-03 | Certicom Corp. | Modified elliptic curve signature algorithm for message recovery |
CN104780050B (zh) * | 2015-04-23 | 2018-03-13 | 北京航空航天大学 | 一种基于椭圆曲线的前向安全的成员可撤销无证书群签名方法 |
CN104821880B (zh) * | 2015-05-05 | 2018-01-30 | 九江学院 | 一种无证书广义代理签密方法 |
CN104767611B (zh) * | 2015-05-05 | 2017-10-24 | 九江学院 | 一种从公钥基础设施环境到无证书环境的签密方法 |
-
2017
- 2017-03-16 CN CN201710157604.0A patent/CN107248909B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277513A (zh) * | 2007-03-27 | 2008-10-01 | 厦门致晟科技有限公司 | 无线移动终端通讯加密的方法 |
CN104539423A (zh) * | 2014-12-16 | 2015-04-22 | 熊荣华 | 一种无双线性对运算的无证书公钥密码体制的实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107248909A (zh) | 2017-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107248909B (zh) | 一种基于sm2算法的无证书安全签名方法 | |
CN107634836B (zh) | 一种sm2数字签名生成方法及系统 | |
US20230208627A1 (en) | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system | |
CN108667626B (zh) | 安全的两方协作sm2签名方法 | |
CN109246129B (zh) | 一种可验证客户端身份的sm2协同签名方法及系统 | |
CN109309569B (zh) | 基于sm2算法的协同签名的方法、装置及存储介质 | |
CN107707358B (zh) | 一种ec-kcdsa数字签名生成方法及系统 | |
US9036818B2 (en) | Private key generation apparatus and method, and storage media storing programs for executing the methods | |
CN108199835B (zh) | 一种多方联合私钥解密方法 | |
US7814326B2 (en) | Signature schemes using bilinear mappings | |
CN107395368B (zh) | 无介质环境中的数字签名方法及解封装方法与解密方法 | |
CN107659395B (zh) | 一种多服务器环境下基于身份的分布式认证方法及系统 | |
CN107425971B (zh) | 无证书的数据加/解密方法和装置、终端 | |
US20150288527A1 (en) | Verifiable Implicit Certificates | |
CN112564907B (zh) | 密钥生成方法及装置、加密方法及装置、解密方法及装置 | |
CN110138567A (zh) | 一种基于ecdsa的协同签名方法 | |
CN114095181B (zh) | 一种基于国密算法的门限环签名方法及系统 | |
CN109361519B (zh) | 一种改进的包含秘密的数的生成方法及系统 | |
CN111342955A (zh) | 一种通信方法及其设备、计算机存储介质 | |
CN110855425A (zh) | 一种轻量级多方协同sm9密钥生成、密文解密方法与介质 | |
CN113132104A (zh) | 一种主动安全的ecdsa数字签名两方生成方法 | |
CN111130758A (zh) | 一种适用于资源受限设备的轻量级匿名认证方法 | |
CN108768634B (zh) | 可验证加密签名生成方法和系统 | |
CN110943845A (zh) | 一种轻量级两方协同产生sm9签名的方法及介质 | |
CN111245615B (zh) | 一种基于身份的数字签名密码逆向防火墙方法 |
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 |