一种区块链跨链的方法及实现系统与流程

文档序号:17664126发布日期:2019-05-15 22:35阅读:481来源:国知局
一种区块链跨链的方法及实现系统与流程

本发明涉及一种区块链的跨链方法,尤其涉及一种在多区块链网络间进行数据跨链交互的方法。



背景技术:

区块链本质上是一种分布式的、多中心化的链式账本数据库,但是在区块链生态系统中,越来越多区块链网络的存在,产生了越来越多的“数据孤岛”。区块链跨链技术就是为了解决两个或多个不同区块链网络之间数据传递、转移、交换的问题。数据跨链不仅可以增加区块链网络的可拓展性,同时也可以降低区块链网络间数据共享的成本。

但是目前区块链跨链技术仍然处于发展阶段,也存在跨链吞吐量小、资源利用率低及响应时间慢的众多弊病。



技术实现要素:

为了克服上述现有技术的不足,本发明提供了一种区块链跨链的方法及实现系统。

本发明提供了一种区块链跨链的方法及实现系统,包括如下步骤。

s1、建立区块链网络中的本地主链,用于记录本地区块链的上链数据信息。

s2、建立本地与远程区块链网络间的跨链连接,用于本地与远程区块链网络之间做链上数据交互。

s3、建立本地缓存逻辑链,用于将远程区块链网络中的交互数据缓存到本地逻辑链中供分布式应用调用。

所述步骤s1中建立区块链网络中的本地主链,用于记录本地区块链的上链数据信息,具体包括以下步骤。

s11:采用逻辑链的方式在本地区块链网络中建立一条通道。

s12:将s11建立的通道标示为本地主链,用于记录本地区块链的上链数据信息。

所述步骤s2中建立本地与远程区块链网络间的跨链连接,用于本地与远程区块链网络之间做链上数据交互,具体包括以下步骤。

优选的,s21:本地区块链网络与远程区块链网络之间采用restapi的方式做跨链数据交互,双方各自建立跨链连接器(crosschainconnector,ccc),中间通过vpn进行网络连接。

可选的,通过rpc的方式做跨链数据交互,通过专线进行网络连接。

s22:本地区块链网络通过s21建立的跨链连接器将远程区块链网络中主链共享的区块链数据采用带保存点的增量查询的方式取回。

s23:本地区块链网络将s22取回的远程区块链网络中共享的主链数据缓存至本地区块链网络的逻辑链中。

s24:本地区块链网络负责向分布式应用汇总请求的链上数据。

所述步骤s3中建立本地缓存逻辑链,用于将远程区块链网络中的交互数据缓存到本地逻辑链中供分布式应用调用,具体包括以下步骤。

s31:在区块链网络的跨链对象之间分别建立本地缓存逻辑链。

s32:将s22步骤中取回的远程区块链数据与本地缓存逻辑链、本地主链中的数据取并集后返回给分布式应用程序。

所述本地逻辑链的缓存模块是通过跨链连接器获取数据,并将其缓存在本地的逻辑链中,便于以后的查询,同时减少每次交互的数据量。

本发明具有以下优点和有益效果:本发明提供了一种区块链跨链的方法及实现系统,这种跨链方法不仅能做跨链数据交互同时具有区块链数据的缓存功能,可以在完成区块链网络间数据互联互通的同时,提高区块链跨链查询的系统吞吐量、资源利用率及系统响应时间。

附图说明

图1为本发明提供的一种区块链跨链的方法及实现系统的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本实施例的附图中相同或相似的标号对应相同或相似的部件;在本发明的描述中,需要说明的是,除非另有说明,“多个”的含义是两个或两个以上;术语“上”、“下”、“左”、“右”、“内”、“外”、“前端”、“后端”、“头部”、“尾部”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于描述目的,而不能理解为指示或暗示相对重要性。

在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是硬连接,也可以是软连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可视具体情况理解上述术语在本发明中的具体含义。

下面结合附图1对本发明的实施例进一步说明。

如附图1所示是对本实施例提供的一种区块链跨链的方法及实现系统的结构示意图,包含3个区块链网络,其中本地区块链网络1和远程区块链网络2已经上链,图中还包含一个待加入的区块链网络3,通过以下实施例来说明区块链数据跨链的过程。

s1、建立区块链网络1和区块链网络2中的本地主链,用于记录本地区块链的上链数据信息。

s2、建立区块链网络1和区块链网络2间的跨链连接,用于本地与远程区块链网络之间做链上数据交互。

s3、建立区块链网络1和区块链网络2中的缓存逻辑链,用于将远程区块链网络中的交互数据缓存到本地逻辑链中供分布式应用调用。

所述步骤s1中建立区块链网络中的本地主链,用于记录本地区块链的上链数据信息,具体包括以下步骤。

s11:采用逻辑链的方式分别在区块链网络1和区块链网络2中建立一条通道。

s12:将s11建立的通道标示为区块链网络1和区块链网络2各自的本地主链。

所述步骤s2中建立区块链网络1和区块链网络2的跨链连接,用于区块链网络1和区块链网络2之间做链上数据交互,具体包括以下步骤。

s21:区块链网络1和区块链网络2之间分别采用restapi的方式做跨链数据交互,双方各自建立跨链连接器(crosschainconnector,ccc),中间通过vpn进行网络连接。

s22:区块链网络1通过s21建立的跨链连接器将区块链网络2中主链共享的区块链数据采用带保存点的增量查询的方式取回。

s23:区块链网络1将s22取回的区块链网络2中主链的数据缓存至区块链网络1的逻辑链中。

s24:区块链网络1负责向分布式应用汇总请求的链上数据。

所述步骤s3中建立本地缓存逻辑链,用于将区块链网络2中的交互数据缓存到本地逻辑链中供分布式应用调用,具体包括以下步骤。

s31:在区块链网络1和区块链网络2中分别建立本地缓存逻辑链。

s32:将s22步骤中取回的区块链网络2中的数据与本地缓存逻辑链、本地主链中的数据取并集。最后向分布式应用系统返回的结果应该是区块链网络1的主链、区块链网络1的逻辑链以及区块链网络2主链的增量查询的3个结果的并集。

最后说明的是:以上所述的实施例仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1