CN110932866B - 一种基于sm2数字签名算法的环签名生成方法 - Google Patents

一种基于sm2数字签名算法的环签名生成方法 Download PDF

Info

Publication number
CN110932866B
CN110932866B CN201911175984.6A CN201911175984A CN110932866B CN 110932866 B CN110932866 B CN 110932866B CN 201911175984 A CN201911175984 A CN 201911175984A CN 110932866 B CN110932866 B CN 110932866B
Authority
CN
China
Prior art keywords
ring
signature
verification
message
ring signature
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
CN201911175984.6A
Other languages
English (en)
Other versions
CN110932866A (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.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
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 Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201911175984.6A priority Critical patent/CN110932866B/zh
Publication of CN110932866A publication Critical patent/CN110932866A/zh
Application granted granted Critical
Publication of CN110932866B publication Critical patent/CN110932866B/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/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
    • 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/3252Cryptographic 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 DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
    • 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

Abstract

本发明公开了一种基于SM2数字签名算法的环签名生成方法,设环内用户数量为n,其中第π个用户为签名者;该方法包括以下步骤:1)生成消息M的环签名;2)对签名进行合法性验证。本发明实现了基于SM2数字签名算法的环签名的生成,签名者通过收集用户的公钥将身份隐藏在环签名群体中,保护了签名者的隐私。

Description

一种基于SM2数字签名算法的环签名生成方法
技术领域
本发明涉及信息安全技术,尤其涉及一种基于SM2数字签名算法的环签名生成方法。
背景技术
数字签名是伴随着信息网络安全的发展而出现的一种密码技术,保证数据的完整性、真实性和不可抵赖性。国家密码管理局于2010年12月17日发布了“SM2椭圆曲线公钥密码算法”,包括数字签名算法、公钥加密算法和密钥协商协议,其中SM2椭圆曲线数字签名算法具有安全性高、存储空间小和签名速度快的优势。
为了同时实现数据的完整性和身份的匿名性,Rivest等提出了环签名的概念,环签名因其签名隐含的某个参数按照一定的规则组成环状而得名。与群签名相比,环签名没有管理员,无需群的建立过程,签名者随机收集用户公钥形成一个群体,签名者代表这个群体进行签名。环签名因其自发性、无条件匿名性和群特性而具有广泛的应用领域,比如数字货币、电子选举、匿名通讯等领域,成为当前研究的一个热点。
科研人员已经提出了多种不同形式和不同特性的环签名算法,但没有基于SM2数字签名算法的环签名。本发明设计了基于SM2数字签名算法的环签名方案,保证了签名的完整性、真实性、不可伪造性和无条件匿名性。
发明内容
本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种基于SM2数字签名算法的环签名生成方法。
本发明解决其技术问题所采用的技术方案是:一种基于SM2数字签名算法的环签名生成方法,设环内用户数量为n,环内用户公钥的集合为L={P1,P2,…,Pn},其中第π个用户为签名者,对应的公钥为Pπ=[dπ]G,私钥为dπ
包括以下步骤:
1)生成消息M的环签名,具体如下:
S1:随机产生
Figure BDA0002289956840000021
根据环内用户公钥集合L,待签名消息M,
计算cπ+1=H1(L,M,[kπ]G);
其中,
Figure BDA0002289956840000022
为整数1,2,…,q-1组成的整数集合,q为大素数,H1为密码杂凑函数,G为循环群
Figure BDA0002289956840000023
的一个生成元,
Figure BDA0002289956840000024
是阶为素数q的加法循环群;
S2:根据环内用户的公钥集合L和待签名消息M,计算ci;具体如下:
对于每个i=π+1,…,n,1,…,π-1,随机产生部分环签名
Figure BDA0002289956840000025
并依次计算Zi=[ri+ci]Pi+[ri]G,ci+1=H1(L,M,Zi);
其中,记c1=cn+1,Pi为用户i的公钥;
S3:根据签名者私钥dπ,计算rπ=((1+dπ)-1(kπ-cπdπ))mod q;
S4:生成消息M的环签名σ=(c1,r1,…,rn);
2)对签名进行合法性验证;
验证者V收到消息M′及其环签名(c′1,r′1,…,r′n)后,采用以下步骤进行环签名验证:
V1:检验
Figure BDA0002289956840000031
是否成立,若不成立则验证不通过;
V2:对i从1增至n,检验
Figure BDA0002289956840000032
若不成立则验证不通过;
V3:对i从1增至n,依次计算Z′i=[r′i+c′i]Pi+[r′i]G,c′i+1=H1(L,M,Z′i);
V4:检验c′1=c′n+1是否成立,若成立则验证通过;否则验证不通过。
本发明产生的有益效果是:
本发明实现了基于SM2数字签名算法的环签名的生成,签名者通过收集用户的公钥将身份隐藏在环签名群体中,保护了签名者的隐私。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例的方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明设计了基于SM2数字签名算法的环签名方案,保证了签名的完整性、真实性、不可伪造性和无条件匿名性。
符号及定义:
q:q为素数且q>2256
mod q:模q运算。例如,19mod 7=5。
Figure BDA0002289956840000041
由整数1,2,…,q-1组成的整数集合。
Sπ:签名者,为签名群组中第π个用户。
V:验证者。
di:用户i的私钥,且
Figure BDA0002289956840000042
Figure BDA0002289956840000043
阶为素数q的加法循环群,元素为椭圆曲线上的点。
G:循环群
Figure BDA0002289956840000044
的一个生成元。
[u]P:加法群
Figure BDA0002289956840000045
中元素P的u倍。
Pi:用户i的公钥,计算方式为Pi=[di]G。
L:L={P1,P2,…,Pn}为环签名群体公钥,即n个用户的公钥集合。
H1():输入为任意长度比特串{0,1}*,输出为固定长度的密码杂凑函数。
如图1所示,一种基于SM2数字签名算法的环签名生成方法,下具体如下:
本方法包含两个步骤:环签名生成步骤和环签名验证步骤。
1.环签名生成步骤
设环内用户数量为n,环内用户公钥的集合为L={P1,P2,…,Pn},其中第π个用户为签名者,对应的公钥为Pπ=[dπ]G,私钥为dπ。设待签名消息为M,为了获取消息M的环签名(c1,r1,…,rn),签名者Sπ实现以下运算步骤:
S1:随机产生
Figure BDA0002289956840000051
计算cπ+1=H1(L,M,[kπ]G);
S2:根据环内用户的公钥集合L和待签名消息M,计算ci;具体如下:
对于每个i=π+1,…,n,1,…,π-1,随机产生部分环签名
Figure BDA0002289956840000052
并依次计算Zi=[ri+ci]Pi+[ri]G,ci+1=H1(L,M,Zi);
其中,记c1=cn+1,Pi为用户i的公钥;
由于步骤1)中已经计算得到cπ+1,所以我们可以得到Zπ+1,然后计算得到cπ+2
依次类推,根据cπ+2可以计算得到Zπ+2,然后计算得到cπ+3
最后得到ci,i=π+1,…,n,1,…,π-1;
S3:计算rπ=((1+dπ)-1(kπ-cπdπ))mod q;
生成的签名σ=(c1,r1,…,rn)。
2.环签名验证步骤
验证者V收到消息M′及其环签名(c′1,r′1,…,r′n)后,应实现以下步骤:
V1:检验
Figure BDA0002289956840000061
是否成立,若不成立则验证不通过;
V2:对i从1增至n,检验
Figure BDA0002289956840000062
若不成立则验证不通过;
V3:对i从1增至n,依次计算Z′i=[r′i+c′i]Pi+[r′i]G,c′i+1=H1(L,M,Z′i);
V4:检验c′1=c′n+1是否成立,若成立则验证通过;否则验证不通过。
本发明与现有技术相比具有如下优点和有益效果:
首先,目前现有的环签名方案虽然能够保证签名者的无条件匿名性,但是并没有针对SM2数字签名算法生成环签名的方案。
其次,现有的许多基于离散对数的环签名算法安全性不及基于椭圆曲线的环签名算法,且效率低下。
再次,本发明实现了基于SM2数字签名算法的环签名的生成,签名者通过收集用户的公钥将身份隐藏在环签名群体中,保护了签名者的隐私。
最后,可在随机预言模型下本发明中环签名的安全性。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

Claims (1)

1.一种基于SM2数字签名算法的环签名生成方法,其特征在于,设环内用户数量为n,环内用户公钥的集合为L={P1,P2,…,Pn},其中第π个用户为签名者,对应的公钥为Pπ=[dπ]G,私钥为dπ
包括以下步骤:
1)生成消息M的环签名,具体如下:
S1:随机产生
Figure FDA0003069342050000011
根据环内用户公钥集合L,待签名消息M,
计算cπ+1=H1(L,M,[kπ]G);
其中,
Figure FDA0003069342050000012
为整数1,2,…,q-1组成的整数集合,q为大素数,H1为密码杂凑函数,G为循环群
Figure FDA0003069342050000013
的一个生成元,
Figure FDA0003069342050000014
是阶为素数q的加法循环群;
S2:根据环内用户的公钥集合L和待签名消息M,计算ci;具体如下:
对于每个i=π+1,…,n,1,…,π-1,随机产生部分环签名
Figure FDA0003069342050000015
并依次计算Zi=[ri+ci]Pi+[ri]G,ci+1=H1(L,M,Zi);
其中,记c1=cn+1,Pi为用户i的公钥;
S3:根据签名者私钥dπ,计算rπ=((1+dπ)-1(kπ-cπdπ))mod q;
S4:生成消息M的环签名σ=(c1,r1,…,rn);
2)对签名进行合法性验证;
验证者V收到消息M′及消息M′的环签名(c′1,r′1,…,r′n)后,采用以下步骤进行环签名验证:
V1:检验
Figure FDA0003069342050000021
是否成立,若不成立则验证不通过;
V2:对i从1增至n,检验
Figure FDA0003069342050000022
若不成立则验证不通过;
V3:对i从1增至n,依次计算Z′i=[r′i+c′i]Pi+[r′i]G,c′i+1=H1(L,M,Z′i);
V4:检验c′1=c′n+1是否成立,若成立则验证通过;否则验证不通过。
CN201911175984.6A 2019-11-26 2019-11-26 一种基于sm2数字签名算法的环签名生成方法 Active CN110932866B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911175984.6A CN110932866B (zh) 2019-11-26 2019-11-26 一种基于sm2数字签名算法的环签名生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911175984.6A CN110932866B (zh) 2019-11-26 2019-11-26 一种基于sm2数字签名算法的环签名生成方法

