CN114928450B - 一种基于联盟链的数字证书生命周期管理方法 - Google Patents

一种基于联盟链的数字证书生命周期管理方法 Download PDF

Info

Publication number
CN114928450B
CN114928450B CN202210491042.4A CN202210491042A CN114928450B CN 114928450 B CN114928450 B CN 114928450B CN 202210491042 A CN202210491042 A CN 202210491042A CN 114928450 B CN114928450 B CN 114928450B
Authority
CN
China
Prior art keywords
certificate
chain
result
endorsement
transaction
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
CN202210491042.4A
Other languages
English (en)
Other versions
CN114928450A (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.)
Xidian University
Original Assignee
Xidian University
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 Xidian University filed Critical Xidian University
Priority to CN202210491042.4A priority Critical patent/CN114928450B/zh
Publication of CN114928450A publication Critical patent/CN114928450A/zh
Application granted granted Critical
Publication of CN114928450B publication Critical patent/CN114928450B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/3263Cryptographic 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
    • H04L9/3268Cryptographic 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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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/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
    • 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/3263Cryptographic 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
    • H04L9/3265Cryptographic 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 using certificate chains, trees or paths; Hierarchical trust model

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于联盟链的数字证书生命周期管理方法,改善了传统PKI系统的单点故障问题。该发明分为证书上链、链上证书更新和证书吊销三部分,包括:终端发起证书上链的请求A或链上证书更新的请求B给相应的背书节点,背书节点根据接收到的请求消息判断终端发起的请求属于哪一类交易提案,并完成对请求消息的验证,证书上链和链上证书更新所需的验证分别为验证过程A和验证过程B,得到第一验证结果;证书吊销包括背书节点中的证书吊销服务器执行智能合约C发起吊销证书的交易,执行结束后,背书节点对得到的背书结果签名,将签名结果广播给排序节点。该技术减少了证书吊销占用的大量内存,证书吊销更具实时性和可靠性。

Description

一种基于联盟链的数字证书生命周期管理方法
技术领域
本发明涉及信息安全技术领域,特别是涉及一种基于联盟链的数字证书生命周期管理方法。
背景技术
数字证书是一种具有特殊结构的电子文件,由证书颁发机构(CertificateAuthority,CA)进行数字签名并发布,含有拥有者身份信息、公钥信息和颁发机构的数字签名等内容。数字证书相当于一个电子身份证,终端设备在相互进行通信时就使用数字证书证明自己的身份,并识别对方的身份。传统的对数字证书生命周期的管理,依赖于公钥基础设施(Public Key Infrastructure,PKI)。此PKI体系一般由根CA及其子CA构成,根CA负责向一些子CA签发证书,最后一级CA负责终端设备证书的管理。但由于CA中心化程度高,一旦出现单点故障将会造成不可估量的损失,且传统PKI在吊销机制方面存在效率较低的问题,使得传统数字证书管理机制存在一些弊端。
区块链是指将数据区块按照生成的时间顺序排列成的链式结构,其中区块用来记录交易的具体信息。区块链具有去中心化、防篡改等特性,其通过共识机制保证分布式节点的互信,全网的节点共同维护链上数据的安全,且网络中每个节点都是对等的,拥有区块链分布式账本中的所有数据。区块链被分为公有链、联盟链和私有链,其中联盟链规定只有授权的组织才可以加入到此网络中,账本上的数据也只有参与联盟的节点可以访问和更改,联盟链的此特点为数字证书生命周期的管理提供了新思路。因此,将区块链运用到数字证书生命周期的管理中已经引起广泛的关注和研究。
但是,现有的基于区块链的数字证书管理方案仍存在不足,将证书存储在公有链上,进行证书的查询管理。但这种方式仍然存在内容终端身份信息透明度高、链上的节点可靠性低、认证效率低的问题。麻省理工大学学者提出的分布式系统Certcoin为世界上第一个采用区块链技术的PKI系统,通过此区块链系统对证书进行注册、更新、恢复和撤销,并运用密码累加器对用户的公钥进行验证。但是此方案将终端用户的身份与公钥关联会造成其身份信息公开并遭到窃取,无法进行广泛的实际应用。Zhiguo Wan等人提出的基于区块链技术的PKI系统BKI在区块链上存储事务,实现证书的颁发、更新和撤销。该链由多个可信的日志维护者管理,减少了漏洞的出现。但是由于需要第三方维护者进行验证,出现了多余的时间耗费问题。IKP是一个自动化的对未经授权的证书响应的平台,通过制定智能合约对CA提供正确颁发数字证书的激励,错误颁发证书的经济处罚,并为其它报告未经授权的证书的节点提供激励,这样可以提高平台交易的合法性。同时该系统制定了相应的域证书策略DCPs对该域证书的标准进行规定,最终在以太坊上实现了IKP。但是该系统由于其信息公开的特性仍然会有作恶节点冒充身份的可能,其安全性不能完全保证。Wang Z等人提出的区块链系统实现了撤销证书透明,将证书撤销过程记录在区块链中。其中区块链中的证书事务都有一个有效期,比发布的证书有效期短,因此一个证书在其生命周期中可能会发布几次,其更新后的撤销状态也会反映在证书事务中。当一个证书被撤销并且服务器在它到期之前将其从下一个事务中排除时,相应的证书吊销列表(Certificate Revocation List,CRL)文件或在线证书状态协议(Online Certificate Status Protocol,OCSP)响应将被包含在内,所以CA的撤销操作也被公开地记录在区块链中。但此方法仍需要CA向终端用户发布CRL文件或OCSP响应,其中心化程度较高,易受到攻击。
基于此,研究基于联盟链的数字证书管理方案意义重大。
发明内容
本发明改善了现有技术中传统PKI系统的单点故障问题,提供一种运行效率较高的基于联盟链的数字证书生命周期管理方法。
本发明的技术解决方案是,提供一种具有以下步骤的基于联盟链的数字证书生命周期管理方法:数字证书生命周期管理分为证书上链、链上证书更新和证书吊销三部分,其中终端证书上链和链上证书更新包括:终端发起证书上链的请求A或链上证书更新的请求B给相应的背书节点,背书节点根据接收到的请求消息判断终端发起的请求属于哪一类交易提案,并完成对请求消息的验证,证书上链和链上证书更新所需的验证分别为验证过程A和验证过程B,得到第一验证结果;若第一验证结果为成功,则背书节点利用其接收到的消息执行证书上链的智能合约A或链上证书更新的智能合约B,执行结束后,背书节点对得到背书结果签名,将得到签名结果返回给终端设备,终端设备收到足够多签名的背书结果后,将此结果连同证书上链和链上证书更新交易的提案广播给排序节点,排序节点验签后将背书结果按照接收的时间进行排序,并使用共识算法将排完序的交易封装到区块中,排序节点将打包好的区块广播给记账节点;记账节点接收到区块后,对区块中的每笔交易通过验证过程C进行验证,得到第二验证结果,若第二验证结果为成功,则记账节点进行账本的持久化更新,将新的区块加入区块链,且对于有效的证书上链或链上证书更新的交易,将交易的操作结果提交到世界状态,记账节点将证书上链或链上证书更新的交易保存在区块链账本中的交易ID值返回给终端;终端将接收到的交易ID值保存后,结束证书上链或链上证书更新;
其中证书吊销包括:背书节点中的证书吊销服务器执行智能合约C发起吊销证书的交易,执行结束后,背书节点对得到的背书结果签名,将签名结果广播给排序节点;排序节点对接收到的签名背书进行验签,验签通过后将背书结果按照接收的时间进行排序,并使用共识算法将排完序的交易封装到区块中,排序节点将打包好的区块广播给记账节点;记账节点接收到区块后,对区块中的每笔交易通过验证过程D进行验证,得到第三验证结果;若第三验证结果为成功,则记账节点进行账本的持久化更新,将新的区块加入区块链,且对于有效的证书吊销的交易,将交易的操作结果提交到世界状态;世界状态依照此次交易结果更新后,结束证书吊销。
优选地,所述背书节点验证通过后,执行智能合约完成证书上链操作或链上证书更新操作,执行结束后,将背书结果签名返回给终端,具体包括:
证书上链服务器n执行的智能合约为:存储证书X;将证书X的使用期限设置为TimeX,将证书X的状态Status设置为pass(证书有效);
证书更新服务器n执行的智能合约为:存储证书X*;将该证书X*的使用期限设置为新的使用期限,将该证书X*的状态Status设置为pass(证书有效)。
优选地,所述证书吊销的智能合约C包括:将证书的状态由通过改为吊销,证书吊销的方法如下:
步骤1、背书节点中的证书吊销服务器n查看证书X的世界状态,并执行智能合约完成证书吊销操作;具体的证书吊销服务器执行的智能合约为:若证书状态为pass,则将证书状态改为revoke,证书被吊销;若证书状态为revoke,则不做改动;
步骤2、证书吊销服务器n将背书结果签名,并将签名结果广播给排序节点;
步骤3、排序节点收到K个签名的背书结果后进行验签,验签通过后将证书吊销的过程正式生成交易,由排序节点将此交易排序,使用拜占庭容错算法PBFT封装到区块中,并将打包好的区块广播给记账节点;
步骤4、记账节点接收到区块后,对区块中的每笔交易进行验证,得到第三验证结果,记账节点的验证内容为证书上链和链上证书更新操作的记账节点的验证步骤;
步骤5、记账节点将验证通过的区块加入到区块链,进行账本的持久化更新,对于有效的交易,将交易的操作结果提交到世界状态,由世界状态进行状态和版本号的更新,结束交易过程。
优选地,所述终端发起证书上链的请求A或链上证书更新的请求B,包括:基于哈希运算、数字签名和随机数的生成操作,终端进行运算生成证书上链的请求A或链上证书更新的请求B;所述背书节点对请求A或请求B执行验证过程A或验证过程B得到第一验证结果,包括:基于数字签名、哈希运算和账本上数据的查询操作,背书节点对接收到的请求进行运算执行验证过程A或验证过程B,得到第一验证结果。
优选地,所述证书上链的智能合约A包括:存储证书、设置证书的使用期限、设置证书的状态;链上证书更新的智能合约B包括:存储链上证书更新后的证书、将证书的使用期限设置为新的使用期限、设置证书的状态;证书吊销的智能合约C包括:改变证书的状态。
优选地,所述记账节点对区块中的每笔交易执行验证过程C得到第二验证结果,包括:比较执行智能合约得到的背书结果与真实交易时得到的状态数据的结果是否相等、验证是否得到相应的背书节点中至少K/N个主体的签名背书,得到第二验证结果。
优选地,记账节点对区块中的每笔交易执行验证过程D得到第三验证结果,包括:比较执行智能合约得到的背书结果与真实交易时得到的状态数据的结果是否相等、验证是否得到相应的背书节点中至少K/N个主体的签名背书,得到第三验证结果。
优选地,所述保存交易操作结果的世界状态包括:证书ID值、哈希值、使用期限、当前状态和版本号,对于链上证书更新世界状态更改的内容包括:将使用期限改为新的使用期限、版本号相较于之前加1;对于证书吊销世界状态更改的内容包括:将当前状态改为吊销、版本号相较于之前加1。
与现有技术相比,本发明基于联盟链的数字证书生命周期管理方法具有以下优点:针对如何安全有效的管理终端设备数字证书生命周期的问题,通过背书节点执行智能合约完成背书,排序节点使用PBFT共识算法生成区块,记账节点验证并将区块连接在区块链上,实现将终端已有的证书保存在区块链账本中、对链上的证书更新使用期限和吊销非法证书这三种功能。
改善了现有PKI系统中CA中心化程度高、吊销机制不完备、权力过大、出现单点故障后损失惨重的弊端,并且可以使证书的使用期限更加灵活,依据证书使用情况设置有效期,同时使证书吊销机制更完备,无需签发占用内存较多的证书吊销列表,减少了证书吊销占用的大量内存,证书吊销更具实时性和可靠性。
采用联盟链系统,调用智能合约将保存在链上的证书进行吊销。由于联盟链具有隐私性和不可篡改的特性,只有证书吊销服务器可以修改吊销链上信息。当系统发现某个设备的证书出现问题需要被吊销后,可以通过证书吊销服务器找到该证书在链上存储的具体信息,调用智能合约将其证书的状态进行修改,即可形成证书吊销的交易,完成该证书的吊销,安全性可以得到保证。
与现有系统相比,本方案通过修改证书的链上状态完成吊销,而无需进行CRL的分发,这省去了CRL分发过程带来的时间消耗,因此吊销的即时性也更好。再者,由于终端不用保存庞大冗余的CRL,这也节省了终端设备的存储空间,可以降低终端设备的成本。所以采用本方案能够更好的保证证书吊销的安全性和有效性。
附图说明
图1是本发明一种基于联盟链的数字证书上链和更新方法的流程图;
图2是本发明一种基于联盟链的吊销数字证书方法的流程图;
图3是本发明的示意图基于联盟链的数字证书上链和链上证书更新方法示意图;
图4是本发明的示意图基于联盟链的数字证书吊销方法示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
下面结合附图和具体实施方式对本发明基于联盟链的数字证书生命周期管理方法作进一步说明:
本发明实施例提供的基于联盟链的数字证书上链、更新和吊销方法,包括:基于联盟链的数字证书上链和更新的方法如下:
步骤1、终端向背书节点中的证书上链服务器或证书更新服务器发送上链或更新的请求消息。
具体的,证书上链发送请求的过程为:终端将其证书X进行哈希运算Hash(X),并用私钥SK对得到的运算结果进行签名Sign(SK,Hash(X)),得到签名结果Sign,将证书X和签名结果Sign广播给N个证书上链服务器发起上链请求。证书更新发起请求的过程为:终端将本地生成的随机数RandomX、证书X记录在区块链账本中的交易ID值TxIDX签名,连同被签名的消息广播给N个证书更新服务器发起更新请求。
现有技术通常是通过区块链注册证书,本申请针对在出厂时已将证书预置在终端中的设备(如机顶盒等),这些设备直到其接入媒体系统,即需要被启用时,才将证书上链,而不是在证书签发后直接上链。这样可以使联盟链无需存储没有被用到的证书信息,从而减少对链上节点信息存储量的占用。
步骤2、背书节点对收到的请求消息进行验证。
进一步地,步骤2包括:
步骤2.1、基于哈希运算和数字签名操作,证书上链服务器对其接收到的请求消息进行运算得到上链操作的第一验证结果。
进一步地,证书上链服务器n查看证书X的ID值IDX,并计算证书X的哈希值得到计算结果Hash(X),获取到上述信息的背书节点开始对该端设备请求上链的证书进行验证,证书上链服务器验证的内容为:
通过得到的IDX进行链上证书的查询,避免此证书被重复提交,确定没有查询到此IDX
证书上链服务器n依据证书X中的签发者标识从记录联盟成员初始化信息的区块中查找颁发证书X的CA的证书,验证证书X的合法性,合法性验证通过后,执行下一步验证;
使用证书中的公钥PK对接收到的签名值Sign进行验签,得到验签结果Ver,比较计算得到的哈希值Hash(X)与Ver是否相等,如果二者相等则验证通过。
步骤2.2、基于数字签名操作,证书更新服务器n依据证书X记录在区块链账本中的交易ID值TxIDX找到此证书保存在账本中的位置,并依据证书X中的签发者标识在链上找到签发该证书的CA证书,获取证书中的公钥,从而进行运算得到更新操作的第一验证结果。
进一步地,证书更新服务器验证的内容为:
使用CA证书中的公钥对签名值Sign(SK,RandomX||TxIDX)进行验签,验签通过则表明提交更新请求的内容终端对账本上存储的证书X的状态的所有权,进行下一步,否则返回更新失败的响应信息;
查询存储在区块中的证书X的状态,若证书状态为pass,则进行下一步,否则返回更新失败的响应信息。
步骤3、背书节点验证通过后,执行智能合约完成证书上链操作或证书更新操作,执行结束后,将背书结果签名返回给终端。
进一步地,步骤3包括:
步骤3.1、证书上链服务器n执行的智能合约为:
存储证书X;
将证书X的使用期限设置为TimeX
将证书X的状态Status设置为pass(证书有效)。
步骤3.2、证书更新服务器n执行的智能合约为:
存储证书X*
将该证书X*的使用期限设置为新的使用期限
将该证书X*的状态Status设置为pass,证书有效。
当终端签订合约中的有效期即将到期,想要延长证书使用期限继续获取数字内容时,可以通过此方法向证书更新服务器请求更新证书使用期。这样可以解决内容终端里的证书有效期固定,无法依据使用时间规定有效期的问题,使证书使用期限更加灵活。
步骤4、终端向N个证书上链服务器或证书更新服务器发出请求后一直处于等待状态,直到获得至少K个服务器的背书响应即K个S_EN_n后,内容发送端将背书响应S_EN_n和证书上链或链上证书更新交易的提案广播给排序节点。
步骤5、排序节点验签后,将背书结果按照接收的时间进行排序,使用拜占庭容错算法PBFT将排完序的交易封装到区块中,并将打包好的区块广播给记账节点。
步骤6、记账节点接收到区块后,对区块中的每笔交易进行验证,得到第二验证结果。
进一步地,记账节点的验证内容为:
对证书相关交易的合法性进行验证,即比较背书节点在执行智能合约得到的背书结果与真实交易时得到的状态数据的结果,确保数据的真实性;
进行背书策略的验证,验证得到的背书响应是否来自于证书上链服务器,且是否可以得到所有证书上链服务器中至少K/N个主体的签名背书。
步骤7、记账节点验证通过后进行账本的持久化更新,将新的区块加入区块链,对于有效的交易,将交易的操作结果提交到世界状态,由世界状态记录其ID值IDX、哈希值Hash(X)、使用期限TimeX、状态Status。其中世界状态是指所有账本状态的当前值,相当于对当前账本的交易日志做了索引,便于进行某数值查找,否则需要重新执行代码才能知道某个值具体为多少。世界状态有一个版本号,起始版本号为0,随着世界状态被修改版本号自增,通过检测当前版本号与交易创建时的版本号是否相同来判断世界状态是否更新过。
步骤8、记账节点将此交易内容保存在区块链账本中的交易ID值TxIDX返回终端,结束交易过程。
基于联盟链的数字证书吊销的方法如下:
步骤1、背书节点中的证书吊销服务器n首先获取被吊销证书X的ID值IDX,接着查看证书X的世界状态,并执行智能合约完成证书吊销操作。
具体的,证书吊销服务器执行的智能合约为:
若证书状态为pass,则将证书状态改为revoke,证书被吊销;
若证书状态为revoke,则不做改动。
步骤2、证书吊销服务器n将背书结果签名,即计算签名值S_EN_n=Sign(SK,X||IDX||revoke),将签名结果S_EN_n广播给排序节点。
步骤3、排序节点收到K个签名的背书结果后进行验签,验签通过后将证书吊销的过程正式生成交易,由排序节点将此交易排序,使用拜占庭容错算法PBFT封装到区块中,并将打包好的区块广播给记账节点。
步骤4、记账节点接收到区块后,对区块中的每笔交易进行验证,得到第三验证结果。
具体的,记账节点的验证内容为同证书上链和更新操作的步骤6。
步骤5、记账节点将验证通过的区块加入到区块链,进行账本的持久化更新,对于有效的交易,将交易的操作结果提交到世界状态,由世界状态进行状态和版本号的更新,结束交易过程。此时该证书的状态变为被吊销的状态,且目前的状态版本号为1,表明该证书的相关信息从创建到现在被更改过一次。
现有系统对证书的吊销,会颁发证书吊销列表CRL,然而这种方法在实际执行过程中存在一些问题。证书吊销列表CRL包含了已经吊销证书的序列号和其吊销日期、此CRL的生效日期、下一次更新日期等。CRL更新的最短时间是1个小时,一般为1天,有时为1个月,即CA都是每隔一段时间才会发布新的吊销列表,所以CRL不能及时反应证书的实际状态。且由于证书吊销信息存在于整个证书生命周期,CRL的规模会随着证书吊销信息的增多而变得非常庞大,占用越来越多的内存空间。当服务器要校验某个证书时,需要下载整个CRL,此时其在CRL中查找证书吊销状态信息的效率很低。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

