CN111556035B - 多认证节点的联盟链系统及方法 - Google Patents
多认证节点的联盟链系统及方法 Download PDFInfo
- Publication number
- CN111556035B CN111556035B CN202010310675.1A CN202010310675A CN111556035B CN 111556035 B CN111556035 B CN 111556035B CN 202010310675 A CN202010310675 A CN 202010310675A CN 111556035 B CN111556035 B CN 111556035B
- Authority
- CN
- China
- Prior art keywords
- consensus
- authentication
- request
- node
- certificate
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0869—Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
-
- 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
- H04L9/3268—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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
一种多认证节点的联盟链系统及方法,所述系统包含认证节点和多个共识节点;所述共识节点用于接收交易请求,将所述交易请求转换为共识请求后,广播至区块链网络中其他共识节点,当其他共识节点共识完成后,处理所述交易请求并将交易结果上链和持久化在本地;或,接收认证请求,将所述认证请求转交至所述认证节点;所述认证节点用于根据预存身份证书为所述区块链网络提供身份认证;以及,接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理。
Description
技术领域
本发明涉及区块链技术领域,尤指一种多认证节点的联盟链系统及方法。
背景技术
随着科学技术的发展,计算机网络应用越来越广泛。当前的计算机网络基本都是建立在OSI国际标准上的开放系统,这样的开放系统为人们提供了诸多的方便,也逐渐改变了人们日常生活方式,但同时这样的开放系统也存在各种各样的网络安全威胁。由于软件漏洞、配置不当、病毒、黑客攻击等因素,网络安全威胁层出不穷。
区块链是一种高安全性的去中心分布式数据库,区块链由多个节点组成,这几个节点都是可以同步记账,而且整个系统上的每一个节点都是有完全一样的账本。利用这样的机制进行操作,区块链构建出相对高安全的环境。根据网络中心化程度,区块链分为公有链、私有链、联盟链。
因着区块链本身的特点,联盟链内部本身提供了一个相对较高安全的网络环境,但当内部各个节点暴露在互联网等公开网络环境下,节点间的互相通讯仍然面临着各样的网络安全威胁。就当前而言,我们会使用身份认证、信息传输加密等技术来规避或者缓解这样的威胁。在这些技术方案中普遍应用的是数字证书。数字证书是对身份认证和加密技术的综合运用,数字证书由证书签发机关签发,证书签发中心(CA)一般是电子商务认证授权机构,作为电子商务交易中受信任的第三方,负责校验公钥的合法性。
随着CA技术的发展,CA认证机构也越来越多,当区块链节点由不同机构运营或者部署时,不同机构或多或少已经采购了不同的CA。如果在区块链网络中统一CA,运营在各个节点的机构可能面临着更改后台系统代码的问题。一方面,开发工作量加大,另一方面,扩展性不强,集成一个CA就有可能得更改多一次代码。如何在区块链网络中兼容各个不同的CA机构所签发的证书变得越来越重要。
现有技术中,当区块链以联盟链的形式进行部署的时候,区块链各节点会由不同的组织运营开发,而各节点间通信所使用的证书一般通过自签名的CA根证书来签发。当接入节点的组织或公司(接入方)本身已经授权第三方CA机构来保证其访问和被访问请求的安全,接入方接入联盟链的过程可能存在多余的开发工作量。同时,与第三方机构相比,联盟链自签名证书对其使用者网络安全的保障在某些方面并不能达到和第三方机构一样的效果
发明内容
本发明目的在于提供一种多认证节点的联盟链系统及方法,通过改造CA节点,使得联盟链中CA节点能动态接入不同的CA机构,这一方面整个联盟链能兼容第三方CA;另一方面,动态接入的方式降低了接入联盟链的难度和复杂度。
为达上述目的,本发明所提供的多认证节点的联盟链系统,所述系统包含认证节点和多个共识节点;所述多个共识节点和所述认证节点构成区块链网络;所述共识节点用于接收交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点,当其他共识节点共识完成后,处理所述交易请求并将交易结果上链和持久化在本地;或,接收认证请求,将所述认证请求转交至所述认证节点;所述认证节点用于根据预存身份证书为所述区块链网络提供身份认证;以及,接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理。
在上述多认证节点的联盟链系统中,优选的,所述共识节点包含数据收发模块、存储模块和共识模块;所述数据收发模块用于接收用户上传的交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点;以及,接收其他共识节点或认证节点广播的共识请求,根据所述共识请求进行共识处理;所述存储模块用于将交易结果上链和持久化在本地;以及,对所述认证节点颁发的身份证书进行持久化处理;所述共识模块用于根据预定共识算法对所述共识请求进行共识处理。
在上述多认证节点的联盟链系统中,优选的,所述共识节点还包含证书颁发模块和校验证书模块;所述证书颁发模块用于向所述认证节点发起证书请求,将所述认证节点反馈的身份证书转发至所述存储模块;所述校验证书模块用于根据所述存储模块中存储的身份证书对接收到共识请求进行校验,当校验通过后,将所述共识请求交由所述共识模块。
在上述多认证节点的联盟链系统中,优选的,所述认证节点包含数据收发模块和存储模块;所述数据收发模块用于接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;所述存储模块用于将待入网认证节点的认证证书进行持久化处理。
在上述多认证节点的联盟链系统中,优选的,所述认证节点还包含证书清理模块和证书审核模块;所述证书审核模块用于当同一所述共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化并通知所述证书清理模块清理失效认证证书;所述证书清理模块用于清理所述存储模块中失效的认证证书并通过所述数据收发模块向所述区块链网络中各共识节点发起证书移除请求。
本发明还提供一种多认证节点的联盟链方法,所述方法包含:认证节点通过区块链网络中的共识节点接收认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理。
在上述多认证节点的联盟链方法中,优选的,将所述认证请求转化为共识请求后包含:将所述认证请求中待入网认证节点的第三方身份认证根证书、证书有效时间和共识节点的身份标识提取生成共识请求。
在上述多认证节点的联盟链方法中,优选的,将待入网认证节点的认证证书进行持久化处理包含:当同一共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化,将之前保存的所述共识节点对应的认证证书清理并生成证书移除请求;将所述证书移除请求广播至所述区块链网络中所有共识节点,通知各共识节点移除对应认证证书。
本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
本发明的有益技术效果在于:通过改造联盟链本身的CA节点实现联盟链兼容多CA机构颁发的证书,将兼容多CA机构证书和区块链本身的共识过程相结合,在一定程度上,支持多CA提高了整个区块链系统的易用性。
1、针对想要接入联盟链的机构,支持多CA证书的联盟链系统降低了接入联盟链机构的开发工作量和开发难度
2、针对交易安全性,联盟链支持多CA一定程度上弥补了联盟链自签名CA的安全性,加强了节点间交易的可靠性。
3、针对操作易用性,通过以交易请求的方式实现区块链系统兼容第三方CA证书,接入节点机构或应用可以动态地更改自己使用的第三方CA证书。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所提供的多认证节点的联盟链系统的结构示意图;
图2为本发明一实施例所提供的共识节点的结构示意图;
图3为本发明一实施例所提供的认证节点的结构示意图;
图4为本发明一实施例所提供的多认证节点的联盟链方法的流程示意图;
图5为本发明一实施例所提供的交易流程示意图;
图6为本发明一实施例所提供的共识节点间证书验证的结构示意图;
图7为本发明一实施例所提供的审核第三方身份认证证书的流程示意图;
图8为本发明一实施例所提供的电子设备的结构示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。需要说明的是,只要不构成冲突,本发明中的各个实施例及各实施例中的各个特征可以相互结合,所形成的技术方案均在本发明的保护范围之内。
另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
请参考图1所示,本发明所提供的多认证节点的联盟链系统,所述系统包含认证节点和多个共识节点;所述多个共识节点和所述认证节点构成区块链网络;所述共识节点用于接收交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点,当其他共识节点共识完成后,处理所述交易请求并将交易结果上链和持久化在本地;或,接收认证请求,将所述认证请求转交至所述认证节点;所述认证节点用于根据预存身份证书为所述区块链网络提供身份认证;以及,接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理。
在上述实施例中,所述的共识节点1是指区块链系统中对交易进行接收、广播、共识、执行、存储的网络节点。主要负责将用户的请求转换为内部的请求,在其他共识节点之间发起广播;或者对其他节点广播的请求进行共识,并执行共识成功后的交易并将结果生成区块上链并持久化在本地。所述的认证节点即CA节点2是指区块链系统认证接入节点、颁发或更换节点证书、存储第三方CA根证书的网络节点;CA节点2在整个区块链网络中基本不参与共识,然而,当CA节点接收到来自其他节点关于新的第三方CA请求的时候,CA节点2会转换该请求并在众多共识节点1中广播,当共识节点根据区块链共识算法规则达成共识之后,CA节点2才会将第三方CA加入区块链网络,并对证书进行持久化。在实际工作中,联盟链中CA节点本身不参与区块链其他节点的共识过程,其主要职能在于为联盟链中接入的各个节点的身份以及在联盟链中执行的交易背书,提供其合法凭证。本发明欲对联盟链的CA节点进行改造,改造后的CA节点一方面能为本身节点生成自签名的CA证书,另一方面,接入节点能通过请求的方式向CA节点发出申请接入第三方CA的请求,将第三方CA证书以交易请求的方式动发给CA节点,CA节点将申请接入第三方CA请求转化为内部请求后会在共识节点中进行广播,共识节点再对该内部请求进行共识上链。这样的方式将接入方申请第三方CA请求当成普通交易,使得第三方CA接入也成为区块链数据,这样方便后续追溯。改造后的CA节点使得联盟链系统能够兼容第三方CA证书。联盟链动态兼容第三方CA方便了联盟链的应用或系统的接入,为接入方省去了与CA相关的多余的代码开发工作量。
在本发明一实施例中,所述共识节点包含数据收发模块、存储模块和共识模块;所述数据收发模块用于接收用户上传的交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点;以及,接收其他共识节点或认证节点广播的共识请求,根据所述共识请求进行共识处理;所述存储模块用于将交易结果上链和持久化在本地;以及,对所述认证节点颁发的身份证书进行持久化处理;所述共识模块用于根据预定共识算法对所述共识请求进行共识处理。进一步的,所述共识节点还可包含证书颁发模块和校验证书模块;所述证书颁发模块用于向所述认证节点发起证书请求,将所述认证节点反馈的身份证书转发至所述存储模块;所述校验证书模块用于根据所述存储模块中存储的身份证书对接收到共识请求进行校验,当校验通过后,将所述共识请求交由所述共识模块。
请参考图2所示,实际工作中,所述共识节点1包含数据收发模块11,存储模块12,证书颁发模块13,校验证书模块14,共识模块15。所述的数据收发模块11负责接收用户发给共识节点1的请求,以此生成内部请求,在共识节点中进行广播或者发送给CA节点2,同时接收其他共识节点1或CA节点2的广播的交易进行共识。所述的存储模块12一方面持久化交易执行结果,同时将交易结果生成区块并记录在区块链账本上,另一方面持久化CA节点2颁发的证书。所述的证书颁发模块13负责获取存储在CA节点2的相关证书,当联盟链使用ssl/tls协议进行通讯并共识节点1在存储模块12找不到相关的证书时,证书颁发模块13会调用数据收发模块11向CA节点2发送申请证书的请求,当CA节点2以相关证书进行应答后,证书颁发模块13会调用存储模块12对应答中的证书进行持久化。所述的校验证书模块14负责校验共识节点1通过数据收发模块11所接收到的请求,当区块链使用ssl/tls协议进行通讯并且共识节点1在存储模块12找到相关证书时,校验证书模块14会根据TLS双向认证的规则以及自己拥有证书的内容,对请求中证书进行验证。当证书验证通过后,共识节点1才能开始交易。所述的共识模块15负责将共识节点1间广播的请求进行共识,共识节点1通过数据收发模块11接收到请求,当判断该请求是其他共识节点1或CA节点2所广播的待共识的请求,共识节点1先会按照请求内容先生成摘要,并通过存储模块12按{请求ID:摘要}的方式持久化摘要。根据区块链共识算法的规则,对该请求进行共识,并生成区块,将区块上链。
在本发明一实施例中,所述认证节点包含数据收发模块和存储模块;所述数据收发模块用于接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;所述存储模块用于将待入网认证节点的认证证书进行持久化处理。进一步的,所述认证节点还可包含证书清理模块和证书审核模块;所述证书审核模块用于当同一所述共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化并通知所述证书清理模块清理失效认证证书;所述证书清理模块用于清理所述存储模块中失效的认证证书并通过所述数据收发模块向所述区块链网络中各共识节点发起证书移除请求。
请参考图3所示,实际工作中,所述认证节点即CA节点可包含:数据收发模块21、存储模块22、证书清理模块23、证书审核模块24。所述的数据收发模块21主要负责接收共识节点1发给CA节点2的请求,主要是申请证书的请求和申请兼容第三方CA证书的请求。所述的存储模块22负责持久化共识节点1上送第三方根证书。所述的证书清理模块23负责清理CA节点2上的证书,以及向各个共识节点1发送相关证书失效的请求。当某一个共识节点1多次向CA节点2申请加入第三方CA证书时,CA节点2会将该共识节点1最新申请的第三方CA证书持久化,并废弃在此之前该共识节点1所有第三方证书,并通过数据收发模块21向所有共识节点1发送旧证书失效的请求,所有共识节点1通过数据收发模块11接收到该请求后,会在该节点的存储模块12中将对应的证书移除。所述的证书审核模块24负责审核CA节点2接收到的第三方CA证书,当CA节点2通过数据收发模块21接收到任一共识节点1的申请加入第三方CA根证书的请求,证书审核模块会先将请求中有关证书的内容转化为内部请求,并在所有共识节点1中广播,CA节点2本身不参与共识,但在此流程中CA节点会接收其他共识节点1所广播的消息,当共识节点根据区块链共识算法规则达成共识后,CA节点2会检查存储模块22判断该共识节点是否已经申请过第三方CA根证书,如果已存在第三方根证书,CA节点2会先通过证书清理模块23移除旧的第三方CA根证书,并向所有共识节点1发送对应证书失效的请求。证书清除成功后,CA节点2再通过存储模块22持续化新的第三方CA证书。
请参考图4所示,本发明还提供一种多认证节点的联盟链方法,所述方法包含:
步骤S101:认证节点通过区块链网络中的共识节点接收认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;
步骤S102:当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理。其中,将所述认证请求转化为共识请求后包含:将所述认证请求中待入网认证节点的第三方身份认证根证书、证书有效时间和共识节点的身份标识提取生成共识请求。
在本发明一实施例中将待入网认证节点的认证证书进行持久化处理包含:当同一共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化,将之前保存的所述共识节点对应的认证证书清理并生成证书移除请求;将所述证书移除请求广播至所述区块链网络中所有共识节点,通知各共识节点移除对应认证证书。
综上,在实际工作中以上实施例主要分为普通交易请求和第三方CA节点申请加入请求两部分,为更清楚的说明本发明所提供的多认证节点的联盟链方法的具体实施方式,以下以实际实施例流程为例,对上述两部分做详细说明,本领域相关技术人员当可知,该实例仅为更具体的解释本发明所提供各实施例的使用方式,并不对其做任何限定。
以下请参考图5所示,多认证节点的联盟链方法中普通交易流程如下:
步骤S201:接入联盟链的应用系统发送普通交易到联盟链共识节点1,交易报文内容包括:目标合约的ID,联盟链系统根证书,应用系统本身使用的公钥和私钥。
步骤S202:联盟链共识节点1的数据收发模块11接收到应用系统发送的请求后,共识节点1从请求报文提取出请求中所包含的证书,并通过校验证书模块14校验证书,从而确定发送请求对应的应用系统的合法性。校验通过后,共识节点1检查存储模块12确定其他共识节点所使用的CA根证书是否存在。
步骤S203:当共识节点1在步骤S102中检查到其他共识节点的CA根证书不存在时,共识节点1会通过证书颁发模块13向CA节点2发请求申请对应共识节点的CA根证书。当CA节点2通过数据收发模块21接收到共识节点申请证书请求后,CA节点2通过存储模块22确定对应共识节点是否已经申请过第三方CA根证书,如果发现不存在,CA节点2会默认使用联盟链系统本身的CA根证书。
步骤S204:CA节点2通过步骤S103获取到CA根证书后,再通过校验证书模块校验数据收发模块21接收到的请求的证书。
步骤S205:经过步骤S104后,如果CA节点2接收请求的证书验证通过,CA节点2会将对应CA根证书和校验结果作为应答返回给发请求的共识节点1;如果验证不通过,CA节点2便将请求不合法的信息作为应答返回给共识节点1。
校验证书模块14主要是TLS证书的校验。如图6所示,当两个共识节点达到相互连通的状态时,两个节点需要都各自保留对方节点的根证书。当共识节点1发请求给共识节点2时,请求中会将共识节点2的根证书,共识节点1的公私钥放入请求中,而共识节点2接收到共识节点1请求后,通过校验请求中共识节点1的公私钥来确定该请求是否是来自共识节点1;通过校验请求中共识节点2的根证书来确定该请求是否是发给共识节点2的请求。只有共识节点2校验通过请求中的证书,共识节点2才会开始执行相关交易,等共识节点2执行完交易后,无论是成功还是失败,共识节点2会将共识节点2本身的公私钥以及共识节点1的根证书放入响应请求并对共识节点1进行响应。当共识节点1接收到共识节点2的响应后,共识节点会通过相类似的过程对请求中的证书进行校验来确定对方的身份和交易的合法性。
再请参考图7所示,多认证节点的联盟链方法中第三方认证节点的加入流程具体包含:
步骤S301:接入联盟链的应用系统发送审核第三方CA根证书请求到联盟链共识节点1,交易报文内容包括新的第三方CA根证书、证书有效时间、联盟链根证书、应用系统本身所使用的公钥和私钥。
步骤S302:联盟链共识节点1通过数据收发模块11接收到应用系统发送的审核第三方CA根证书的请求后,共识节点1将请求中的证书提取出来,并调用校验证书模块14根据TLS双向认证的规则对联盟链根证书、应用系统本身所使用的公钥和私钥进行校验,确定应用系统的合法性。当校验通过后,共识节点1将请求中的第三方CA根证书、证书有效时间、共识节点1本身的ID提取生成新请求,并将新请求通过数据收发模块11转发到CA节点2。
步骤S303:CA节点2通过数据收发模块21接收到共识节点1转发过来的审核第三方CA根证书。
步骤S304:CA节点2提取步骤S203所接收请求中的第三方CA根证书、证书有效时间、共识节点1的ID并组装成新请求,生成新请求的交易ID并放入新请求中,最后通过数据收发模块21开始在各个共识节点1间广播。
步骤S305:共识节点1通过数据收发模块21接收到CA节点2广播的请求后,先对请求中的内容生成摘要,并通过存储模块22以{请求交易ID:摘要}的格式存放在内存中。
步骤S306:根据区块链共识算法的规则,当共识节点1的主节点接收到CA节点2的广播请求后,主节点将接收到的广播请求组装成共识的报文,并开始在共识节点1中开始进行共识,共识的报文同时也会发送给CA节点2,但CA节点2接收到共识报文后会进行统计但并不会进行应答。
步骤S307:根据区块链共识算法的规则,当CA节点2通过数据收发模块21接收到共识报文后,便根据共识报文的ID进行统计。当统计的结果满足共识节点1已达成共识的条件,CA节点2便会根据一开始请求中的共识节点ID通过存储模块22确定申请第三方CA根证书的共识节点1是否已经申请过第三方CA根证书,如果该共识节点申请过,CA节点2便通过存储模块22将旧的CA根证书删除,并将旧的CA根证书放入CRL队列中,并将旧证书ID放入旧证书失效请求,并向所有共识节点1发送请求。最后,CA节点2再通过存储模块22将新的第三方CA根证书持久化。
步骤S308:联盟链共识节点1接收CA节点2发送的旧证书失效请求,确定失效证书的ID,并通过存储模块12删除旧证书。
本发明的有益技术效果在于:通过改造联盟链本身的CA节点实现联盟链兼容多CA机构颁发的证书,将兼容多CA机构证书和区块链本身的共识过程相结合,在一定程度上,支持多CA提高了整个区块链系统的易用性。
3、针对想要接入联盟链的机构,支持多CA证书的联盟链系统降低了接入联盟链机构的开发工作量和开发难度
4、针对交易安全性,联盟链支持多CA一定程度上弥补了联盟链自签名CA的安全性,加强了节点间交易的可靠性。
3、针对操作易用性,通过以交易请求的方式实现区块链系统兼容第三方CA证书,接入节点机构或应用可以动态地更改自己使用的第三方CA证书。
本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述方法的计算机程序。
如图8所示,该电子设备600还可以包括:通信模块110、输入单元120、音频处理器130、显示器160、电源170。值得注意的是,电子设备600也并不是必须要包括图8中所示的所有部件;此外,电子设备600还可以包括图8中没有示出的部件,可以参考现有技术。
如图8所示,中央处理器100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器100接收输入并控制电子设备600的各个部件的操作。
其中,存储器140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器100可执行该存储器140存储的该程序,以实现信息存储或处理等。
输入单元120向中央处理器100提供输入。该输入单元120例如为按键或触摸输入装置。电源170用于向电子设备600提供电力。显示器160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器140还可以是某种其它类型的装置。存储器140包括缓冲存储器141(有时被称为缓冲器)。存储器140可以包括应用/功能存储部142,该应用/功能存储部142用于存储应用程序和功能程序或用于通过中央处理器100执行电子设备600的操作的流程。
存储器140还可以包括数据存储部143,该数据存储部143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器140的驱动程序存储部144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块110即为经由天线111发送和接收信号的发送机/接收机110。通信模块(发送机/接收机)110耦合到中央处理器100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)110还经由音频处理器130耦合到扬声器131和麦克风132,以经由扬声器131提供音频输出,并接收来自麦克风132的音频输入,从而实现通常的电信功能。音频处理器130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器130还耦合到中央处理器100,从而使得可以通过麦克风132能够在本机上录音,且使得可以通过扬声器131来播放本机上存储的声音。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种多认证节点的联盟链系统,其特征在于,所述系统包含认证节点和多个共识节点;
所述多个共识节点和所述认证节点构成区块链网络;
所述共识节点用于接收交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点,当其他共识节点共识完成后,处理所述交易请求并将交易结果上链和持久化在本地;或,接收认证请求,将所述认证请求转交至所述认证节点;
所述认证节点用于根据预存身份证书为所述区块链网络提供身份认证;以及,接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理;
所述共识节点包含证书颁发模块、存储模块、共识模块和校验证书模块;
所述证书颁发模块用于向所述认证节点发起证书请求,将所述认证节点反馈的身份证书转发至所述存储模块;
所述存储模块用于将交易结果上链和持久化在本地;以及,对所述认证节点颁发的身份证书进行持久化处理;
所述校验证书模块用于根据所述存储模块中存储的身份证书对接收到共识请求进行校验,当校验通过后,将所述共识请求交由所述共识模块;
所述共识模块用于根据预定共识算法对所述共识请求进行共识处理。
2.根据权利要求1所述的多认证节点的联盟链系统,其特征在于,所述共识节点包含数据收发模块;
所述数据收发模块用于接收用户上传的交易请求,将所述交易请求转换为共识请求后,广播至所述区块链网络中其他共识节点;以及,接收其他共识节点或认证节点广播的共识请求,根据所述共识请求进行共识处理。
3.根据权利要求1所述的多认证节点的联盟链系统,其特征在于,所述认证节点包含数据收发模块和存储模块;
所述数据收发模块用于接收共识节点提供的认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;
所述存储模块用于将待入网认证节点的认证证书进行持久化处理。
4.根据权利要求3所述的多认证节点的联盟链系统,其特征在于,所述认证节点还包含证书清理模块和证书审核模块;
所述证书审核模块用于当同一所述共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化并通知所述证书清理模块清理失效认证证书;
所述证书清理模块用于清理所述存储模块中失效的认证证书并通过所述数据收发模块向所述区块链网络中各共识节点发起证书移除请求。
5.一种多认证节点的联盟链方法,其特征在于,所述方法包含:
认证节点通过区块链网络中的共识节点接收认证请求,将所述认证请求转化为共识请求后,广播至所述区块链网络中所有共识节点;
当所述区块链网络中各共识节点完成共识后,将所述认证请求对应的待入网认证节点加入区块链网络并将待入网认证节点的认证证书进行持久化处理;
将待入网认证节点的认证证书进行持久化处理包含:
当同一共识节点在预定周期内发送至少两次认证请求时,将最近一次认证请求对应的认证证书持久化,将之前保存的所述共识节点对应的认证证书清理并生成证书移除请求;
将所述证书移除请求广播至所述区块链网络中所有共识节点,通知各共识节点移除对应认证证书。
6.根据权利要求5所述的多认证节点的联盟链方法,其特征在于,将所述认证请求转化为共识请求后包含:将所述认证请求中待入网认证节点的第三方身份认证根证书、证书有效时间和共识节点的身份标识提取生成共识请求。
7.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求5至6任一所述方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求5至6任一所述方法的计算机程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310675.1A CN111556035B (zh) | 2020-04-20 | 2020-04-20 | 多认证节点的联盟链系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010310675.1A CN111556035B (zh) | 2020-04-20 | 2020-04-20 | 多认证节点的联盟链系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111556035A CN111556035A (zh) | 2020-08-18 |
CN111556035B true CN111556035B (zh) | 2022-04-19 |
Family
ID=72003015
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010310675.1A Active CN111556035B (zh) | 2020-04-20 | 2020-04-20 | 多认证节点的联盟链系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111556035B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114157428A (zh) * | 2020-09-04 | 2022-03-08 | 中国移动通信集团重庆有限公司 | 一种基于区块链的数字证书管理方法和系统 |
CN112512048B (zh) * | 2020-11-27 | 2022-07-12 | 达闼机器人股份有限公司 | 移动网络接入系统、方法、存储介质及电子设备 |
CN112738751B (zh) * | 2020-12-08 | 2023-07-04 | 中车工业研究院有限公司 | 无线传感器接入鉴权方法、装置及系统 |
CN112767152B (zh) * | 2021-01-18 | 2024-02-09 | 中国工商银行股份有限公司 | 应用于联盟链的双园区灾备系统及方法 |
CN113225736B (zh) * | 2021-03-24 | 2024-02-02 | 湖南宸瀚信息科技有限责任公司 | 无人机集群节点认证方法、装置、存储介质及计算机设备 |
CN113852679B (zh) * | 2021-09-16 | 2024-01-26 | 安徽中科晶格技术有限公司 | 基于认证节点器的网络资源优化方法、装置、设备及存储介质 |
CN114219487B (zh) * | 2021-12-22 | 2024-07-09 | 中国电子科技网络信息安全有限公司 | 一种联盟链分布式证书管理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2019203851A1 (en) * | 2019-03-04 | 2019-05-31 | Advanced New Technologies Co., Ltd. | Methods and devices for processing certificates in blockchain system |
CN110490588A (zh) * | 2019-08-23 | 2019-11-22 | 深圳前海环融联易信息科技服务有限公司 | 身份证书管理方法、装置、计算机设备及存储介质 |
CN110569674A (zh) * | 2019-09-10 | 2019-12-13 | 腾讯科技(深圳)有限公司 | 基于区块链网络的认证方法及装置 |
CN110598482A (zh) * | 2019-09-30 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数字证书管理方法、装置、设备及存储介质 |
CN110601851A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 在区块链网络中更换身份证书的方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109067543B (zh) * | 2018-07-24 | 2020-04-14 | 腾讯科技(深圳)有限公司 | 数字证书管理方法、装置、计算机设备和存储介质 |
CN109767218B (zh) * | 2019-01-08 | 2021-11-02 | 中国工商银行股份有限公司 | 区块链证书处理方法及系统 |
-
2020
- 2020-04-20 CN CN202010310675.1A patent/CN111556035B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2019203851A1 (en) * | 2019-03-04 | 2019-05-31 | Advanced New Technologies Co., Ltd. | Methods and devices for processing certificates in blockchain system |
CN110490588A (zh) * | 2019-08-23 | 2019-11-22 | 深圳前海环融联易信息科技服务有限公司 | 身份证书管理方法、装置、计算机设备及存储介质 |
CN110569674A (zh) * | 2019-09-10 | 2019-12-13 | 腾讯科技(深圳)有限公司 | 基于区块链网络的认证方法及装置 |
CN110601851A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 在区块链网络中更换身份证书的方法和装置 |
CN110598482A (zh) * | 2019-09-30 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 基于区块链的数字证书管理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111556035A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111556035B (zh) | 多认证节点的联盟链系统及方法 | |
US20220394026A1 (en) | Network identity protection method and device, and electronic equipment and storage medium | |
CN110299996B (zh) | 认证方法、设备及系统 | |
US20080086633A1 (en) | Method to handle ssl certificate expiration and renewal | |
CN101534192B (zh) | 一种提供跨域令牌的系统和方法 | |
US20130339740A1 (en) | Multi-factor certificate authority | |
CN110177124B (zh) | 基于区块链的身份认证方法及相关设备 | |
US20150350198A1 (en) | Method and system for creating a certificate to authenticate a user identity | |
CN113541970B (zh) | 分布式标识符的使用方法和分布式标识符使用系统 | |
CN111275555B (zh) | 区块链交易处理方法、交易节点以及区块链系统 | |
CN111400727A (zh) | 区块链的访问控制方法和装置以及电子设备 | |
US20110167258A1 (en) | Efficient Secure Cloud-Based Processing of Certificate Status Information | |
JP2002374239A (ja) | 情報暗号化方法 | |
CN105262588A (zh) | 基于动态口令的登录方法、账号管理服务器及移动终端 | |
CN111526159A (zh) | 建立数据连接的方法、装置、终端设备及存储介质 | |
GB2439838A (en) | Mutual authentication procedure for Trusted Platform Modules with exchange of credentials | |
CN113114683B (zh) | 防火墙策略处理方法及装置 | |
CN111797367B (zh) | 软件认证方法及装置、处理节点及存储介质 | |
CN111464295A (zh) | 银行卡制卡方法及装置 | |
CN111949959B (zh) | Oauth协议中的授权认证方法及装置 | |
CN112084521A (zh) | 用于区块链的非结构化数据处理方法、装置及系统 | |
CN107566393A (zh) | 一种基于受信任证书的动态权限验证系统及方法 | |
CN111949958A (zh) | Oauth协议中的授权认证方法及装置 | |
CN107819766B (zh) | 安全认证方法、系统及计算机可读存储介质 | |
CN113255014A (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 |