Publications (2)

Publication Number Publication Date
CN110932866A CN110932866A (zh) 2020-03-27
CN110932866B true CN110932866B (zh) 2021-07-20

Family

ID=69851167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911175984.6A Active CN110932866B (zh) 2019-11-26 2019-11-26 一种基于sm2数字签名算法的环签名生成方法

Country Status (1)

Country Link
CN (1) CN110932866B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111654381B (zh) * 2020-07-01 2023-04-07 福建师范大学 一种基于国密sm2公钥加密的环签名生成方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006166A (zh) * 2010-11-11 2011-04-06 西安理工大学 基于多变量多项式对消息匿名环签名的方法
CN102006167A (zh) * 2010-11-11 2011-04-06 西安理工大学 基于代数的对消息匿名环签名的方法
CN107453865A (zh) * 2017-07-18 2017-12-08 众安信息技术服务有限公司 一种保护数据发送源隐私的多方数据共享方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4250429B2 (ja) * 2003-01-24 2009-04-08 キヤノン株式会社 連鎖型署名作成装置、及びその制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102006166A (zh) * 2010-11-11 2011-04-06 西安理工大学 基于多变量多项式对消息匿名环签名的方法
CN102006167A (zh) * 2010-11-11 2011-04-06 西安理工大学 基于代数的对消息匿名环签名的方法
CN107453865A (zh) * 2017-07-18 2017-12-08 众安信息技术服务有限公司 一种保护数据发送源隐私的多方数据共享方法及系统

Also Published As

Publication number Publication date
CN110932866A (zh) 2020-03-27

Similar Documents

Publication Publication Date Title
CN110545279A (zh) 兼具隐私和监管功能的区块链交易方法、装置及系统
CN110011803B (zh) 一种轻量级sm2两方协同生成数字签名的方法
CN107707358A (zh) 一种ec‑kcdsa数字签名生成方法及系统
JP2013539295A (ja) メッセージ復元を伴うデジタル署名の認証された暗号化
CN109861826B (zh) 一种双向代理重签名的实现方法及装置
CN110932865B (zh) 一种基于sm2数字签名算法的可链接环签名生成方法
Xin et al. Identity-based quantum designated verifier signature
Islam et al. Certificateless strong designated verifier multisignature scheme using bilinear pairings
Li et al. A new self-certified signature scheme based on ntrus ing for smart mobile communications
Rezaeibagha et al. Secure and privacy-preserved data collection for IoT wireless sensors
CN110932866B (zh) 一种基于sm2数字签名算法的环签名生成方法
CN110798313B (zh) 基于秘密动态共享的包含秘密的数的协同生成方法及系统
CN112800482A (zh) 基于身份的在线/离线安全云存储审计方法
CN112769539B (zh) 一种生成rsa密钥并协同rsa签名和解密的方法及系统
Liang et al. An efficient anonymous authentication and supervision system based on blockchain
Lin et al. F2p-abs: A fast and secure attribute-based signature for mobile platforms
Ahirwal et al. Signcryption scheme that utilizes elliptic curve for both encryption and signature generation
CN115174056A (zh) 一种基于sm9签名的变色龙签名生成方法及装置
WO2021222272A1 (en) Adaptive attack resistant distributed symmetric encryption
Mohapatra Signcryption schemes with forward secrecy based on elliptic curve cryptography
Zhao et al. A Novel Certificateless Aggregation Signcryption Scheme Under Cloud Computing
CN115174052B (zh) 一种基于sm9签名的适配器签名生成方法及装置
Wang Signer‐admissible strong designated verifier signature from bilinear pairings
CN111654381B (zh) 一种基于国密sm2公钥加密的环签名生成方法
CN110191089B (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