Claims (8)

1.一种基于联盟链的数字证书生命周期管理方法,其特征在于:数字证书生命周期管理分为证书上链、链上证书更新和证书吊销三部分,其中终端证书上链和链上证书更新包括:终端发起证书上链的请求A或链上证书更新的请求B给相应的背书节点,背书节点根据接收到的请求消息判断终端发起的请求属于哪一类交易提案,并完成对请求消息的验证,证书上链和链上证书更新所需的验证分别为验证过程A和验证过程B,得到第一验证结果;若第一验证结果为成功,则背书节点利用其接收到的消息执行证书上链的智能合约A或链上证书更新的智能合约B,执行结束后,背书节点对得到背书结果签名,将得到签名结果返回给终端设备,终端设备收到签名的背书结果后,将此结果连同证书上链和链上证书更新交易的提案广播给排序节点,排序节点验签后将背书结果按照接收的时间进行排序,并使用共识算法将排完序的交易封装到区块中,排序节点将打包好的区块广播给记账节点;记账节点接收到区块后,对区块中的每笔交易通过验证过程C进行验证,得到第二验证结果,若第二验证结果为成功,则记账节点进行账本的持久化更新,将新的区块加入区块链,且对于有效的证书上链或链上证书更新的交易,将交易的操作结果提交到世界状态,记账节点将证书上链或链上证书更新的交易保存在区块链账本中的交易ID值返回给终端;终端将接收到的交易ID值保存后,结束证书上链或链上证书更新;
其中证书吊销包括:背书节点中的证书吊销服务器执行智能合约C发起吊销证书的交易,执行结束后,背书节点对得到的背书结果签名,将签名结果广播给排序节点;排序节点对接收到的签名背书进行验签,验签通过后将背书结果按照接收的时间进行排序,并使用共识算法将排完序的交易封装到区块中,排序节点将打包好的区块广播给记账节点;记账节点接收到区块后,对区块中的每笔交易通过验证过程D进行验证,得到第三验证结果;若第三验证结果为成功,则记账节点进行账本的持久化更新,将新的区块加入区块链,且对于有效的证书吊销的交易,将交易的操作结果提交到世界状态;世界状态依照此次交易结果更新后,结束证书吊销。
2.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,所述背书节点验证通过后,执行智能合约完成证书上链操作或链上证书更新操作,执行结束后,将背书结果签名返回给终端,具体包括:
证书上链服务器n执行的智能合约为:存储证书X;将证书X的使用期限设置为TimeX,将证书X的状态Status设置为pass(证书有效);
证书更新服务器n执行的智能合约为:存储证书X*;将该证书X*的使用期限设置为新的使用期限TimeX*,将该证书X*的状态Status设置为pass(证书有效)。
3.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,所述证书吊销的智能合约C包括:将证书的状态由通过改为吊销,证书吊销的方法如下:
步骤1、背书节点中的证书吊销服务器n查看证书X的世界状态,并执行智能合约完成证书吊销操作;
具体的证书吊销服务器执行的智能合约为:
若证书状态为pass,则将证书状态改为revoke,证书被吊销;
若证书状态为revoke,则不做改动;
步骤2、证书吊销服务器n将背书结果签名,并将签名结果广播给排序节点;
步骤3、排序节点收到K个签名的背书结果后进行验签,验签通过后将证书吊销的过程正式生成交易,由排序节点将此交易排序,使用拜占庭容错算法PBFT封装到区块中,并将打包好的区块广播给记账节点;
步骤4、记账节点接收到区块后,对区块中的每笔交易进行验证,得到第三验证结果,记账节点的验证内容为证书上链和链上证书更新操作的记账节点的验证步骤;
步骤5、记账节点将验证通过的区块加入到区块链,进行账本的持久化更新,对于有效的交易,将交易的操作结果提交到世界状态,由世界状态进行状态和版本号的更新,结束交易过程。
4.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于:所述终端发起证书上链的请求A或链上证书更新的请求B,包括:基于哈希运算、数字签名和随机数的生成操作,终端进行运算生成证书上链的请求A或链上证书更新的请求B;所述背书节点对请求A或请求B执行验证过程A或验证过程B得到第一验证结果,包括:基于数字签名、哈希运算和账本上数据的查询操作,背书节点对接收到的请求进行运算执行验证过程A或验证过程B,得到第一验证结果。
5.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,所述证书上链的智能合约A包括:存储证书、设置证书的使用期限、设置证书的状态;链上证书更新的智能合约B包括:存储链上证书更新后的证书、将证书的使用期限设置为新的使用期限、设置证书的状态;证书吊销的智能合约C包括:改变证书的状态。
6.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,所述记账节点对区块中的每笔交易执行验证过程C得到第二验证结果,包括:比较执行智能合约得到的背书结果与真实交易时得到的状态数据的结果是否相等、验证是否得到相应的背书节点中至少K/N个主体的签名背书,得到第二验证结果,其中N表示N个证书上链服务器,K表示K个服务器的背书响应。
7.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,记账节点对区块中的每笔交易执行验证过程D得到第三验证结果,包括:比较执行智能合约得到的背书结果与真实交易时得到的状态数据的结果是否相等、验证是否得到相应的背书节点中至少K/N个主体的签名背书,得到第三验证结果,其中N表示N个证书上链服务器,K表示K个服务器的背书响应。
8.根据权利要求1所述的基于联盟链的数字证书生命周期管理方法,其特征在于,保存交易的操作结果的世界状态包括:证书ID值、哈希值、使用期限、当前状态和版本号,对于链上证书更新世界状态更改的内容包括:将使用期限改为新的使用期限、版本号相较于之前加1;对于证书吊销世界状态更改的内容包括:将当前状态改为吊销、版本号相较于之前加1。
CN202210491042.4A 2022-05-07 2022-05-07 一种基于联盟链的数字证书生命周期管理方法 Active CN114928450B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210491042.4A CN114928450B (zh) 2022-05-07 2022-05-07 一种基于联盟链的数字证书生命周期管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210491042.4A CN114928450B (zh) 2022-05-07 2022-05-07 一种基于联盟链的数字证书生命周期管理方法

Publications (2)

Publication Number Publication Date
CN114928450A CN114928450A (zh) 2022-08-19
CN114928450B true CN114928450B (zh) 2024-04-23

Family

ID=82807145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210491042.4A Active CN114928450B (zh) 2022-05-07 2022-05-07 一种基于联盟链的数字证书生命周期管理方法

Country Status (1)

Country Link
CN (1) CN114928450B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360001A (zh) * 2017-07-26 2017-11-17 阿里巴巴集团控股有限公司 一种数字证书管理方法、装置和系统
CN110601858A (zh) * 2019-09-27 2019-12-20 腾讯科技(深圳)有限公司 证书管理方法及装置
CN112163954A (zh) * 2020-10-28 2021-01-01 腾讯科技(深圳)有限公司 基于区块链的交易方法及装置
CN112311772A (zh) * 2020-10-12 2021-02-02 华中师范大学 基于Hyperledger的跨域证书管理系统及方法
CN114186288A (zh) * 2021-12-07 2022-03-15 北京工业大学 一种基于区块链的pki证书系统模型及证书管理方法
CN114219487A (zh) * 2021-12-22 2022-03-22 中国电子科技网络信息安全有限公司 一种联盟链分布式证书管理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101661930B1 (ko) * 2015-08-03 2016-10-05 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107360001A (zh) * 2017-07-26 2017-11-17 阿里巴巴集团控股有限公司 一种数字证书管理方法、装置和系统
CN110601858A (zh) * 2019-09-27 2019-12-20 腾讯科技(深圳)有限公司 证书管理方法及装置
CN112311772A (zh) * 2020-10-12 2021-02-02 华中师范大学 基于Hyperledger的跨域证书管理系统及方法
CN112163954A (zh) * 2020-10-28 2021-01-01 腾讯科技(深圳)有限公司 基于区块链的交易方法及装置
CN114186288A (zh) * 2021-12-07 2022-03-15 北京工业大学 一种基于区块链的pki证书系统模型及证书管理方法
CN114219487A (zh) * 2021-12-22 2022-03-22 中国电子科技网络信息安全有限公司 一种联盟链分布式证书管理方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Jiin-Chiou Cheng ; Narn-Yih Lee ; Chien Chi ; Yi-Hua Chen.Blockchain and smart contract for digital certificate.《2018 IEEE International Conference on Applied System Invention (ICASI)》.2018,全文. *
Ming Gao ; Xiaokun Yu ; Lei Ren ; Hongxiang Cai ; Zhiyong Wang ; Yuyang Zhou.A Renewable Energy Certificate Trading System Based on Blockchain.2021 IEEE 20th International Conference on Trust, Security and Privacy in Computing and Communications (TrustCom).2022,全文. *
基于区块链技术的密钥生命周期演示设计;刘天野;张艳硕;石钰;朱倩倩;;《密码学报》(03);全文 *

