CN106384236B - 基于区块链的ca认证管理方法、装置及系统 - Google Patents
基于区块链的ca认证管理方法、装置及系统 Download PDFInfo
- Publication number
- CN106384236B CN106384236B CN201610778357.1A CN201610778357A CN106384236B CN 106384236 B CN106384236 B CN 106384236B CN 201610778357 A CN201610778357 A CN 201610778357A CN 106384236 B CN106384236 B CN 106384236B
- Authority
- CN
- China
- Prior art keywords
- certificate
- block chain
- transaction
- block
- node
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
- G06Q20/38215—Use of certificates or encrypted proofs of transaction rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于区块链的CA认证管理方法、装置及系统,至少能够解决现有的CA验证方式所导致的根CA证书的安全性难以保证,进而导致整个验证过程的准确性降低的技术问题。其中,区块链进一步包括创世区块以及常规区块,且创世区块用于存储根CA证书,所述方法包括:监听各个待认证节点在区块链网络中广播的申请证书交易;根据认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据未签名证书生成已签名证书;在所述区块链网络中广播包含已签名证书的颁发证书交易。
Description
技术领域
本发明涉及网络通信技术领域,具体涉及一种基于区块链的CA认证管理方法、装置及系统。
背景技术
数字证书是一种由权威机构颁发的、用于在网络上证明用户身份的证明文件,颁发数字证书的过程也可以称为认证授权(Certification Authority,简称CA)过程。传统的证书颁发体系包括根CA以及根CA下属的多级CA,其中,根CA是证书颁发体系中最受信任的证书颁发机构,可以独立地颁发证书,根CA通过自签名生成证书,不需要由其它CA机构为其颁发证书。其他各级CA机构可以由其上级CA机构为其颁发证书,也可以为其下级CA机构及其客户颁发证书,其中,CA机构的客户可以为各种网络实体,例如,可以是网站(网站服务器)。
由于CA机构的数量众多,且层级不同,因此,在传统的CA认证过程中,为了鉴别一个证书的真伪,不仅要对该证书进行签名验证,而且,还要对签发该证书的机构进行验证,并且,如果签发该证书的机构存在上级CA机构,还需要进一步对上级CA机构进行验证,直至根CA。为此,需要用户预先在浏览器中内置根CA所对应的证书,以便于验证根CA的真伪。但是,用户内置在浏览器中的根CA证书很容易遭遇黑客的攻击,因而导致根CA证书的安全性较低,而且一旦根CA证书被恶意篡改,则会影响整个验证过程的结果。
由此可见,现有的验证方式由于需要用户预先保存根CA证书,因而不仅增加了用户的操作量、占用了用户的本地存储空间,还导致根CA证书的安全性难以保证,进而导致整个验证过程的准确性降低。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于区块链的CA认证管理方法、装置及系统。
依据本发明的一个方面,提供了一种基于区块链的CA认证管理方法,所述区块链进一步包括创世区块以及常规区块,且所述创世区块用于存储根 CA证书,所述方法包括:监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址;根据所述认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据所述未签名证书生成已签名证书;在所述区块链网络中广播包含所述已签名证书的颁发证书交易;其中,所述颁发证书交易中进一步包括:所述待认证节点区块链账户地址、以及用于标识证书状态为有效状态的颁发标识符。
可选地,进一步包括:将所述颁发证书交易对应的第一交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第一交易记录的区块进行广播。
可选地,所述未签名证书中包括验证信息,则所述根据所述未签名证书生成已签名证书的步骤具体包括:根据所述验证信息对所述未签名证书进行验证,当验证通过后,对所述未签名证书进行数字签名。
可选地,所述验证信息包括以下中的至少一种:待认证节点公钥、待认证节点信息、待认证节点区块链账户地址、认证节点信息、认证节点区块链账户地址、证书有效期、以及证书颁发时间。
可选地,所述在所述区块链网络中广播包含所述已签名证书的颁发证书交易的步骤之后,进一步包括:在所述区块链网络中广播撤销证书交易,所述撤销证书交易中包括:待撤销的已签名证书、以及用于标识证书为撤销状态的撤销标识符。
可选地,所述在所述区块链网络中广播撤销证书交易的步骤之后进一步包括:将所述撤销证书交易对应的第二交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第二交易记录的区块进行广播。
可选地,进一步包括:接收用户终端发送的证书查询请求,获取所述证书查询请求中包含的证书信息;根据所述证书信息从所述常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;向所述用户终端发送所述已签名证书。
可选地,所述向所述用户终端发送所述已签名证书的步骤之后,进一步包括:判断所述常规区块中存储的与所述已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向所述用户终端发送证书有效消息;若判断结果为是,则向所述用户终端发送证书无效消息。
可选地,所述根CA证书包括:根CA公钥、根CA信息、根CA区块链账户地址、证书有效期、证书颁发时间、以及数字签名。
依据本发明的另一方面,提供了一种基于区块链的CA认证管理装置,所述区块链进一步包括创世区块以及常规区块,且所述创世区块用于存储根CA 证书,所述方法包括:监听模块,适于监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址;获取模块,适于根据所述认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据所述未签名证书生成已签名证书;广播模块,适于在所述区块链网络中广播包含所述已签名证书的颁发证书交易;其中,所述颁发证书交易中进一步包括:所述待认证节点区块链账户地址、以及用于标识证书状态的颁发标识符。
可选地,进一步包括:记录模块,适于将所述颁发证书交易对应的第一交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第一交易记录的区块进行广播。
可选地,所述未签名证书中包括验证信息,则获取模块进一步用于:根据所述验证信息对所述未签名证书进行验证,当验证通过后,对所述未签名证书进行数字签名。
可选地,所述验证信息包括以下中的至少一种:待认证节点公钥、待认证节点信息、待认证节点区块链账户地址、认证节点信息、认证节点区块链账户地址、证书有效期、以及证书颁发时间。
可选地,所述广播模块进一步用于:广播撤销证书交易,所述撤销证书交易中包括:待撤销的已签名证书、以及用于标识证书为撤销状态的撤销标识符。
可选地,所述记录模块进一步用于:将所述撤销证书交易对应的第二交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第二交易记录的区块进行广播。
可选地,进一步包括:查询模块,适于接收用户终端发送的证书查询请求,获取所述证书查询请求中包含的证书信息;根据所述证书信息从所述常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;向所述用户终端发送所述已签名证书。
可选地,所述查询模块进一步用于:判断所述常规区块中存储的与所述已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向所述用户终端发送证书有效消息;若判断结果为是,则向所述用户终端发送证书无效消息。
可选地,所述根CA证书包括:根CA公钥、根CA信息、根CA地址、证书有效期、证书颁发时间、以及数字签名。
依据本发明的再一方面,提供了一种基于区块链的CA认证管理系统,包括上述的CA认证管理装置,以及待认证节点。
在本发明提供的基于区块链的CA认证管理方法、装置及系统中,利用区块链网络管理各级CA机构的证书以及客户证书,并且,将根CA证书存储到区块链网络的创世区块中,由于创世区块为第一个区块,因此,安全性极高,很难被篡改。相应地,本发明将颁发证书的过程转化为区块链网络中的交易过程,并利用区块链记录交易记录的方式将所有关于证书的操作过程全部记录到区块链中,从而使用户无需在本地预存根CA证书,只需根据区块链网络进行查询即可,由此不仅简化了用户操作、节约了用户空间,且大幅提升了根CA证书的安全性以及后续验证过程的准确性。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例的区块链网络中的节点分布图;
图2示出了本发明一个实施例提供的基于区块链的CA认证管理方法的流程图;
图3示出了其他CA机构的证书生成过程的流程图;
图4示出了未签名证书的格式示意图;
图5示出了根CA机构颁发证书时进一步的时序图;
图6示出了CA机构的客户的证书生成过程的流程图;
图7示出了CA机构为客户服务器颁发证书时进一步的时序图;
图8示出了撤销证书时的时序图;
图9示出了证书查询过程的时序图;
图10示出了本发明另一实施例提供的一种基于区块链的CA认证管理装置的结构图;
图11示出了本发明另一实施例提供的一种基于区块链的CA认证管理系统的结构示意图;
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种基于区块链的CA认证管理方法、装置及系统,至少能够解决现有的CA验证方式所导致的根CA证书的安全性难以保证,进而导致整个验证过程的准确性降低的技术问题。
在本发明实施例中,区块链网络中具体涉及如下几类网络实体:(1)根 CA,是最受信任的证书机构;(2)其它各级CA(非根CA),需要依靠上级CA机构为其颁发证书来标识其身份;(3)客户服务器,向CA机构请求颁发证书的用户对应的服务器,例如网站服务器(website),可理解为CA 机构的客户;(4)普通用户,在网络通信过程中需要验证对方证书的用户对应的用户终端。其中,在本发明实施例中,前三类网络实体作为区块链网络中的节点接入到区块链网络中,因而可以查询区块链中的全部信息,第四类网络实体未作为区块链网络中的节点接入到区块链网络中,因而需先连接到区块链网络中的任一节点进行查询。当然,在本发明其他的实施例中,也可以将第四类网络实体也作为区块链网络中的轻节点接入到区块链网络中,以便于查询。另外,在上述几类网络实体中,CA机构属于区块链网络中的完全节点,具有打包权,既能够向区块链中写入交易记录,也能够读取区块链中的交易记录;客户服务器可以为完全节点或非完全节点,但是不具有打包权,不能够向区块链中写入交易记录,只能够读取区块链中的交易记录。图1示出了本发明实施例的区块链网络中的节点分布图。如图1所示,最上层为根 CA,由于根CA的证书是自签名证书,因此,预先通过硬编码方式写入创世区块中,以实现无法更改的目的,进而提高安全性。CAn为其他CA机构,该类CA机构的证书需由上级CA机构颁发。例如,在图1中,CA1、CA2 和CA3为根CA的下级CA,其需由根CA为其颁发证书,以证明自己的身份。 CA11和CA12为CA1的下级CA,其需由CA1为其颁发证书以证明身份。客户服务器为需要向CA机构请求颁发证书的客户,其中,客户角色包括但不仅限于网站服务器,为了方便理解,在本实施例中以网站服务器为例进行说明。例如,在图1中,客户服务器1和客户服务器2均为CA11的客户。
图2示出了本发明一个实施例提供的基于区块链的CA认证管理方法的流程图。图2所示的方法的执行主体既可以是根CA,也可以是其他各级CA。如图2所示,该方法包括:
步骤S210:监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址。
其中,待认证节点泛指各类需要由CA机构为其颁发证书的网络实体,例如,可以是下级CA机构,也可以是客户服务器。每当待认证节点需要申请证书时,则通过广播方式发送申请证书交易,该请求将广播给区块链网络中的各个网络节点,各个网络节点根据其中包含的认证节点地址确定接收到的申请证书交易是否需要处理:若接收到的申请证书交易中包含的认证节点地址与本网络节点的地址相同,则确认该申请证书交易是发送给本网络节点的,需要处理,否则,则不需处理。并且,该申请证书交易中还包含未签名证书。
步骤S220:根据认证节点区块链账户地址确定待处理的申请证书交易,获取待处理的申请证书交易中包含的未签名证书,根据未签名证书生成已签名证书。
其中,通过对未签名证书进行签名的方式生成已签名证书。具体地,可以通过各类数字签名算法进行签名,本发明对具体的签名算法不做限定。可选地,为了确保证书的准确性,在步骤S220执行之前,还可以进一步对申请证书交易中包含的未签名证书进行审核,例如,将证书信息与线下审核后留存信息比较,若二者都匹配则审核通过,并在审核通过后执行步骤S220。
步骤S230:在区块链网络中广播包含已签名证书的颁发证书交易;其中,颁发证书交易中进一步包括:待认证节点区块链账户地址、以及用于标识证书状态的颁发标识符。
其中,根据已签名证书生成并广播颁发证书交易,该颁发证书交易将广播给区块链网络中的所有节点,并且由区块链网络中的矿工节点负责将颁发证书交易打包到区块中并将区块广播到区块链网络,以便区块链网络中的节点验证该区块并且在验证通过后将该区块加入该节点中的区块链副本,从而在区块链网络中的节点之间达成共识。待认证节点可根据接收的颁发证书交易包含的待认证节点地址与自身地址是否一致来确定该颁发证书交易是否是广播给自身的,若是,则待认证节点根据该颁发证书交易确认证书申请成功。可选的,待认证节点可查询区块链中是否存在该颁发证书交易,如果存在,则确认证书申请成功。
可选地,为了便于后续查询,本发明实施例还可以进一步包括下述的步骤S240:将颁发证书交易对应的第一交易记录写入区块链的常规区块中。
具体地,在本发明中,区块链进一步包括创世区块以及常规区块,且创世区块用于存储根CA证书,常规区块用于存储各类证书颁发操作所对应的交易记录,以便后续查询。所谓创世区块,是指区块链中的第一个区块,其生成时间最早,安全性最高,后续其他区块均无权对创世区块进行更改,因此,将根CA证书存储到创世区块中能够显著提升根CA证书的安全性。区块链中除创世区块之外的其他区块统称为常规区块,用于存储各次交易记录,以供查询。
其中,在步骤S240中,颁发证书交易既可以由上述的认证节点(即处理申请证书交易的网络节点)打包进入到区块中,也可以由其他的网络节点打包到区块中,区块随后会被广播到区块链网络,其他网络节点验证区块通过后会将其中的颁发证书交易加入自身的区块链副本,由此区块链网络就对该区块中的颁发证书交易形成了共识,从而保证区块链的一致性。另外,步骤 S240是一个可选的步骤,在本发明其他的实施例中,也可以省略步骤S240。
由此可见,在本发明提供的基于区块链的CA认证管理方法中,利用区块链网络管理各级CA机构的证书以及客户证书,并且,将根CA证书存储到区块链网络的创世区块中,由于创世区块为第一个区块,因此,安全性极高,很难被篡改。相应地,本发明将颁发证书的过程转化为区块链网络中的交易过程,并利用区块链记录交易记录的方式将所有关于证书的操作过程全部记录到区块链中,从而使用户无需在本地预存根CA证书,只需根据区块链网络进行查询即可,由此不仅简化了用户操作、节约了用户空间,且大幅提升了根CA证书的安全性以及后续验证过程的准确性。
下面结合具体实例详细描述本发明提供的基于区块链的CA认证管理方法的具体实现细节。其中,主要涉及三种管理类型,分别为颁发证书、撤销证书以及查询证书,下面通过三个实施例分别介绍每种类型的管理操作的具体流程:
实施例一、
本实施例主要用于实现颁发证书类管理操作。具体地,颁发证书涉及根 CA证书的生成过程、下级CA向上级CA申请证书的过程以及客户向CA机构申请证书的过程,下面分别加以介绍:
(1)根CA机构的证书生成过程:
由于根CA是最受信任的证书机构,并且根CA的证书是自签名证书,无上级CA认证,因此,根CA的证书是能够长期信任的、几乎不需要更改的。所以,在本发明实施例中将根CA证书通过硬编码方式写入创世区块,由于其余区块都是建立在创世区块之后,所以区块链上各节点的操作无法对创世区块进行更改,由此保障了即使区块链中的节点被恶意攻击也无法更改根CA的证书。由于根CA的证书是自签名证书,无需上级CA机构为其签名,所以证书中只需记录根CA自身的信息。根CA证书中通常包括:证书机构的公钥、证书机构信息、证书机构的区块链账户地址、证书有效期、证书颁发时间等其他信息以及数字签名。其中,证书机构的地址是指该机构在区块链网络上所对应的账户地址。
其中,由于本发明是基于区块链网络实现,因此,根CA证书写入区块链时可以按照比特币的交易格式进行写入,即:向区块链网络发起一笔交易,以便写入区块链中,交易格式如下:
(2)其他CA机构的证书申请过程:
图3示出了其他CA机构的证书生成过程的流程图。如图3所示,其他 CA机构的证书申请过程包括如下步骤:
步骤S310:下级CA机构向上级CA机构广播申请证书交易。
这里,下级CA机构也可以理解为待认证节点,上级CA机构也可以理解为认证节点。由于本发明可基于公有区块链的交易格式实现,因此,每笔交易可以包括输入和输出两部分,其中,输入部分可以为空,输出部分可以包含下级CA机构的未签名证书,即不完整的证书。其中,为了防止区块链上的其他节点任意颁发证书,在未签名证书中写入了上级CA机构的相关信息。
其中,申请证书交易通过广播方式发送,并且,在申请证书交易中进一步包含源地址和目的地址,源地址对应于申请证书交易的输入,目的地址对应于申请证书交易的输出。其中,源地址为发送该请求的待认证节点区块链账户地址,目的地址为处理该交易的认证节点区块链账户地址。上述的源地址和目的地址既可以携带到申请证书交易中,也可以直接写入申请证书交易所包含的未签名证书中。图4示出了未签名证书的格式示意图,如图4所示,该证书在传统CA证书的扩展块上增加了颁发者地址(Issuer Unique Address,即颁发证书的上级CA机构的区块链账户地址)和使用者地址(Subject Unique Address,即申请证书的下级CA机构的区块链账户地址)两项内容。另外,除图4所示的证书格式外,备选地,可以在传统CA证书的Issuer块和Subject 块中加入区块链地址信息。
其中,申请证书交易的交易格式如下所示:
步骤S320:上级CA机构监听各个待认证节点广播的申请证书交易,根据认证节点地址确定待处理的申请证书交易,获取待处理的申请证书交易中包含的未签名证书,根据未签名证书生成已签名证书。
由于申请证书交易是广播给区块链网络中的各个网络节点的,包括各级 CA机构以及客户服务器等节点,因此,各个节点根据申请证书交易中包含的认证节点地址确定需要处理的申请证书交易:自身地址与申请证书交易中包含的认证节点地址一致的上级CA机构执行本步骤中的操作;自身地址与申请证书交易中包含的认证节点地址不一致的CA机构等网络节点则忽略此次申请证书交易。
为了提高安全性,可选地,在本步骤中,上级CA机构获取到上述申请证书交易中包含的未签名证书之后,进一步对该未签名证书进行验证,并仅在验证通过后执行后续操作。为了便于验证,在上述的未签名证书中可以进一步包含验证信息,该验证信息除上述提到的上级CA机构的相关信息之外,还可以是待认证节点公钥、待认证节点信息、待认证节点地址、认证节点信息、认证节点地址、证书有效期、以及证书颁发时间等信息。具体验证时,上级 CA机构根据上述验证信息对下级CA机构的身份进行验证,并对未签名证书的合法性进行验证。而且,上级CA机构还要进一步验证未签名证书中包含的证书机构地址是否与该上级CA机构的地址相匹配,若匹配,则说明下级CA 机构指定的颁发证书机构为该上级CA机构,因而继续执行后续步骤;若不匹配,则说明下级CA机构指定的颁发证书机构并非该上级CA机构,因而向下级CA机构返回错误消息,以提示下级CA机构重新发送正确的交易信息。
当上述验证过程均通过后,上级CA机构对未签名证书进行签名,即补充完整未签名证书,得到已签名证书。已签名证书中通常包含:用户的公钥、用户的信息、用户的地址、证书机构信息、证书机构的地址、证书有效期、证书颁发时间等其他信息以及数字签名。其中,用户是指下级CA机构,证书机构是指上级CA机构,数字签名是指上级CA机构对证书中除数字签名外的其他信息的哈希进行私钥加密的结果。
步骤S330:上级CA机构广播包含已签名证书的颁发证书交易;其中,该颁发证书交易进一步包括:待认证节点地址、以及用于标识证书状态的颁发标识符。
上级CA机构向下级CA机构发起一笔颁发证书交易,将已签名证书写入该笔交易的输出部分。其中,该颁发证书交易以广播形式广播到区块链中,该广播形式类似于比特币中的交易,交易信息包含该证书和用于标识证书状态为有效状态的颁发标识符。并且,为了便于后续快速查询到该笔交易,还进一步生成该笔交易的交易编号(即txid)。
其中,颁发证书交易的交易格式如下所示:
步骤S340:将上述颁发证书交易对应的交易记录写入区块链的常规区块中,并在区块链网络中对包含上述交易记录的区块进行广播。
其中,本步骤既可以由上述的上级CA机构实现,也可以由区块链网络中的任一节点实现。由于区块链网络中的任一节点都会收到上述颁发证书交易,因此,任一节点都能够根据颁发证书交易对区块链中的交易记录进行更新,且更新后的区块链会被各个节点所共享,因此,本申请中的广播方式大幅加快了信息的传播速度,提高了同步效率。另外,上述的颁发证书交易中还包含有待认证节点地址,因而各个节点接收到该颁发证书交易后,比较其中的待认证节点地址与自身地址是否一致,若一致,则该待认证节点确认之前申请的证书已成功颁发。
为了便于理解上述过程,图5进一步示出了根CA机构颁发证书时的时序图。如图5所示,在步骤51中,根CA生成自签名证书,写入创世区块。在步骤52中,CA机构向根CA发起申请证书交易,其中包含未签名证书,由于该交易以广播形式发送,因此,CA机构只需将其广播到区块链网络中即可。在步骤53中,根CA监听区块链中广播的交易信息,根据上述申请证书交易中的未签名证书生成已签名证书。在步骤54中,根CA将已签名证书以交易形式广播到区块链网络中。
(3)客户的证书申请过程:
图6示出了CA机构的客户的证书申请过程的流程图。如图6所示,客户的证书生成过程包括如下步骤:
步骤S610:客户服务器广播包含未签名证书的申请证书交易。
其中,客户服务器可以是任何类型的有申请CA证书需求的客户服务器,例如,金融支付网站服务器、游戏服务器、即时通信服务器、购物消费网站服务器等。首先,客户服务器在线下向CA认证中心提供材料进行合法性等审核,审核批准后客户服务器根据线下向CA认证中心申请的材料组成未签名的 CA证书,该证书包含诸如使用者、颁发者、以及有效期等信息,并指明要签名的CA机构的地址。然后,客户服务器将包含未签名证书的申请证书交易广播到区块链网络中。
其中,由于申请证书交易通过广播方式发送,因此,为了便于确定发送方和接收方,在申请证书交易中进一步包含源地址和目的地址。其中,源地址为发送该请求的客户服务器的地址,目的地址为处理该交易的CA机构地址。其中,申请证书交易的交易格式如下所示:
步骤S620:CA机构监听各个客户服务器广播的申请证书交易,根据认证节点地址确定待处理的申请证书交易,获取待处理的申请证书交易中包含的未签名证书,根据未签名证书生成已签名证书。
其中,CA机构也可以理解为认证节点,客户服务器也可以理解为待认证节点。由于申请证书交易是广播给区块链网络中的各个网络节点的,包括各级CA机构以及客户服务器等节点,因此,各个节点根据申请证书交易中包含的认证节点地址确定需要处理的申请证书交易:自身地址与申请证书交易中包含的认证节点地址一致的CA机构执行本步骤中的操作;自身地址与申请证书交易中包含的认证节点地址不一致的CA机构等网络节点则忽略此次申请证书交易。
为了提高安全性,可选地,在本步骤中,CA机构获取到上述申请证书交易中包含的未签名证书之后,进一步对该未签名证书进行验证,并仅在验证通过后执行后续操作。为了便于验证,在上述的未签名证书中可以进一步包含验证信息,该验证信息除上述提到的CA机构的相关信息之外,还可以是待认证节点公钥、待认证节点信息、待认证节点地址、认证节点信息、认证节点地址、证书有效期、以及证书颁发时间等信息。具体验证时,CA机构根据上述验证信息对客户服务器的身份进行验证,并对未签名证书的合法性进行验证。而且,CA机构还要进一步验证未签名证书中包含的证书机构地址是否与该CA机构的地址相匹配,若匹配,则说明客户服务器指定的颁发证书机构为该CA机构,因而继续执行后续步骤;若不匹配,则说明客户服务器指定的颁发证书机构并非该CA机构,因而向客户服务器返回错误消息,以提示其重新发送正确的交易信息。
当上述验证过程均通过后,CA机构对未签名证书进行签名,即补充完整未签名证书,得到已签名证书。已签名证书中通常包含:用户的公钥、用户的信息、用户的地址、证书机构信息、证书机构的地址、证书有效期、证书颁发时间等其他信息以及数字签名。其中,用户是指客户服务器,证书机构是指颁发该证书的CA机构,数字签名是指CA机构对证书中除数字签名外的其他信息的哈希进行私钥加密的结果。
步骤S630:CA机构广播包含已签名证书的颁发证书交易;其中,该颁发证书交易进一步包括:待认证节点地址、以及用于标识证书状态的颁发标识符。
CA机构向客户服务器发起一笔颁发证书交易,将已签名证书写入该笔交易的输出部分。其中,该颁发证书交易以广播形式广播到区块链中,该广播形式类似于比特币中的交易,交易信息包含该证书和用于标识证书状态为有效状态的颁发标识符。并且,为了便于后续快速查询到该笔交易,还进一步生成该笔交易的交易编号(即txid)。
其中,颁发证书交易的交易格式如下所示:
步骤S640:将上述颁发证书交易对应的交易记录写入区块链的常规区块中,并在区块链网络中对包含上述交易记录的区块进行广播。
其中,本步骤既可以由上述的上级CA机构实现,也可以由区块链网络中的任一节点实现。由于区块链网络中的任一节点都会收到上述颁发证书交易,因此,任一节点都能够根据颁发证书交易对区块链中的交易记录进行更新,且更新后的区块链会被各个节点所共享,因此,本申请中的广播方式大幅加快了信息的传播速度,提高了同步效率。另外,上述的颁发证书交易中还包含有待认证节点地址,因而各个节点接收到该颁发证书交易后,比较其中的待认证节点地址与自身地址是否一致,若一致,则客户服务器确认之前申请的证书已成功颁发。另外,客户服务器还可以进一步根据接收到的颁发证书交易中的交易编号(txid)查询相应的交易记录是否已被存储在区块链上,从而进一步确认证书已成功颁发。
为了便于理解上述过程,图7进一步示出了CA机构为客户服务器颁发证书时的时序图。如图7所示,在步骤71中,客户服务器将未签名证书以交易形式广播给区块链网络,并标记请求颁发证书的CA机构地址。在步骤72中, CA机构接收上述交易,并获取其中包含的未签名证书。在步骤73中,CA机构审核证书后根据未签名证书生成已签名证书,将已签名证书广播到区块链网络。在步骤74中,CA机构向客户服务器反馈证书颁发信息,其中包括交易编号或交易ID。在步骤75中,客户服务器根据交易编号查询证书是否存在于区块链网络中。
实施例二、
本实施例主要用于实现撤销证书类管理操作。具体地,撤销证书涉及上级CA机构撤销其为下级CA机构颁发的证书的操作,以及CA机构撤销其为客户颁发的证书的操作,由于两类撤销操作的流程类似,因此,下面主要介绍第一类撤销操作:
由于有效期、后期审核等各种原因,需要对已有证书进行撤销。具体撤销时,CA机构首先根据带撤销的证书所对应的交易编号等标识信息确定待撤销的已签名证书,然后,将待撤销的已签名证书加上撤销标识符一起广播到区块链网络中,该广播形式类似于比特币中的交易,交易信息包含该证书和撤销标识符,并且整个CA区块链中的各个节点都会被广播到该撤销证书交易。撤销证书交易格式如下:
为了便于后续查询,还需要将撤销证书交易对应的交易记录写入区块链的常规区块中。上述撤销方式既可以应用于对CA机构的证书进行撤销,也可以应用于对客户的证书进行撤销。
为了便于理解上述过程,图8示出了撤销证书时的时序图。在步骤81中, CA机构向区块链网络广播撤销证书交易,之后,通过步骤82,客户服务器或其他用户终端能够从区块链中查询证书是否存在。
实施例三、
本实施例主要用于实现查询(验证)证书类管理操作。其中,证书的验证通常是由与证书拥有者(例如客户服务器)存在信息交互的用户去验证,验证过程不仅要验证证书拥有者本身所拥有的证书是否有效,还要逐层向上验证证书颁发机构的证书。具体地,验证过程的主要步骤如下:
步骤一、用户终端向客户服务器发送用于核对CA证书信息的证书查询请求。
其中,用户终端发送的证书查询请求可通过各种类型的操作实现,例如,可以通过下述类型的操作中的一种或多种实现:登陆、注销、重置密码、支付、转账、预订、或添加好友等。为了提高安全性,上述操作可经过用户签名以便保证该操作确实是由用户本人发起,并且操作信息未被其他人篡改。
步骤二、客户服务器将其所拥有的CA证书发送给用户终端。
可选地,为了减少传输数据量,提高查询速度,客户服务器可将上文提到的颁发证书交易中的交易编号(txid)发送给用户终端,以方便用户快速查询。
步骤三、用户终端在CA区块链中核对客户服务器的CA证书信息。
具体地,用户根据收到的CA证书中的客户服务器和CA证书颁发机构在 CA区块链中的地址,到CA区块链中查询两者的交互信息,如果CA证书颁发机构对客户服务器颁发了证书并在交互信息中没有撤销标识符,则核对成功。可选的,用户还可以根据CA证书颁发机构对应的CA区块链地址查询该 CA证书颁发机构的CA证书,并同理可以根据CA证书颁发机构对应的区块链地址和该CA证书颁发机构的上级机构对应的区块链地址,逐步追溯到根CA,以进一步增加可信度。
具体查询时,用户终端可以通过访问任一CA机构的方式进行查询,例如,用户终端向CA机构发送证书查询请求,CA机构获取该证书查询请求中包含的证书信息;根据证书信息从常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;并向用户终端发送该已签名证书。更进一步地,该CA机构或用户终端还可以判断常规区块中存储的与已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向用户终端发送证书有效消息;若判断结果为是,则向用户终端发送证书无效消息。由此可见,在本发明中,主要是通过区块链中记录的交易信息中的状态标识符来识别证书状态的,若证书对应的交易中的状态标识符为颁发标识符,则说明书证书有效;若证书对应的交易中的状态标识符为撤销标识符,则说明书证书无效。
以上每一步验证如果不通过,即说明存在问题,都可以直接返回验证结果,无需继续验证。另外,上述验证过程既可以由用户终端执行,也可以由其他网络节点,如CA机构应用户终端的请求而执行。
为了便于理解上述查询过程,图9示出了证书查询过程的时序图。如图9 所示,在步骤91中,用户终端向客户服务器请求CA证书。在步骤92中,客户服务器向用户终端发送CA证书。在步骤93中,用户终端查询区块链中的证书信息,以确认客户服务器发送的证书的有效性。
由此可见,本发明利用区块链来进行CA证书的颁发、撤销和查询等管理操作,充分利用了区块链的不易篡改和公开化的特点,弥补了传统CA认证中的不足,使得CA的颁发和撤销信息传播更快,提高了证书颁发机构的可信度,尤其是根CA,用户可以通过实时查询区块链上的记录来审查证书,更加可靠。另外,依赖于区块链的分布式特点,使得即使CA节点在遭受恶意攻击的情况下也不会影响整个CA网络的安全性,并且区块链网络有可能在短时间内感知到问题。
另外,本领域技术人员可以对上述实施例进行各种改动和变形,例如,本领域技术人员还可以从以下几方面进行改动:(1)在下级CA机构向上级 CA机构申请颁发证书时,对于证书格式的设计,可以在颁发者(Issuer)块和使用者(Subject)块中或是其他预留块中加入区块链地址信息。(2)在下级CA机构向上级CA申请颁发证书时,对于证书格式的设计,包含一个选项是证书颁发机构和申请机构的地址,即其在区块链网络上对应的地址。为了保持与传统证书格式的统一,这部分也可以不放入证书中,而写入每笔交易的输出部分内容里面。(3)在上级CA机构给下级CA颁发证书时,在交易格式中还可以加入是否派生标识符,防止上级CA机构颁发给下级CA机构这一行为被无限派生。(4)在客户服务器将其CA证书发送给用户时,客户服务器可将证书和/或交易编号发送给用户,以方便快速查询。(5)在用户在 CA区块链中核对客户服务器的CA证书信息时,如遇到CA证书颁发机构和客户服务器有多条颁发和撤销消息,则根据区块链消息中的时间戳进行判断。 (6)在用户在CA区块链中核对客户服务器的CA证书信息,利用区块链可回溯的特性,用户可以根据CA证书颁发机构的CA区块链地址查询该CA证书颁发机构的CA证书,并同理可以根据CA证书颁发机构区块链地址和该 CA证书颁发机构上级机构区块链地址,逐步追溯到根CA,增加可信度。
图10示出了本发明另一实施例提供的一种基于区块链的CA认证管理装置的结构图。其中,区块链进一步包括创世区块以及常规区块,且创世区块用于存储根CA证书,所述装置包括:
监听模块101,适于监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址;
获取模块102,适于根据所述认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据所述未签名证书生成已签名证书;
广播模块103,适于在所述区块链网络中广播包含所述已签名证书的颁发证书交易;其中,所述颁发证书交易中进一步包括:所述待认证节点区块链账户地址、以及用于标识证书状态的颁发标识符。
可选地,该装置进一步包括:记录模块104,适于将所述颁发证书交易对应的第一交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第一交易记录的区块进行广播。
可选地,所述未签名证书中包括验证信息,则获取模块进一步用于:根据所述验证信息对所述未签名证书进行验证,当验证通过后,对所述未签名证书进行数字签名。
可选地,所述验证信息包括以下中的至少一种:待认证节点公钥、待认证节点信息、待认证节点区块链账户地址、认证节点信息、认证节点区块链账户地址、证书有效期、以及证书颁发时间。
可选地,所述广播模块进一步用于:广播撤销证书交易,所述撤销证书交易中包括:待撤销的已签名证书、以及用于标识证书为撤销状态的撤销标识符;所述记录模块进一步用于:将所述撤销证书交易对应的第二交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第二交易记录的区块进行广播。
可选地,进一步包括:查询模块,适于接收用户终端发送的证书查询请求,获取所述证书查询请求中包含的证书信息;根据所述证书信息从所述常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;向所述用户终端发送所述已签名证书。
可选地,所述查询模块进一步用于:判断所述常规区块中存储的与所述已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向所述用户终端发送证书有效消息;若判断结果为是,则向所述用户终端发送证书无效消息。
可选地,所述根CA证书包括:根CA公钥、根CA信息、根CA地址、证书有效期、证书颁发时间、以及数字签名。
上述各个模块的具体工作细节可参照方法实施例中相应部分的描述,此处不再赘述。
另外,上述的基于区块链的CA认证管理装置通常为上文提到的各级CA 机构。
图11示出了本发明另一实施例提供的一种基于区块链的CA认证管理系统的结构示意图,如图11所示,该系统包括:上述CA认证管理装置100,以及待认证节点110。其中,CA认证管理装置100既可以是根CA,也可以是其他各级CA;待认证节点110既可以是各级CA机构,也可以是客户服务器。
综上所述,在本发明的技术方案中,主要包括如下几个技术关键点:
首先,基于区块链系统的CA证书管理,将CA证书管理和区块链技术相结合。即:使用分布式的网络结构以及共识机制,使用透明、公开的且无法篡改消息传递和存储消息可回溯机制,提高了系统运行稳定性以及安全性。
其次,设计了区块链网络的消息格式。基于比特币的区块链网络的交易格式,重新设计CA证书颁发、认证或撤销过程中在区块链网络中传输的消息格式,并针对本方案对消息内容进行了简化,提高了网络传输的效率。
又次,设计了区块链网络的CA证书格式。基于比特币区块链网络的交易格式,在传统CA证书的部分模块中加入区块链特性,添加了区块链地址。
再次,设计了区块链网络的CA证书撤销判断模式。利用交易中的标识符来判断证书是否被撤销。每次验证的过程实时审查当前区块链上最新的记录,解决了用户无法及时获知证书是否被撤销的问题。
最后,审查和认证的独立性。结合区块链分布式的特点,所有节点都保存了交易的记录,因此用户可以连接到任意节点去进行审查。使得审查过程不依赖与单个来源,防止了记录被恶意篡改的风险。
由此可见,本发明相对于传统技术方案,从总体上具有如下优点:
(1)采用去中心化的分布式授权系统。
传统认证过程依赖中心授权系统,如果中心授权系统出现了无法工作或产生错误信息,将会导致认证无法进行或者错误。基于区块链系统的挑战认证,使用分布式的网络结构以及共识机制,提高了系统运行稳定性以及安全性。
(2)使用透明、公开的消息传递和存储。
区块链提供了透明,公开的一致性消息存储,可以使得应用服务器不依赖于任何第三方进行证书认证与判断,提高了认证过程的安全性。同时,CA 的颁发和撤销信息以广播形式,节点可迅速感知,提高了证书颁发机构的效率
(3)证书信息具有可回溯性。
证书信息保存在认证网络中的节点中,可以获取完整的证书颁发撤销记录,便于进行证书信息的审查工作。
另外,从细节上具有如下优点:
(1)客户服务器作为一个轻节点参与整个区块链网络。
客户服务器作为一个轻节点参与到整个认证区块链网络中,但不参与区块的生成工作,提高了区块链网络的灵活性和效率。
(2)区块链的CA证书经过数字签名使得消息无法被篡改和伪造。
证书的颁发或撤销过程的信息传递主要是通过在区块链网络中广播消息,消息主要需要包含了源地址、目的地址,消息签名以及证书内容实体构成。所以网络中的完整证书无法被篡改和伪造,提高证书的安全性。
(3)修改证书格式以适应区块链网络。
基于比特币区块链网络的交易格式,完善证书格式,在传统证书的预留项中加入了区块链的地址特性。
(4)重新设计并简化区块链消息结构。
基于比特币区块链网络的交易格式,重新设计证书颁发或撤销过程中在区块链网络中传输的消息格式,并针对本方案对消息内容进行了简化,提高了网络传输的效率。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序 (例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (19)
1.一种基于区块链的CA认证管理方法,其特征在于,所述区块链进一步包括创世区块以及常规区块,且所述创世区块用于存储根CA证书,所述方法包括:
监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址;
根据所述认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据所述未签名证书生成已签名证书;
在所述区块链网络中广播包含所述已签名证书的颁发证书交易;其中,所述颁发证书交易中进一步包括:所述待认证节点区块链账户地址、以及用于标识证书状态为有效状态的颁发标识符。
2.根据权利要求1所述的方法,其中,进一步包括:
将所述颁发证书交易对应的第一交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第一交易记录的区块进行广播。
3.根据权利要求1所述的方法,其中,所述未签名证书中包括验证信息,则所述根据所述未签名证书生成已签名证书的步骤具体包括:
根据所述验证信息对所述未签名证书进行验证,当验证通过后,对所述未签名证书进行数字签名。
4.根据权利要求3所述的方法,其中,所述验证信息包括以下中的至少一种:待认证节点公钥、待认证节点信息、待认证节点区块链账户地址、认证节点信息、认证节点区块链账户地址、证书有效期、以及证书颁发时间。
5.根据权利要求1所述的方法,其中,所述在所述区块链网络中广播包含所述已签名证书的颁发证书交易的步骤之后,进一步包括:
在所述区块链网络中广播撤销证书交易,所述撤销证书交易中包括:待撤销的已签名证书、以及用于标识证书为撤销状态的撤销标识符。
6.根据权利要求5所述的方法,其中,所述在所述区块链网络中广播撤销证书交易的步骤之后进一步包括:将所述撤销证书交易对应的第二交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第二交易记录的区块进行广播。
7.根据权利要求1所述的方法,其中,进一步包括:
接收用户终端发送的证书查询请求,获取所述证书查询请求中包含的证书信息;
根据所述证书信息从所述常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;
向所述用户终端发送所述已签名证书。
8.根据权利要求7所述的方法,其中,所述向所述用户终端发送所述已签名证书的步骤之后,进一步包括:
判断所述常规区块中存储的与所述已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向所述用户终端发送证书有效消息;若判断结果为是,则向所述用户终端发送证书无效消息。
9.根据权利要求1所述的方法,其中,所述根CA证书包括:根CA公钥、根CA信息、根CA区块链账户地址、证书有效期、证书颁发时间、以及数字签名。
10.一种基于区块链的CA认证管理装置,其特征在于,所述区块链进一步包括创世区块以及常规区块,且所述创世区块用于存储根CA证书,所述装置包括:
监听模块,适于监听待认证节点在区块链网络中广播的申请证书交易,其中,所述申请证书交易中包含未签名证书、待认证节点区块链账户地址和认证节点区块链账户地址;
获取模块,适于根据所述认证节点区块链账户地址确定待处理的申请证书交易,获取所述待处理的申请证书交易中包含的未签名证书,根据所述未签名证书生成已签名证书;
广播模块,适于在所述区块链网络中广播包含所述已签名证书的颁发证书交易;其中,所述颁发证书交易中进一步包括:所述待认证节点区块链账户地址、以及用于标识证书状态的颁发标识符。
11.根据权利要求10所述的装置,其中,进一步包括:记录模块,适于将所述颁发证书交易对应的第一交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第一交易记录的区块进行广播。
12.根据权利要求10所述的装置,其中,所述未签名证书中包括验证信息,则获取模块进一步用于:
根据所述验证信息对所述未签名证书进行验证,当验证通过后,对所述未签名证书进行数字签名。
13.根据权利要求12所述的装置,其中,所述验证信息包括以下中的至少一种:待认证节点公钥、待认证节点信息、待认证节点区块链账户地址、认证节点信息、认证节点区块链账户地址、证书有效期、以及证书颁发时间。
14.根据权利要求11所述的装置,其中,所述广播模块进一步用于:
广播撤销证书交易,所述撤销证书交易中包括:待撤销的已签名证书、以及用于标识证书为撤销状态的撤销标识符。
15.根据权利要求14所述的装置,其中,所述记录模块进一步用于:将所述撤销证书交易对应的第二交易记录写入所述区块链的常规区块中,并在区块链网络中对包含所述第二交易记录的区块进行广播。
16.根据权利要求11所述的装置,其中,进一步包括:
查询模块,适于接收用户终端发送的证书查询请求,获取所述证书查询请求中包含的证书信息;根据所述证书信息从所述常规区块中查找对应的交易记录,并根据查找到的交易记录获取对应的已签名证书;向所述用户终端发送所述已签名证书。
17.根据权利要求16所述的装置,其中,所述查询模块进一步用于:
判断所述常规区块中存储的与所述已签名证书对应的交易记录中是否包含撤销标识符,若判断结果为否,则向所述用户终端发送证书有效消息;若判断结果为是,则向所述用户终端发送证书无效消息。
18.根据权利要求10所述的装置,其中,所述根CA证书包括:根CA公钥、根CA信息、根CA地址、证书有效期、证书颁发时间、以及数字签名。
19.一种基于区块链的CA认证管理系统,其特征在于,包括上述权利要求10-18中任一所述的CA认证管理装置以及待认证节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610778357.1A CN106384236B (zh) | 2016-08-31 | 2016-08-31 | 基于区块链的ca认证管理方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610778357.1A CN106384236B (zh) | 2016-08-31 | 2016-08-31 | 基于区块链的ca认证管理方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106384236A CN106384236A (zh) | 2017-02-08 |
CN106384236B true CN106384236B (zh) | 2019-07-16 |
Family
ID=57939214
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610778357.1A Active CN106384236B (zh) | 2016-08-31 | 2016-08-31 | 基于区块链的ca认证管理方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106384236B (zh) |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106972931B (zh) * | 2017-02-22 | 2020-05-15 | 中国科学院数据与通信保护研究教育中心 | 一种pki中证书透明化的方法 |
CN107086909B (zh) * | 2017-03-07 | 2021-01-12 | 创新先进技术有限公司 | 身份信息的生成方法和装置、身份审核的方法和装置 |
CN107196900B (zh) | 2017-03-24 | 2020-04-24 | 创新先进技术有限公司 | 一种共识校验的方法及装置 |
CN113766035B (zh) | 2017-03-28 | 2023-05-23 | 创新先进技术有限公司 | 一种业务受理及共识的方法及装置 |
CN108696348A (zh) * | 2017-04-06 | 2018-10-23 | 中国移动通信有限公司研究院 | 一种实现ca互信的方法、装置、系统和电子设备 |
CN107220130B (zh) * | 2017-05-12 | 2021-12-07 | 北京众享比特科技有限公司 | 一种在区块链的节点处实现的信息共识方法、装置及系统 |
CN108921692B (zh) * | 2017-05-16 | 2022-01-18 | 江峰 | 一种带区块发布机制的多链区块链系统 |
CN107425981B (zh) * | 2017-06-12 | 2020-11-03 | 湖南岳麓山数据科学与技术研究院有限公司 | 一种基于区块链的数字证书管理方法及系统 |
CN107358422B (zh) * | 2017-06-23 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的支付系统 |
CN107358417B (zh) * | 2017-06-23 | 2021-12-28 | 苏州缓流科技有限公司 | 基于区块链技术的可监管的支付方法 |
CN107171810B (zh) * | 2017-06-27 | 2020-03-13 | 中国联合网络通信集团有限公司 | 区块链的验证方法及装置 |
TWI646480B (zh) * | 2017-07-05 | 2019-01-01 | 台新金融控股股份有限公司 | 結合區塊鏈的憑證發行與驗證之系統及其方法 |
CN112865982A (zh) * | 2017-07-26 | 2021-05-28 | 创新先进技术有限公司 | 数字证书管理方法、装置及电子设备 |
CN107480978B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的代付款方法 |
CN107491948B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的转账支付方法 |
CN107392769B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的代收支付方法 |
CN107341729B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的电脑网页支付方法 |
CN107423981B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的移动终端浏览器支付方法 |
CN107423973B (zh) * | 2017-08-04 | 2021-12-10 | 苏州缓流科技有限公司 | 基于区块链技术的用户移动终端上被动扫码的支付方法 |
CN107425969A (zh) * | 2017-09-08 | 2017-12-01 | 华中科技大学 | 一种基于区块链技术的雇员体检信息认证方法 |
EP3468095A1 (en) * | 2017-10-06 | 2019-04-10 | Siemens Aktiengesellschaft | Transaction selection device for selecting blockchain transactions |
CN109936453B (zh) * | 2017-12-18 | 2021-12-21 | 航天信息股份有限公司 | 基于区块链维护证书注销列表的方法、装置、设备及介质 |
CN109995737B (zh) * | 2018-01-02 | 2021-08-10 | 中国移动通信有限公司研究院 | 去中心化的数字证书管理方法及装置、节点、系统 |
CN108282539A (zh) * | 2018-02-06 | 2018-07-13 | 北京奇虎科技有限公司 | 基于双层网络的去中心化存储系统 |
GB201802148D0 (en) * | 2018-02-09 | 2018-03-28 | Nchain Holdings Ltd | Computer-implemented system and method |
CN108647964B (zh) * | 2018-05-02 | 2023-07-28 | 郑杰骞 | 一种区块链数据处理方法、装置及计算机可读存储介质 |
CN108512667A (zh) * | 2018-04-16 | 2018-09-07 | 北京天德科技有限公司 | 一种基于区块链的认证证书生成方法 |
CN108681965B (zh) * | 2018-04-24 | 2021-01-29 | 全链通有限公司 | 离线节点的区块链网络交易处理方法和装置 |
CN108933667B (zh) * | 2018-05-03 | 2021-08-10 | 深圳市京兰健康医疗大数据有限公司 | 一种基于区块链的公钥证书的管理方法及管理系统 |
CN110502916B (zh) * | 2018-05-16 | 2022-04-19 | 南京星云数字技术有限公司 | 一种基于区块链的敏感性数据处理方法与系统 |
CN108964924B (zh) * | 2018-07-24 | 2020-06-05 | 腾讯科技(深圳)有限公司 | 数字证书校验方法、装置、计算机设备和存储介质 |
CN109067543B (zh) | 2018-07-24 | 2020-04-14 | 腾讯科技(深圳)有限公司 | 数字证书管理方法、装置、计算机设备和存储介质 |
CN109086622A (zh) * | 2018-07-25 | 2018-12-25 | 深圳慧安康科技有限公司 | 一种智慧社区的实现方法及节点设备 |
CN109040057B (zh) * | 2018-07-26 | 2020-12-01 | 百色学院 | 一种基于区块链的多密钥分级保护隐私系统及方法 |
CN109299333B (zh) * | 2018-08-16 | 2022-08-12 | 北京京东尚科信息技术有限公司 | 区块链网络账本成员管理方法、装置、设备及存储介质 |
CN109165944B (zh) * | 2018-08-21 | 2021-01-26 | 京东数字科技控股有限公司 | 基于区块链的多方签名认证方法、装置、设备及存储介质 |
CN109691064B (zh) * | 2018-08-23 | 2021-11-05 | 区链通网络有限公司 | 可抗量子区块链账户系统的扩容方法、装置以及系统 |
CN109242686A (zh) * | 2018-08-31 | 2019-01-18 | 深圳付贝科技有限公司 | 交易主动撤回方法、挖矿机及区块链系统 |
CN109325359B (zh) * | 2018-09-03 | 2023-06-02 | 平安科技(深圳)有限公司 | 账户体系设置方法、系统、计算机设备和存储介质 |
CN110941859A (zh) * | 2018-09-21 | 2020-03-31 | 上海派链信息科技有限公司 | 用于区块链形成共识的方法、设备、计算机可读存储介质和计算机程序产品 |
CN109377006A (zh) * | 2018-09-25 | 2019-02-22 | 安徽灵图壹智能科技有限公司 | 一种基于第三方系统认证的分布式区块链产品信息系统 |
CN111047439B (zh) * | 2018-10-12 | 2024-05-14 | 北京邦天信息技术有限公司 | 一种基于区块链的交易处理方法 |
CN109447635B (zh) * | 2018-10-15 | 2022-02-01 | 北京京东尚科信息技术有限公司 | 用于区块链的信息存储方法和装置 |
CN109657170B (zh) * | 2018-10-17 | 2023-02-10 | 平安普惠企业管理有限公司 | 网页加载方法、装置、计算机设备及存储介质 |
CN111600716B (zh) * | 2018-10-26 | 2023-09-29 | 创新先进技术有限公司 | 认证方法及装置、电子设备 |
CN109327528B (zh) * | 2018-10-31 | 2020-10-20 | 创新先进技术有限公司 | 一种基于区块链的节点管理方法和装置 |
CN110443658B (zh) * | 2018-12-07 | 2023-01-24 | 深圳市智税链科技有限公司 | 基于区块链系统的税务管理方法、装置、介质及电子设备 |
US11526487B2 (en) * | 2019-05-17 | 2022-12-13 | International Business Machines Corporation | Database world state integrity validation |
CN110460686B (zh) * | 2019-07-26 | 2021-12-10 | 杭州秘猿科技有限公司 | 一种区块链地址注册方法和装置 |
CN110505067B (zh) * | 2019-09-11 | 2021-01-05 | 北京邮电大学 | 区块链的处理方法、装置、设备及可读存储介质 |
CN111106940B (zh) * | 2019-11-25 | 2022-11-04 | 广州大学 | 一种基于区块链的资源公钥基础设施的证书交易验证方法 |
CN111915325B (zh) * | 2020-06-24 | 2024-04-26 | 云南花伍科技有限公司 | 区块链交易信息的溯源方法、系统及计算机可读存储介质 |
CN112035475B (zh) * | 2020-08-28 | 2023-06-02 | 平安科技(深圳)有限公司 | 区块链的区块存储方法、装置、节点设备及存储介质 |
CN112600707B (zh) * | 2020-12-14 | 2023-06-27 | 四川虹微技术有限公司 | 物联网设备认证方法、装置、电子设备及存储介质 |
CN112765622B (zh) * | 2021-01-13 | 2024-04-16 | 中国外运股份有限公司 | 一种电子提单的数字证书管理方法、装置、设备及介质 |
CN113973064B (zh) * | 2021-12-24 | 2022-02-25 | 南京金宁汇科技有限公司 | 一种基于区块链的稳定性测试方法及系统 |
CN115021930B (zh) * | 2022-05-30 | 2023-05-26 | 广州大学 | 一种基于资源公钥基础设施区块链的路由器证书颁发方法 |
CN117093654B (zh) * | 2023-10-19 | 2024-02-09 | 湖南三湘银行股份有限公司 | 一种基于区块链技术的账务标记方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105592098A (zh) * | 2016-01-16 | 2016-05-18 | 杭州复杂美科技有限公司 | 区块链上的投票及ca证书的管理方法 |
CN105701372A (zh) * | 2015-12-18 | 2016-06-22 | 布比(北京)网络技术有限公司 | 一种区块链身份构建及验证方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11055707B2 (en) * | 2014-06-24 | 2021-07-06 | Visa International Service Association | Cryptocurrency infrastructure system |
-
2016
- 2016-08-31 CN CN201610778357.1A patent/CN106384236B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701372A (zh) * | 2015-12-18 | 2016-06-22 | 布比(北京)网络技术有限公司 | 一种区块链身份构建及验证方法 |
CN105592098A (zh) * | 2016-01-16 | 2016-05-18 | 杭州复杂美科技有限公司 | 区块链上的投票及ca证书的管理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106384236A (zh) | 2017-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106384236B (zh) | 基于区块链的ca认证管理方法、装置及系统 | |
CN106301792B (zh) | 基于区块链的ca认证管理方法、装置及系统 | |
CN106372941B (zh) | 基于区块链的ca认证管理方法、装置及系统 | |
CN106339875B (zh) | 基于公有区块链的操作记录审查方法及装置 | |
CN111159288A (zh) | 链式结构数据存储、验证、实现方法、系统、装置及介质 | |
KR20180128968A (ko) | 블록체인 기반의 암호화폐를 위한 토큰을 검증하는 컴퓨터로 구현된 방법 및 시스템 | |
CN106899570A (zh) | 二维码的处理方法、装置及系统 | |
CN108154439A (zh) | 资产数据处理装置及方法 | |
CN110998631A (zh) | 分布式账本技术 | |
EP3918505A2 (en) | Point-to-point distributed decentralized system | |
CN110535807B (zh) | 一种业务鉴权方法、装置和介质 | |
CN105519070A (zh) | 认证机构信任评估 | |
CN112115205B (zh) | 基于数字证书认证的跨链信任方法、装置、设备以及介质 | |
KR102280061B1 (ko) | 블록체인 기반의 did를 이용한 법인 관련 증명서 발급 시스템 및 방법 | |
CN113256297B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
US11356258B2 (en) | Methods and systems for distributed cryptographically secured data validation | |
CN105281908A (zh) | USB Key、USB Key数字证书写入方法和装置 | |
CN111740841B (zh) | 溯源码的验证方法和装置 | |
CN111311258B (zh) | 基于区块链的可信交易方法、装置、系统、设备及介质 | |
CN114331421A (zh) | 基于区块链的资产管理方法、系统、电子设备及存储介质 | |
CN111460457A (zh) | 不动产权登记监管方法、装置、电子设备及存储介质 | |
CN115423457A (zh) | 基于区块链的跨境金融支付结算方法及系统 | |
CN115705601A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN113672988B (zh) | 基于区块链的信息管理方法、系统、介质及电子设备 | |
CN115904609A (zh) | 镜像资源的处理方法及装置、非易失性存储介质、处理器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Room 3F301, C2 Building, 2.5 Industrial Park, No. 88 Dongchang Road, Suzhou Industrial Park, Jiangsu Province, 215000 Applicant after: JIANGSU PAYEGIS TECHNOLOGY CO., LTD. Address before: A street in Suzhou City, Jiangsu Province Industrial Park No. 388 innovation park off No. 6 Building 5 floor Applicant before: JIANGSU PAYEGIS TECHNOLOGY CO., LTD. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |