CN113408003B - 一种区块链的跨链方法及装置 - Google Patents
一种区块链的跨链方法及装置 Download PDFInfo
- Publication number
- CN113408003B CN113408003B CN202010181689.8A CN202010181689A CN113408003B CN 113408003 B CN113408003 B CN 113408003B CN 202010181689 A CN202010181689 A CN 202010181689A CN 113408003 B CN113408003 B CN 113408003B
- Authority
- CN
- China
- Prior art keywords
- chain
- certificate
- information
- certification
- block chain
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- 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/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Computer Security & Cryptography (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Technology Law (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了一种区块链的跨链方法及装置,能够提高区块链间跨链的效率、普遍适用性和安全性,以满足未来所有区块链之间信息互通的需求。该方法包括:在接收跨链请求信息和证明信息后,首先利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,接着,利用获取到的验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真,当确认跨链证明信息为真且跨链请求信息为真时,即可实现与目标区块链之间的跨链。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的数据处理方法及装置。
背景技术
区块链本质上是一种分布式的、多中心化的链式数据存储系统,但是在区块链生态系统中,越来越多区块链网络的存在,产生了越来越多的“数据孤岛”。区块链跨链技术就是为了解决两个或多个不同区块链网络之间数据传递、转移、交换的问题。数据跨链不仅可以增加区块链网络的可拓展性,同时也可以降低区块链网络间数据共享的成本。
目前,常用的区块链跨链方法通常有四种:第一种是基于主侧链的跨链方法,但该方法要求侧链的所有节点知道除了自己之外所有的区块链的算法和基本信息,并及时同步主链,显然不具有普遍适用性;第二种是基于预言机的跨链方法,但由于区块链技术的复杂性,很难有机构可以保证始终保证同步并验证所有区块链上的信息。因此,并不是所有节点都能够信任现实中的这些“预言机”给出的信息,同时现实中的预言机有很高的单点故障风险;第三种是基于证据的跨链方法,但该方法要求一个链的所有节点知道除了自己之外所有的区块链的算法和基本信息以及另一个链的证明的验证方法,显然仍不具有普遍适用性;第四种是跨链生态中的跨链方法,但该方法只能实现在单个特定生态中的跨链,由于每条链的运行节点本身是互不信任的个体,因此每条链选出的代表组成的链也并不一定比外部的第三方预言机更加可信,显然安全性不高。可见,目前常见的四种区块链跨链方法存在跨链效率较低、普遍适用性和安全性不高的问题。
发明内容
本申请实施例的主要目的在于提供一种区块链的跨链方法及装置,能够提高区块链间跨链的效率、普遍适用性和安全性,以满足未来所有区块链之间信息互通的需求。
第一方面,本申请实施例提供了一种区块链的跨链方法,包括:
接收跨链请求信息和证明信息;
利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法;
利用所述验证算法,验证所述跨链证明信息是否为真,并判断所述跨链请求信息是否为真;
当确认所述跨链证明信息为真且所述跨链请求信息为真时,实现与所述目标区块链之间的跨链。
可选的,所述权威认证机构的区块链列表包含每条区块链的基本信息、证书和验证算法。
可选的,所述利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,包括:
判断所述权威认证机构的区块链列表中是否包含所述证明信息的证书;
若是,则根据所述证明信息的证书中的地址信息验证所述证明信息的证书是否为目标区块链的最新证书;
若是,则获取所述目标区块链的验证算法。
可选的,所述接收跨链请求信息和第一证明信息之前,还包括:
储存并定期更新所述权威认证机构的中的区块链列表。
可选的,所述储存并定期更新所述权威认证机构的中的区块链列表,包括:
通过将待更新的证书进行上链确认的方式,验证所述证书的真实性;
当所述待更新的证书成功上链时,将所述待更新的证书作为所述区块链列表中待认证区块链的最新证书。
第二方面,本申请实施例还提供了一种区块链的跨链装置,包括:
接收单元,用于接收跨链请求信息和证明信息;
获取单元,用于利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法;
验证单元,用于利用所述验证算法,验证所述跨链证明信息是否为真,并判断所述跨链请求信息是否为真;
确认单元,用于当确认所述跨链证明信息为真且所述跨链请求信息为真时,实现与所述目标区块链之间的跨链。
可选的,所述权威认证机构的区块链列表包含每条区块链的基本信息、证书和验证算法。
可选的,所述获取单元包括:
判断子单元,用于判断所述权威认证机构的区块链列表中是否包含所述证明信息的证书;
第一验证子单元,用于若判断出所述权威认证机构的区块链列表中包含所述证明信息的证书,则根据所述证明信息的证书中的地址信息验证所述证明信息的证书是否为目标区块链的最新证书;
获取子单元,用于若根据所述证明信息的证书中的地址信息验证所述证明信息的证书是目标区块链的最新证书,则获取所述目标区块链的验证算法。
可选的,所述装置还包括:
更新单元,用于储存并定期更新所述权威认证机构的中的区块链列表。
可选的,所述更新单元包括:
第二验证子单元,用于通过将待更新的证书进行上链确认的方式,验证所述证书的真实性;
更新子单元,用于当所述待更新的证书成功上链时,将所述待更新的证书作为所述区块链列表中待认证区块链的最新证书。
本申请实施例还提供了一种区块链的跨链设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述区块链的跨链方法中的任意一种实现方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述区块链的跨链方法中的任意一种实现方式。
本申请实施例提供的一种区块链的跨链方法及装置,在接收跨链请求信息和证明信息后,首先利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,接着,利用获取到的验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真,当确认跨链证明信息为真且跨链请求信息为真时,即可实现与目标区块链之间的跨链。可见,由于本申请实施例是利用现有权威认证机构(如证书颁发机构(Certificate Authority,简称CA))中的区块链列表进行证明信息中证书的认证,由于权威认证机构是互联网中的可信机构,相比现有的第三方预言机有更高的可信性,并且本申请中的权威认证机构仅负责提供区块链的证书和验证算法,无需引入任何比当前互联网基础设施之外更高的可信设备,所以,相比于现有的跨链方法,跨链的效率更高、普遍适用性和安全性也更强,可以满足未来所有区块链之间信息互通的需求。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有的区块链的跨链方法的示意图之一;
图2为现有的区块链的跨链方法的示意图之二;
图3为现有的区块链的跨链方法的示意图之三;
图4为现有的区块链的跨链方法的示意图之四;
图5为本申请实施例提供的一种区块链的跨链方法的流程示意图;
图6为本申请实施例提供的区块链的跨链的整体交互示意图;;
图7为本申请实施例提供的一种区块链的跨链装置的组成示意图。
具体实施方式
目前,随着区块链技术的发展,存在大量数据无法互通的区块链。然而,在实际应用中,常常出现需要引用其他链上数据的场景,例如,链间的资产互换和交易,这些行为通常被称为“跨链”。然而,在跨链之前,两条链需要某种机制进行信息互通。例如,链A中的用户a如果需要引用链B上的数据M,则需要提供M在链B上的证据,包括:1)数据M确实在某条链,记为链C上,即数据M在链C上并且按照链C的规则得到了确认;2)根据链B的验证算法和基本信息,验证链C确实是链B。现有的常用的区块链跨链方法通常有四种:
第一种是基于主侧链的跨链方法,如图1所示,如果链A是链B的“侧链”、链B是链A的“主链”,即,假设所有链A的运行节点都知道B的算法和基本信息,并及时同步链B。那么,在跨链时,链A中的用户a只需要发消息“M在链B上”而不需要提供任何额外信息,因为默认链A的其他节点都可以验证这条消息的正确性。显然这种方法并不具有普遍适用性,因为不可能要求链A的所有节点知道除了自己之外所有的区块链算法和基本信息,并及时同步主链。
第二种是基于预言机的跨链方法,如图2所示,预言机(oracle)模型是区块链技术中的一个理想的抽象模型。预言机指的是一个永远能够提供真实信息的实体。基于预言机的跨链中的信息互通步骤为:1)a:M在链B上;2),预言机:M在链B上。其中,预言机需要知道链B的算法和基本信息,并且能够及时同步链B,以及能够即时公正地提供这些信息。预言机在现实中需要是一个可信并且有足够技术能力的实体,当前的主要有三种实现方法:1)可信第三方;2)由很多可信第三方组成的另一条区块链;3)采用高级加密技术的第三方(例如:可信硬件设备(TEE),安全传输层协议TLS-N等)。然而,在实际之中,这三者目前在可靠性上离理想中的预言机相去甚远,因为区块链技术的复杂性,很难有机构可以保证始终保证同步并验证所有区块链上的信息。因此,并不是所有节点都能够信任现实中的这些“预言机”给出的信息,同时现实中的预言机有很高的单点故障风险。
第三种是基于证据的跨链方法,如图3所示,假设要利用此方法实现链A和链B之间的跨链,对于链A所有节点来说,需要知道链B的算法和信息,并且需要能够随时同步最新的链B。或者,对于某些链B,链B的算法允许提供一种“M在链B上”的证明,这个证明的大小远小于链B本身。这样,链A的节点仅需要知道链B的基本信息和证明的验证算法方法而不用对于整条链B保持同步。而信息互通步骤为:1)a:M在链B上,证明(M在链B上);2)链A节点验证(证明(M在链B上))。这种方法的局限性在于需要链A节点知道链B的基本信息和证明的验证方法,显然仍不具有普遍适用性。
第四种是跨链生态中的跨链方法,如图4所示,对于一些主打跨链的项目中提出了一种“一主链”和“多侧链”的生态,该生态中的链A、链B,以及整个生态中的所有链中都派出几个代表节点组成链O,而链O负责验证和检查所有链中的信息的真实性,这个链O可以看成是这个生态中的预言机。在这样的系统中,信息互通的步骤是:1)链A中的用户a提供声明“M在链B上”;2)链A代表节点验证“M在链B上”的真实性并发布在链O上;3)链O中链B代表节点以及其他节点确认链O上的信息“M在链B上”。但该方法只能实现在单个特定生态中的跨链,依旧不具有普遍适用性,由于每条链的运行节点本身是互不信任的个体,因此每条链选出的代表组成的链也并不一定比外部的第三方预言机更加可信,显然安全性也不高。
可见,目前常见的四种区块链跨链方法存在跨链效率较低、普遍适用性和安全性不高的问题。
为解决上述缺陷,本申请实施例提供了一种区块链的跨链方法,在接收跨链请求信息和证明信息后,首先利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,接着,利用获取到的验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真,当确认跨链证明信息为真且跨链请求信息为真时,即可实现与目标区块链之间的跨链。可见,由于本申请实施例是利用现有权威认证机构(如CA)中的区块链列表进行证明信息中证书的认证,由于权威认证机构是互联网中的可信机构,相比现有的第三方预言机有更高的可信性,并且本申请中的权威认证机构仅负责提供区块链的证书和验证算法,由于多数被认可的CA的公钥已经作为可信信息写入计算机硬件、操作系统或者浏览器中,因此无需引入任何比当前互联网基础设施之外更高的可信设备,所以,相比于现有的跨链方法,跨链的效率更高、普遍适用性和安全性也更强,可以满足未来所有区块链之间信息互通的需求。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
第一实施例
参见图5,为本实施例提供的一种区块链的跨链方法的流程示意图,该方法包括以下步骤:
S501:接收跨链请求信息和证明信息。
在本实施例中,为了提高区块链间跨链的效率、普遍适用性和安全性,以满足未来所有区块链之间信息互通的需求,首先需要获取到跨链请求信息和证明信息,用以执行后续步骤S502。
其中,请求信息可以是某一链上某一节点向该链网络中其他节点提出的声明,证明信息为验证该请求信息的真伪而提供的可供验证的信息。例如,以链A与链B之间的跨链为例,链A上用户a可以向链A网络中其他节点提出的声明为:“交易M与证书认可交易【证书:链B】(此处将其定义为Tx(G(B,v3,Address)))都在链B上”,并给出一个可供验证的证明为:证明(M与Tx(G(B,v3,Address))在链B上)。
S502:利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法。
在本实施例中,通过步骤S501接收到跨链请求信息和证明信息后,进一步可以利用权威认证机构的区块链列表对证明信息中的证书进行认证,其中,权威认证机构的区块链列表包含了每条区块链的基本信息、证书和验证算法。进而可以在认证通过后,根据认证结果获取目标区块链的验证算法。
需要说明的是,为了对证明信息中的证书进行准确认证,一种可选的实现方式是,本申请首先在权威认证机构(如CA)中储存并定期更新区块链列表。
在本实现方式中,对于区块链列表中每条区块链每次版本的更新,权威认证机构会先利用私钥将每条区块链的更新信息(包括区块链名称、版本号以及能够查询区块链相关信息的地址)进行签名,得到每条区块链对应的一个证书并对外发布,例如,可以将区块链B对应的签名证书定义为G(B,v3,Address),其中G表示权威认证机构、B表示区块链B的名称、v3表示链B的当前版本号、Address表示能够查询到区块链B基本信息的地址(如网址)。需要说明的是,本申请中的权威认证机构G的公钥是所有区块链节点都已知的(操作系统或浏览器会内嵌一个可信的权威认证机构的列表)。然后每条区块链可以对权威认证机构对外发布的证书进行认证,并在认证通过后,将对应的证书更新到区块链列表中,具体可以包括下述步骤A1-A2:
步骤A1:通过将待更新的证书进行上链确认的方式,验证证书的真实性。
步骤A2:当待更新的证书成功上链时,则将待更新的证书作为区块链列表中待认证区块链的最新证书。
在本实施例中,由于区块链并不由某一个机构或组织所有,因此,区块链证书不需要由区块链中的某个节点签名提交,而可以从任意节点获取或者从其他公共渠道获取。相应的,可以将通过将待更新的证书进行上链确认的方式来验证证书的真实性,为此,需要在待认证的区块链的规则中加入一种特殊格式的交易,即“证书认可”交易,此处将其定义为Tx(权威认证机构名称(区块链名称,当前版本号,能够查询到区块链基本信息的地址)),例如,可以是Tx(G(B,v3,Address)),此时,只要保证Tx(G(B,v3,Address))上链成功并得到确认,即可表示链B的所有节点认可了证书G(B,v3,Address),进而可以将待更新的证书作为区块链列表中待认证区块链的最新证书,即,将G(B,v3,Address)作为区块链列表中区块链B的最新证书。
具体来讲,在待认证的区块链的规则中加入一种特殊格式的交易,即“证书认可”交易后,在接收到带有该交易的区块链时,这笔交易包含了权威认证机构颁发的用其私钥签名的待更新证书,该证书中包含有:区块链的名称、区块链的的当前版本、可以查阅到这个证书以及区块链信息的某个公开地址(如网址)。而对于这笔交易的验证规则如下:
(1)可以通过系统自带可信权威机构列表验证这个证书确实来自可信的权威认证机构。
(2)按照给定的地址,验证证书与证书认可交易中给出的待更新证书是否一致。
(3)下载该机构中提供的链B信息,与本地已知链B信息(例如共识算法,证明算法等)进行比较,验证是否一致。
基于此,在接收到证明信息后,可以先判断权威认证机构的区块链列表中是否包含该证明信息种的证书;若是,则根据该证明信息的证书中的地址信息验证证明信息的证书是否为目标区块链的最新证书;若是,即根据已有的权威认证机构列表验证证书来自某个可信的权威认证机构后,可以根据证书中的地址(Address),查阅并确认证书对应的目标区块链的最新证书、基本消息和验证算法。
S503:利用验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真。
在本实施例中,通过步骤S502获取到目标区块链的验证算法后,进一步可以利用该验证算法验证获取到的证明信息是否真实,并判断跨链请求信息是否为真。例如,基于上述举例,链A所有节点在获取到链B的基本消息和验证算法后,进一步可以采用该验证算法验证“证明(M与Tx(G(B,v3,Address))在链B上))”是否为真,并判断用户a提出的声明“交易M与证书认可交易【证书:链B】(即:Tx(G(B,v3,Address)))都在链B上”是否为真。
因此,有跨链需求的区块链仅需要在算法中进行支持“证书认可”交易的改动升级。然后,即可自行验证证书中对于区块链信息和验证算法描述的准确性并将证书通过“证书认可”交易上链。而对于权威认证机构来说,仅需要在区块链版本变动的情况下更新证书,并且保持始终在线能够给有跨链需求的节点提供关于这条链的信息即可,而后者是天然被满足的,因为作为权威认证机构,其原本就需要随时保持在线。对于信息互通的接收方链A上的其他节点来说,他们不需要提前知道任何关于链B的消息,仅需要在获得a的跨链请求后,从权威认证机构处获取目标区块链B的验证算法,然后通过验证算法验证证明信息真伪,并判断请求的真实性,如确认M的确在链B上。进一步提高了跨链的效率。
S504:当确认跨链证明信息为真且跨链请求信息为真时,实现与目标区块链之间的跨链。
在本实施例中,当通过步骤S503确认出跨链证明信息为真且跨链请求信息为真时,则表明跨链成功,即实现与目标区块链之间的跨链,如上述举例,当确认出“证明(M与Tx(G(B,v3,Address))在链B上))”和声明“交易M与证书认可交易【证书:链B】(即:Tx(G(B,v3,Address)))为真时,表明用户a已成功说服链A上的所有节点消息M在链B上。
需要说明的是,相对于预言机,现有权威认证机构原本就在互联网中被认为是可信机构,比第三方预言机有更高的可信性。此外,现有的预言机模型中预言机负责提供对所有信息的认证,而本申请中的权威认证机构只负责提供区块链的证书和验证算法,无需引入任何比当前互联网基础设施之外更高的可信设备,并且本申请提供的跨链方法适用于所有可证明的区块链之间的信息互通。进一步提高了跨链的普遍适用性和安全性。
综上,本实施例提供的一种区块链的跨链方法,在接收跨链请求信息和证明信息后,首先利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,接着,利用获取到的验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真,当确认跨链证明信息为真且跨链请求信息为真时,即可实现与目标区块链之间的跨链。可见,由于本申请实施例是利用现有权威认证机构(如CA)中的区块链列表进行证明信息中证书的认证,由于权威认证机构是互联网中的可信机构,相比现有的第三方预言机有更高的可信性,并且本申请中的权威认证机构仅负责提供区块链的证书和验证算法,无需引入任何比当前互联网基础设施之外更高的可信设备,所以,相比于现有的跨链方法,跨链的效率更高、普遍适用性和安全性也更强,可以满足未来所有区块链之间信息互通的需求。
需要说明的是,为便于理解,现结合图6所示的区块链的跨链的整体交互示意图。对本申请实施例提供的区块链的跨链方法的实现过程进行介绍。
如图6所示,本申请实施例的实现过程为:首先,链A上用户a向链A网络中其他节点声明:“交易M与证书认可交易【证书:链B】(即:Tx(G(B,v3,Address)))都在链B上”,并给出一个可验证的证明:证明(M与Tx(G(B,v3,Address))在链B上)。然后,链A中的其他节点利用权威认证机构的区块链列表对证明信息中的证书进行认证,即先验证证书是否的确来自可信的权威验证机构,并在认证通过后,根据证书中给出的地址(如网址),获取链B的证书与验证算法,进而,在证书比对无误之后,可以根据获取到的验证算法对用户a提供的证明(M与Tx(G(B,v3,Address))在链B上)进行验证,并判断用户a提供的声明是否为真。若结果为真,则跨链成功,即:用户a成功说服链A上的所有节点消息M在链B上,具体实现过程参见步骤S501~步骤S504。
第二实施例
本实施例将对一种区块链的跨链装置进行介绍,相关内容请参见上述方法实施例。
参见图7,为本实施例提供的一种区块链的跨链装置的组成示意图,该装置包括:
接收单元701,用于接收跨链请求信息和证明信息;
获取单元702,用于利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法;
验证单元703,用于利用所述验证算法,验证所述跨链证明信息是否为真,并判断所述跨链请求信息是否为真;
确认单元704,用于当确认所述跨链证明信息为真且所述跨链请求信息为真时,实现与所述目标区块链之间的跨链。
在本实施例的一种实现方式中,所述权威认证机构的区块链列表包含每条区块链的基本信息、证书和验证算法。
在本实施例的一种实现方式中,获取单元702包括:
判断子单元,用于判断所述权威认证机构的区块链列表中是否包含所述证明信息的证书;
第一验证子单元,用于若判断出所述权威认证机构的区块链列表中包含所述证明信息的证书,则根据所述证明信息的证书中的地址信息验证所述证明信息的证书是否为目标区块链的最新证书;
获取子单元,用于若根据所述证明信息的证书中的地址信息验证所述证明信息的证书是目标区块链的最新证书,则获取所述目标区块链的验证算法。
在本实施例的一种实现方式中,所述装置还包括:
更新单元,用于储存并定期更新所述权威认证机构的中的区块链列表。
在本实施例的一种实现方式中,所述更新单元包括:
第二验证子单元,用于通过将待更新的证书进行上链确认的方式,验证所述证书的真实性;
更新子单元,用于当所述待更新的证书成功上链时,将所述待更新的证书作为所述区块链列表中待认证区块链的最新证书。
综上,本实施例提供的一种区块链的跨链装置,在接收跨链请求信息和证明信息后,首先利用权威认证机构的区块链列表对证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,接着,利用获取到的验证算法,验证跨链证明信息是否为真,并判断跨链请求信息是否为真,当确认跨链证明信息为真且跨链请求信息为真时,即可实现与目标区块链之间的跨链。可见,由于本申请实施例是利用现有权威认证机构(如CA)中的区块链列表进行证明信息中证书的认证,由于权威认证机构是互联网中的可信机构,相比现有的第三方预言机有更高的可信性,并且本申请中的权威认证机构仅负责提供区块链的证书和验证算法,无需引入任何比当前互联网基础设施之外更高的可信设备,所以,相比于现有的跨链方法,跨链的效率更高、普遍适用性和安全性也更强,可以满足未来所有区块链之间信息互通的需求。
进一步地,本申请实施例还提供了一种区块链的跨链设备,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行上述区块链的跨链方法的任一种实现方法。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行上述区块链的跨链方法的任一种实现方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如媒体网关等网络通信设备,等等)执行本申请各个实施例或者实施例的某些部分所述的方法。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (12)
1.一种区块链的跨链方法,其特征在于,包括:
接收跨链请求信息和证明信息;
利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法;
利用所述验证算法,验证所述跨链证明信息是否为真,并判断所述跨链请求信息是否为真;
当确认所述跨链证明信息为真且所述跨链请求信息为真时,实现与所述目标区块链之间的跨链;
其中,所述认证的认证规则包括:通过系统自带可信权威机构列表验证所述证书确实来自可信的权威认证机构;按照给定的地址,验证所述证书与证书认可交易中给出的待更新证书是否一致;下载该机构中提供的链B信息,与本地已知链B信息进行比较,验证二者是否一致。
2.根据权利要求1所述的方法,其特征在于,所述权威认证机构的区块链列表包含每条区块链的基本信息、证书和验证算法。
3.根据权利要求1所述的方法,其特征在于,所述利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法,包括:
判断所述权威认证机构的区块链列表中是否包含所述证明信息的证书;
若是,则根据所述证明信息的证书中的地址信息验证所述证明信息的证书是否为目标区块链的最新证书;
若是,则获取所述目标区块链的验证算法。
4.根据权利要求1所述的方法,其特征在于,所述接收跨链请求信息和第一证明信息之前,还包括:
储存并定期更新所述权威认证机构的中的区块链列表。
5.根据权利要求4所述的方法,其特征在于,所述储存并定期更新所述权威认证机构的中的区块链列表,包括:
通过将待更新的证书进行上链确认的方式,验证所述证书的真实性;
当所述待更新的证书成功上链时,将所述待更新的证书作为所述区块链列表中待认证区块链的最新证书。
6.一种区块链的跨链装置,其特征在于,包括:
接收单元,用于接收跨链请求信息和证明信息;
获取单元,用于利用权威认证机构的区块链列表对所述证明信息中的证书进行认证,并在认证通过后,根据认证结果获取目标区块链的验证算法;
验证单元,用于利用所述验证算法,验证所述跨链证明信息是否为真,并判断所述跨链请求信息是否为真;
确认单元,用于当确认所述跨链证明信息为真且所述跨链请求信息为真时,实现与所述目标区块链之间的跨链;
其中,所述验证算法包括:通过系统自带可信权威机构列表验证所述证书是否来自可信的权威认证机构;按照给定的地址,验证所述证书与证书认可交易中给出的待更新证书是否一致;下载该机构中提供的链B信息,与本地已知链B信息进行比较,验证二者是否一致。
7.根据权利要求6所述的装置,其特征在于,所述权威认证机构的区块链列表包含每条区块链的基本信息、证书和验证算法。
8.根据权利要求6所述的装置,其特征在于,所述获取单元包括:
判断子单元,用于判断所述权威认证机构的区块链列表中是否包含所述证明信息的证书;
第一验证子单元,用于若判断出所述权威认证机构的区块链列表中包含所述证明信息的证书,则根据所述证明信息的证书中的地址信息验证所述证明信息的证书是否为目标区块链的最新证书;
获取子单元,用于若根据所述证明信息的证书中的地址信息验证所述证明信息的证书是目标区块链的最新证书,则获取所述目标区块链的验证算法。
9.根据权利要求6所述的装置,其特征在于,所述装置还包括:
更新单元,用于储存并定期更新所述权威认证机构的中的区块链列表。
10.根据权利要求9所述的装置,其特征在于,所述更新单元包括:
第二验证子单元,用于通过将待更新的证书进行上链确认的方式,验证所述证书的真实性;
更新子单元,用于当所述待更新的证书成功上链时,将所述待更新的证书作为所述区块链列表中待认证区块链的最新证书。
11.一种区块链的跨链设备,其特征在于,包括:处理器、存储器、系统总线;
所述处理器以及所述存储器通过所述系统总线相连;
所述存储器用于存储一个或多个程序,所述一个或多个程序包括指令,所述指令当被所述处理器执行时使所述处理器执行权利要求1-5任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当所述指令在终端设备上运行时,使得所述终端设备执行权利要求1-5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181689.8A CN113408003B (zh) | 2020-03-16 | 2020-03-16 | 一种区块链的跨链方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010181689.8A CN113408003B (zh) | 2020-03-16 | 2020-03-16 | 一种区块链的跨链方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113408003A CN113408003A (zh) | 2021-09-17 |
CN113408003B true CN113408003B (zh) | 2022-11-04 |
Family
ID=77676418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010181689.8A Active CN113408003B (zh) | 2020-03-16 | 2020-03-16 | 一种区块链的跨链方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113408003B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
WO2019072272A2 (en) * | 2018-11-16 | 2019-04-18 | Alibaba Group Holding Limited | DOMAIN NAME MANAGEMENT SYSTEM FOR CHAIN INTERACTIONS IN BLOCK CHAIN SYSTEMS |
CN109743172A (zh) * | 2018-12-06 | 2019-05-10 | 国网山东省电力公司电力科学研究院 | 基于联盟区块链v2g网络跨域认证方法、信息数据处理终端 |
CN110661816A (zh) * | 2019-10-22 | 2020-01-07 | 北京印刷学院 | 一种基于区块链的跨域认证方法与电子设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11146380B2 (en) * | 2017-08-03 | 2021-10-12 | Parity Technologies Ltd. | Methods and systems for a heterogeneous multi-chain framework |
US11194837B2 (en) * | 2018-05-01 | 2021-12-07 | International Business Machines Corporation | Blockchain implementing cross-chain transactions |
-
2020
- 2020-03-16 CN CN202010181689.8A patent/CN113408003B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105719185A (zh) * | 2016-01-22 | 2016-06-29 | 杭州复杂美科技有限公司 | 区块链的数据对比及共识方法 |
WO2019072272A2 (en) * | 2018-11-16 | 2019-04-18 | Alibaba Group Holding Limited | DOMAIN NAME MANAGEMENT SYSTEM FOR CHAIN INTERACTIONS IN BLOCK CHAIN SYSTEMS |
CN109743172A (zh) * | 2018-12-06 | 2019-05-10 | 国网山东省电力公司电力科学研究院 | 基于联盟区块链v2g网络跨域认证方法、信息数据处理终端 |
CN110661816A (zh) * | 2019-10-22 | 2020-01-07 | 北京印刷学院 | 一种基于区块链的跨域认证方法与电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113408003A (zh) | 2021-09-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110933108B (zh) | 基于区块链网络的数据处理方法、装置、电子设备及存储介质 | |
Lin et al. | EBCPA: Efficient blockchain-based conditional privacy-preserving authentication for VANETs | |
CN102170352B (zh) | 使用具有温特尼茨单次签名的ecdsa的方法 | |
JP4665617B2 (ja) | メッセージ認証システム,メッセージ送信装置,メッセージ受信装置,メッセージ送信方法,メッセージ受信方法およびプログラム | |
WO2021047446A1 (zh) | 在区块链网络中更换身份证书的方法、装置、存储介质和计算机设备 | |
CN113328997B (zh) | 联盟链跨链系统及方法 | |
EP2747377B1 (en) | Trusted certificate authority to create certificates based on capabilities of processes | |
CN111262860A (zh) | 跨链模式下的身份认证方法及装置 | |
KR20200080441A (ko) | 사물인터넷 블록체인 환경에서의 디바이스 분산 인증 방법 및 이를 이용한 디바이스 분산 인증 시스템 | |
CN114731279A (zh) | 用于自动数字证书验证的方法和装置 | |
CN112311779B (zh) | 应用于区块链系统的数据访问控制方法及装置 | |
US20230403154A1 (en) | Verifier credential determination by a registrant | |
US20080127314A1 (en) | Identity management facilitating minimum disclosure of user data | |
CN114092092B (zh) | 基于门限签名的去中心化的数字证书管理系统及使用方法 | |
CN116975901A (zh) | 基于区块链的身份验证方法、装置、设备、介质及产品 | |
CN118174881A (zh) | 用于车辆自组织网络的数字签名验证方法 | |
US11399020B2 (en) | System and method for authenticating server identity during connection establishment with client machine | |
CN113408003B (zh) | 一种区块链的跨链方法及装置 | |
CN111369332A (zh) | 基于区块链的数据处理方法及装置 | |
Chen et al. | How to bind a TPM’s attestation keys with its endorsement key | |
JP4541740B2 (ja) | 認証用鍵の更新システム、および認証用鍵の更新方法 | |
KR101256114B1 (ko) | 다수의 mac검증서버에 의한 메시지인증코드 검증 방법 및 시스템 | |
JP2003198539A (ja) | 電子公証システム及び電子公証方法 | |
JP2019057827A (ja) | 分散認証システムおよびプログラム | |
CN113159774A (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 |