CN109462505A - 实现多个区块链网络之间的跨链通信的方法和装置 - Google Patents
实现多个区块链网络之间的跨链通信的方法和装置 Download PDFInfo
- Publication number
- CN109462505A CN109462505A CN201811338500.0A CN201811338500A CN109462505A CN 109462505 A CN109462505 A CN 109462505A CN 201811338500 A CN201811338500 A CN 201811338500A CN 109462505 A CN109462505 A CN 109462505A
- Authority
- CN
- China
- Prior art keywords
- block chain
- chain network
- node
- routing node
- network
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/44—Distributed routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/52—Multiprotocol routers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开的实施例公开了实现多个区块链网络之间的跨链通信的方法。该方法包括:在第一区块链网络中的区块链节点处,从BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,路由信息指示由BaaS平台管理的、当前经由路由节点实现通信路由的多个区块链网络,第一区块链网络包括在该多个区块链网络中;当第一区块链网络需要与至少一个其他区块链网络通信时,利用所存储的所述路由节点的通信地址和端口信息向路由节点发送数据,以便经由路由节点将数据转发到该至少一个其他区块链网络中的至少一个区块链节点。根据本公开实施例的方法,可以通过由BaaS平台根据需要自动配置的多个区块链网络之间的通信路由来实现跨链通信。
Description
技术领域
本公开内容属于区块链技术领域,尤其涉及实现多个区块链网络之间的跨链通信的方法、装置以及相应的计算机可读存储介质。
背景技术
区块链(Blockchain)是用分布式数据库识别、传播和记载信息的智能化对等网络,也称为价值互联网。区块链具有去中心化、反篡改、数据一致性存储、过程透明可追踪等技术优势,其被认为在金融、征信、物联网、经济贸易结算、资产管理等众多领域都拥有广泛的应用前景。
区块链即服务(BaaS,Blockchain as a Service)平台提供这样的服务:它帮助企业用户能够快速部署区块链物理网络、管理区块链节点、账本、智能合约等区块链相关要素,让企业无需关注区块链的各种技术细节,而只需关注区块链业务的开展。BaaS平台上管理着许多用户创建的区块链网络,这些区块链网络可能是相同类型的,也可能是不同类型(异构)的。
在现有的区块链技术中,各种区块链网络之间互相交换信息是通过线下交换等方式来实现的。然而,随着区块链技术的不断发展,BaaS平台上管理着越来越多的区块链网络并且每一个区块链都掌握了大量的有价值信息和资源,使得用户对BaaS平台管理的区块链网络之间进行交互的需求不断增多,由此产生了对BaaS平台进行改造以便能够使得在BaaS平台管理的区块链网络之间进行跨链通信的需求。
发明内容
本公开的实施例提供了实现多个区块链网络之间的跨链通信的方法、装置和相应的计算机可读存储介质,使得在BaaS平台上可以根据需要(例如,业务需求、用户请求等)自动配置多个区块链网络之间的通信路由,从而实现跨链通信。
本公开的实施例的第一方面提供了一种实现多个区块链网络之间的跨链通信的方法,所述多个区块链网络由BaaS平台管理,所述方法包括:
A.接收用于所述跨链通信的连接请求,所述连接请求包括所述多个区块链网络中的每一个区块链网络的通信协议信息以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息;
B.基于所述BaaS平台所支持的可进行通信路由的通信协议集合和所述每一个区块链网络的通信协议信息,确定所述BaaS平台是否支持所述多个区块链网络之间的通信路由;
C.在所述BaaS平台支持所述多个区块链网络之间的通信路由的情况下,由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点;以及
D.将所述路由节点的路由信息、通信地址和端口信息发送给所述每一个区块链网络中的所述至少一个区块链节点,其中,所述路由信息指示当前经由所述路由节点实现通信路由的区块链网络。
本公开的实施例的第二方面提供了一种实现多个区块链网络之间的跨链通信的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
A.接收用于所述跨链通信的连接请求,所述连接请求包括所述多个区块链网络中的每一个区块链网络的通信协议信息以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息;
B.基于所述BaaS平台所支持的可进行通信路由的通信协议集合和所述每一个区块链网络的通信协议信息,确定所述BaaS平台是否支持所述多个区块链网络之间的通信路由;
C.在所述BaaS平台支持所述多个区块链网络之间的通信路由的情况下,由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点;以及
D.将所述路由节点的路由信息、通信地址和端口信息发送给所述每一个区块链网络中的至少一个区块链节点,其中,所述路由信息指示当前经由所述路由节点实现通信路由的区块链网络。
本公开的实施例的第三方面提供了一种实现多个区块链网络之间的跨链通信的方法,所述方法包括:
A.在第一区块链网络的区块链节点处,从BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,所述路由信息指示由所述BaaS平台管理的、当前经由所述路由节点实现通信路由的多个区块链网络,其中,所述第一区块链网络包括在所述多个区块链网络中;以及
B.当所述第一区块链网络需要与所述多个区块链网络中的至少一个其他区块链网络通信时,利用所存储的所述路由节点的通信地址和端口信息向所述路由节点发送数据,以便经由所述路由节点将所述数据转发到所述至少一个其他区块链网络中的至少一个区块链节点。
本公开的实施例的第四方面提供了一种实现多个区块链网络之间的跨链通信的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
A.在第一区块链网络中的区块链节点处,从BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,所述路由信息指示由所述BaaS平台管理的、当前经由所述路由节点实现通信路由的多个区块链网络,其中,所述第一区块链网络包括在所述多个区块链网络中;以及
B.当所述第一区块链网络需要与所述多个区块链网络中的至少一个其他区块链网络通信时,利用所存储的所述路由节点的通信地址和端口信息向所述路由节点发送数据,以便经由所述路由节点将所述数据转发到所述至少一个其他区块链网络中的至少一个区块链节点。
本公开的实施例的第五方面提供了一种计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令在装置中运行时使得所述装置执行根据本公开的实施例的第一方面和第三方面所述的基于区块链的跨链通信的方法。
依据本公开的实施例的基于区块链的跨链通信的方法、装置以及相应的计算机可读存储介质使得用户无需了解BaaS平台上所部署的具体区块链网络,在BaaS平台上可以根据需要(例如,业务需求、用户请求等)自动配置实现多个区块链网络之间的通信路由的路由节点,从而实现跨链通信,并且可以通过选择性地创建路由节点来允许路由节点的复用,节省了实现路由所需的资源。此外,通过本公开的实施例实现的跨链通信,可以在多个区块链网络之间传输交易请求,从而使得能够实现跨越多个区块链网络进行交易,例如跨越多个区块链网络进行例如资源转移、合约执行等操作。本公开的其他优势将在下文中进一步说明。
附图说明
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实施例,在附图中:
图1示出了根据本公开实施例的示例性BaaS平台系统100的示意架构图;
图2示出了根据本公开实施例的在BaaS平台处实现多个区块链网络之间的跨链通信的示例性方法200的流程图;
图3示出了根据本公开实施例的在区块链节点处实现多个区块链网络之间的跨链通信的示例性方法300的流程图;以及
图4示出了根据本公开实施例的用于实现多个区块链网络之间的跨链通信的示例性装置400的示意图。
具体实施方式
以下参考附图详细描述本公开的各个示例性实施例。附图中的流程图和框图示出了根据本公开的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每一个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每一个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
本文所使用的术语“包括”、“包含”及类似术语是开放性的术语,即“包括/包含但不限于”,表示还可以包括其他内容。术语“基于”是“至少部分地基于"。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”等等。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当视为说明书的一部分。对于附图中的各单元之间的连线,仅仅是为了便于说明,其表示至少连线两端的单元是相互通信的,并非旨在限制未连线的单元之间无法通信。
为了便于描述,下面对本公开内容中出现的一些术语进行说明,应当理解,本申请所使用的术语应解释为具有与其在本申请说明书的上下文及有关领域中的意义一致的意义。
本公开内容中的术语“路由节点”是指在两个不同实体(例如,区块链网络)之间提供通信服务(例如,通信路由等)的一种功能节点。例如,路由节点可以通过硬件、软件、固件或其结合来实现。
本公开内容中的术语“第一”、“第二”仅用于描述指代、目的或某具体事物,而不能理解为指示或暗示相对重要性,或者隐含指明所指示的技术特征的数量。
本公开内容中的术语“多个”是指两个或两个以上。
图1示出了根据本公开的实施例的BaaS平台系统100的示意架构图。在图1中,BaaS平台系统100基于云110而架设,其包括BaaS平台120、由BaaS平台120管理的多个区块链130、140、150、160以及示意性示出的存储设备170。BaaS平台系统100可以为用户提供公有链、联盟链或私有链服务。存储设备170用于BaaS平台系统100的各种配置数据、用户信息、日志数据等等。例如,BaaS平台120的用户180可以经由BaaS平台120服务商公开的接口(例如,应用程序接口(Application Program Interface,API))来与BaaS平台120交互。BaaS平台120可以管理(例如,创建等)多个区块链网络130、140、150和160,区块链网络130-160可以是特定于用户的,各自包括若干个区块链节点。在云应用环境中,区块链网络的至少一个节点可以对应于在云上创建的虚拟机实例,虚拟机实例中运行相应的节点应用程序。各个区块链网络具有相应的区块链应用,诸如金融、征信、物联网、经济贸易结算、资产管理等领域的各种应用。在BaaS平台120上可以创建一个或多个路由节点,例如路由节点190-1和190-2,这些路由节点与由BaaS平台120管理的多个区块链网络通信连接并可以实现多个区块链网络之间的通信路由。举例而非限制,路由节点190-1与区块链网络130和140通信连接并实现这两个区块链网络130和140之间的通信路由,路由节点190-2与区块链网络150和160通信连接并实现这两个区块链网络150和160之间的通信路由。诸如路由节点190-1和190-2之类的路由节点可以由BaaS平台管理,并且可以是当不使用时可释放的动态节点。虽然在图1中将路由节点190-1和190-2示出为在BaaS平台120之外,但是应当理解,路由节点可以集成在BaaS平台上或与BaaS平台分离。本文中以基于云平台的实施例来示例说明用于实现多个区块链网络之间的跨链通信的方案。本领域技术人员可以理解,本公开的实施例并不限于应用于基于私有云、公有云或者非基于云平台的区块链。
应当理解,图1中的区块链网络、路由节点仅是示意而非限制,其可以是任意数量。此外,为了便于描述本公开的实施例,未具体示出和描述所熟知的区块链网络的其他部分以免不必要地模糊本公开实施例的方面。
随着在诸如图1的BaaS平台120之类的BaaS平台上管理着越来越多的区块链网络,这些区块链网络可能是相同类型的,也可能是不同类型(异构)的。每一个区块链网络都掌握了大量的有价值信息或资源,由此产生了在这些区块链网络之间进行交互的需求以实现信息或资源的转移。在现有的区块链技术中,各种区块链网络之间互相交换信息是通过线下交换等方式来实现的,然而这种线下交换需要以第三方作为交换中间方(例如,公证人)并且需要事先进行协商,非常不方便。
为了有效解决上述问题,本公开的实施例提供了一种在BaaS平台上实现跨链通信的解决方案,因为BaaS平台作为一个中立的第三方,非常适合以交换中间方(例如,公证人)的身份来实现多个区块链网络之间的跨链通信。不同于传统方式,本公开的实施例中的BaaS平台可以根据需要(例如,业务需求、用户请求等)自动配置两个区块链网络之间的通信路由,从而实现跨链通信。
图2示出了根据本公开实施例的实现多个区块链网络之间的跨链通信的示例性方法200的流程图。可以将该方法200实现在图1的BaaS平台系统100上,下面将参照图1和图2来描述方法200。方法200可以由图1中的BaaS平台120执行,其中,BaaS平台120管理多个区块链网络。如流程图所示,方法200可以包括以下步骤:
步骤201:接收用于跨链通信的连接请求,该连接请求包括该多个区块链网络中的每一个区块链网络的通信协议信息以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息。例如,每一个区块链网络的通信协议信息可以指示该区块链网络所使用的通信协议。在一个示例中,用户可以通过客户端设备访问BaaS平台120,以发起在由BaaS平台管理的多个区块链网络130、140和150之间进行通信的连接请求。在另一个示例中,用户可以通过客户端设备访问区块链网络130中的区块链节点,以发起在由BaaS平台管理的多个区块链网络130、140和150之间进行通信的连接请求。相应地,BaaS平台120可以例如从区块链节点接收由区块链节点发送的该连接请求,该连接请求可以包括多个区块链网络130、140和150中的每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息。例如,区块链网络130使用第一通信协议,区块链网络140使用第二通信协议,其中,第一通信协议和第二通信协议可以相同或不同。例如,区块链节点的通信地址可以包括但不限于:FQDN(Fully Qualified Domain Name,完全限定域名)、IP(Internet Protocol,网际协议)地址等。例如,区块链节点的端口信息可以包括但不限于端口号、端口类型等等。
步骤202:基于BaaS平台所支持的可进行通信路由的通信协议集合和所述每一个区块链网络的通信协议信息,确定BaaS平台是否支持该多个区块链网络之间的通信路由。例如,BaaS平台120所支持的可进行通信路由的通信协议集合可以通过BaaS平台120路由能力信息或以其它方式来获知。例如,BaaS平台120可以支持在区块链网络130、140和150之间的通信路由,支持在区块链网络130和160之间、在区块链网络140和160之间的通信路由,但不支持在区块链网络150和160之间的通信路由。例如,路由能力信息可以指示由区块链网络130、140和150的通信协议组成的通信协议集合支持通信路由,即支持在具有这些通信协议的区块链网络之间进行通信路由。因此,BaaS平台120可以基于其所支持的可进行通信路由的通信协议集合(例如,根据其路由能力信息)和每个区块链网络的通信协议信息,确定BaaS平台120是否支持在多个区块链网络之间的通信路由。
步骤203:在BaaS平台支持所述多个区块链网络之间的通信路由的情况下,由BaaS平台确定或者创建用于实现该多个区块链网络之间的通信路由的路由节点。例如,在BaaS平台120支持在多个区块链网络130、140和150之间的通信路由的情况下,在BaaS平台120上确定(例如,从已有的路由节点中确定一个路由节点)或创建(例如,新建一个路由节点)用于实现在多个区块链网络130、140和150之间的路由节点(例如,图1中的路由节点190-1、190-2)。在该步骤中,可以选择性地使用已有的路由节点或创建新的路由节点来支持多个区块链网络之间的通信。
步骤204:将该路由节点的路由信息、通信地址和端口信息发送给该每一个区块链网络中的至少一个区块链节点,其中,该路由信息指示当前经由该路由节点实现通信路由的区块链网络。例如,BaaS平台120将所确定的路由节点的路由信息、通信地址和端口信息发送给多个区块链网络130、140和150中的每一个区块链网络的至少一个区块链节点,该路由信息可以指示当前经由该路由节点实现通信路由的区块链网络。例如,路由节点的通信地址可以包括但不限于:FQDN、IP地址等。例如,路由节点的端口信息可以包括但不限于端口号、端口类型等等。
在一些实施例中,该连接请求可以是基于该多个区块链网络的属性信息之间的匹配关系来生成。例如,该连接请求可以是基于多个区块链网络130、140和150的属性信息之间的匹配关系来生成,其中,匹配可以是指两个区块链网络的属性信息的至少一部分相同或相近似或相关联。在一些实施例中,所述多个区块链网络的属性信息可以包括以下中的至少一项:区块链网络的类型和通信协议信息;区块链网络的用途信息;区块链网络的业务信息;区块链网络的参与方信息。以两个区块链网络130和150为例,区块链网络150的用途信息涉及医疗,业务信息包括病例记录和管理、治疗计费和理赔等,参与方信息包括多个医院,而另一个区块链130的用途信息涉及保险,业务信息包括医疗保险理赔等,参与方信息包括多个保险公司,由于业务上的匹配关系,可以确定区块链网络150需要与区块链网络130进行通信,并发起在两个区块链网络130和150之间进行通信的请求。举另一个例子,区块链网络150和区块链网络130的参与方信息中包括相同的用户,则可以确定区块链网络150可能需要与区块链网络130进行通信,并发起在两个区块链网络130和150之间进行通信的请求。在其他例子中,当区块链网络150的属性信息中的任何一项可以与区块链网络130的属性信息中的任何一项匹配时,可以确定这两个区块链网络可能需要进行通信,并发起在两个区块链网络130和150之间进行通信的请求。例如,由BaaS平台管理的多个区块链网络的属性信息可以包括在BaaS平台的平台信息中。
在一些实施例中,步骤203中由BaaS平台确定或者创建用于实现该多个区块链网络之间的通信路由的路由节点可以包括:确定所述BaaS平台上的路由列表中是否存在用于实现该多个区块链网络中的至少一个区块链网络和由BaaS平台管理的另一区块链网络之间的通信路由的特定路由节点集合;在存在该特定路由节点集合的情况下,基于该特定路由节点集合的权限信息,确定是否允许经由该特定路由节点集合中的每个特定路由节点实现该多个区块链网络之间的通信路由,其中,该权限信息指示当前经由该特定路由节点集合中的每个特定路由节点实现通信路由的区块链网络是否允相应的特定路由节点的复用。例如,BaaS平台120上保存有路由列表,该路由列表中记录了用于实现多个区块链网络之间的通信路由的路由节点。例如,可以通过查找路由列表来确定是否存在实现多个区块链网络130、140和150中的至少一个区块链网络和由BaaS平台120管理的另一区块链网络之间的通信路由的特定路由节点集合,从而确定该至少一个区块链网络是否已经由现有的路由节点提供通信路由。一个路由列表的格式的具体示例如下表所示:
节点信息 | 路由信息 |
190-1 | 区块链网络130和140 |
190-2 | 区块链网络150和160 |
表1
表1给出了BaaS平台120上的路由列表的示例,该路由列表包括节点信息和路由信息,其中,节点信息表示例如路由节点的名称或标识符(ID),路由信息表示路由节点在其之间提供通信路由的多个区块链网络。例如,可以通过诸如表1的路由列表确定存在特定路由节点190-1对多个区块链网络130、140和150中的至少一个(例如,区块链网络130)提供通信路由。然后,可以基于特定路由节点190-1的权限信息来确定是否允许经由所述特定路由节点190-1实现所述多个区块链网络130、140和150之间的通信路由。
在一些实施例中,步骤203中由BaaS平台确定或者创建用于实现该多个区块链网络之间的通信路由的路由节点还可以包括:如果确定允许经由该特定路由节点集合中的一个或多个特定路由节点实现该多个区块链网络的通信路由,则将该一个或多个特定路由节点中的一个特定路由节点确定为该路由节点,向该一个特定路由节点注册该每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新该路由列表中的该一个特定路由节点,或者如果确定不允许经由该特定路由节点集合实现该多个区块链网络的通信路由,则由BaaS平台创建第一路由节点作为该路由节点,向第一路由节点注册该每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将第一路由节点添加到该路由列表中。例如,如果路由节点190-1的权限信息指示该节点的各参与方(例如,区块链网络130和140)允许对路由节点190-1的复用,则可以确定使用已有的路由节点来实现多个区块链网络130、140和150之间的通信路由,并在路由节点190-1注册多个区块链网络130、140和150中的每一个区块链网络的通信地址和该每一个区块链网络的至少一个节点,还需要将区块链网络150加入到路由节点190-1的路由信息中,即更新路由列表。例如,如果路由节点190-1的权限信息指示该节点的各参与方(例如,区块链网络130和140)不允许对路由节点190-1的复用,则在BaaS平台120上创建新的路由节点(例如,第一路由节点)来用于实现多个区块链网络130、140和150之间的通信路由,并向新的路由节点注册多个区块链网络130、140和150中的每一个区块链网络的通信地址和该每一个区块链网络的至少一个节点,还需要将区块链网络130、140和150加入到该新的路由节点190-1的路由信息中,即更新路由列表。例如,向路由节点注册该每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息可以包括:Baas平台发出注册请求(包含需要注册的区块链网络的通信协议信息、该区块链网络的一个或多个区块链节点的通信地址和端口信息)到路由节点,随后路由节点回复注册确认消息给BaaS平台。在该步骤中,通过权限信息可以避免不希望发生的跨某些区块链的通信,通过路由节点的参与方的允许来加入该路由节点,进一步提高了安全性。此外,通过使用已有的路由节点(即,允许路由节点的复用)来实现跨链通信,节省了实现路由所需的资源。在一些实施例中,将该一个或多个特定路由节点中的一个特定路由节点确定为该路由节点可以包括:如果该一个或多个特定路由节点包括两个或更多个特定路由节点,则根据规则选择该一个或多个特定路由节点中的一个特定路由节点作为该路由节点,其中,该规则是基于路由节点的负载、用户(例如,BaaS平台用户,也就是说区块链网络的创建者(管理者))的选择、或随机分配。例如,当存在多个可以复用的路由节点时,BaaS平台可以推荐使用一个负载最小的路由节点,可以让用户自己选择路由节点,或者可以随机分配路由节点。
在一些实施例中,步骤203中由BaaS平台确定或者创建用于实现该多个区块链网络之间的通信路由的路由节点还可以包括:在不存在该特定路由节点集合的情况下,由BaaS平台创建第二路由节点作为该路由节点,向第二路由节点注册该每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将第二路由节点添加到所述路由列表中。在该步骤中,如果特定路由节点不存在,则BaaS平台120创建新的路由节点(即,第二路由节点)来用于实现多个区块链网络130、140和150之间的通信路由。
在一些实施例中,步骤203中由BaaS平台确定或者创建用于实现该多个区块链网络之间的通信路由的路由节点还可以包括:由BaaS平台直接创建用于实现该多个区块链网络之间的通信路由的该路由节点,向该路由节点注册该每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将该路由节点添加到BaaS平台上的路由列表中。在该步骤中,最简单的一种方式是并不查询路由列表,而是直接创建用于实现多个区块链网络130、140和150之间的通信路由的新的路由节点,并向该路由节点注册多个区块链网络130、140和150中的每一个区块链网络的通信协议以及该每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,还需要将区块链网络130、140和150加入到该新的路由节点的路由信息中,即更新路由列表。
在一些实施例中,方法200还可以包括:经由该路由节点在所述多个区块链网络之间进行通信。
在一些实施例中,经由该路由节点在该多个区块链网络之间进行通信可以包括:对于该多个区块链网络中包括的使用第一通信协议的第一区块链网络和使用第二通信协议的第二区块链网络,其中:如果第一通信协议和第二通信协议相同,则经由该路由节点在第一区块链网络与第二区块链网络之间直接转发数据,或者如果第一通信协议和第二通信协议不同,则经由该路由节点将来自第一区块链网络的遵循第一通信协议的第一数据转换为遵循第二通信协议的第二数据并将第二数据转发到第二区块链网络和/或将来自第二区块链网络的遵循第二通信协议的第二数据转换为遵循第一通信协议的第一数据并将第一数据转发到所述第一区块链网络。在该步骤中,例如,区块链网络130使用第一通信协议,区块链网络140使用第二通信协议,当第一通信协议和第二通信协议相同时,该路由节点无需进行通信协议转换而是直接将数据从区块链网络130转发到区块链网络140(反之亦然);当第一通信协议和第二通信协议不同时,路由节点在两个区块链网络之间需要进行通信协议换换,即将来自区块链网络130的遵循第一通信协议的第一数据转化为遵循第二通信协议的第二数据,并将第二数据转发到区块链网络140(反之亦然)。
在一些实施例中,经由该路由节点在该多个区块链网络之间进行通信可以包括:经由该路由节点在该多个区块链网络中的至少两个区块链网络之间传输交易请求,所述交易请求对应于跨所述至少两个区块链网络进行的交易。在该步骤中,通过跨链通信,使得能够实现跨越多个区块链网络中的至少两个区块链网络进行交易,例如跨越至少两个区块链网络进行例如资源转移、合约执行等操作。
在一些实施例中,方法200还可以包括:接收对在由BaaS平台管理的该多个区块链网络之间结束通信的释放请求;以及向该路由节点注销该多个区块链网络中结束跨链通信的至少一个区块链网络的通信协议以及所述至少一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新所述路由列表中的所述路由节点。在一个示例中,用户可以通过客户端设备访问BaaS平台120,以发起在由BaaS平台管理的多个区块链网络130、140和150之间结束通信的释放请求。在另一个示例中,用户可以通过客户端设备访问区块链网络130中的区块链节点,以发起在由BaaS平台管理的多个区块链网络130、140和150之间结束通信的释放请求。相应地,BaaS平台120可以例如从区块链节点接收由区块链节点发送该请求,向该路由节点注销该多个区块链网络中结束跨链通信的至少一个区块链网络的通信协议以及所述至少一个区块链网络中的至少一个区块链节点的通信地址和端口信息。例如,当用户希望使区块链网络150结束跨链通信,同时使区块链网络130和140继续跨链通信,则用户可以通过客户端访问BaaS平台120或区块链网络150的区块链节点来发起结束通信的释放请求,并向路由节点注销区块链网络中150的通信协议以及区块链网络150的至少一个区块链节点的通信地址和端口信息,并更新路由列表中的该路由节点。
根据图2的实施例,不同于传统方式,本公开的实施例中的BaaS平台可以根据需要(例如,业务需求、用户请求等)自动配置区块链网络之间的通信路由,从而实现跨链通信,避免了传统线下交换中的事先协商,并且可以通过选择性地确认或创建路由节点来允许路由节点的复用,节省了实现路由所需的资源,提高了安全性。此外,通过本公开的实施例实现的跨链通信,可以在多个区块链网络之间传输交易请求,从而使得能够实现跨越多个区块链网络进行交易,例如跨越多个区块链网络进行例如资源转移、合约执行等操作,为进一步实现大量的有价值信息和资源在多个区块链之间的交换并提供更多和更复杂的服务应用提供了通信基础。
图3示出了根据本公开实施例的实现多个区块链网络之间的跨链通信的示例性方法300的流程图。可以将该方法200实现在图1的区块链网络130-160中的任何区块链网络的区块链节点处,下面将参照图1和图3来描述方法200。方法200可以由例如图1中由BaaS平台120管理的区块链网络130中的区块链节点执行。如流程图所示,方法300可以包括以下步骤:
步骤301:在第一区块链网络中的区块链节点处,从BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,该路由信息指示由BaaS平台管理的、当前经由该路由节点实现通信路由的多个区块链网络,其中,第一区块链网络包括在该多个区块链网络中。例如,在图1的BaaS平台120处配置了用于实现多个区块链网络130、140和150之前的通信路由的路由节点,并且将路由节点的路由信息、通信地址以及端口信息发送给多个区块链网络130、140和150中的每个区块链网络的至少一个区块链节点。相应地,例如在区块链网络130的区块链节点处,可以从BaaS平台120接收并存储路由节点的路由信息、通信地址以及端口信息,该路由信息指示例如当前经由该路由节点实现通信路由的多个区块链网络130、140和150。例如,路由节点的通信地址可以包括但不限于:FQDN、IP地址等。例如,路由节点的端口信息可以包括但不限于端口号、端口类型等等。
步骤302:当第一区块链网络需要与该多个区块链网络中的至少一个其他区块链网络通信时,利用所存储的该路由节点的通信地址和端口信息向该路由节点发送数据,以便经由该路由节点将该数据转发到该至少一个其他区块链网络中的至少一个区块链节点。例如,当区块链网络130需要与区块链网络140进行通信时,可以在区块链网络130的该区块链节点处向该路由节点发送数据,以便经由该路由节点将该数据转发到区块链网络140中的至少一个区块链节点,路由节点具体转发的过程如前所述。
在一些实施例中,该数据包括交易请求,该交易请求对应于跨第一区块链网络和所述至少一个其他区块链网络进行的交易。通过跨链通信,使得能够实现跨越多个区块链网络中的至少两个区块链网络进行交易,例如跨越至少两个区块链网络进行例如资源转移、合约执行等操作。
根据图3的实施例,不同于传统BaaS平台上管理的区块链网络的区块链节点,本公开的实施例中的区块链节点可以从BaaS平台获得用于实现跨链通信路由的路由节点的路由信息、通信地址和端口信息,从而可以在存在跨链需求时实现跨链通信。此外,通过本公开的实施例实现的跨链通信,可以在多个区块链网络之间传输交易请求,从而使得能够实现跨越多个区块链网络进行交易,例如跨越多个区块链网络进行例如资源转移、合约执行等操作,为进一步实现大量的有价值信息和资源在多个区块链之间的交换并提供更多和更复杂的服务应用提供了通信基础。
图4示出了根据本公开实施例的实现多个区块链网络之间的跨链通信的示例性装置400的示意图。如图4所示,装置400包括处理器401和存储器402,当存储在存储器402中的指令执行时使得处理器401执行本文所描述的方法(例如,图2的方法200和图3的方法300)的步骤中的任何一个或多个步骤。
存储器402可以包括易失性存储器和非易失性存储器,诸如ROM(read onlymemory)、RAM(random access memory)、移动盘、磁盘、光盘和U盘等。处理器401可以是中央处理器(CPU)、微控制器、专用集成电路(ASIC)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、或是被配置为实现本公开的实施例的一个或多个集成电路。
另外或替代地,上述方法能够通过计算机程序产品,即计算机可读存储介质来实现。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本发明内容的各个方面的计算机可读程序指令。计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
一般而言,本公开的各种示例性实施例可以在硬件或专用电路、软件、固件、逻辑,或其任何组合中实施。某些方面可以在硬件中实施,而其他方面可以在可以由控制器、微处理器或其他计算设备执行的固件或软件中实施。当本公开的实施例的各方面图示或描述为框图、流程图或使用某些其他图形表示时,将理解此处描述的方框、装置、系统、技术或方法可以作为非限制性的示例在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备,或其某些组合中实施。
应当注意,尽管在上文的详细描述中提及了设备的若干模块或单元,但是这种划分仅仅是示例性而非强制性的。实际上,根据本公开的实施例,上文描述的两个或更多模块的特征和功能可以在一个模块中具体化。反之,上文描述的一个模块的特征和功能可以进一步划分为由多个模块来具体化。
以上所述仅为本公开的实施例可选实施例,并不用于限制本公开的实施例,对于本领域的技术人员来说,本公开的实施例可以有各种更改和变化。凡在本公开的实施例的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的实施例的保护范围之内。
虽然已经参考若干具体实施例描述了本公开的实施例,但是应该理解,本公开的实施例并不限于所公开的具体实施例。本公开的实施例旨在涵盖在所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。
Claims (29)
1.一种实现多个区块链网络之间的跨链通信的方法,所述多个区块链网络由BaaS平台管理,所述方法包括:
A.接收用于所述跨链通信的连接请求,所述连接请求包括所述多个区块链网络中的每一个区块链网络的通信协议信息以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息;
B.基于所述BaaS平台所支持的可进行通信路由的通信协议集合和所述每一个区块链网络的通信协议信息,确定所述BaaS平台是否支持所述多个区块链网络之间的通信路由;
C.在所述BaaS平台支持所述多个区块链网络之间的通信路由的情况下,由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点;以及
D.将所述路由节点的路由信息、通信地址和端口信息发送给所述每一个区块链网络中的所述至少一个区块链节点,其中,所述路由信息指示当前经由所述路由节点实现通信路由的区块链网络。
2.根据权利要求1所述的方法,所述连接请求是基于所述多个区块链网络的属性信息之间的匹配关系来生成。
3.根据权利要求2所述的方法,所述多个区块链网络的属性信息包括以下中的至少一项:
区块链网络的类型和通信协议信息;
区块链网络的用途信息;
区块链网络的业务信息;
区块链网络的参与方信息。
4.根据权利要求1所述的方法,步骤C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点包括:
C1.确定所述BaaS平台上的路由列表中是否存在用于实现所述多个区块链网络中的至少一个区块链网络和由所述BaaS平台管理的另一区块链网络之间的通信路由的特定路由节点集合;
C2.在存在所述特定路由节点集合的情况下,基于所述特定路由节点集合的权限信息,确定是否允许经由所述特定路由节点集合中的每个特定路由节点实现所述多个区块链网络之间的通信路由,其中,所述权限信息指示当前经由所述特定路由节点集合中的每个特定路由节点实现通信路由的区块链网络是否允许相应的特定路由节点的复用。
5.根据权利要求4所述的方法,步骤C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3.如果确定允许经由所述特定路由节点集合中的一个或多个特定路由节点实现所述多个区块链网络的通信路由,则将所述一个或多个特定路由节点中的一个特定路由节点确定为所述路由节点,向所述特定一个路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新所述路由列表中的所述一个特定路由节点,或者
C3'.如果确定不允许经由所述特定路由节点集合实现所述多个区块链网络的通信路由,则由所述BaaS平台创建第一路由节点作为所述路由节点,向所述第一路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述第一路由节点添加到所述路由列表中。
6.根据权利要求4所述的方法,步骤C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3”.在不存在所述特定路由节点集合的情况下,由所述BaaS平台创建第二路由节点作为所述路由节点,向所述第二路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述第二路由节点添加到所述路由列表中。
7.根据权利要求5所述的方法,步骤C3中将所述一个或多个特定路由节点中的一个特定路由节点确定为所述路由节点包括:
C3”'.如果所述一个或多个特定路由节点包括两个或更多个特定路由节点,则根据规则选择所述一个或多个特定路由节点中的一个特定路由节点作为所述路由节点,其中,所述规则是基于路由节点的负载、用户的选择、或随机分配。
8.根据权利要求1所述的方法,步骤C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3””.由所述BaaS平台直接创建用于实现所述多个区块链网络之间的通信路由的所述路由节点,向所述路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述路由节点添加到所述BaaS平台上的路由列表中。
9.根据权利要求1所述的方法,还包括:
E.经由所述路由节点在所述多个区块链网络之间进行通信。
10.根据权利要求9所述的方法,E.经由所述路由节点在所述多个区块链网络之间进行通信包括:
E1.对于所述多个区块链网络中包括的使用第一通信协议的第一区块链网络和使用第二通信协议的第二区块链网络,其中:
如果所述第一通信协议和所述第二通信协议相同,则经由所述路由节点在所述第一区块链网络与所述第二区块链网络之间直接转发数据,或者
如果所述第一通信协议和所述第二通信协议不同,则经由所述路由节点将来自所述第一区块链网络的遵循所述第一通信协议的第一数据转化为遵循所述第二通信协议的第二数据并将所述第二数据转发到所述第二区块链网络和/或将来自所述第二区块链网络的遵循所述第二通信协议的第二数据转换为遵循所述第一通信协议的第一数据并将所述第一数据转发到所述第一区块链网络。
11.根据权利要求9所述的方法,E.经由所述路由节点在所述多个区块链网络之间进行通信包括:
E2.经由所述路由节点在所述多个区块链网络中的至少两个区块链网络之间传输交易请求,所述交易请求对应于跨所述至少两个区块链网络进行的交易。
12.根据权利要求1所述的方法,其中,所述路由节点包括在所述BaaS平台上的路由列表中,所述方法还包括:
F.接收对在由所述BaaS平台管理的所述多个区块链网络之间结束通信的释放请求;以及
G.向所述路由节点注销所述多个区块链网络中结束跨链通信的至少一个区块链网络的通信协议以及所述至少一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新所述路由列表中的所述路由节点。
13.一种实现多个区块链网络之间的跨链通信的装置,所述多个区块链网络由BaaS平台管理,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
A.接收用于所述跨链通信的连接请求,所述连接请求包括所述多个区块链网络中的每一个区块链网络的通信协议信息以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息;
B.基于所述BaaS平台所支持的可进行通信路由的通信协议集合和所述每一个区块链网络的通信协议信息,确定所述BaaS平台是否支持所述多个区块链网络之间的通信路由;
C.在所述BaaS平台支持所述多个区块链网络之间的通信路由的情况下,由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点;以及
D.将所述路由节点的路由信息、通信地址和端口信息发送给所述每一个区块链网络中的所述至少一个区块链节点,其中,所述路由信息指示当前经由所述路由节点实现通信路由的区块链网络。
14.根据权利要求13所述的装置,所述连接请求是基于所述多个区块链网络的属性信息之间的匹配关系来生成。
15.根据权利要求13所述的装置,所述多个区块链网络的属性信息包括以下中的至少一项:
区块链网络的类型和通信协议信息;
区块链网络的用途信息;
区块链网络的业务信息;
区块链网络的参与方信息。
16.根据权利要求13所述的装置,操作C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点包括:
C1.确定所述BaaS平台上的路由列表中是否存在用于实现所述多个区块链网络中的至少一个区块链网络和由所述BaaS平台管理的另一区块链网络之间的通信路由的特定路由节点集合;
C2.在存在所述特定路由节点集合的情况下,基于所述特定路由节点集合的权限信息,确定是否允许经由所述特定路由节点集合中的每个特定路由节点实现所述多个区块链网络之间的通信路由,其中,所述权限信息指示当前经由所述特定路由节点集合中的每个特定路由节点实现通信路由的区块链网络是否允许相应的特定路由节点的复用。
17.根据权利要求16所述的装置,操作C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3.如果确定允许经由所述特定路由节点集合中的一个或多个特定路由节点实现所述多个区块链网络的通信路由,则将所述一个或多个特定路由节点中的一个特定路由节点确定为所述路由节点,向所述一个特定路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新所述路由列表中的所述一个特定路由节点,或者
C3'.如果确定不允许经由所述特定路由节点集合实现所述多个区块链网络的通信路由,则由所述BaaS平台创建第一路由节点作为所述路由节点,向所述第一路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述第一路由节点添加到所述路由列表中。
18.根据权利要求16所述的装置,操作C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3”.在不存在所述特定路由节点集合的情况下,由所述BaaS平台创建第二路由节点作为所述路由节点,向所述第二路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述第二路由节点添加到所述路由列表中。
19.根据权利要求17所述的装置,操作C3中将所述一个或多个特定路由节点中的一个特定路由节点确定为所述路由节点包括:
C3”'.如果所述一个或多个特定路由节点包括两个或更多个特定路由节点,则根据规则选择所述一个或多个特定路由节点中的一个特定路由节点作为所述路由节点,其中,所述规则是基于路由节点的负载、用户的选择、或随机分配。
20.根据权利要求13所述的装置,操作C中由所述BaaS平台确定或者创建用于实现所述多个区块链网络之间的通信路由的路由节点还包括:
C3””.由所述BaaS平台直接创建用于实现所述多个区块链网络之间的通信路由的所述路由节点,向所述路由节点注册所述每一个区块链网络的通信协议以及所述每一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并且将所述路由节点添加到所述BaaS平台上的路由列表中。
21.根据权利要求13所述的装置,当所述指令执行时使得所述处理器还执行以下操作:
E.经由所述路由节点在所述多个区块链网络之间进行通信。
22.根据权利要求21所述的装置,E.经由所述路由节点在所述多个区块链网络之间进行通信包括:
E1.对于所述多个区块链网络中包括的使用第一通信协议的第一区块链网络和使用第二通信协议的第二区块链网络,其中:
如果所述第一通信协议和所述第二通信协议相同,则经由所述路由节点在所述第一区块链网络与所述第二区块链网络之间直接转发数据,或者
如果所述第一通信协议和所述第二通信协议不同,则经由所述路由节点将来自所述第一区块链网络的遵循所述第一通信协议的第一数据转换为遵循所述第二通信协议的第二数据并将所述第二数据转发到所述第二区块链网络和/或将来自所述第二区块链网络的遵循所述第二通信协议的第二数据转换为遵循所述第一通信协议的第一数据并将所述第一数据转发到所述第一区块链网络。
23.根据权利要求21所述的装置,E.经由所述路由节点在所述多个区块链网络之间进行通信包括:
E2.经由所述路由节点在所述多个区块链网络中的至少两个区块链网络之间传输交易请求,所述交易请求对应于跨所述至少两个区块链网络进行的交易。
24.根据权利要求13所述的装置,其中,所述路由节点包括在所述BaaS平台上的路由列表中,当所述指令执行时使得所述处理器还执行以下操作:
F.接收对在由所述BaaS平台管理的所述多个区块链网络之间结束通信的释放请求;以及
G.向所述路由节点注销所述多个区块链网络中结束跨链通信的至少一个区块链网络的通信协议以及所述至少一个区块链网络中的至少一个区块链节点的通信地址和端口信息,并更新所述路由列表中的所述路由节点。
25.一种实现多个区块链网络之间的跨链通信的方法,所述方法包括:
A.在第一区块链网络中的区块链节点处,从BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,所述路由信息指示由所述BaaS平台管理的、当前经由所述路由节点实现通信路由的多个区块链网络,其中,所述第一区块链网络包括在所述多个区块链网络中;以及
B.当所述第一区块链网络需要与所述多个区块链网络中的至少一个其他区块链网络通信时,利用所存储的所述路由节点的通信地址和端口信息向所述路由节点发送数据,以便经由所述路由节点将所述数据转发到所述至少一个其他区块链网络中的至少一个区块链节点。
26.根据权利要求25所述的装置,所述数据包括交易请求,所述交易请求对应于跨所述第一区块链网络和所述至少一个其他区块链网络进行的交易。
27.一种实现多个区块链网络之间的跨链通信的装置,所述装置包括:
处理器;以及
存储器,其用于存储指令,当所述指令执行时使得所述处理器执行以下操作:
A.在第一区块链网络中的区块链节点处,从所述BaaS平台接收并存储路由节点的路由信息、通信地址和端口信息,所述路由信息指示由所述BaaS平台管理的、当前经由所述路由节点实现通信路由的多个区块链网络,其中,所述第一区块链网络包括在所述多个区块链网络中;以及
B.当所述第一区块链网络需要与所述多个区块链网络中的至少一个其他区块链网络通信时,利用所存储的所述路由节点的通信地址和端口信息向所述路由节点发送数据,以便经由所述路由节点将所述数据转发到所述至少一个其他区块链网络中的至少一个区块链节点。
28.根据权利要求27所述的装置,所述数据包括交易请求,所述交易请求对应于跨所述第一区块链网络和所述至少一个其他区块链网络进行的交易。
29.一种计算机可读存储介质,包括计算机可执行指令,所述计算机可执行指令在装置中运行时使得所述装置执行根据权利要求1-12或权利要求25-26中任一项所述的实现多个区块链网络之间的跨链通信的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811338500.0A CN109462505B (zh) | 2018-11-12 | 2018-11-12 | 实现多个区块链网络之间的跨链通信的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811338500.0A CN109462505B (zh) | 2018-11-12 | 2018-11-12 | 实现多个区块链网络之间的跨链通信的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109462505A true CN109462505A (zh) | 2019-03-12 |
CN109462505B CN109462505B (zh) | 2021-07-30 |
Family
ID=65609999
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811338500.0A Active CN109462505B (zh) | 2018-11-12 | 2018-11-12 | 实现多个区块链网络之间的跨链通信的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109462505B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110266763A (zh) * | 2019-05-20 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、系统及存储介质 |
CN110308903A (zh) * | 2019-07-04 | 2019-10-08 | 明链科技(深圳)有限公司 | 创建区块链网络的方法、电子设备及介质 |
CN110601906A (zh) * | 2019-09-29 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链的数据传输方法及装置 |
CN110602234A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链网络节点管理方法、装置、设备以及存储介质 |
CN110892696A (zh) * | 2019-04-19 | 2020-03-17 | 阿里巴巴集团控股有限公司 | 在区块链网络之间建立通信的方法和设备 |
CN111756736A (zh) * | 2020-06-24 | 2020-10-09 | 深圳市网心科技有限公司 | 一种异构区块链间的跨链方法、系统及电子设备和存储介质 |
CN111770102A (zh) * | 2020-07-01 | 2020-10-13 | 中国建设银行股份有限公司 | 一种区块链跨链方法、装置、计算机设备及存储介质 |
EP3739538A1 (en) * | 2019-05-17 | 2020-11-18 | Samsung SDS Co., Ltd. | System and method of supporting reflection of transactions between blockchain networks |
CN112200681A (zh) * | 2020-12-04 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 区块链网络的业务处理方法、信息处理方法及节点设备 |
CN112241888A (zh) * | 2019-07-19 | 2021-01-19 | 傲为信息技术(江苏)有限公司 | 基于公链的地址管理系统 |
CN113067774A (zh) * | 2021-06-02 | 2021-07-02 | 支付宝(杭州)信息技术有限公司 | 区块链网络间的交易转发方法 |
CN113079079A (zh) * | 2020-09-25 | 2021-07-06 | 支付宝(杭州)信息技术有限公司 | 消息传输方法及装置 |
CN114301866A (zh) * | 2021-12-24 | 2022-04-08 | 杭州趣链科技有限公司 | 联盟链通信方法、系统、电子设备及可读存储介质 |
CN114416871A (zh) * | 2022-01-10 | 2022-04-29 | 中国联合网络通信集团有限公司 | 基于区块链的数据处理方法、装置、设备、系统及介质 |
CN115022053A (zh) * | 2022-06-08 | 2022-09-06 | 京东科技控股股份有限公司 | 访问区块链网络的方法、装置和系统 |
CN115811498A (zh) * | 2023-02-06 | 2023-03-17 | 北京微芯区块链与边缘计算研究院 | 一种联盟链的节点路由方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106850538A (zh) * | 2016-12-06 | 2017-06-13 | 中金云金融(北京)大数据科技股份有限公司 | 区块链路由接入系统及方法 |
US20170243212A1 (en) * | 2016-02-22 | 2017-08-24 | Bank Of America Corporation | System for implementing a distributed ledger across multiple network nodes |
CN107911421A (zh) * | 2017-10-30 | 2018-04-13 | 上海点融信息科技有限责任公司 | 用于配置区块链中跨网络通信的方法、设备和计算机存储介质 |
CN108009811A (zh) * | 2017-11-30 | 2018-05-08 | 中国人民解放军国防科技大学 | 一种面向云际计算环境价值交换的跨链通信方法 |
CN108305056A (zh) * | 2018-03-27 | 2018-07-20 | 搜游网络科技(北京)有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN108616578A (zh) * | 2018-04-09 | 2018-10-02 | 上海点融信息科技有限责任公司 | 跨区块链平台的业务处理方法、设备及计算机可读存储介质 |
-
2018
- 2018-11-12 CN CN201811338500.0A patent/CN109462505B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170243212A1 (en) * | 2016-02-22 | 2017-08-24 | Bank Of America Corporation | System for implementing a distributed ledger across multiple network nodes |
CN106850538A (zh) * | 2016-12-06 | 2017-06-13 | 中金云金融(北京)大数据科技股份有限公司 | 区块链路由接入系统及方法 |
CN107911421A (zh) * | 2017-10-30 | 2018-04-13 | 上海点融信息科技有限责任公司 | 用于配置区块链中跨网络通信的方法、设备和计算机存储介质 |
CN108009811A (zh) * | 2017-11-30 | 2018-05-08 | 中国人民解放军国防科技大学 | 一种面向云际计算环境价值交换的跨链通信方法 |
CN108305056A (zh) * | 2018-03-27 | 2018-07-20 | 搜游网络科技(北京)有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN108616578A (zh) * | 2018-04-09 | 2018-10-02 | 上海点融信息科技有限责任公司 | 跨区块链平台的业务处理方法、设备及计算机可读存储介质 |
Cited By (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835910A (zh) * | 2019-04-19 | 2021-12-24 | 创新先进技术有限公司 | 在区块链网络之间建立通信的方法和设备 |
CN110892696B (zh) * | 2019-04-19 | 2021-08-27 | 创新先进技术有限公司 | 在区块链网络之间建立通信的方法和设备 |
CN113835910B (zh) * | 2019-04-19 | 2024-08-13 | 创新先进技术有限公司 | 在区块链网络之间建立通信的方法和设备 |
CN110892696A (zh) * | 2019-04-19 | 2020-03-17 | 阿里巴巴集团控股有限公司 | 在区块链网络之间建立通信的方法和设备 |
EP3739538A1 (en) * | 2019-05-17 | 2020-11-18 | Samsung SDS Co., Ltd. | System and method of supporting reflection of transactions between blockchain networks |
WO2020233051A1 (zh) * | 2019-05-20 | 2020-11-26 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、装置、系统及介质 |
CN110266763A (zh) * | 2019-05-20 | 2019-09-20 | 深圳壹账通智能科技有限公司 | 跨网段互连的区块链网络实现方法、系统及存储介质 |
CN110308903A (zh) * | 2019-07-04 | 2019-10-08 | 明链科技(深圳)有限公司 | 创建区块链网络的方法、电子设备及介质 |
CN112241888A (zh) * | 2019-07-19 | 2021-01-19 | 傲为信息技术(江苏)有限公司 | 基于公链的地址管理系统 |
WO2021012811A1 (zh) * | 2019-07-19 | 2021-01-28 | 南京瑞祥信息技术有限公司 | 一种基于公链的地址管理系统 |
CN112241888B (zh) * | 2019-07-19 | 2024-03-26 | 傲为有限公司 | 基于公链的地址管理系统 |
JP2022535781A (ja) * | 2019-07-19 | 2022-08-10 | 南京瑞祥信息技術有限公司 | パブリックチェーンに基づくアドレス管理システム |
CN110602234B (zh) * | 2019-09-20 | 2021-10-26 | 腾讯科技(深圳)有限公司 | 区块链网络节点管理方法、装置、设备以及存储介质 |
CN110602234A (zh) * | 2019-09-20 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链网络节点管理方法、装置、设备以及存储介质 |
CN110601906A (zh) * | 2019-09-29 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 一种基于区块链的数据传输方法及装置 |
CN111756736A (zh) * | 2020-06-24 | 2020-10-09 | 深圳市网心科技有限公司 | 一种异构区块链间的跨链方法、系统及电子设备和存储介质 |
CN111770102A (zh) * | 2020-07-01 | 2020-10-13 | 中国建设银行股份有限公司 | 一种区块链跨链方法、装置、计算机设备及存储介质 |
CN113079079A (zh) * | 2020-09-25 | 2021-07-06 | 支付宝(杭州)信息技术有限公司 | 消息传输方法及装置 |
CN113079079B (zh) * | 2020-09-25 | 2022-08-02 | 支付宝(杭州)信息技术有限公司 | 消息传输方法及装置 |
US11445016B2 (en) | 2020-09-25 | 2022-09-13 | Alipay (Hangzhou) Information Technology Co., Ltd. | Methods and apparatuses for transmitting messages |
CN112200681B (zh) * | 2020-12-04 | 2021-05-28 | 腾讯科技(深圳)有限公司 | 区块链网络的业务处理方法、信息处理方法及节点设备 |
CN112200681A (zh) * | 2020-12-04 | 2021-01-08 | 腾讯科技(深圳)有限公司 | 区块链网络的业务处理方法、信息处理方法及节点设备 |
CN113067774B (zh) * | 2021-06-02 | 2021-09-14 | 支付宝(杭州)信息技术有限公司 | 区块链网络间的交易转发方法 |
CN113067774A (zh) * | 2021-06-02 | 2021-07-02 | 支付宝(杭州)信息技术有限公司 | 区块链网络间的交易转发方法 |
CN114301866A (zh) * | 2021-12-24 | 2022-04-08 | 杭州趣链科技有限公司 | 联盟链通信方法、系统、电子设备及可读存储介质 |
CN114301866B (zh) * | 2021-12-24 | 2024-06-07 | 杭州趣链科技有限公司 | 联盟链通信方法、系统、电子设备及可读存储介质 |
CN114416871A (zh) * | 2022-01-10 | 2022-04-29 | 中国联合网络通信集团有限公司 | 基于区块链的数据处理方法、装置、设备、系统及介质 |
CN115022053A (zh) * | 2022-06-08 | 2022-09-06 | 京东科技控股股份有限公司 | 访问区块链网络的方法、装置和系统 |
CN115811498A (zh) * | 2023-02-06 | 2023-03-17 | 北京微芯区块链与边缘计算研究院 | 一种联盟链的节点路由方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109462505B (zh) | 2021-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109462505A (zh) | 实现多个区块链网络之间的跨链通信的方法和装置 | |
CN107733855B (zh) | 一种可同时支持公有链、联盟链及私有链的区块链系统及应用方法 | |
CN107358420B (zh) | 用于实现热点账户的区块链系统以及实现热点账户的方法 | |
JP4897872B2 (ja) | サービス・レジストリ、ならびに関連したシステムおよび方法 | |
CN108416577A (zh) | 一种区块链服务系统 | |
CN108647958A (zh) | 一种基于区块链的数字资产交易方法和系统 | |
CN109087099A (zh) | 一种隐私交易方法及系统、设备和存储介质 | |
CN108170857B (zh) | 一种电子证照跨域互联服务的建立方法和调用方法 | |
CN108769258A (zh) | 用于将区块链网络托管于区块链应用平台的方法和装置 | |
CN108520415A (zh) | 基于区块链的数据处理方法及装置 | |
CN106850538B (zh) | 区块链路由接入系统及方法 | |
CN109063138A (zh) | 用于在区块链即服务平台搜索数据的方法、设备及存储介质 | |
CN109559229A (zh) | 基于区块链的更新智能合约组的方法 | |
CN109547200A (zh) | 区块链网络中的证书分配方法及相应的计算设备和介质 | |
Di Martino et al. | Towards an Ontology-Based Intercloud Resource Catalogue--The IEEE P2302 Intercloud Approach for a Semantic Resource Exchange | |
CN108540577A (zh) | 智慧供应链物联网管理平台的多区块链交叉复合应用架构 | |
CN102118370A (zh) | 业务管理方法、装置和系统 | |
CN103699391A (zh) | 从传统Web服务到多维度语义模型的Web服务转换方法 | |
CN110109766A (zh) | 数据请求方法、装置、系统、数据转发装置及存储介质 | |
CN103701935A (zh) | 一种云计算服务平台的构建方法及系统 | |
CN103699667A (zh) | Web服务的多维度语义模型建立方法 | |
CN101576919B (zh) | 标识生成方法和装置 | |
CN113452701B (zh) | 跨链系统、面向跨链系统的分布式用户身份认证方法 | |
CN103595710A (zh) | 一种一体化标识网络连接标识生成方法 | |
JP2018185614A (ja) | 営業支援システム |
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 |