CN115021990A - 一种面向联盟链的通用异步跨链交易方法 - Google Patents
一种面向联盟链的通用异步跨链交易方法 Download PDFInfo
- Publication number
- CN115021990A CN115021990A CN202210582882.1A CN202210582882A CN115021990A CN 115021990 A CN115021990 A CN 115021990A CN 202210582882 A CN202210582882 A CN 202210582882A CN 115021990 A CN115021990 A CN 115021990A
- Authority
- CN
- China
- Prior art keywords
- chain
- cross
- verification
- primitive
- 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.)
- Granted
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/0861—Network architectures or network communication protocols for network security for authentication of entities using biometrical features, e.g. fingerprint, retina-scan
-
- 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/3226—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 using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种面向联盟链的通用异步跨链交易方法,包括以下步骤:当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求;对生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,若验证结果为验证成功且检查结果为可用,则生成跨链交易上链证明原语;对跨链交易上链证明原语进行加密生成原语密文并发送至侧链;侧链对原语密文进行解密生成跨链交易上链证明原语并验证跨链交易;若跨链交易验证通过,则产生侧链端跨链交易。本发明的交易方法打通了跨链交易的数据壁垒,提高了跨链交易的通用性及可用性。
Description
技术领域
本发明属于区块链技术领域,具体涉及一种面向联盟链的通用异步跨链交易方法。
背景技术
经过多年的快速发展,区块链技术作为推动信息互联网向价值互联网转变的核心技术,已经广泛应用于金融、供应链、电子政务等重点行业。然而,区块链呈现出布局碎片化、数据隔离化特点,且数据孤岛问题严重阻碍了信息交互与价值流转,没有发挥其应有的潜力。首先,区块链设计之初为了维护链内安全,并未考虑区块链和外部链交互问题。其次,不同领域的应用对区块链产生了定制化需求,从而导致了异构链的出现。因此研究通用的联盟链跨链方案成为了当务之急。
由于不同的区块链应用场景和设计理念的不同,采用的共识算法、智能合约、网络拓扑及底层数据结构都不尽相同,从而产生了大量数据孤岛。然而,打破这种数据壁垒进行跨链交互仍处于探究阶段。现有的跨链技术包含分布式私钥控制、侧链/中继、哈希时间锁定、公证人技术等,其中现有联盟链跨链方案中使用最多的是中继链或中继路由。侧链技术目前并没有在联盟链中的应用。在公链中,侧链现有实现方案,跨链证明及传输一笔跨链交易并不涉及身份管理及权限管理,导致现有侧链跨链模型通用性不高;适用范围小;且依赖简单验证支付证明。
BitXHub跨链平台由趣链公司于2019年发起并于2020年开源。BitXHub 项目注重通用跨链传输协议(InterBlockchain Transfer Protocol,IBTP)开发,通过在中继链部署交易验证引擎,结合交易验证规则注册机制,提供可插拔的跨链验证机制。百度公司于2020年推出可信跨链平台,支持在合约代码中使用“跨链原语”,让链与链轻松对接,特别关注跨链寻址协议及链名解析合约的开发,为不同链上的资源分配地址,实现不同区块链资源快速定位。微众公司于2020年发布Wecross跨链平台,该平台注重于通用的网络交互协议及统一的交互模式研究,提出异构链互联协议和通用中继链接口,实现主流区块链平台间的简单适配和快速连通。2021年,郑建辉等人提出了以中继链为核心思想,以链治链、多方共治的中继链来完成跨链。同年,陆羽跨链协议发布,该协议由国内多家机构联合发布,旨在成为一套灵活、统一、可靠的区块链互操协议。
现有的面向联盟链的侧链模型大都基于中继模型,然而通过中继路由或节点弱化跨链原语的作用,导致现有模型的通用性差等。现有的跨链交易模型目前存在以下问题:
(1)跨链交易证明依赖于SPV证明。现有跨链模型采用有中继模型,且采用SPV证明进行跨链交易证明。然而异构联盟链的实现对SPV证明的兼容性差,且大量采用SPV证明容易造成隐私泄露等问题。
(2)跨链模型依赖区块链底层平台、共识算法及链结构等。现有跨链模型主要采用接入跨链路由或跨链协议以适配异构的联盟链,跨链路由的实现限制了跨链模型的通用性。
发明内容
为了解决现有技术中存在的上述问题,本发明提供了一种面向联盟链的通用异步跨链交易方法。本发明要解决的技术问题通过以下技术方案实现:
一种面向联盟链的通用异步跨链交易方法,包括以下步骤:
当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求;
对所述生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,并生成验证结果和检查结果;
若所述验证结果为验证成功且所述检查结果为可用,则生成跨链交易上链证明原语;
对所述跨链交易上链证明原语进行加密生成原语密文并发送至侧链;
所述侧链对所述原语密文进行解密生成跨链交易上链证明原语并验证跨链交易;
若跨链交易验证通过,则产生侧链端跨链交易。
在本发明的一个实施例中,所述当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求,包括:
主链的区块监听组件对所述主链的区块中的交易进行解析并识别跨链交易,当主链内的交易为跨链交易时立即调用链上数据适配组件进行跨链交易数据适配;
所述链上数据适配组件根据跨链交易数据适配结果中的异构链的类型,向异构链接入适配组件发起相应的异构链适配请求;
当异构链接入适配组件判断所请求的异构链存在适配,且跨链交易数据有效后,进行目标链适配,并向链上数据适配组件返回相应的适配结果;
所述链上数据适配组件进行数据适配,向所述区块监听组件返回适配结果;
所述区块监听组件向跨链及验证组件提交生成跨链交易上链证明原语请求。
在本发明的一个实施例中,所述对所述生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,并生成验证结果和检查结果,包括:
所述跨链及验证组件对所述生成跨链交易上链证明原语请求进行验证;
验证通过后向侧链管理组件发起侧链验证请求;
所述侧链管理组件对侧链请求中的传输信息进行验证,并生成验证结果;
所述侧链管理组件检查侧链的证书是否可用,并生成检查结果。
在本发明的一个实施例中,所述若验证结果为验证成功且检查结果为可用,则生成跨链交易上链证明原语,包括:
若验证结果为验证成功且检查结果为可用,则所述跨链及验证组件向跨链原语组件发起执行生成跨链交易上链证明原语请求的请求;
所述跨链原语组件生成跨链交易上链证明原语并发送至跨链及验证组件。
在本发明的一个实施例中,所述对所述跨链交易上链证明原语进行加密生成原语密文并发送至侧链,包括:
所述跨链及验证组件向身份管理验证组件发起获取主链的跨链身份证书和加密证书的请求;
身份管理验证组件查询主链的跨链身份证书和加密证书,若跨链身份证书不存在,则为其生成跨链身份证书;
所述身份管理验证组件向跨链及验证组件返回对应请求的跨链身份证书和加密证书;
所述跨链及验证组件通过加密证书对所述跨链交易上链证明原语进行加密生成原语密文后所述跨链及验证组件通过所述跨链身份证书和加密证书向侧链发起连接并将所述原语密文发送至所述侧链的跨链及验证组件。
在本发明的一个实施例中,所述原语密文发送至所述侧链的跨链及验证组件时,所述侧链的区块监听组件循环执行监听。
在本发明的一个实施例中,所述侧链对所述原语密文进行解密生成跨链交易上链证明原语并验证跨链交易,若跨链交易验证通过,则产生侧链端跨链交易,包括:
所述侧链的跨链及验证组件向侧链的身份管理验证组件发起主链的证书验证请求,验证通过后通过主链的证书对所述原语密文进行解密生成所述跨链交易上链证明原语;
所述侧链的跨链及验证组件发起侧链身份验证请求、主链存在性验证请求和跨链交易上链证明原语的验证请求;
所述侧链分别执行验证并向所述侧链的跨链及验证组件返回对应的验证结果并对所述对应的验证结果进行检测验证;
检测验证通过后,所述侧链的跨链及验证组件发起侧链的交易;
所述侧链的区块监听组件监听到侧链的交易成功上链并向所述侧链的跨链及验证组件返回成功上链结果;
所述侧链的跨链及验证组件生成所述跨链交易上链证明原语并发送至主链的区块监听组件进行确认。
在本发明的一个实施例中,所述侧链的跨链及验证组件发起侧链身份验证请求、主链存在性验证请求和跨链交易上链证明原语的验证请求,包括:
所述侧链的跨链及验证组件向侧链的身份管理验证组件发起侧链身份验证请求;
所述侧链的跨链及验证组件向侧链的侧链管理组件发起主链存在性验证请求;
所述侧链的跨链及验证组件向侧链的跨链原语组件发起跨链交易上链证明原语的验证请求。
在本发明的一个实施例中,所述侧链分别执行验证并向所述侧链的跨链及验证组件返回对应的验证结果并对所述对应的验证结果进行检测验证,包括:
所述侧链的跨链原语组件、侧链管理组件和身份管理验证组件分别执行验证并分别向所述侧链的跨链及验证组件返回对应的验证结果;
所述侧链的跨链及验证组件对所述侧链的跨链原语组件、侧链管理组件和身份管理验证组件的验证结果进行检测验证。
在本发明的一个实施例中,所述侧链的跨链及验证组件向身份管理验证组件发起主链的证书验证请求,验证通过后通过主链的证书对所述原语密文进行解密生成所述跨链交易上链证明原语,之前还包括:
所述侧链的跨链及验证组件接收所述原语密文,并缓存至缓冲池;
所述侧链的跨链及验证组件调度所述原语密文进入解密步骤。
本发明的有益效果:
1、本发明的跨链交易上链证明原语能够证明跨链交易成功执行并上链,并且保证安全性、正确性。跨链交易上链证明原语中包含的交易是一笔跨链交易,且内容可验证、不可篡改。确保跨链交易上链证明原语生成时包含跨链交易成功上链。使用此类跨链原语将促进跨链模型之间通用交易证明,并且避免跨链交易证明过程中存在的安全性问题。
2、联盟链接入通用性:对于联盟链或私有链来说,为其引入新的身份管理机构并不影响原本的链安全。并且侧链管理模块与智能合约结合,耦合性低。跨链原语通用性:跨链交易上链证明原语与链结构、数据结构、共识算法进行解耦,具备通用可验证的特性。跨链模型通用性:对于联盟链来说,跨链交易的证明者及验证者都将结合智能合约进行执行。并且证明者及验证者将解耦区块链网络节点的身份,除去共识节点外一视同仁,增强了模型的通用性。
以下将结合附图及实施例对本发明做进一步详细说明。
附图说明
图1是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的流程示意图;
图2是本发明实施例提供的主链异步跨链交易监听模型图;
图3是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的跨链交互系统逻辑架构图。
图4是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的的区块链的跨链支持组件结构示意图;
图5是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的区块监听组件活动示意图;
图6是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的跨链及验证组件活动示意图;
图7是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的侧链异步跨链交易解析上链模型图;
图8是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的侧链活动示意图;
图9是本发明实施例提供的一种面向联盟链的通用异步跨链交易方法的交互过程示意图。
具体实施方式
下面结合具体实施例对本发明做进一步详细的描述,但本发明的实施方式不限于此。
实施例一
如图1所示,一种面向联盟链的通用异步跨链交易方法,包括以下步骤:
步骤10,当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求;
步骤20,对生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,并生成验证结果和检查结果;
步骤30,若验证结果为验证成功且检查结果为可用,则生成跨链交易上链证明原语;
步骤40,对跨链交易上链证明原语进行加密生成原语密文并发送至侧链;
步骤50,侧链对原语密文进行解密生成跨链交易上链证明原语并验证跨链交易;
步骤60,若跨链交易验证通过,则产生侧链端跨链交易。
本实施例中,跨链交易上链证明原语能够证明跨链交易成功执行并上链,并且保证安全性、正确性。跨链交易上链证明原语中包含的交易是一笔跨链交易,且内容可验证、不可篡改。确保跨链交易上链证明原语生成时包含跨链交易成功上链。使用此类跨链原语将促进跨链模型之间通用交易证明,并且避免跨链交易证明过程中存在的安全性问题。
对于联盟链或私有链来说,为其引入新的身份管理机构并不影响原本的链安全。并且侧链管理模块与智能合约结合,耦合性低。跨链原语通用性:跨链交易上链证明原语与链结构、数据结构、共识算法进行解耦,具备通用可验证的特性。跨链模型通用性:对于联盟链来说,跨链交易的证明者及验证者都将结合智能合约进行执行。并且证明者及验证者将解耦区块链网络节点的身份,除去共识节点外一视同仁,增强了模型的通用性。
实施例二
如图2所示,首先,构建主链可信交易上链机制。在联盟链中,交易是作为提案进行提交的。在对比了不同的联盟链之后,将交易的执行过程分为以下几个步骤:1)由用户发起交易。用户可以使用SDK发起,或者手动通过命令行工具发起。2)由区块链节点对交易提案达成共识。对于一些特殊的区块链,可能存在前置步骤,但并不影响交易最终达成共识。3)交易广播上链。每个区块链节点将打包的区块添加进自己所持有的链。因此,对于任何联盟链,在节点达成共识之后,都存在将区块广播至其他节点或将区块直接附加进当前节点所持有的区块链的过程。考虑到这种共同点,可以在区块链网络中所有节点进行区块广播同步的同时进行交易识别以及跨链交易上链证明原语生成。
其次,设计异步交易无感知识别机制,如图2所示,跨链交易和链内普通交易两种交易可以混合在同一个区块里。对于普通的同步节点来说,会将所有的交易当成普通交易进行验证,验证通过后会将该区块同步到本地链上。对于视图节点,节点内部将会运行n(n≥1)个区块监听者,这些区块监听者异步对区块中的交易进行监听。区块将由随机分配队列分发给一些监听者,监听者通过交易即可识别所要传输的侧链的信息。在网络层做出这样的改进之后,保证了区块内交易的异步识别,以及异步识别机制,为后续视图节点生成跨链原语,以及跨链异步传输提供了保障。
最后,在图3中,异步监听者作为视图节点的子模块运行,视图节点作为区块链网络中的节点参与账本维护,但是不参与共识和交易,仅进行区块同步。在监听到跨链交易后,视图节点会收集充足的跨链交易信息,然后在智能合约保障的前提下,执行原语生成算法。由视图节点之间协商生成跨链交易上链证明原语。
如图3所示,本发明实施例提供的异步跨链交易方法的跨链交互系统逻辑架构图。该系统的架构包括:
数据层:区块链中的非共识节点,都会存储区块链的副本,并且每个节点都将会去维护一个CouchDB数据库实例作为状态数据库。该数据库存储整个区块链的世界状态。而账本作为两者的统一体,是数据层对整个区块链系统上层提供的抽象概念。
网络层:将节点划分为三种类型:共识节点、提交节点、同步节点。共识节点,顾名思义,就是用来达成分布式一致性的节点;提交节点,即用户可以向该类节点提交交易提案,由他们发起交易,调用共识服务;同步节点,即共识完成并打包出区块之后,将验证通过的区块进行全网同步。
合约层:针对异构的联盟链,可以将智能合约分为两类,系统智能合约及普通应用智能合约。系统智能合约是区块链为了维护内部系统稳定而存在的智能合约。普通应用智能合约则和用户业务紧密结合,但是这类智能合约并不能进行跨链。所以系统实现组件中引入了跨链适配合约,该合约为普通应用智能合约提供相关跨链支持。普通的应用合约只需要通过适配智能合约进行相关升级适配,即可完成跨链功能的无缝引入。其次,合约层还引入了特殊的合约,即跨链管理合约,该合约主要对侧链进行管理。用户/应用调用侧链管理合约需要以管理员身份接入才可以,如果是普通用户进行调用的话,会调用失败。
其中,上述的逻辑架构适用于任意共识算法的区块链。
如图4所示,跨链支持组件包括:异构链接入适配组件、跨链及验证组件、身份管理验证组件、区块监听组件、跨链原语调度组件、适配合约管理组件、链上数据适配组件、侧链管理组件和跨链原语组件。
如图5、图6、图7和图8所示,一种面向联盟链的通用异步跨链交易方法,包括以下步骤:
步骤201,主链的区块监听组件对主链的区块中的交易进行解析并识别跨链交易,当主链内的交易为跨链交易时立即调用链上数据适配组件进行跨链交易数据适配。其中,链上数据指和智能合约耦合并作为世界状态的数据。这些数据也与区块链平台高度耦合,故需要链上数据适配组件进行数据的适配。
其中,在本步骤之前通过共识节点网络进行区块同步。
步骤202,链上数据适配组件根据跨链交易数据适配结果中的异构链的类型,向异构链接入适配组件发起相应的异构链适配请求。
步骤203,当异构链接入适配组件判断所请求的异构链存在适配,且跨链交易数据有效后,进行目标链适配,并向链上数据适配组件返回相应的适配结果。
步骤204,链上数据适配组件进行数据适配,并向区块监听组件返回适配结果;
步骤205,区块监听组件向跨链及验证组件提交生成跨链交易上链证明原语请求。
步骤206,跨链及验证组件对生成跨链交易上链证明原语请求进行验证;
步骤207,验证通过后向侧链管理组件发起侧链验证请求;
步骤208,侧链管理组件对侧链请求中的传输信息进行验证,并生成验证结果,向跨链及验证组件返回验证结果。其中,传输信息包括:侧链的 ip、端口以及链标识等,传输信息的验证包括侧链的ip及端口的可用性验证,链标识的验证等侧链的相关信息的验证。
侧链管理组件检查侧链的证书是否可用,并生成检查结果并向跨链及验证组件返回检查结果。
步骤209,若验证结果为验证成功且检查结果为可用,则跨链及验证组件向跨链原语组件发起执行生成跨链交易上链证明原语请求的请求。
步骤210,跨链原语组件生成跨链交易上链证明原语。其中,在生成跨链交易上链证明原语后可以对跨链交易上链证明原语进行封装,生成可验证语言,也即是将跨链交易上链证明原语封装成可以传输的格式。
步骤211,跨链原语组件向跨链及验证组件返回跨链交易上链证明原语。相应地,跨链原语组件向跨链及验证组件返回的是该可验证语言。
步骤212,跨链及验证组件向身份管理验证组件发起获取主链的跨链身份证书和加密证书的请求。
步骤213,身份管理验证组件查询主链的跨链身份证书和加密证书,若跨链身份证书不存在,则为其生成跨链身份证书。
步骤214,身份管理验证组件向跨链及验证组件返回对应请求的跨链身份证书和加密证书。
步骤215,跨链及验证组件通过加密证书对跨链交易上链证明原语进行加密生成原语密文后跨链及验证组件通过跨链身份证书和加密证书向侧链发起连接并将原语密文发送至侧链的跨链及验证组件。
其中,原语密文发送至侧链的跨链及验证组件时,侧链的区块监听组件循环执行监听。步骤201-步骤215均在主链端执行。
侧链的跨链及验证组件接收到原语密文之后,将原语密文缓存至缓冲池,然后侧链的跨链及验证组件调度跨链交易上链证明原语进入解密步骤 216。
需要说明的是,如图7所示,首先,跨链交易上链证明原语无法伪造及不可篡改是保证跨链交易正确解析的前提,异步跨链交易解析机制是侧链端跨链交易上链的基础保障。如图3和图7所示,当原语密文异步传输至侧链后,侧链将使用异步链外传输缓冲池保存所有发送至本链的原语密文。采用缓冲池机制保证了异步传输中的异步顺序性,当视图节点观察到缓冲池内存在原语密文后,则启动调度者对缓冲池中的原语密文进行调度。调度是视图节点使用调度算法解析不同的原语密文的过程。当调度者从原语密文中解析出跨链交易后,会从网络中随机挑选提交节点提交侧链端交易。
对于侧链的普通用户来说,在这个时候进行普通交易并不会有什么影响。对于提交节点来说,无论是普通交易还是跨链交易,都将提交给共识节点网络达成共识一致。对于共识节点来说,跨链交易被看作普通交易,因此跨链交易和普通交易进行混杂排序共识。最终该区块将同步给区块链网络中的所有节点,包括提交节点、同步节点、视图节点等。
步骤216,侧链的跨链及验证组件向侧链的身份管理验证组件发起主链的证书验证请求,验证通过后通过主链的证书对原语密文进行解密生成跨链交易上链证明原语。本步骤图中未示出。
步骤217,侧链的跨链及验证组件向侧链的身份管理验证组件发起侧链身份验证请求。
步骤218,侧链的跨链及验证组件向侧链的侧链管理组件发起主链存在性验证请求。
步骤219,侧链的跨链及验证组件向侧链的跨链原语组件发起跨链交易上链证明原语的验证请求。
步骤220,侧链的跨链原语组件、侧链管理组件和身份管理验证组件分别执行验证。
步骤221,侧链的跨链原语组件、侧链管理组件和身份管理验证组件执行验证完成后分别向侧链的跨链及验证组件返回对应的验证结果。
步骤222,侧链的跨链及验证组件对侧链的跨链原语组件、侧链管理组件和身份管理验证组件的验证结果进行检测验证。
步骤223,检测验证通过后,侧链的跨链及验证组件发起侧链的交易。跨链及验证组件根据主链所提交的交易发起侧链端交易。
步骤224,侧链的区块监听组件监听到侧链的交易成功上链并向侧链的跨链及验证组件返回成功上链结果。
步骤225,侧链的跨链及验证组件生成跨链交易上链证明原语并发送至主链的区块监听组件进行确认。步骤225在图中未示出。
实施例三
在实施例二的基础上,步骤50还可以具体执行为侧链通过其子CA对原语密文进行解密生成跨链交易上链证明原语并验证数据可用性;子CA 主动附加到根CA,加入认证体系,需要加入跨链网络的区块链之间的根 CA互相认证。其中,在区块链内可以为每条链增加链内的子CA,链间认证通过子CA颁发证书,并由所述侧链管理组件对证书进行验证以识别证书是否有效。
相应地,步骤208中的侧链管理组件检查侧链的证书是否可用,并生成检查结果并向跨链及验证组件返回检查结果可以执行为侧链管理组件通过主链的子CA检查侧链的证书是否可用,并生成检查结果并向跨链及验证组件返回检查结果。
需要说明的是,现有技术中,异构区块链之间的身份管理及验证机制存在相互隔离。异构联盟链之间采用不同的身份管理及验证方案,彼此之间相互独立且隔离,导致现有跨链模型缺乏通用性,跨链模型扩展性不强,存在信任危机等问题。
而在本实施例中,身份接入机制为:针对链内:为每条链引入链内子 CA,进行统一的链身份管理。链间认证通过此子CA颁发证书,并由侧链管理组件对证书进行验证以识别证书是否有效。针对链间:为每条链新引入的子CA引入父级CA,需要加入跨链网络的链之间的根CA互相认证。通过互相颁发证书,添加信任,以使整个网络对该链的证书取得信任,新的链接入必须由多个CA管理员同意。为每条链引入身份识别与验证方案,链内及链间身份管理及接入具备通用接入性,以及易管理等特点。
具体地,如图9所示,首先,每一条联盟链都有自己的身份认证机制,并且整体呈现分布式结构。而实施例所提出的交易方法将原有身份认证机制保留的同时,为其引入了新的CA(Certificate Authority,证书机构),以链A为例,若其本身存在身份管理CA,就为其引入新的根CA,其本身存的身份管理CA为子CA,根CA和子CA两者以父子关系存在。若其本身不存在身份管理CA,则为其引入新的子CA和根CA,根CA和子CA两者以父子关系存在。针对所有的根CA,他们之间互颁证书进行认证。认证成功之后,每一个区块链主体的子CA将为本链提供身份认证服务,被本证书体系下区块链主体所验证通过。
其次,对在不同根CA下的联盟链跨链传输,如图9所示,以链A和链B 为例,假设链A内部发起了跨链交易,随后触发跨链交易上链证明原语生成机制。该机制首先调用侧链管理服务进行跨链信息获取和验证,其次调用身份管理验证服务进行证书获取和可用性验证,验证通过后生成了跨链交易上链证明原语,随后使用该证书所在证书链对跨链交易上链证明原语进行加密生成原语密文,最后使用证书发起SSL连接并将原语密文发送至链B。链B拿到原语密文之后,通过证书验证链A的原语密文并进行解密,随后即可获取到该跨链原语。整个过程保证根CA是可信的。值得注意的是根CA 进行了互认证。
综上所述,本发明的面向联盟链的通用异步跨链交易方法基于现有链身份管理提出接入到通用跨链模型方案,提出基于侧链的通用异步跨链交易方法;提出基于侧链的通用跨链交易方法所使用的跨链交易上链证明原语功能;提出通用跨链方案主链模型及侧链模型;
进一步地,跨链交易上链证明原语的功能定义包含:
1、证明跨链交易成功执行并上链,并且跨链交易上链证明原语保证安全性、正确性。
2、证明原语中包含的交易是一笔跨链交易,且内容可验证、不可篡改。
3、确保原语生成时包含跨链交易成功上链。
进一步地,主链跨链模型包含:
主链可信交易上链机制:任何联盟链中的交易都将分为一下几个步骤:用户发起跨链交易;区块链节点对交易达成共识;区块上链。区块广播同步上链的过程是所有联盟链的共同过程,所以此时进行跨链交易上链证明原语生成,并且需确保生成跨链交易上链证明原语后区块已经成功附加上链。
异步交易无感知机制:跨链交易和链内普通交易混合共存。普通交易与跨链交易均可由证明者识别并作为跨链交易上链证明原语生成算法的输入。同样的,交易是可以异步执行,并且被证明者异步识别。
进一步地,侧链跨链模型包括:
第一步,异步接收跨链交易上链证明原语并缓存至原语缓冲池。
第二步,调度者异步调度跨链交易上链证明原语进行验证正确性及跨链交易。
第三步,对于验证通过的跨链交易上链证明原语生成目的端交易并提交至账本。
本发明的面向联盟链的通用异步跨链交易方法设计通用的身份验证及管理方案,方案打通异构联盟链之间的身份无感知接入及跨链身份验证。打通异构链之间身份管理机制是通用跨链模型的重要基石。
本发明提出通用的跨链交易上链证明原语算法需要实现的功能。使用此类跨链交易上链证明原语将促进跨链模型之间通用交易证明,并且避免跨链交易证明过程中存在的安全性问题。
本发明设计基于侧链思想的通用跨链模型,充分对比异构链的异同,对区块链节点抽象出不同的类型,并为跨链模型引入新的区块链功能角色视图节点。提高跨链模型的通用性及可用性。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征之“上”或之“下”可以包括第一和第二特征直接接触,也可以包括第一和第二特征不是直接接触而是通过它们之间的另外的特征接触。而且,第一特征在第二特征“之上”、“上方”和“上面”包括第一特征在第二特征正上方和斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”包括第一特征在第二特征正下方和斜下方,或仅仅表示第一特征水平高度小于第二特征。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域的技术人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (10)
1.一种面向联盟链的通用异步跨链交易方法,其特征在于,包括以下步骤:
当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求;
对所述生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,并生成验证结果和检查结果;
若所述验证结果为验证成功且所述检查结果为可用,则生成跨链交易上链证明原语;
对所述跨链交易上链证明原语进行加密生成原语密文并发送至侧链;
所述侧链对所述原语密文进行解密生成跨链交易上链证明原语并验证跨链交易;
若跨链交易验证通过,则产生侧链端跨链交易。
2.根据权利要求1所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述当主链内的交易为跨链交易时,提交生成跨链交易上链证明原语请求,包括:
主链的区块监听组件对所述主链的区块中的交易进行解析并识别跨链交易,当主链内的交易为跨链交易时立即调用链上数据适配组件进行跨链交易数据适配;
所述链上数据适配组件根据跨链交易数据适配结果中的异构链的类型,向异构链接入适配组件发起相应的异构链适配请求;
当异构链接入适配组件判断所请求的异构链存在适配,且跨链交易数据有效后,进行目标链适配,并向链上数据适配组件返回相应的适配结果;
所述链上数据适配组件进行数据适配,向所述区块监听组件返回适配结果;
所述区块监听组件向跨链及验证组件提交生成跨链交易上链证明原语请求。
3.根据权利要求2所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述对所述生成跨链交易上链证明原语请求进行验证,验证通过后对侧链的传输信息进行验证,检查侧链的证书是否可用,并生成验证结果和检查结果,包括:
所述跨链及验证组件对所述生成跨链交易上链证明原语请求进行验证;
验证通过后向侧链管理组件发起侧链验证请求;
所述侧链管理组件对侧链请求中的传输信息进行验证,并生成验证结果;
所述侧链管理组件检查侧链的证书是否可用,并生成检查结果。
4.根据权利要求3所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述若验证结果为验证成功且检查结果为可用,则生成跨链交易上链证明原语,包括:
若验证结果为验证成功且检查结果为可用,则所述跨链及验证组件向跨链原语组件发起执行生成跨链交易上链证明原语请求的请求;
所述跨链原语组件生成跨链交易上链证明原语并发送至跨链及验证组件。
5.根据权利要求4所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述对所述跨链交易上链证明原语进行加密生成原语密文并发送至侧链,包括:
所述跨链及验证组件向身份管理验证组件发起获取主链的跨链身份证书和加密证书的请求;
身份管理验证组件查询主链的跨链身份证书和加密证书,若跨链身份证书不存在,则为其生成跨链身份证书;
所述身份管理验证组件向跨链及验证组件返回对应请求的跨链身份证书和加密证书;
所述跨链及验证组件通过加密证书对所述跨链交易上链证明原语进行加密生成原语密文后所述跨链及验证组件通过所述跨链身份证书和加密证书向侧链发起连接并将所述原语密文发送至所述侧链的跨链及验证组件。
6.根据权利要求5所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述原语密文发送至所述侧链的跨链及验证组件时,所述侧链的区块监听组件循环执行监听。
7.根据权利要求6所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述侧链对所述原语密文进行解密生成跨链交易上链证明原语并验证跨链交易,若跨链交易验证通过,则产生侧链端跨链交易,包括:
所述侧链的跨链及验证组件向侧链的身份管理验证组件发起主链的证书验证请求,验证通过后通过主链的证书对所述原语密文进行解密生成所述跨链交易上链证明原语;
所述侧链的跨链及验证组件发起侧链身份验证请求、主链存在性验证请求和跨链交易上链证明原语的验证请求;
所述侧链分别执行验证并向所述侧链的跨链及验证组件返回对应的验证结果并对所述对应的验证结果进行检测验证;
检测验证通过后,所述侧链的跨链及验证组件发起侧链的交易;
所述侧链的区块监听组件监听到侧链的交易成功上链并向所述侧链的跨链及验证组件返回成功上链结果;
所述侧链的跨链及验证组件生成所述跨链交易上链证明原语并发送至主链的区块监听组件进行确认。
8.根据权利要求7所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述侧链的跨链及验证组件发起侧链身份验证请求、主链存在性验证请求和跨链交易上链证明原语的验证请求,包括:
所述侧链的跨链及验证组件向侧链的身份管理验证组件发起侧链身份验证请求;
所述侧链的跨链及验证组件向侧链的侧链管理组件发起主链存在性验证请求;
所述侧链的跨链及验证组件向侧链的跨链原语组件发起跨链交易上链证明原语的验证请求。
9.根据权利要求8所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述侧链分别执行验证并向所述侧链的跨链及验证组件返回对应的验证结果并对所述对应的验证结果进行检测验证,包括:
所述侧链的跨链原语组件、侧链管理组件和身份管理验证组件分别执行验证并分别向所述侧链的跨链及验证组件返回对应的验证结果;
所述侧链的跨链及验证组件对所述侧链的跨链原语组件、侧链管理组件和身份管理验证组件的验证结果进行检测验证。
10.根据权利要求7所述的一种面向联盟链的通用异步跨链交易方法,其特征在于,所述侧链的跨链及验证组件向身份管理验证组件发起主链的证书验证请求,验证通过后通过主链的证书对所述原语密文进行解密生成所述跨链交易上链证明原语,之前还包括:
所述侧链的跨链及验证组件接收所述原语密文,并缓存至缓冲池;
所述侧链的跨链及验证组件调度所述原语密文进入解密步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210582882.1A CN115021990B (zh) | 2022-05-26 | 2022-05-26 | 一种面向联盟链的通用异步跨链交易方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210582882.1A CN115021990B (zh) | 2022-05-26 | 2022-05-26 | 一种面向联盟链的通用异步跨链交易方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115021990A true CN115021990A (zh) | 2022-09-06 |
CN115021990B CN115021990B (zh) | 2023-06-23 |
Family
ID=83070787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210582882.1A Active CN115021990B (zh) | 2022-05-26 | 2022-05-26 | 一种面向联盟链的通用异步跨链交易方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115021990B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876618A (zh) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | 一种交换区块链系统及相应的通用区块链互操作方法和网络 |
CN111399993A (zh) * | 2020-03-25 | 2020-07-10 | 百度国际科技(深圳)有限公司 | 一种关联事务请求的跨链实现方法、装置、设备和介质 |
CN112508563A (zh) * | 2020-12-01 | 2021-03-16 | 浙商银行股份有限公司 | 跨链交易可信验证方法、装置及计算机设备 |
CN113556234A (zh) * | 2021-07-21 | 2021-10-26 | 永旗(北京)科技有限公司 | 一种区块链跨链通信方法及系统 |
-
2022
- 2022-05-26 CN CN202210582882.1A patent/CN115021990B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108876618A (zh) * | 2018-06-15 | 2018-11-23 | 浙江华信区块链科技服务有限公司 | 一种交换区块链系统及相应的通用区块链互操作方法和网络 |
CN111399993A (zh) * | 2020-03-25 | 2020-07-10 | 百度国际科技(深圳)有限公司 | 一种关联事务请求的跨链实现方法、装置、设备和介质 |
CN112508563A (zh) * | 2020-12-01 | 2021-03-16 | 浙商银行股份有限公司 | 跨链交易可信验证方法、装置及计算机设备 |
CN113556234A (zh) * | 2021-07-21 | 2021-10-26 | 永旗(北京)科技有限公司 | 一种区块链跨链通信方法及系统 |
Non-Patent Citations (4)
Title |
---|
WENQI WANG,ET AL: "Efficient Cross-chain Transaction Processing on Blockchains" * |
程晨;张毅;宁晓静;杨奕;: "国外区块链研究主题及展望", 电子政务, no. 06 * |
董学文等: "支持冷启动用户推荐的区块链服务发布方案", vol. 42, no. 1 * |
马诗洋等: "区块链共识窗口下Web服务兼容性评价方法", vol. 10, no. 5 * |
Also Published As
Publication number | Publication date |
---|---|
CN115021990B (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112994892B (zh) | 跨链交互方法、装置、系统和电子设备 | |
CN109617698B (zh) | 发放数字证书的方法、数字证书颁发中心和介质 | |
CN112003889B (zh) | 分布式跨链系统及跨链信息交互与系统访问控制方法 | |
JP4993733B2 (ja) | 暗号クライアント装置、暗号パッケージ配信システム、暗号コンテナ配信システム及び暗号管理サーバ装置 | |
US6895501B1 (en) | Method and apparatus for distributing, interpreting, and storing heterogeneous certificates in a homogenous public key infrastructure | |
CN101355557B (zh) | 在mpls/vpn网络中实现网络接入控制的方法及系统 | |
CN101534192B (zh) | 一种提供跨域令牌的系统和方法 | |
US20100154040A1 (en) | Method, apparatus and system for distributed delegation and verification | |
CN113507458A (zh) | 一种基于区块链的跨域身份认证方法 | |
CN108696348A (zh) | 一种实现ca互信的方法、装置、系统和电子设备 | |
CN112446050B (zh) | 应用于区块链系统的业务数据处理方法及装置 | |
CN112118231B (zh) | 一种基于区块链技术的可信身份管理方法 | |
CN112926983A (zh) | 一种基于区块链的存证交易加密系统及方法 | |
Liou et al. | T-auth: A novel authentication mechanism for the IoT based on smart contracts and PUFs | |
CN113328854A (zh) | 基于区块链的业务处理方法及系统 | |
CN116761148A (zh) | 一种基于区块链的v2x身份管理系统及认证方法 | |
CN115021990B (zh) | 一种面向联盟链的通用异步跨链交易方法 | |
CN115913647A (zh) | 基于区块链的跨域设备访问控制策略强制实施方法及装置 | |
EP4252384B1 (en) | Methods, devices and system related to a distributed ledger and user identity attribute | |
CN116186786A (zh) | 基于区块链的业务处理方法、装置、电子设备和可读介质 | |
CN113450119A (zh) | 一种目录区块链联合可信中继器的跨链对接方法及系统 | |
CN109598114B (zh) | 跨平台统一用户账户管理方法及系统 | |
CN112508703A (zh) | 一种同构公有链价值交换方法 | |
CN116708463B (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
CN116566698B (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 |