Also Published As

Publication number Publication date
CN114928450A (zh) 2022-08-19

Similar Documents

Publication Publication Date Title
US11743054B2 (en) Method and system for creating and checking the validity of device certificates
CN109829326B (zh) 基于区块链的跨域认证与公平审计去重云存储系统
US9654298B2 (en) Signature # efficient real time credentials for OCSP and distributed OCSP
JP4796971B2 (ja) Ocsp及び分散型ocspのための効率的に署名可能なリアルタイム・クレデンシャル
EP3966997B1 (en) Methods and devices for public key management using a blockchain
US20070150737A1 (en) Certificate registration after issuance for secure communication
CN113656780B (zh) 一种跨链访问控制方法和装置
WO2014035748A1 (en) Method and device for dynamically updating and maintaining certificate path data across remote trust domains
CN114465817B (zh) 一种基于tee预言机集群和区块链的数字证书系统及方法
CN114205162B (zh) 一种基于区块链pki互信认证的方法和系统
CN116777397A (zh) 基于区块链的电子单据管理方法、装置、终端及存储介质
CN111683060A (zh) 通信消息验证方法、装置及计算机存储介质
CN115150090A (zh) 基于区块链的ca证书的管理方法及相关产品
CN112950209B (zh) 一种基于区块链的核电经验反馈信息管理方法和系统
TWI818209B (zh) 基於分散式分類帳之憑證鑑別及憑證發布之方法及系統
CN114928450B (zh) 一种基于联盟链的数字证书生命周期管理方法
CN110659903B (zh) 一种基于区块链的数据交易方法
CN113282966A (zh) 一种基于区块链的数据确权方法
CN112465504A (zh) 基于区块链的订单结算方法、系统及存储介质
CN112132588A (zh) 基于区块链的数据处理方法、装置、路由设备及存储介质
CN114500051B (zh) 一种基于区块链的证书管理方法及系统
CN112653767B (zh) 数字身份管理方法、装置、电子设备和可读存储介质
AU2006202855B2 (en) Signature-efficient real time credentials for OCSP and distributed OCSP
CN112653557A (zh) 数字身份处理方法、装置、电子设备和可读存储介质
CN118827050A (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