CN109194478B - 一种非对称环境下多方联合生成sm9数字签名的方法 - Google Patents
一种非对称环境下多方联合生成sm9数字签名的方法 Download PDFInfo
- Publication number
- CN109194478B CN109194478B CN201811379397.4A CN201811379397A CN109194478B CN 109194478 B CN109194478 B CN 109194478B CN 201811379397 A CN201811379397 A CN 201811379397A CN 109194478 B CN109194478 B CN 109194478B
- Authority
- CN
- China
- Prior art keywords
- signature
- kgc
- participants
- participant
- 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/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/0825—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) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种非对称环境下多方联合生成SM9数字签名的方法,该方法包括以下步骤:KGC在初始化后为参与SM9数字签名的各参与方分发对应的私钥,其中为签名的主导方。在生成数字签名过程中,各参与方分别选取部分随机数,计算并广播中间变量随后各参与方都可以生成联合中间变量对于消息M,各参与方计算签名的第一部分h=H2(M||w,q),并通过乘法协议πmul使得可以计算得第三个中间变量最后,利用自己的私钥可以计算出签名的第二部分签名验证通过后,公布关于消息M的完整数字签名Sig=(h,S)。本发明方法签名过程中保证各参与方都不会暴露部分私钥,同时数字签名必须由所有参与方同时参与,实现了非对称环境下,多方签名的安全性和公平性。
Description
技术领域
本发明涉及信息安全技术,尤其涉及一种非对称环境下多方联合生成SM9数字签名的方法。
背景技术
数字签名是信息安全技术的重要组成部分。与物理签名或***的功能类似,数字签名实际上就是一组只有发送者才能产生的电子数据,在身份认证、数据完整性、不可否认性以及匿名性等方面有重要应用。利用数字签名一方面可以验证信息的发送者是合法的且不可抵赖的,即实体认证;另一方面还可以验证发送消息内容的完整性和实效性,即通信数据安全。在数字签名***中,实现身份认证的基础是公/私钥与用户物理身份的绑定。当前数字签名的部署主要依托于公钥密码基础设施,但是随着网络规模和应用范围的扩大,公钥密码基础设施必须花费大量的时间和成本发放和管理证书。为了简化公钥证书的传输和验证,科研人员提出了基于身份的密码体制,公钥直接从用户的身份信息里获取,自然绑定公钥与实体,可以解决证书管理的难题。
基于身份的数字签名中,公钥来自于用户公开的信息,因此签名的安全性完全依赖于签名密钥的安全性,签名密钥的保管至关重要。一种方式是使用秘密共享方案分散管理签名密钥,例如(k,n)门限签名方案。此方案中签名密钥被映射为n个子密钥,分别交由n位参与者保管。由k个或多于k个参与者所持有的部分信息可重构签名密钥,而少于k个参与者所持有的部分信息得不到关于签名密钥的任何信息。因此,利用秘密共享方案很容易在数据安全、银行网络管理或导弹控制与发射等方面实现权限分配。但是秘密共享方案都是一次性的,在每次签名密钥的恢复过程中,k个或k个以上的参与者都要初始各自的子密钥,从而暴露了所有秘密信息,特别是在只有两个参与方的情况下,某一方恢复并持有完整签名密钥,就可以在另一方不知情的情况下,独立地进行数字签名。由此可见,基于秘密共享的实现方法对签名密钥的保护较弱,存在密钥泄露的隐患。
针对这种情况,本专利设计了一种多方联合生成SM9数字签名的方案,此方案在非对称环境中实现多方联合生成签名的情况下,既能保证签名的正确性,又能保证签名的私钥不被泄露,且生成签名的过程中必须由所有参与方同时执行操作。
SM9是由国家密码管理局颁布的一种基于标识的公钥密码算法(参见《SM9标识密码算法》规范,国家密码管理局,2016年3月),基于此算法能实现基于身份的数字签名、密钥交换及数据加密。在这里,不同于各种普通的密钥分割或门限秘密分割。本专利提出的多方联合产生SM9数字签名的方法与***,即便在非对称环境下,也只有所有参与者共同参与运算的情况下,才能产生合法签名,同时任何一方都无法得到原始的私钥。
发明内容
本发明要解决的技术问题在于针对现有技术中的缺陷,提供一种非对称环境下多方联合生成SM9数字签名的方法。
本发明解决其技术问题所采用的技术方案是:一种非对称环境下多方联合生成SM9数字签名的方法,
该方法包括以下步骤:
1)初始化步骤:
密钥生成中心KGC产生随机数ks∈{1,...,q-1}作为主私钥,计算中的元素Ppub-s=[ks]P2作为主公钥;KGC秘密保存ks,公开Ppub-s;然后,KGC选择并公开用一个字节表示的签名私钥生成函数识别符hid;
2)密钥分发步骤:由KGC为所有参与方分发部分私钥,具体如下:
2.1)首先KGC计算临时变量t1=H1(IDA||hid,q)+ks,若t1=0,则返回步骤1)重新产生签名主私钥,计算和公开签名主公钥,并更新已有用户的签名私钥;否则,转入步骤2.2);
3)联合签名步骤
其中,H2是由密码杂凑函数派生的密码函数;
按上述方案,所述步骤3)中,各参与方之间的通信使用零知识证明来证明发送的数据是来自发送方。
本发明产生的有益效果是:
1.提高私钥的安全性。目前现有的门限秘密共享方案,虽然可以将私钥进行分割,但在签名阶段,私钥会被恢复并被某一方掌握,造成了私钥的泄露,这样降低了多方签名的安全性。
2.提高签名的公平性。目前现有的门限秘密共享方案,最终持有完整私钥的一方可以独立进行签名,不需要全部参与方共同参加,这样降低了多方签名的公平性。
3.本发明实现了多方联合生成SM9数字签名,签名过程中保证各参与方都不会暴露部分私钥,同时数字签名必须由所有参与方同时参与,这样实现了非对称环境下,多方签名的安全性和公平性。
4.本发明基于数学难题,保证即使有一方的私钥丢失,也不会泄露关于完整私钥或其他参与方持有的部分私钥的任何信息。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实施例的方法示意图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,一种非对称环境下多方联合生成SM9数字签名的方法,具体如下:
在以下对本方案的描述中,均是阶为素数q(q>2191)的加法循环群,是阶为q的乘法循环群,e代表从到的双线性对映射。P1是的生成元,P2是的生成元。<P>表示由元素P生成的循环群,[u]P表示加法群或中元素P的u倍。gu代表群中元素g的u次幂,即gu=g·g·g·...·g,(共有u个),u是正整数。H1,H2均是由密码杂凑函数派生的密码函数,分别对应于《SM9标识密码算法》规范(国家密码管理局,2016年3月)中的密码杂凑函数。hid:在本部分中,用一个字节表示的签名私钥生成函数识别符,由KGC选择并公开。IDA是用户A的标识ID,可以唯一确定用户A的公钥。在不产生二义性的情况下,省略掉乘号"·",如a·b简化为ab,3·c,简化为3c。mod q表示模q运算(modulooperation),并且,模n运算的算子mod q的优先级是最低的,如a+b mod q等同于(a+b)modq,a-b mod q等同于(a-b)mod q,ab mod q等同于(ab)mod q。x||y表示x与y的拼接,x和y是比特串或字节串。其他规范均对应于《SM9标识密码算法》文档。
在以下对本发明签名阶段的描述中,将使用乘法协议πmul实现基本的交叉相乘操作,即对于双方输入的(a1,b1)和(a2,b2),分别给两方输出c1和c2使之满足c1+c2=a1b2+a2b1mod q。
对于本方案,生成SM9数字签名时,有τ(τ≥2)个参与方,表示为其中为非对称环境下签名的主导者,为签名的参与者。为了使方案的安全性更高,在之间的通信过程中,使用零知识证明,例如交互式的Sigma协议来证明发送的数据是来自发送方,降低数据被伪造的风险,同时也可以防止有恶意参与方干扰联合签名过程。
具体步骤如下:
首先由KGC做如下初始化操作:在集合{1,...,q-1}中KGC随机选择一个整数ks作为主私钥,计算中的元素Ppub-s=[ks]P2作为主公钥。KGC秘密保存ks,公开Ppub-s。最后,KGC选择并公开用一个字节表示的签名私钥生成函数识别符hid。
多方联合SM9数字签名生成算法分为以下主要两步,首先要密钥分发,然后多方联合生成SM9数字签名。
密钥分发由KGC执行。在此过程中,KGC根据参与方的身份标识符IDA分别为每个参与方分发密钥,具体操作如下:
1、首先KGC计算一个临时变量t1=H1(IDA||hid,q)+ks,若t1=0则需要重新产生签名主私钥,计算和公开签名主公钥,并更新已有用户的签名私钥;否则进行第2步。
在联合SM9数字签名生成的阶段,各参与方的操作如下:
3、每个参与方计算第三个临时变量δi=(ri-h/τ)mod q,使用作为输入,与所有分别执行乘法协议πmul,得到一组临时变量αij,j∈{1,...,τ}\{i},由此计算出第四个临时变量αii=si·δi mod q,和部分加法碎片最后,所有都将αi发送给第一个参与方
4、当收到所有参与方发来的al(l=1,...,τ)后,计算第二部分签名的乘法分量此时,可以计算签名的第二部分最后利用SM9的数字签名验证算法验证产生的签名,若通过,则公布关于消息M的SM9签名Sig=(h,S),否则终止协议。
应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (2)
其特征在于,该方法包括以下步骤:
1)初始化步骤:
密钥生成中心KGC产生随机数ks∈{1,…,q-1}作为主私钥,计算中的元素Ppub-s=[ks]P2作为主公钥;KGC秘密保存ks,公开Ppub-s;然后,KGC选择并公开用一个字节表示的签名私钥生成函数识别符hid;
2)密钥分发步骤:由KGC为所有参与方分发部分私钥,具体如下:
2.1)首先KGC计算临时变量t1=H1(IDA||hid,q)+ks,若t1=0,则返回步骤1)重新产生签名主私钥,计算和公开签名主公钥,并更新已有用户的签名私钥;否则,转入步骤2.2);
3)联合签名步骤
其中,H2是由密码杂凑函数派生的密码函数;
2.根据权利要求1所述的非对称环境下多方联合生成SM9数字签名的方法,其特征在于,所述步骤3)中,各参与方之间的通信使用零知识证明来证明发送的数据是来自发送方。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811379397.4A CN109194478B (zh) | 2018-11-19 | 2018-11-19 | 一种非对称环境下多方联合生成sm9数字签名的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811379397.4A CN109194478B (zh) | 2018-11-19 | 2018-11-19 | 一种非对称环境下多方联合生成sm9数字签名的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109194478A CN109194478A (zh) | 2019-01-11 |
CN109194478B true CN109194478B (zh) | 2021-12-07 |
Family
ID=64940007
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811379397.4A Active CN109194478B (zh) | 2018-11-19 | 2018-11-19 | 一种非对称环境下多方联合生成sm9数字签名的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109194478B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109660361B (zh) * | 2019-02-27 | 2020-11-24 | 武汉大学 | 一种对称环境下多方联合生成sm9数字签名的方法 |
CN110011802B (zh) * | 2019-02-27 | 2021-07-06 | 武汉大学 | 一种高效的sm9两方协同生成数字签名的方法及*** |
WO2020177977A1 (en) * | 2019-03-05 | 2020-09-10 | Sepior Aps | A method for providing a digital signature to a message |
CN109962783B (zh) * | 2019-03-20 | 2020-08-25 | 武汉理工大学 | 基于递进计算的sm9数字签名协同生成方法及*** |
CN109981269B (zh) * | 2019-03-29 | 2021-07-06 | 武汉大学 | 一种安全高效的sm9多方密钥分发方法与装置 |
CN110380855B (zh) * | 2019-06-14 | 2020-07-14 | 武汉理工大学 | 支持多方协同增强安全的sm9数字签名生成方法及*** |
CN111010276A (zh) * | 2019-10-25 | 2020-04-14 | 武汉大学 | 一种多方联合sm9密钥生成、密文解密方法与介质 |
CN111030801A (zh) * | 2019-10-25 | 2020-04-17 | 武汉大学 | 一种多方分布式的sm9密钥生成、密文解密方法与介质 |
CN110855425A (zh) * | 2019-10-25 | 2020-02-28 | 武汉大学 | 一种轻量级多方协同sm9密钥生成、密文解密方法与介质 |
CN112769742B (zh) * | 2019-11-06 | 2024-06-14 | 电科云(北京)科技有限公司 | Spdz系列协议中的消息验证方法、装置及存储介质 |
CN110912708B (zh) * | 2019-11-26 | 2021-04-27 | 武汉大学 | 一种基于sm9数字签名算法的环签名生成方法 |
CN110958115B (zh) * | 2019-12-03 | 2022-08-23 | 成都卫士通信息产业股份有限公司 | 基于sm9白盒的数字签名装置、方法、存储介质及设备 |
CN111314080B (zh) * | 2019-12-13 | 2021-04-13 | 北京海泰方圆科技股份有限公司 | 一种基于sm9算法的协同签名方法、装置、介质 |
CN113259103B (zh) * | 2021-06-16 | 2021-11-09 | 北京信安世纪科技股份有限公司 | 签名方法及装置、验证方法及装置、设备及存储介质 |
CN115001711B (zh) * | 2022-06-10 | 2024-01-30 | 成都卫士通信息产业股份有限公司 | 信息签名方法、装置、电子设备及计算机可读存储介质 |
CN116318738B (zh) * | 2023-05-18 | 2023-09-05 | 北京信安世纪科技股份有限公司 | 签名方法、***、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106961336A (zh) * | 2017-04-18 | 2017-07-18 | 北京百旺信安科技有限公司 | 一种基于sm2算法的密钥分量托管方法和*** |
CN108418686A (zh) * | 2017-11-23 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种多分布式的sm9解密方法与介质及密钥生成方法 |
CN108551392A (zh) * | 2018-04-13 | 2018-09-18 | 武汉大学 | 一种基于sm9数字签名的盲签名生成方法及*** |
-
2018
- 2018-11-19 CN CN201811379397.4A patent/CN109194478B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106961336A (zh) * | 2017-04-18 | 2017-07-18 | 北京百旺信安科技有限公司 | 一种基于sm2算法的密钥分量托管方法和*** |
CN108418686A (zh) * | 2017-11-23 | 2018-08-17 | 矩阵元技术(深圳)有限公司 | 一种多分布式的sm9解密方法与介质及密钥生成方法 |
CN108551392A (zh) * | 2018-04-13 | 2018-09-18 | 武汉大学 | 一种基于sm9数字签名的盲签名生成方法及*** |
Non-Patent Citations (2)
Title |
---|
《An Authenticated Key Agreement Protocol Using Isogenies Between Elliptic Curves》;Han Weiwei等;《2010 Second International Workshop on Education Technology and Computer Science》;20100507;全文 * |
《新的无证书广义指定验证者聚合签名方案》;许芷岩等;《通信学报》;20171130;第38卷(第11期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN109194478A (zh) | 2019-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109194478B (zh) | 一种非对称环境下多方联合生成sm9数字签名的方法 | |
CN109660361B (zh) | 一种对称环境下多方联合生成sm9数字签名的方法 | |
CN110912708B (zh) | 一种基于sm9数字签名算法的环签名生成方法 | |
Susilo et al. | Identity-based strong designated verifier signature schemes | |
CN108551392B (zh) | 一种基于sm9数字签名的盲签名生成方法及*** | |
CN107733648B (zh) | 一种基于身份的rsa数字签名生成方法及*** | |
Zhang et al. | An efficient RSA-based certificateless signature scheme | |
WO2018225053A1 (en) | Digital signing by utilizing multiple distinct signing keys, distributed between two parties | |
CN107659395B (zh) | 一种多服务器环境下基于身份的分布式认证方法及*** | |
CN107707358A (zh) | 一种ec‑kcdsa数字签名生成方法及*** | |
Li et al. | Provably secure certificate-based signature scheme without pairings | |
CN110011803B (zh) | 一种轻量级sm2两方协同生成数字签名的方法 | |
CN107947913A (zh) | 一种基于身份的匿名认证方法与*** | |
CN110601859B (zh) | 一种基于25519椭圆曲线的无证书公钥密码签名方法 | |
EP1964306A1 (en) | Group signature scheme with improved efficiency, in particular in a join procedure | |
CN111342973A (zh) | 一种安全的pki与ibc之间的双向异构数字签名方法 | |
CN110995412B (zh) | 基于乘法群的无证书环签密方法 | |
CN109547199B (zh) | 一种多方联合生成sm2数字签名的方法 | |
CN111654366B (zh) | 一种安全的pki与ibc之间的双向异构强指定验证者签名方法 | |
CN111030821B (zh) | 一种基于双线性映射技术的联盟链的加密方法 | |
CN112699394B (zh) | 一种基于sm9算法的密钥应用方法 | |
Li et al. | Certificateless online/offline signcryption scheme | |
CN110855425A (zh) | 一种轻量级多方协同sm9密钥生成、密文解密方法与介质 | |
CN110943845A (zh) | 一种轻量级两方协同产生sm9签名的方法及介质 | |
CN107682158B (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 |