CN111914021A - 一种跨区块链的交互方法、系统、计算机设备及存储介质 - Google Patents
一种跨区块链的交互方法、系统、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111914021A CN111914021A CN202010625551.2A CN202010625551A CN111914021A CN 111914021 A CN111914021 A CN 111914021A CN 202010625551 A CN202010625551 A CN 202010625551A CN 111914021 A CN111914021 A CN 111914021A
- Authority
- CN
- China
- Prior art keywords
- target
- event
- block
- chain
- interaction
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2255—Hash tables
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Computing Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种跨区块链的交互方法、系统、计算机设备及存储介质,应用于跨区块链的交互系统,该系统包括第一区块链和至少一个第二区块链,第一区块链对应有第一交互服务端和第一交互客户端,至少一个第二区块链加载有该第一交互客户端,该方法包括:第一交互服务端监听第一区块链的链上事件;在监听到链上事件时,根据至少一个第二区块链的事件注册记录确定注册该链上事件的目标第二区块链;确定该链上事件对应的交易证明信息,将该交易证明信息发送给目标第二区块链加载的第一交互客户端;该目标第二区块链加载的第一交互客户端根据交易证明信息进行验证,在验证通过后向目标第二区块链发送上链信息。本发明提高了区块链间的跨链互通效率。
Description
技术领域
本发明涉及区块链技术领域,特别涉及一种跨区块链的交互方法、系统、计算机设备及存储介质。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
目前由于区块链平台技术的异构特性,区块链之间的互联互通存在诸多障碍,相关技术中针对数字资产的跨链转移场景,提出的跨链技术主要涉及公证人机制、中继、侧链、哈希锁定以及分布式密钥等,但是这些跨链技术应用于无数字资产转移的跨链互通场景来说,使得整个跨链互通过程变得过于复杂,降低了无数字资产转移的区块链之间的跨链互通效率。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种跨区块链的交互方法、系统、计算机设备及存储介质。所述技术方案如下:
一方面,提供了一种跨区块链的交互方法,应用于跨区块链的交互系统,所述系统包括第一区块链和至少一个第二区块链,所述第一区块链对应有第一交互服务端和第一交互客户端,所述至少一个第二区块链加载有所述第一区块链对应的所述第一交互客户端,所述方法包括:
所述第一交互服务端监听所述第一区块链的链上事件;所述链上事件是调用所述第一区块链的智能合约时触发的事件;
所述第一交互服务端在监听到所述链上事件时,根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链;
所述第一交互服务端确定所述链上事件对应的交易证明信息,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希;
所述第一交互服务端将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端;
所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过后向所述目标第二区块链发送上链信息。
可选的,所述方法还包括:
所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送事件注册请求;所述事件注册请求包括事件属性信息,所述事件属性信息包括第一智能合约地址、第一事件哈希、起始区块高度和终止区块高度;
所述第一交互服务端根据所述至少一个第二区块链的事件注册请求,生成所述事件注册记录。
可选的,所述第一交互服务端根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链包括:
所述第一交互服务端获取所述链上事件对应的目标事件属性信息,所述目标属性信息包括目标智能合约地址、目标事件哈希和目标区块高度;
所述第一交互服务端将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链。
可选的,在所述第一交互服务端将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链之后,所述方法还包括:
所述第一交互服务端获取所述事件注册记录中所述目标第二区块链对应事件属性信息中的起始区块高度和终止区块高度,得到第一起始区块高度和第一终止区块高度;
所述第一交互服务端根据所述目标区块高度,以及所述第一起始区块高度和第一终止区块高度,确定历史区块高度;
所述第一交互服务端根据所述历史区块高度获取历史交易证明信息,并将所述历史交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
可选的,在所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送事件注册请求之前,所述方法还包括:
所述第一交互服务端为所述至少一个第二区块链分配连接标识;
所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送连接创建请求,所述连接创建请求携带所述连接标识;
所述第一交互服务端对所述连接创建请求中的连接标识进行有效性验证;
若所述有效性验证通过,则所述第一交互服务端与发送所述连接创建请求的第一交互客户端建立Websocket连接通道;
相应的,所述第一交互服务端将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端包括:
所述第一交互服务端通过所述Websocket连接通道将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
可选的,所述方法还包括:
所述至少一个第二区块链加载的所述第一交互客户端按照第一预设时间间隔向所述第一交互服务端发送心跳包;
若所述至少一个第二区块链加载的所述第一交互客户端在第二预设时间间隔内未收到所述第一交互服务端返回的心跳应答,则与所述第一交互服务端重新建立所述Websocket连接通道。
可选的,所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证包括:
所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息确定所述交易的哈希值;根据所述交易的哈希值和所述目标默克尔树路径,确定第一默克尔树根哈希;判断所述第一默克尔树根哈希与所述目标默克尔树根哈希是否一致;若一致,则确定验证通过。
另一方面,提供了一种跨区块链的交互系统,包括第一区块链和至少一个第二区块链,所述第一区块链对应有第一交互服务端和第一交互客户端,所述至少一个第二区块链加载有所述第一区块链对应的所述第一交互客户端;
所述第一交互服务端,用于监听所述第一区块链的链上事件;所述链上事件是调用所述第一区块链的智能合约时触发的事件;在监听到所述链上事件时,根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链;确定所述链上事件对应的交易证明信息,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希;将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端;
所述目标第二区块链加载的所述第一交互客户端,用于根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过时向所述目标第二区块链发送上链信息。
另一方面,提供了一种计算机设备,包括处理器和存储器,所述存储器中存储有至少一条指令或至少一段程序,所述至少一条指令或者所述至少一段程序由所述处理器加载并执行以实现上述跨区块链的交互方法。
另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令或者至少一段程序,所述至少一条指令或者所述至少一段程序由处理器加载并执行以实现如上述的跨区块链的交互方法。
本发明实施例的交互系统中第一区块链对应有第一交互服务端和第一交互客户端,至少一个第二区块链加载有该第一区块链对应的第一交互客户端,通过第一交互服务端监听第一区块链的链上事件,并在监听到链上事件时根据至少一个第二区块链的事件注册记录确定注册该链上事件的目标第二区块链,进而确定链上事件对应的交易证明信息,将该交易证明信息发送给该目标第二区块链加载的第一交互客户端,该目标第二区块链加载的第一交互客户端根据交易证明信息中交易基础信息、目标默克尔树路径和目标默克尔根哈希进行验证,并在验证通过后向该目标第二区块链发送上链信息,从而实现了无数字资产转移的跨链交互,在该跨链交互过程中不用关心各区块链底层采用何种技术以及意共识算法是否一致,完全屏蔽了异构区块链的底层技术细节,简化了跨链互通过程,提高了无数字资产转移的区块链之间的跨链互通效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种跨区块链的交互系统的架构示意图;
图1b是本发明实施例提供的一种跨区块链的交互系统的架构示意图;
图2是本发明实施例提供的一种区块链的可选结构示意图;
图3是本发明实施例提供的一种默克尔树的可选示例;
图4是本发明实施例提供的一种跨区块链的交互方法的流程示意图;
图5是本发明实施例提供的另一种跨区块链的交互方法的流程示意图;
图6a是本发明实施例提供的一种Websocket服务端模块的可选结构示意图;
图6b是本发明实施例提供的一种Websocket客户端模块的可选结构示意图;
图7是本发明实施例提供的一种计算机设备的硬件结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1a,其所示为本发明实施例提供的一种跨区块链的交互系统的架构示意图,该跨区块链的交互系统(以下简称为交互系统)100包括第一区块链110和至少一个第二区块链120,其中,第一区块链110对应有第一交互服务端111和第一交互客户端112,至少一个第二区块链120加载有该第一区块链110对应的第一交互客户端112。
需要说明的是,本说明书实施例中第一区块链代表交互中发送链上消息的一方,第二区块链代表交互中接收链上消息的一方,而实际应用中,区块链之间进行互通时接收消息与发送消息的地位是可以改变的。因此在图1a的基础上,如图1b提供的另一种跨区块链的交互系统的架构示意图,对于区块链A和区块链B,区块链A可以对应有交互服务端a1和交互客户端b1,区块链B可以对应有交互服务端a2和交互客户端b2。区块链A加载有区块链B对应的交互客户端b2,而区块链B加载有区块链A对应的交互客户端b1。交互服务端a1与交互客户端b1之间可以相互连接,交互服务端a2与交互客户端b2之间可以相互连接。
实际应用中,交互服务端a1与交互服务端a2均可以为Websocket服务端,交互客户端b1与交互客户端b2均可以为Websocket客户端,也即交互服务端a1与交互客户端b1之间可以建立Websocket连接通道,交互服务端a2与交互客户端b2之间可以建立Websocket连接通道。当区块链A发送链上消息,区块链B接收区块链A的链上消息时,区块链A即为第一区块链,区块链B即为第二区块链;反之,区块链B发送链上消息,区块链A接收区块链B的链上消息时,区块链B即为第一区块链,区块链A即为第二区块链。
可以理解的,图1b中的两个区块链仅仅作为示意,实际应用中跨区块链的交互系统中可以包括两个或者更多个区块链,本发明对此不作具体限定。
本说明书实施例中所提及的客户端可以是具有实现本发明实施例的跨区块链的交互方法的智能手机、台式电脑、平板电脑、笔记本电脑、数字助理等实体设备,也可以是包括运行于实体设备中的软体,例如可以是预设执行逻辑的代码;所提及的服务端可以是具有实现本发明实施例的跨区块链的交互方法的服务器,该服务器可以是一个独立的服务器,也可以是由多个服务器组成的服务器集群。
请参见图2所示的区块链的结构示意图,第一区块链111和至少一个第二区块链112均由多个区块组成,创始块中包括区块头和区块主体,区块头中存储有交易特征值、版本号、时间戳和难度值,区块主体中存储有交易信息;创始块的下一个区块以创始块为父区块,下一区块中同样包括区块头和区块主体,区块头中存储有当前区块的交易特征值、父区块的区块头特征值、版本号、时间戳和难度值,并以此类推,使得区块链中每个区块中存储的区块数据与父区块中存储的区块数据存在关联,保证了区块中交易信息的安全性。在生成区块链中的各个区块时,区块链所在的节点在接收到交易信息时,对交易信息进行校验,完成校验后,将交易信息存储至内存池中,并更新其用于记录交易的哈希树;之后,将更新时间戳更新为接收到交易信息的时间,并尝试不同的随机数,多次进行特征值计算后将对应信息进行存储生成区块头和区块主体,得到当前区块。
本说明书实施例中,区块链中用于记录交易的哈希树采用默克尔树,默克尔树是一种二叉树,由根节点、一组中间节点和大量的叶子节点组成,每一个中间节点都是他的两个子节点的哈希,叶子节点包含了交易的基础信息,每笔交易都有一个哈希值,然后不同的哈希值向上继续做哈希运算,最终形成了唯一的默克尔根哈希,如图3提供的默克尔树的一个可选示例,默克尔根哈希将会被存放到区块的区块头中,利用默克尔树可以确保每一笔交易都不可伪造。
下面结合图1a所示的交互系统对本发明实施例的跨区块链的交互方法进行详细说明。
请参阅图4,其所示为本发明实施例提供的一种跨区块链的交互方法的流程示意图,需要说明的是,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图4所示,所述方法可以包括:
S401,第一交互服务端监听第一区块链的链上事件。
本说明书实施例中,第一交互服务端实时监听第一区块链的链上事件,该链上事件是指调用第一区块链的智能合约时触发的事件。具体的实施中,可以使用web3.js监听已发出的事件,web3.js是以太坊提供的一个JavaScript库,它封装了以太坊的RPC通信API,提供了一系列与区块链交互的方法。
智能合约是根据特定条件自动执行的合约程序,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易。当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
智能合约中,事件是指操作触发的行为,智能合约中使用关键字event来定义事件,触发事件的结果是将数据记录在相应区块链上形成日志。
S403,第一交互服务端在监听到所述链上事件时,根据至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链。
本说明书实施例中,至少一个第二区块链可以通过加载的第一交互客户端向第一交互服务端发送事件注册请求,该事件注册请求用于请求获取注册的链上事件所对应的数据信息。其中,事件注册请求可以包括事件属性信息,该事件属性信息可以包括第一智能合约地址、第一事件哈希、起始区块高度和终止区块高度。第一交互服务端在接收到至少一个第二区块链通过加载的第一交互服客户端发送的事件注册请求后,可以根据事件注册请求生成事件注册记录,该事件注册记录可以包括与各第二区块链相对应的多条记录,每条记录为事件属性信息与相应第二区块链之间的映射关系,也即事件注册记录为事件属性信息与相应第二区块链之间的映射关系列表。
举例而言,若事件注册请求中事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度2800,终止区块高度0},则表明相应第二区块链注册了智能合约地址为0x1111、事件哈希为0x8888、区块高度在2800以上的第一区块链的链上事件。若事件注册请求中事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度500,终止区块高度2800},则表明相应第二区块链注册了智能合约地址为0x1111、事件哈希为0x8888、区块高度在[500,2800]之间的第一区块链的链上事件。可以理解的,事件注册请求中也可以包括上述两个事件属性信息或者更多个事件属性信息,每个事件属性信息可以对应于不同的第一智能合约地址和第一事件哈希。
基于此,如图5所提供的另一种跨区块链的交互方法的流程示意图,该方法还可以包括:
S501,至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送事件注册请求。
在一个可能的实施方式中,在执行步骤S501之前,该方法还可以包括图5中的以下步骤:
S505,第一交互服务端为所述至少一个第二区块链分配连接标识。
其中,连接标识用于第一交互服务端唯一标识一个第二区块链。实际应用中,第二区块链可以向第一区块链申请连接标识,在申请连接标识时可以提供第一区块链所规定的申请材料,在申请材料审查通过时可以由第一交互服务端为通过申请的第二区块链分配连接标识。在具体的实施中,对申请材料的审查可以由第一区块链的管理人员进行。
第一交互服务端在为至少一个第二区块链分配连接标识后,可以在本地存储其所分配过的连接标识,进而得到已分配连接标识列表。
S507,至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送连接创建请求,所述连接创建请求携带所述连接标识。
至少一个第二区块链在获取到第一交互服务端分配的连接标识之后,可以通过加载的第一交互客户端向第一交互服务端发送连接创建请求,该连接创建请求中携带其对应的连接标识。
S509,第一交互服务端对所述连接创建请求中的连接标识进行有效性验证。
具体的,第一交互服务端判断各连接创建请求中的连接标识是否在其存储的已分配连接标识列表中,若存在,则表明该连接标识是自己所分配的连接标识,是有效的连接标识,有效性验证通过;反之,若在已分配连接标识列表中为查找到连接创建请求中的连接标识,则表明该连接标识不是自己所分配的连接标识,为非有效的连接标识,有效性验证未通过。
S511,在所述有效性验证通过时,所述第一交互服务端与发送所述连接创建请求的第一交互客户端建立Websocket连接通道。
具体的,针对有效性验证通过的连接创建请求,第一交互服务端与发送该连接创建请求的第一交互客户端建立Websocket连接通道。那么,在后续的交互过程中,第一交互服务端与至少一个第二区块链加载的第一交互客户端之间可以通过建立的Websocket连接通道进行信息传输。
WebSocket是一种在单个TCP连接上进行全双工通信的协议,WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。WebSocket使得客户端和服务端之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,客户端和服务端只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
因此,本说明书实施例中至少一个第二区块链在通过加载的第一交互客户端向第一交互服务端发送事件注册请求时,可以通过该第一交互客户端与第一交互服务端之间的Websocket连接通道发送事件注册请求。
为了避免第一交互服务端因空闲时间过长而关闭连接,在一个可能的实施方式中,第一交互服务端与发送所述连接创建请求的第一交互客户端建立Websocket连接通道之后,至少一个第二区块链加载的所述第一交互客户端可以按照第一预设时间间隔向所述第一交互服务端发送心跳包;若所述至少一个第二区块链加载的所述第一交互客户端在第二预设时间间隔内未收到所述第一交互服务端返回的心跳应答,则与所述第一交互服务端重新建立所述Websocket连接通道,从而可以保持连接。
S503,第一交互服务端根据所述至少一个第二区块链的事件注册请求,生成所述事件注册记录。
在一个可能的实施方式中,第一交互服务端在根据至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链时可以包括以下步骤:
(1)第一交互服务端获取所述链上事件对应的目标事件属性信息,所述目标属性信息包括目标智能合约地址、目标事件哈希和目标区块高度。
实际应用中,当第一区块链发生链上事件时会以日志形式记录对应该链上事件的目标事件属性信息,该目标事件属性信息可以包括目标智能合约地址、目标事件哈希和目标区块高度。第一区块链可根据该日志生成对应该链上事件的事件通知,事件通知中携带该链上事件的目标属性信息,并将该事件通知发送给第一交互服务端。相应的,第一交互服务端在接收到该事件通知时可以确定监听到了链上事件,第一交互服务端可以该链上事件对应的事件通知中提取对应的目标事件属性信息。
(2)第一交互服务端将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链。
具体的,第一交互服务端遍历事件注册记录中的第二区块链,将遍历到的第二区块链对应的事件属性信息与目标事件属性信息进行比对,若二者相匹配,则可以确定当前的第二区块链为目标第二区块链。可以理解的,目标第二区块链可以是一个也可以为多个。
在一个可能的实施方式中,第一交互服务端在将事件注册记录中各第二区块链对应的事件属性信息与目标事件属性信息进行比对时,可以判断第一智能合约地址与目标智能合约地址是否一致,并判断第一事件哈希与目标事件哈希是否一致;若第一智能合约地址与目标智能合约地址相一致,且第一事件哈希与目标事件哈希相一致,则进一步根据起始区块高度和终止区块高度判断目标区块高度是否满足要求,若满足则可以认为相应事件属性信息与目标事件属性信息相匹配。反之,在以下两种情况下可以认为相应事件属性信息与目标事件属性信息不匹配:
第一种情况:第一智能合约地址与目标智能合约地址不一致和/或第一事件哈希与目标事件哈希不一致,则可以认为相应事件属性信息与目标事件属性信息不匹配。
第二种情况:第一智能合约地址与目标智能合约地址相一致且第一事件哈希与目标事件哈希相一致,但是根据起始区块高度和终止区块高度判断出目标区块高度不能满足要求,则可以认为相应事件属性信息与目标事件属性信息不匹配。
其中,根据起始区块高度和终止区块高度判断目标区块高度是否满足要求可以为:计算终止区块高度与起始区块高度的差值得到注册区块高度,判断目标区块高度是否在注册区块高度的范围内,若在,则认为满足要求;反之,若目标区块高度不在注册区块高度的范围内,则认为不满足要求。
在一个可能的实施方式中,第一交互服务端在将事件注册记录中事件属性信息与目标事件属性信息相匹配的第二区块链确定为目标第二区块链之后,该方法还可以包括以下步骤:
(3)第一交互服务端获取所述事件注册记录中所述目标第二区块链对应事件属性信息中的起始区块高度和终止区块高度,得到第一起始区块高度和第一终止区块高度。
(4)第一交互服务端根据所述目标区块高度,以及所述第一起始区块高度和第一终止区块高度,确定历史区块高度。
具体的,目标事件属性信息中的目标区块高度代表了第一交互服务端当前已处理的区块高度。第一交互服务端根据第一起始区块高度和第一终止区块高度之间的差值可以得到相应的注册区块高度范围,并进一步根据该注册区块高度范围与目标区块高度的比对得到历史区块高度,该历史区块高度是指注册区块高度范围中小于目标区块高度的区块高度。
以目标区块高度为3001进行举例,若目标第二区块链在事件注册记录中对应的事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度2800,终止区块高度0},则表明该目标第二区块链注册了智能合约地址为0x1111、事件哈希为0x8888、区块高度在2800以上的第一区块链的链上事件,而第一交互服务端当前已处理的区块高度为3001,则第一交互服务端可以确定相应的历史区块高度范围为[2800,3001)。
若目标第二区块链在事件注册记录中对应的事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度500,终止区块高度1200},而第一交互服务端当前已处理的区块高度为3001,则第一交互服务端可以确定历史区块高度范围为[500,1200]。
若目标第二区块链在事件注册记录中对应的事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度2600,终止区块高度3200},而第一交互服务端当前已处理的区块高度为3001,则第一交互服务端可以确定历史区块高度范围为[2600,3001)。
若目标第二区块链在事件注册记录中对应的事件属性信息为{第一智能合约地址0x1111,第一事件哈希0x8888,起始区块高度3100,终止区块高度4000},而第一交互服务端当前已处理的区块高度为3001,则第一交互服务端可以确定历史区块高度范围为0。
(5)第一交互服务端根据所述历史区块高度获取历史交易证明信息,并将所述历史交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
具体的,第一交互服务端可以根据历史区块高度范围从交易数据库中查询相对应的历史交易证明信息,将该历史交易证明信息推送给目标第二区块链加载的第一交互客户端,第一交互客户端在接收到历史交易证明信息后可以执行如下文中步骤S409的验证操作。
需要说明的是,为了防止大数据量推送对网络造成负担,在一个可能的实施方式中,可以从历史区块高度范围中获取小于等于预设区块范围的目标历史区块高度,然后获取该目标历史区块高度对应的历史交易证明信息。其中,预设区块范围可以根据需要进行设定,例如预设区块范围可以为1000,则当确定历史区块高度为[500,3001)时,可以获取的目标历史区块高度为[2001,3001),而不是从500的区块高度开始。
S405,第一交互服务端确定所述链上事件对应的交易证明信息。
其中,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希。
实际应用中,第一区块链发生链上事件时对应的日志中还记录有该链上事件对应的交易哈希,第一区块链根据该日志生成对应该链上事件的事件通知时,事件通知中还可以携带该交易哈希,第一交互服务端可以根据该链上事件对应的交易哈希确定该链上事件对应的交易证明信息。
本说明书实施例的区块链中采用默克尔树保存交易的数字指纹,实现对区块内所有交易的归纳。以图3所示的默克尔树为例,假设1个区块包含4个交易(记为Tx1、Tx2、Tx3、Tx4),其默克尔根哈希的的计算步骤为:将交易数据作为叶子节点,并计算哈希值;将节点元素两个一组拼接起来计算哈希值并作为上一层元素;重复前一个步骤直到当前元素只有一个时结束,最后的元素即为默克尔根哈希。而第一交互服务端根据交易3的哈希H3,可以从该默克尔树中获取的交易证明信息为:交易基础信息(Tx3)、目标默克尔树路径(H12、H4)和目标默克尔根哈希(H1234)。
S407,第一交互服务端将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
在一个可能的实施方式中,第一交互服务端可以通过与第一交互客户端建立的Websocket连接通道将交易证明信息主动推送给所述目标第二区块链加载的所述第一交互客户端。
S409,目标第二区块链加载的所述第一交互客户端根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过后向所述目标第二区块链发送上链信息。
具体的,目标第二区块链加载的所述第一交互客户端可以根据所述交易基础信息确定所述交易的哈希值;根据所述交易的哈希值和所述目标默克尔树路径,确定第一默克尔树根哈希;判断所述第一默克尔树根哈希与所述目标默克尔树根哈希是否一致;若一致,则确定验证通过。
以前述交易证明信息为交易基础信息(Tx3)、目标默克尔树路径(H12、H4)和目标默克尔根哈希(H1234)为例,第一交互客户端在进行验证时的步骤为:根据Tx3计算哈希,得到H3;根据H3和H4计算哈希,得到H34;根据H12和H34计算哈希得到判断H1234与是否相同,若相同,则证明区块中存在交易3,验证通过;若不相同,则说明区块中不存在交易3,验证不通过。
第一交互客户端在验证通过后,可以向相应的目标第二区块链发送上链信息,从而目标第二区块链可以根据该上链信息进行后续的业务处理,如上链或者落库等,完成本次的交互。
由本发明实施例的以上技术方案可知,本发明实施例实现了无数字资产转移的跨链交互,在该跨链交互过程中不用关心各区块链底层采用何种技术以及意共识算法是否一致,完全屏蔽了异构区块链的底层技术细节,简化了跨链互通过程,提高了无数字资产转移的区块链之前的跨链互通效率
与上述几种实施例提供的跨区块链的交互方法相对应,本发明实施例还提供一种跨区块链的交互系统,由于本发明实施例提供的跨区块链的交互系统与上述几种实施例提供的跨区块链的交互方法相对应,因此前述跨区块链的交互方法的实施方式也适用于本实施例提供的跨区块链的交互系统,在本实施例中不再详细描述。
请参阅图1,该跨区块链的交互系统可以包括第一区块链和至少一个第二区块链,所述第一区块链对应有第一交互服务端和第一交互客户端,所述至少一个第二区块链加载有所述第一区块链对应的所述第一交互客户端;其中,
第一交互服务端,用于监听所述第一区块链的链上事件;所述链上事件是调用所述第一区块链的智能合约时触发的事件;在监听到所述链上事件时,根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链;确定所述链上事件对应的交易证明信息,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希;将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端
目标第二区块链加载的所述第一交互客户端,用于根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过后向所述目标第二区块链发送上链信息。
在一个可能的实施方式中,至少一个第二区块链加载的所述第一交互客户端,还用于向所述第一交互服务端发送所述至少一个第二区块链的事件注册请求;所述事件注册请求包括事件属性信息,所述事件属性信息包括第一智能合约地址、第一事件哈希、起始区块高度和终止区块高度;
第一交互服务端,还用于根据所述至少一个第二区块链的事件注册请求,生成所述事件注册记录。
在一个可能的实施方式中,第一交互服务端在根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链时,获取所述链上事件对应的目标事件属性信息,所述目标属性信息包括目标智能合约地址、目标事件哈希和目标区块高度;将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链。
在一个可能的实施方式中,第一交互服务端,还用于获取所述事件注册记录中所述目标第二区块链对应事件属性信息中的起始区块高度和终止区块高度,得到第一起始区块高度和第一终止区块高度;根据所述目标区块高度,以及所述第一起始区块高度和第一终止区块高度,确定历史区块高度;根据所述历史区块高度获取历史交易证明信息,并将所述历史交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
在一个可能的实施方式中,第一交互服务端,还用于为所述至少一个第二区块链分配连接标识;
至少一个第二区块链加载的所述第一交互客户端,还用于向所述第一交互服务端发送所述至少一个第二区块链加载的连接创建请求,所述连接创建请求携带所述连接标识
第一交互服务端,还用于对所述连接创建请求中的连接标识进行有效性验证;在所述有效性验证通过时,与发送所述连接创建请求的第一交互客户端建立Websocket连接通道。
在一个可能的实施方式中,至少一个第二区块链加载的所述第一交互客户端,还用于按照第一预设时间间隔向所述第一交互服务端发送心跳包;在第二预设时间间隔内未收到所述第一交互服务端返回的心跳应答,与所述第一交互服务端重新建立所述Websocket连接通道。
在一个可能的实施方式中,目标第二区块链加载的所述第一交互客户端在根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证时,根据所述交易基础信息确定所述交易的哈希值;根据所述交易的哈希值和所述目标默克尔树路径,确定第一默克尔树根哈希;判断所述第一默克尔树根哈希与所述目标默克尔树根哈希是否一致;若一致,则确定验证通过。
本发明实施例提供了一种计算机设备,包括处理器和存储器,该存储器中存储有至少一条指令或者至少一段程序,该至少一条指令或者该至少一段程序由该处理器加载并执行以实现如上述方法实施例所提供的跨区块链的交互方法。
具体的,该计算机设备可以与第一区块链连接,该计算机设备中可以包括用于实现前述方法实施例中第一交互服务端功能的Websocket服务端模块,该Websocket服务端模块如图6a所示,可以包括监听模块、处理模块和推送模块。其中,监听模块可以启动监听端口,负责接收对应WebSocket客户端的连接;以及监听内网第一区块链上的事件,并交给处理模块处理。处理模块可以负责维护对应WebSocket客户端的连接通道,如出错时关闭连接、发送心跳响应等,并保存第二区块链的事件注册记录,当有链上事件发生时,根据事件注册记录进行选择匹配,并组织好推送的数据内容。推送模块负责将数据推送给相应的WebSocket客户端。可以理解的,上述Websocket服务端模块在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成。
具体的,该计算机设备可以与第二区块链连接,该计算机设备中可以包括用于实现前述方法实施例中第一交互客户端功能的Websocket客户端模块,该Websocket客户端模块如图6b所示,可以包括注册模块、心跳模块和验证模块。其中,注册模块负责根据对应第二区块链的业务需要选择注册的事件,并向Websocket服务端发送事件注册请求。心跳模块负责在Websocket客户端连接空闲的一段时间之后向服务端发送心跳包,以保持与服务端的连接正常。验证模块可以用于在接收到服务端推送过来的数据后,使用默克尔树验证交易存在性。可以理解的,上述Websocket客户端模块在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成。
图7是本发明实施例提供的运行一种跨区块链的交互方法的计算机设备的硬件结构框图,如图7所示,该计算机设备的内部结构可包括但不限于:处理器、网络接口及存储器。其中,计算机设备内的处理器、网络接口及存储器可通过总线或其他方式连接,在本说明书实施例所示图7中以通过总线连接为例。
其中,处理器(或称CPU(Central Processing Unit,中央处理器))是计算机设备的计算核心以及控制核心。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI、移动通信接口等)。存储器(Memory)是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的存储器可以是高速RAM存储设备,也可以是非不稳定的存储设备(non-volatile memory),例如至少一个磁盘存储设备;可选的还可以是至少一个位于远离前述处理器的存储装置。存储器提供存储空间,该存储空间存储了电子设备的操作系统,可包括但不限于:Windows系统(一种操作系统),Linux(一种操作系统),Android(安卓,一种移动操作系统)系统、IOS(一种移动操作系统)系统等等,本发明对此并不作限定;并且,在该存储空间中还存放了适于被处理器加载并执行的一条或一条以上的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。在本说明书实施例中,处理器加载并执行存储器中存放的一条或一条以上指令,以实现上述方法实施例提供的跨区块链的交互方法。
本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质可设置于计算机设备之中以保存用于实现一种跨区块链的交互方法相关的至少一条指令或者至少一段程序,该至少一条指令或者该至少一段程序由该处理器加载并执行以实现上述方法实施例提供的跨区块链的交互方法。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种跨区块链的交互方法,其特征在于,应用于跨区块链的交互系统,所述系统包括第一区块链和至少一个第二区块链,所述第一区块链对应有第一交互服务端和第一交互客户端,所述至少一个第二区块链加载有所述第一区块链对应的所述第一交互客户端,所述方法包括:
所述第一交互服务端监听所述第一区块链的链上事件;所述链上事件是调用所述第一区块链的智能合约时触发的事件;
所述第一交互服务端在监听到所述链上事件时,根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链;
所述第一交互服务端确定所述链上事件对应的交易证明信息,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希;
所述第一交互服务端将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端;
所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过后向所述目标第二区块链发送上链信息。
2.根据权利要求1所述的跨区块链的交互方法,其特征在于,所述方法还包括:
所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送事件注册请求;所述事件注册请求包括事件属性信息,所述事件属性信息包括第一智能合约地址、第一事件哈希、起始区块高度和终止区块高度;
所述第一交互服务端根据所述至少一个第二区块链的事件注册请求,生成所述事件注册记录。
3.根据权利要求2所述的跨区块链的交互方法,其特征在于,所述第一交互服务端根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链包括:
所述第一交互服务端获取所述链上事件对应的目标事件属性信息,所述目标属性信息包括目标智能合约地址、目标事件哈希和目标区块高度;
所述第一交互服务端将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链。
4.根据权利要求3所述的跨区块链的交互方法,其特征在于,在所述第一交互服务端将事件注册记录中事件属性信息与所述目标事件属性信息相匹配的第二区块链确定为所述目标第二区块链之后,所述方法还包括:
所述第一交互服务端获取所述事件注册记录中所述目标第二区块链对应事件属性信息中的起始区块高度和终止区块高度,得到第一起始区块高度和第一终止区块高度;
所述第一交互服务端根据所述目标区块高度,以及所述第一起始区块高度和第一终止区块高度,确定历史区块高度;
所述第一交互服务端根据所述历史区块高度获取历史交易证明信息,并将所述历史交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端。
5.根据权利要求2所述的跨区块链的交互方法,其特征在于,在所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送事件注册请求之前,所述方法还包括:
所述第一交互服务端为所述至少一个第二区块链分配连接标识;
所述至少一个第二区块链通过加载的所述第一交互客户端向所述第一交互服务端发送连接创建请求,所述连接创建请求携带所述连接标识;
所述第一交互服务端对所述连接创建请求中的连接标识进行有效性验证;
在所述有效性验证通过时,所述第一交互服务端与发送所述连接创建请求的第一交互客户端建立Websocket连接通道。
6.根据权利要求5所述的跨区块链的交互方法,其特征在于,所述方法还包括:
所述至少一个第二区块链加载的所述第一交互客户端按照第一预设时间间隔向所述第一交互服务端发送心跳包;
若所述至少一个第二区块链加载的所述第一交互客户端在第二预设时间间隔内未收到所述第一交互服务端返回的心跳应答,则与所述第一交互服务端重新建立所述Websocket连接通道。
7.根据权利要求1所述的跨区块链的交互方法,其特征在于,所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证包括:
所述目标第二区块链加载的所述第一交互客户端根据所述交易基础信息确定所述交易的哈希值;根据所述交易的哈希值和所述目标默克尔树路径,确定第一默克尔树根哈希;判断所述第一默克尔树根哈希与所述目标默克尔树根哈希是否一致;若一致,则确定验证通过。
8.一种跨区块链的交互系统,其特征在于,包括第一区块链和至少一个第二区块链,所述第一区块链对应有第一交互服务端和第一交互客户端,所述至少一个第二区块链加载有所述第一区块链对应的所述第一交互客户端;
所述第一交互服务端,用于监听所述第一区块链的链上事件;所述链上事件是调用所述第一区块链的智能合约时触发的事件;在监听到所述链上事件时,根据所述至少一个第二区块链的事件注册记录,确定注册所述链上事件的目标第二区块链;确定所述链上事件对应的交易证明信息,所述交易证明信息包括交易基础信息、用于验证交易所需的目标默克尔树路径和目标默克尔树根哈希;将所述交易证明信息发送给所述目标第二区块链加载的所述第一交互客户端;
所述目标第二区块链加载的所述第一交互客户端,用于根据所述交易基础信息、所述目标默克尔树路径和所述目标默克尔树根哈希进行验证,并在验证通过后向所述目标第二区块链发送上链信息。
9.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器中存储有至少一条指令或者至少一段程序,所述至少一条指令或者所述至少一段程序由所述处理器加载并执行以实现如权利要求1~7中任一项所述的跨区块链的交互方法。
10.一种计算机可读存储介质,所述存储介质中存储有至少一条指令或者至少一段程序,所述至少一条指令或者所述至少一段程序由处理器加载并执行以实现如权利要求1~7任一项所述的跨区块链的交互方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010625551.2A CN111914021B (zh) | 2020-07-02 | 2020-07-02 | 一种跨区块链的交互方法、系统、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010625551.2A CN111914021B (zh) | 2020-07-02 | 2020-07-02 | 一种跨区块链的交互方法、系统、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111914021A true CN111914021A (zh) | 2020-11-10 |
CN111914021B CN111914021B (zh) | 2022-12-02 |
Family
ID=73227153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010625551.2A Active CN111914021B (zh) | 2020-07-02 | 2020-07-02 | 一种跨区块链的交互方法、系统、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111914021B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112508563A (zh) * | 2020-12-01 | 2021-03-16 | 浙商银行股份有限公司 | 跨链交易可信验证方法、装置及计算机设备 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112905554A (zh) * | 2021-02-07 | 2021-06-04 | 全链通有限公司 | 基于区块链的数据共享方法和装置 |
CN112910946A (zh) * | 2020-12-29 | 2021-06-04 | 合肥达朴汇联科技有限公司 | 应用于t2节点的区块链信息跨链交互方法、系统、设备 |
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN113657900A (zh) * | 2021-07-13 | 2021-11-16 | 中国人民银行数字货币研究所 | 一种跨链交易验证方法、系统以及跨链交易系统 |
CN113779155A (zh) * | 2021-09-24 | 2021-12-10 | 支付宝(杭州)信息技术有限公司 | 区块链交易处理方法、装置及设备 |
CN114244537A (zh) * | 2022-02-24 | 2022-03-25 | 环球数科集团有限公司 | 一种基于跨链通信和多链融合的信息处理系统 |
CN114499872A (zh) * | 2021-12-24 | 2022-05-13 | 山东浪潮工业互联网产业股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
CN114567643A (zh) * | 2020-11-27 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 跨区块链的数据流转方法、装置及相关设备 |
CN114782045A (zh) * | 2022-06-16 | 2022-07-22 | 中国信息通信研究院 | 跨链非事务性写入方法和装置、存储介质、电子设备 |
CN112905554B (zh) * | 2021-02-07 | 2024-05-10 | 全链通有限公司 | 基于区块链的数据共享方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109146448A (zh) * | 2018-07-13 | 2019-01-04 | 杭州复杂美科技有限公司 | 跨链资产转移方法、设备和存储介质 |
CN109600367A (zh) * | 2018-12-07 | 2019-04-09 | 众安信息技术服务有限公司 | 用于实现跨链消息处理的方法以及设备 |
CN109934592A (zh) * | 2019-03-22 | 2019-06-25 | 深圳市网心科技有限公司 | 一种区块链跨链通信方法、系统、电子设备及存储介质 |
CN110766410A (zh) * | 2019-10-24 | 2020-02-07 | 杭州趣链科技有限公司 | 基于默克尔树的可信跨链事件构造与验证方法和设备 |
US20200204352A1 (en) * | 2017-10-16 | 2020-06-25 | Interbit Ltd. | Method and system for facilitating data transfer between blockchains |
-
2020
- 2020-07-02 CN CN202010625551.2A patent/CN111914021B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200204352A1 (en) * | 2017-10-16 | 2020-06-25 | Interbit Ltd. | Method and system for facilitating data transfer between blockchains |
CN109146448A (zh) * | 2018-07-13 | 2019-01-04 | 杭州复杂美科技有限公司 | 跨链资产转移方法、设备和存储介质 |
CN109600367A (zh) * | 2018-12-07 | 2019-04-09 | 众安信息技术服务有限公司 | 用于实现跨链消息处理的方法以及设备 |
CN109934592A (zh) * | 2019-03-22 | 2019-06-25 | 深圳市网心科技有限公司 | 一种区块链跨链通信方法、系统、电子设备及存储介质 |
CN110766410A (zh) * | 2019-10-24 | 2020-02-07 | 杭州趣链科技有限公司 | 基于默克尔树的可信跨链事件构造与验证方法和设备 |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114567643A (zh) * | 2020-11-27 | 2022-05-31 | 腾讯科技(深圳)有限公司 | 跨区块链的数据流转方法、装置及相关设备 |
CN114567643B (zh) * | 2020-11-27 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 跨区块链的数据流转方法、装置及相关设备 |
CN112508563A (zh) * | 2020-12-01 | 2021-03-16 | 浙商银行股份有限公司 | 跨链交易可信验证方法、装置及计算机设备 |
CN112529706A (zh) * | 2020-12-10 | 2021-03-19 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112529706B (zh) * | 2020-12-10 | 2024-04-09 | 浙商银行股份有限公司 | 一种去中心化异构公有链资产交换方法 |
CN112910946A (zh) * | 2020-12-29 | 2021-06-04 | 合肥达朴汇联科技有限公司 | 应用于t2节点的区块链信息跨链交互方法、系统、设备 |
CN112905554A (zh) * | 2021-02-07 | 2021-06-04 | 全链通有限公司 | 基于区块链的数据共享方法和装置 |
CN112905554B (zh) * | 2021-02-07 | 2024-05-10 | 全链通有限公司 | 基于区块链的数据共享方法和装置 |
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN113657900B (zh) * | 2021-07-13 | 2024-03-22 | 中国人民银行数字货币研究所 | 一种跨链交易验证方法、系统以及跨链交易系统 |
CN113657900A (zh) * | 2021-07-13 | 2021-11-16 | 中国人民银行数字货币研究所 | 一种跨链交易验证方法、系统以及跨链交易系统 |
CN113779155A (zh) * | 2021-09-24 | 2021-12-10 | 支付宝(杭州)信息技术有限公司 | 区块链交易处理方法、装置及设备 |
CN114499872A (zh) * | 2021-12-24 | 2022-05-13 | 山东浪潮工业互联网产业股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
CN114244537A (zh) * | 2022-02-24 | 2022-03-25 | 环球数科集团有限公司 | 一种基于跨链通信和多链融合的信息处理系统 |
CN114782045A (zh) * | 2022-06-16 | 2022-07-22 | 中国信息通信研究院 | 跨链非事务性写入方法和装置、存储介质、电子设备 |
CN114782045B (zh) * | 2022-06-16 | 2022-08-23 | 中国信息通信研究院 | 跨链非事务性写入方法和装置、存储介质、电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111914021B (zh) | 2022-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111914021B (zh) | 一种跨区块链的交互方法、系统、计算机设备及存储介质 | |
CN112862612B (zh) | 一种跨链发送资源的方法和装置 | |
CN112003703B (zh) | 一种跨链发送可认证消息的方法和装置 | |
CN107193490B (zh) | 一种基于区块链的分布式数据存储系统及方法 | |
EP3497915B1 (en) | Peer-to-peer communication system and peer-to-peer processing apparatus | |
US20190324793A1 (en) | Transaction control arrangement for device management system | |
KR102152360B1 (ko) | IoT 서비스를 위한 블록체인 기반 데이터 신뢰성 제공 시스템 및 방법 | |
Mišić et al. | Adapting PBFT for use with blockchain-enabled IoT systems | |
CN110430235B (zh) | 跨链发送可认证消息的方法、装置、存储介质和计算设备 | |
Danzi et al. | Communication aspects of the integration of wireless IoT devices with distributed ledger technology | |
CN110599142A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN110458709B (zh) | 资源转移信息的传输方法和装置、存储介质、电子装置 | |
CN111930598B (zh) | 基于区块链和大数据分析的信息处理方法及大数据平台 | |
CN110061887B (zh) | 一种基于区块链的流量统计方法、装置和设备 | |
CN112822239A (zh) | 一种区块链共识方法、装置、电子设备及存储介质 | |
CN112818014A (zh) | 区块链数据解析方法、装置和电子设备 | |
CN112184436B (zh) | 数据同步方法、电子设备及可读存储介质 | |
CN112699136B (zh) | 一种跨链存证方法及相关装置 | |
CN111327680B (zh) | 认证数据同步方法、装置、系统、计算机设备和存储介质 | |
CN108882230B (zh) | 通话记录管理方法、装置及系统 | |
CN114301912A (zh) | 基于区块链的信息交互方法和装置 | |
CN110933627A (zh) | 业务处理方法、装置、设备及存储介质 | |
CN113067951B (zh) | 终端通信管理方法、装置、计算机设备及可读存储介质 | |
CN117032998B (zh) | 一种基于区块链的数据处理方法、装置以及可读存储介质 | |
CN111782406B (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 | ||
CB02 | Change of applicant information |
Address after: B2, 12th floor, building 1, 79 Yueda lane, Binjiang District, Hangzhou City, Zhejiang Province 310000 Applicant after: Zhonglian Intelligent Technology Co.,Ltd. Address before: B2, 12th floor, building 1, 79 Yueda lane, Binjiang District, Hangzhou City, Zhejiang Province 310000 Applicant before: Lianlian Intelligent Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |