CN115189884A - 一种用于联盟区块链的具有匿名性的多级签名方法 - Google Patents
一种用于联盟区块链的具有匿名性的多级签名方法 Download PDFInfo
- Publication number
- CN115189884A CN115189884A CN202210636413.3A CN202210636413A CN115189884A CN 115189884 A CN115189884 A CN 115189884A CN 202210636413 A CN202210636413 A CN 202210636413A CN 115189884 A CN115189884 A CN 115189884A
- Authority
- CN
- China
- Prior art keywords
- transaction
- certificate
- request
- client
- 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.)
- Pending
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/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/3263—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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- 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
- H04L9/3252—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 using DSA or related signature schemes, e.g. elliptic based signatures, ElGamal or Schnorr schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/72—Signcrypting, i.e. digital signing and encrypting simultaneously
-
- 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/006—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving public key infrastructure [PKI] trust models
Abstract
本发明公开了一种用于联盟区块链的具有匿名性的多级签名方法,能够在联盟区块链中实现限制只有实现经过联盟成员认可的客户端才能发生交易;通过PKI体系、多级签名和区块链技术的结合,能够完成交易来源渠道的追溯,特别之处在于能够完成该过程中涉及隐私的保护,只有相应节点拥有渠道来源信息,而不会同步到区块链其他节点。
Description
本申请是针对申请日为“2019年9月3日”、申请号为“201910827936.4”、名称为“一种用于联盟区块链的具有匿名性的多级签名方法”的中国专利申请提出的分案申请。
技术领域
本发明涉及区块链的交易溯源领域,尤其涉及联盟区块链对交易链路的追溯和访问控制的方法。
背景技术
区块链技术,区块链是一种新型去中心化协议,能安全地存储数字货币交易或其他数据,信息不可伪造和篡改,区块链上的交易确认由区块链上的所有节点共同完成,由共识算法保证其一致性,区块链上维护一个公共的账本,公共账本位于存储区块上任何节点可见,从而保证其不可伪造和篡改。
传统联盟区块链主要通过公钥基础设施(Public Key Infrastructure,PKI)PKI体系来进行访问控制,传统PKI体系一般使用证书控制访问并用证书表示用户身份,就比如Hyperleger Fabric来说,使用一个中心化的CA服务器来负责身份的认证和证书的颁发与控制,使用相应的证书表示客户端的身份并以此控制客户端连接。证书用于标识个人就导致不能追溯签名的来源渠道。例如比如现有机构A和B,A机构用户a,B机构用户b,如果A机构拿到B机构用户b公私钥发起交易,这时并不能很好追溯到这笔交易其实是机构A发出的。需要加强整个交易链路安全性,并提升交易可追溯机制。区块链技术本身具有可信存证的特点,能够保证存证不被篡改、安全可靠。将传统的PKI体系同区块链的这一特点结合,能够较好解决上述交易渠道来源无法存证的痛点,如何更好地将传统的PKI结合到联盟区块链系统使用并应用于实际生产是目前面临的一项挑战。
发明内容
针对现有技术的不足,本发明提出一种用于联盟区块链的具有匿名性的多级签名方法,继承了传统PKI体系的安全性,而且既能完成对交易来源渠道的存证,又能够保证一定的匿名性。
本发明的目的是通过以下技术方案来实现的:
一种用于联盟区块链的具有匿名性的多级签名方法,包括如下步骤:
S1:客户端用户请求获取客户端证书:客户端用户向区块链节点所有者发送请求以便获取客户端证书,请求的内容包括客户端用户自己生成的公钥和对应私钥对该公钥的签名;
S2:区块链节点所有者验证客户端证书请求:首先验证签名的合法性,确保该请求来自于该公私钥对的所有者,其次验证私钥类型是否为ECC,验证通过后区块链节点所有者为该公钥生成客户端证书和私钥并返回给请求的客户端用户;
S3:请求交易证书:每次交易前客户端用户先请求交易证书,方法是首先生成一对临时的公私钥对向区块链节点所有者发送一个交易证书请求,交易证书请求的内容包括对交易证书的请求体、客户端证书私钥对请求体的签名以及客户端证书;
S4:区块链节点所有者验证交易证书请求:具体包括验证签名的合法性和验证客户端证书,需要确保该交易证书是本节点发出的,验证通过后节点解析出交易证书请求中的临时公钥,并为该公钥生成相应的交易证书返回给请求的客户端;
S5:发起交易:客户端用户获取到交易证书后发起交易,具体为:首先生成一笔交易,然后客户端用户使用自己生成的私钥对交易签名得到签名后的交易,并用该交易构造请求,然后使用交易证书对请求进行签名,再附带交易证书发送相应的请求体到区块链节点中,区块链节点存储交易信息并验证该交易,然后同步除客户端交易证书签名以外的其他交易信息至全部节点。在交易中增加扩展字段存储表示渠道的签名,即客户端交易证书签名,扩展字段作为交易的一部分会保存在节点的账本中,但不经过共识机制,这样便可以存储下交易的渠道信息以便今后的溯源。
进一步地,步骤S1中,用户自己生成的公钥和私钥通过椭圆曲线数字签名算法生成;其中,公钥的散列值做为自己的账户地址。
本发明的有益效果如下:
本发明应用于联盟链背景下的区块链网络上,一种用于联盟区块链的具有匿名性的多级签名方法,继承了传统PKI体系的安全性,而且既能完成对交易来源渠道的存证,因为其每次都使用新的交易证书的方式,又能够保证一定的匿名性,是联盟区块链技术的一次创新。
附图说明
图1是本发明的方法中交易证书的申请和使用的示意图;
图2是生成用户账户的示意图;
具体实施方式
下面根据附图和优选实施例详细描述本发明,本发明的目的和效果将变得更加明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,一种用于联盟区块链的具有匿名性的多级签名方法,包括如下步骤:
S1:客户端用户请求获取客户端证书:客户端用户向区块链节点所有者发送请求以便获取客户端证书,请求的内容包括客户端用户自己生成的公钥和对应私钥对该公钥的签名;私钥仅由用户妥善保存;
S2:区块链节点所有者验证客户端证书请求:首先验证签名的合法性,其次验证私钥类型是否为ECC,验证通过后区块链节点所有者为该公钥生成客户端证书和私钥并返回给请求的客户端用户;
S3:请求交易证书:每次交易前客户端用户先请求交易证书,方法是首先生成一对临时的公私钥对向区块链节点所有者发送一个交易证书请求,交易证书请求的内容包括对交易证书的请求体、客户端证书私钥对请求体的签名以及客户端证书,其中请求体是交易的主要内容,其他附带信息用于完成相应基于密码学算法的身份证明;
S4:区块链节点所有者验证交易证书请求:具体包括验证签名的合法性和验证客户端证书,验证通过后区块链节点解析出交易证书请求中的临时公钥,并为该公钥生成相应的交易证书返回给请求的客户端;
S5:发起交易:客户端用户获取到交易证书后发起交易,具体为:首先生成一笔交易,然后客户端用户使用自己生成的私钥对交易签名得到签名后的交易,并用该交易构造请求,然后使用交易证书对请求进行签名,再附带交易证书发送相应的请求体到区块链节点中,区块链节点存储交易信息并验证该交易,然后同步除客户端交易证书签名以外的其他交易信息至全部节点。区块链节点将验证结果反馈给用户,若验证成功,表明交易成功;若验证失败,则表明交易失败。本发明的签名方法在交易中增加扩展字段存储表示渠道的签名,即客户端交易证书签名,扩展字段作为交易的一部分会保存在节点的账本中,但不经过共识机制,这样便可以存储下交易的渠道信息以便今后的溯源,扩展字段仅存在于本节点中,不会同步到联盟链其他节点,因此能够保证相应隐私信息不泄漏,但是在必要时能够从本节点追溯交易来源。
作为优选方案,如图2所示,步骤S1中,用户自己生成的公钥和私钥通过椭圆曲线数字签名算法生成;其中,公钥的散列值做为自己的账户地址。保证每个用户都可以离线生成不会重复的账户地址。当发送一笔交易时,使用自己的私钥对交易进行签名,表明该交易确实是该账户的所有者发出的。
本领域普通技术人员可以理解,以上所述仅为发明的优选实例而已,并不用于限制发明,尽管参照前述实例对发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在发明的精神和原则之内,所做的修改、等同替换等均应包含在发明的保护范围之内。
Claims (10)
1.一种用于联盟区块链的具有匿名性的多级签名方法,其特征在于,应用于客户端,所述方法包括:
向区块链节点发送获取客户端证书的请求;所述请求包括所述客户端的公钥和签名,所述签名为所述公钥对应的第一私钥对所述公钥的签名;
接收所述区块链节点针对所述请求返回的客户端证书;
基于所述客户端证书向所述区块链节点发送交易证书请求;
接收所述区块链节点针对所述交易证书请求返回的交易证书,所述交易证书用于向所述区块链节点发送交易请求。
2.如权利要求1所述的多级签名方法,所述基于所述客户端证书向所述区块链节点发送交易证书请求,包括:
生成一对临时公私钥;
基于所述临时公私钥向所述区块链节点发送所述交易证书请求;所述交易证书请求包括对交易证书的请求体、所述客户端证书对所述请求体的签名以及所述客户端证书。
3.如权利要求1或2所述的多级签名方法,其特征在于,所述方法还包括:
通过所述第一私钥对生成的交易进行签名,得到签名后的所述交易;
基于签名后的所述交易构造交易请求;
采用所述交易证书对所述交易请求进行签名,得到签名后的所述交易请求;
将签名后的所述交易请求协同所述交易证书构成的请求体发送至所述区块链节点,以发起交易,所述交易请求包括交易信息,所述交易信息包括扩展字段,所述扩展字段用于存储采用所述交易证书得到的签名。
4.一种用于联盟区块链的具有匿名性的多级签名方法,其特征在于,应用于区块链节点,所述方法包括:
当接收到客户端发送的获取客户端证书的请求时,对所述请求进行验证,所述请求包括所述客户端的公钥和签名,所述签名为所述公钥对应的第一私钥对所述公钥的签名;
若所述请求验证通过,则向所述客户端返回客户端证书;
当接收到所述客户端基于所述客户端证书发送的交易证书请求时,对所述交易证书请求进行验证;
若所述交易证书请求验证通过,则向所述客户端返回交易证书;
当接收到所述客户端基于所述交易证书发送的交易请求时,基于所述交易证书对所述交易请求进行验证;
若所述交易请求验证通过,则将所述交易请求对应的交易信息同步至所述区块链节点。
5.如权利要求4所述的多级签名方法,其特征在于,所述当接收到客户端发送的获取客户端证书的请求时,对所述请求进行验证,包括:
验证所述签名是否合法以及所述第一私钥是否通过椭圆曲线数字签名算法生成;
若所述签名合法且所述第一私钥通过椭圆曲线数字签名算法生成,则确认所述请求通过验证。
6.如权利要求5所述的多级签名方法,其特征在于,所述向所述客户端返回客户端证书,包括:
基于所述公钥生成所述客户端证书和第二私钥;
将所述客户端证书和所述第二私钥返回至所述客户端。
7.如权利要求4所述的多级签名方法,其特征在于,所述交易证书请求包括对交易证书的请求体、所述客户端证书对所述请求体的签名以及所述客户端证书,所述当接收到针对客户端发送的交易证书请求时,对所述交易证书请求进行验证;包括:
对所述客户端证书对所述请求体的签名的合法性以及所述客户端证书进行验证;
若所述客户端证书对所述请求体的签名的合法性以及所述客户端证书通过验证,则确认所述交易证书请求验证通过。
8.如权利要求7所述的多级签名方法,其特征在于,在所述若所述交易证书请求验证通过,则向所述客户端返回交易证书之前,还包括:
对所述交易证书请求进行解析,得到临时公钥;
基于所述临时公钥生成所述交易证书并执行所述向所述客户端返回交易证书的步骤。
9.如权利要求4所述的多级签名方法,其特征在于,所述若所述交易请求验证通过,则将所述交易请求对应的交易信息同步至所述区块链节点,包括:
存储所述交易请求对应的交易信息,所述交易信息包括采用所述客户端证书得到的签名;
若所述交易请求通过验证,则将除所述采用所述客户端证书得到的签名以外的其他交易信息同步至所述区块链节点所在联盟链的其他节点。
10.如权利要求4-9任一项所述的多级签名方法,其特征在于,所述方法还包括:
若所述交易请求验证通过,则向所述客户端返回交易成功的信息;
若所述交易请求验证失败,则向所述客户端返回交易失败的信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210636413.3A CN115189884A (zh) | 2019-09-03 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210636413.3A CN115189884A (zh) | 2019-09-03 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
CN201910827936.4A CN110706102B (zh) | 2019-09-03 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910827936.4A Division CN110706102B (zh) | 2019-08-21 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115189884A true CN115189884A (zh) | 2022-10-14 |
Family
ID=69193403
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910827936.4A Active CN110706102B (zh) | 2019-08-21 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
CN202210636413.3A Pending CN115189884A (zh) | 2019-09-03 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910827936.4A Active CN110706102B (zh) | 2019-08-21 | 2019-09-03 | 一种用于联盟区块链的具有匿名性的多级签名方法 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN110706102B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021032196A1 (zh) * | 2019-08-21 | 2021-02-25 | 杭州趣链科技有限公司 | 基于区块链的多级签名方法、装置、计算机设备和存储介质 |
CN111340485B (zh) * | 2020-02-19 | 2023-03-14 | 北京众享比特科技有限公司 | 一种用于联盟区块链的数字证书的配置方法、终端和根证书服务器 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101637854B1 (ko) * | 2015-10-16 | 2016-07-08 | 주식회사 코인플러그 | 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법 및 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법 |
US10516538B2 (en) * | 2016-11-01 | 2019-12-24 | Netcomm Inc. | System and method for digitally signing documents using biometric data in a blockchain or PKI |
KR101816652B1 (ko) * | 2017-02-14 | 2018-01-09 | 주식회사 코인플러그 | Utxo 기반 프로토콜에서 머클 트리 구조를 사용하여 서비스 제공 서버에 의하여 제공되는 서비스를 이용하기 위한 사용자의 로그인 요청에 대하여 pki 기반의 인증을 통해 로그인을 대행하는 방법 및 이를 이용한 서버 |
CN109167763B (zh) * | 2018-08-16 | 2021-05-28 | 国网浙江省电力有限公司电力科学研究院 | 一种基于区块链的电力行业电子数据保全方法及系统 |
CN110011810B (zh) * | 2019-03-31 | 2021-04-20 | 西安电子科技大学 | 基于可链接环签名和多重签名的区块链匿名签名方法 |
CN110061851A (zh) * | 2019-04-28 | 2019-07-26 | 广州大学 | 一种去中心化的跨信任域认证方法及系统 |
-
2019
- 2019-09-03 CN CN201910827936.4A patent/CN110706102B/zh active Active
- 2019-09-03 CN CN202210636413.3A patent/CN115189884A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN110706102B (zh) | 2022-07-12 |
CN110706102A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106789090B (zh) | 基于区块链的公钥基础设施系统及半随机联合证书签名方法 | |
US11349674B2 (en) | Digital certificate management method and apparatus, computer device, and storage medium | |
US20200382326A1 (en) | Digital certificate verification method and apparatus, computer device, and storage medium | |
US10764067B2 (en) | Operation of a certificate authority on a distributed ledger | |
US11057187B2 (en) | Blockchain-assisted hash-based data signature system and method | |
US10848315B2 (en) | Contract agreement method, agreement verification method, contract agreement system, agreement verification device, contract agreement device, contract agreement program and agreement verification program | |
CN112055025B (zh) | 一种基于区块链的隐私数据保护方法 | |
CN106972931B (zh) | 一种pki中证书透明化的方法 | |
CN110612700B (zh) | 基于恢复的公钥进行认证 | |
US7694329B2 (en) | Secure delegation using public key authentication | |
CN105701372A (zh) | 一种区块链身份构建及验证方法 | |
SE541713C2 (en) | Method and system for registering digital documents | |
US20200213125A1 (en) | Computer-implemented system and method enabling secure storage of a large blockchain over a plurality of storage nodes | |
WO2020038137A1 (zh) | 二维码生成方法、数据处理方法、装置及服务器 | |
CN109146479B (zh) | 基于区块链的数据加密方法 | |
US20200259663A1 (en) | One-Time Data Signature System and Method with Untrusted Server Assistance | |
US20110167258A1 (en) | Efficient Secure Cloud-Based Processing of Certificate Status Information | |
CN105635070B (zh) | 一种数字文件的防伪方法及系统 | |
CN112396421B (zh) | 一种基于区块链通证的身份认证系统及方法 | |
JP2005520364A (ja) | デジタル署名された証明書を更新しかつ拡張するシステムおよび方法 | |
CN111444492A (zh) | 一种基于医疗区块链的数字身份验证的方法 | |
KR20220065049A (ko) | 블록체인 상의 보증된 데이터를 저장하기 위한 컴퓨터 구현 방법 및 시스템 | |
CN110706102B (zh) | 一种用于联盟区块链的具有匿名性的多级签名方法 | |
Gulati et al. | Self-sovereign dynamic digital identities based on blockchain technology | |
CN112332980B (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 |