一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种跨链协同治理系统、方法、设备及存储介质与流程

2022-07-30 11:31:48 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及区块链技术领域,具体涉及一种跨链协同治理系统、一种跨链协同治理方法、一种跨链协同治理设备以及一种计算机可读存储介质。


背景技术:

2.随着产业区块链的加速发展,区块链技术在金融、政务服务、司法、溯源、医疗、能源等众多领域都纷纷落地应用,快速发展的成果显著,在产业区块链进入快车道发展的同时,不同应用场景下的各应用子链之间亟需进行跨链互操作;所谓跨链互操作是指各应用子链之间能够互联互通,实现数据在各应用子链之间安全、可信地转移。目前,可以通过公证人机制(notary schemes)、侧链(sidechains)、中继(relays)、哈希锁定(hash-locking)等技术实现各应用子链之间的跨链互操作;但是,上述几种技术中跨链互操作的执行效率比较低、执行速度比较慢,难以支撑产业区块链场景下大量数据进行跨链互操作的需求。


技术实现要素:

3.本技术实施例提供了一种跨链协同治理系统、方法、设备及存储介质,可以有效提升各应用子链之间跨链互操作的执行效率。
4.第一方面,本技术实施例提供一种跨链协同治理系统,该跨链协同治理系统用于对跨链联盟中的应用子链之间的跨链互操作进行协同服务和管控治理;跨链联盟中包括布设于第一区块链网络下的第一应用子链和布设于第二区块链网络下的第二应用子链;该跨链协同治理系统包括:
5.跨链接入应用层,用于将第一应用子链和第二应用子链接入至跨链协同治理系统;
6.可信跨链协同层,用于为第一应用子链与第二应用子链之间的跨链互操作提供协同服务,包括:在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序;建立第一协同服务程序和第二协同服务程序之间的通信连接以使第一应用子链与第二应用子链之间进行跨链互操作;
7.可信跨链治理层,用于对第一应用子链与第二应用子链之间的跨链互操作进行管控治理,包括:运行治理链,治理链包括与第一应用子链相关联的第一治理节点和与第二应用子链相关联的第二治理节点;建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接,以对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
8.在一种实现方式中,第一区块链网络中包含第一服务设备;可信跨链协同层在第一区块链网络中部署第一协同服务程序,包括:可信跨链协同层在第一服务设备中部署第一协同服务程序,并指示第一服务设备在第一协同服务程序中配置第一应用子链的参数;
9.第二区块链网络中包含第二服务设备;可信跨链协同层在第二区块链网络中部署第二协同服务程序,包括:可信跨链协同层在所述第二服务设备中部署第二协同服务程序,
并指示第二服务设备在第二协同服务程序中配置第二应用子链的参数。
10.在一种实现方式中,第一协同服务程序或第二协同服务程序均包括跨链服务接口、子链代理服务子程序和跨链互操作引擎;其中,
11.跨链服务接口用于接收相应应用子链所属的区块链网络中的跨链互操作的业务请求;
12.子链代理服务子程序用于监听相应应用子链上的业务请求;
13.跨链互操作引擎用于当子链代理服务子程序监听到相应应用子链上存在跨链互操作的业务请求时,或者当在跨链服务接口上接收到相应应用子链所属的区块链网络中的跨链互操作的业务请求时,执行跨链互操作。
14.在一种实现方式中,可信跨链治理层还包括治理服务;可信跨链治理层还用于将治理服务以智能合约的方式部署于治理链中,并将智能合约开放给第一治理节点和第二治理节点调用,来对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
15.在一种实现方式中,跨链协同治理系统还包括安全支撑层,用于提供跨链安全规则,包括:向可信跨链协同层提供跨链安全规则的指引,以使可信跨链协同层在安全支撑层提供的跨链安全规则的指引下提供协同服务;以及,向可信跨链治理层提供安全规则的指引,以使可信跨链治理层在安全支撑层提供的跨链安全规则的指引下进行管控治理。
16.本技术实施例中,跨链协同治理系统包括跨链接入应用层、可信跨链协同层和可信跨链治理层。跨链协同治理系统的可信跨链协同层可以建立第一协同服务程序和第二协同服务程序之间的通信连接以使第一应用子链与第二应用子链之间进行跨链互操作;第一协同服务程序由可信跨链协同层部署于第一区块链网络中,第一应用子链布设于第一区块链网络中;第二协同服务程序由可信跨链协同层部署于第二区块链网络中,第二应用子链布设于第二区块链网络中。跨链协同治理系统的可信跨链治理层可以建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接,从而基于治理链中的第一治理节点和治理链中的第二治理节点来对第一应用子链与第二应用子链之间的跨链互操作进行管控治理;第一治理节点与第一应用子链相关联,第二治理节点与第二应用子链相关联。通过跨链协同治理系统的可信跨链协同层对跨链联盟中的应用子链之间的跨链互操作进行协同服务以及通过跨链协同治理系统的可信跨链治理层对跨链联盟中的应用子链之间的跨链互操作进行管控治理,能够有效提升跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间跨链互操作的执行效率。
17.第二方面,本技术实施例提供一种跨链协同治理方法,该跨链协同治理方法应用于上述第一方面所述的跨链协同治理系统中,该跨链协同治理方法包括:
18.将第一应用子链和第二应用子链接入至跨链协同治理系统;
19.在治理链中构建与第一应用子链相关联的第一治理节点,以及在治理链中构建与第二应用子链相关联的第二治理节点;
20.在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序;
21.建立第一协同服务程序与第二协同服务程序之间的通信连接,并在第一应用子链与第二应用子链之间进行跨链互操作;
22.建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程
序与第二治理节点之间的通信连接;以及,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
23.本技术实施例中,将跨链联盟中的第一应用子链和第二应用子链接入跨链协同治理系统之后,需要在治理链中构建与第一应用子链相关联的第一治理节点,在治理链中构建与第二应用子链相关联的第二治理节点,以及需要在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序,第一应用子链布设于第一区块链网络中,第二应用子链布设于第二区块链网络中;还需要建立第一协同服务程序与第二协同服务程序之间的通信连接,建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接;从而,可以基于第一协同服务程序与第二协同服务程序之间的相互通信,在第一应用子链与第二应用子链之间进行跨链互操作;以及基于第一协同服务程序与第一治理节点之间的相互通信,基于第二协同服务程序与第二治理节点之间的相互通信,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。由上述方案可知,通过各应用子链对应的协同服务程序之间的相互通信,能够实现跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作,以及通过治理链中的治理节点对跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作进行管控治理,能够有效提升各应用子链之间的跨链互操作的执行效率。
24.第三方面,本技术实施例提供一种跨链协同治理设备,该跨链协同治理设备中部署有上述第一方面所述的跨链协同治理系统,该跨链协同治理系统用于执行上述第二方面所述的跨链协同治理方法。
25.第四方面,本技术实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被计算机设备的处理器读取并执行时,使得计算机设备执行上述第二方面所述的跨链协同治理方法。
26.第五方面,本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第二方面所述的跨链协同治理方法。
附图说明
27.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
28.图1示出了本技术一个示例性实施例提供的一种区块链网络的结构示意图;
29.图2示出了本技术一个示例性实施例提供的一种区块结构的示意图;
30.图3示出了本技术一个示例性实施例提供的一种跨链协同治理系统的架构示意图;
31.图4示出了本技术一个示例性实施例提供的一种跨链协同治理系统的产品模型的架构示意图;
32.图5示出了本技术一个示例性实施例提供的一种跨链协同治理方法的流程示意图;
33.图6示出了本技术一个示例性实施例提供的一种治理链的创建过程的流程示意图;
34.图7示出了本技术一个示例性实施例提供的一种治理链的初始化过程的流程示意图;
35.图8示出了本技术一个示例性实施例提供的一种应用子链申请加入跨链联盟的流程示意图;
36.图9示出了本技术一个示例性实施例提供的一种跨链互操作申请过程的流程示意图;
37.图10示出了本技术一个示例性实施例提供的一种跨链互操作过程的流程示意图;
38.图11示出了本技术另一个示例性实施例提供的一种跨链互操作过程的流程示意图;
39.图12示出了本技术一个示例性实施例提供的一种跨链协同治理设备的结构示意图。
具体实施方式
40.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
41.本技术实施例涉及区块链网络。区块链网络可以是由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。
42.请参见图1,图1示出了本技术一个示例性实施例提供的一种区块链网络的结构示意图,区块链网络100(或者称为分布式系统100)由多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端形成,节点之间形成组成的点对点(peer to peer,p2p)网络,p2p协议是一个运行在传输控制协议(transmission control protocol,tcp)协议之上的应用层协议。在分布式系统中,任何机器如服务器、终端都可以加入而成为节点,节点包括硬件层、中间层、操作系统层和应用层。
43.参见图1示出的区块链网络中各节点的功能,涉及的功能可以包括:
44.(1)路由,节点具有的基本功能,用于支持节点之间的通信。
45.(2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链网络中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。
46.例如,应用实现的业务包括:
47.①
钱包,用于提供进行电子货币的交易的功能,包括发起交易(即将当前交易的交易记录发送给区块链网络中的其他节点),其他节点验证成功后,作为承认交易有效的响
应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币;
48.②
共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链网络中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。
49.③
智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易;即智能合约是运行在区块链上的一段可执行程序,在区块链上进行交易时,触发其自动执行。例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。
50.④
区块链(blockchain),包括一系列按照产生的先后时间顺序相互接续的区块(block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链网络中节点提交的记录数据。
51.区块链是分布式数据存储,点对点传输,共识机制,加密算法等计算机技术的新型应用模型。区块链本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学相关联产生的数据块,各个数据块之间通过随机散列算法(也称哈希算法)实现链接,后一个区块包含前一个区块的哈希值。区块链技术在数字资产,智能合约,物流追踪,产品保护等场景有着广泛应用。
52.请参见图2,图2是本技术一个示例性实施例提供的一种区块结构的示意图,如图2所示的区块结构(block structure),每个区块中包括本区块存储交易记录的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
53.本技术实施例提供一种跨链协同治理系统(也可以称为跨链协同治理平台(cross-chain governance collaboration platform,ccgp)),该跨链协同治理系统提出“以链治链”的跨链互操作模式;所谓“以链治链”的跨链互操作模式具体可以是指通过跨链协同治理系统中的治理链对跨链联盟中的各应用子链之间的跨链互操作的全流程进行管控与治理;所谓跨链互操作具体可以是指跨链联盟中的各应用子链之间能够互联互通,实现数据在各应用子链之间安全、可信地转移;跨链联盟中的各应用子链的管理机构通过治理链参与跨链治理,成为治理链中的治理节点,治理链由多个治理节点组成;跨链协同治理系统通过“以链治链”的跨链互操作模式,能够有效提升跨链联盟的各应用子链之间的跨链互操作的执行效率。
54.图3示出了本技术一个示例性实施例提供的一种跨链协同治理系统的架构示意图,该跨链协同治理系统可以用于对跨链联盟中的应用子链之间的跨链互操作进行协同服务和管控治理。如图3所示,该跨链协同治理系统可以包括跨链接入应用层、可信跨链协同层、可信跨链治理层和安全支撑层,下面对跨链协同治理系统中的各层逐一进行介绍:
55.(1)跨链接入应用层
56.①
跨链协同治理系统的跨链接入应用层可以用于将跨链联盟中的各应用子链接入至跨链协同治理系统。跨链联盟中可以包括n条应用子链,n为大于1的整数;以跨链联盟中包括第一应用子链和第二应用子链为例,第一应用子链是跨链联盟中的任一条,第二应用子链是跨链联盟中除第一应用子链之外的任一条;跨链接入应用层可以用于将第一应用子链和第二应用子链接入跨链协同治理系统中。其中:
57.应用子链是指在各个应用场景(例如司法存证、溯源、知识产权保护、政务大数据等应用场景)中基于区块链技术搭建的区块链。应用子链可以是公有链、私有链或联盟链中的任意一种。公有链可以理解为是在公有链所属的区块链网络中公开,无授权机制的区块链。私有链可以理解为是在私有链所属的区块链网络中所有节点都掌握在一家机构手中的区块链。联盟链可以是指针对某个特定群体的成员(例如某个机构或某几个机构的成员)和有限的第三方,其内部指定多个预选节点为记账人,联盟链中每个区块的生成由所有的预选节点共同决定。本技术实施例中以应用子链是联盟链为例进行说明,一条应用子链可以对应一个管理机构(例如管理机构可以是多个预选节点中的任一个预选节点对应的机构),一个管理机构可以管理多条应用子链。
58.跨链联盟是由n条应用子链组成的联盟,跨链联盟中的各应用子链可以通过跨链协同治理系统实现跨链互操作;并且跨链协同治理系统向跨链联盟中的各应用子链之间的跨链互操作提供协同服务,并对跨链联盟中的各应用子链之间的跨链互操作进行管控治理。跨链联盟中的各应用子链可以是同构链,也可以是异构链。互为同构链的多条应用子链可以采用相同的区块链技术进行构建;例如,互为同构链的多条应用子链可以采用相同的共识机制、相同的区块验证方式,以及具备相同的区块数据结构;以第一应用子链和第二应用子链为例,若第一应用子链和第二应用子链互为同构链,则第一应用子链和第二应用子链采用相同的共识机制进行区块共识,采用相同的区块验证方式进行区块验证,并且第一应用子链中的区块数据结构与第二应用子链中的区块数据结构相同。互为异构链的多条应用子链可以采用不同的区块链技术进行构建;例如,互为异构链的多条应用子链采用不同的共识机制、不同的区块验证方式,以及具备不同的区块数据结构;以第一应用子链和第二应用子链为例,若第一应用子链和第二应用子链互为异构链,则第一应用子链采用第一共识机制进行区块共识,第二应用子链采用第二共识机制进行区块共识,第一应用子链采用第一区块验证方式进行区块验证,第二应用子链采用第二区块验证方式进行区块验证,第一应用子链中的区块数据结构为第一结构,第二应用子链中的区块结构为第二结构,第一共识机制与第二共识机制不相同,第一区块验证方式与第二区块验证方式不相同,第一结构与第二结构不相同。跨链协同治理系统向互为同构链的应用子链以及互为异构链的应用子链提供了标准化的接入通道,即标准化的接入通道可以接入互为同构链的应用子链,也可以接入互为异构链的应用子链,使得跨链协同治理系统具备通用性,极易扩展。
59.②
跨链协同治理系统的跨链接入应用层还可以用于将跨链联盟中的各应用子链所属的区块链网络中的业务应用接入至跨链协同治理系统。具体地,跨链接入应用层可以用于将跨链联盟中的各应用子链所属的区块链网络中的一个或多个业务应用接入至跨链协同治理系统;以跨链联盟中包括第一应用子链和第二应用子链为例,跨链接入应用层可以用于将第一应用子链所属的第一区块链网路中的第一业务应用接入至跨链协同治理系统中,跨链接入应用层也可以用于将第二应用子链所属的第二区块链网络中的第二业务应
用接入至跨链协同治理系统中;应用子链所属的区块链网络中的业务应用具体可以是dapp(decent ralized application,去中心化应用)。
60.跨链联盟中的应用子链所属的区块链网络中的业务应用也可以发起跨链互操作,也就是说,本技术实施提及的跨链互操作可以包括两种情况:一种是应用子链与应用子链之间的跨链互操作,即跨链联盟中的应用子链与跨链联盟中的另一应用子链之间的跨链互操作(例如可以是第一应用子链与第二应用子链之间的跨链互操作);另一种是业务应用与应用子链之间的跨链互操作,即跨链联盟中的应用子链所属的区块链网络中的业务应用与跨链联盟中的另一应用子链之间的跨链互操作(例如可以是第一应用子链所属的第一区块链网络中的第一业务应用与第二应用子链之间的跨链互操作)。
61.(2)可信跨链协同层
62.跨链协同治理系统的可信跨链协同层可以用于为跨链联盟中的应用子链之间的跨链互操作提供协同服务。其中:
63.①
可信跨链协同层可以用于向跨链联盟中的应用子链部署协同服务程序。以跨链联盟中包括第一应用子链和第二应用子链为例进行说明,第一应用子链属于第一区块链网络(即第一应用子链布设于第一区块链网络中),第二应用子链属于第二区块链网络(第二应用子链布设于第二区块链网络中);可信跨链协同层用于在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序。接入至跨链系统治理系统的第一应用子链所属的第一区块链网络和接入至跨链系统治理系统的第二应用子链所属的第二区块链网络可以具备不同的组网拓扑模型,即第一区块链网络和第二区块链网络可以具备不同的组网拓扑模型,跨链协同治理系统可以支撑不同的组网拓扑模型,使得跨链协同治理系统具备通用性,极易扩展。
64.可信跨链协同层用于在第一区块链网络中部署第一协同服务程序,具体可以是指:第一区块链网络中包含第一服务设备,可信跨链协同层可以在第一服务设备中部署第一协同服务程序,并指示第一服务设备在第一协同服务程序中配置第一应用子链的参数;第一应用子链的参数可以包括但不限于第一应用子链的管理机构的机构信息、第一应用子链的子链信息等等;第一应用子链的管理机构可以通过第一服务设备登录第一协同服务程序,例如,跨链协同治理系统可以提供跨链协同治理界面,第一应用子链的管理机构的管理员可以通过向第一服务设备中显示的跨链协同治理界面中输入第一账号信息,以登录第一协同服务程序。可信跨链协同层用于在第二区块链网络中部署第二协同服务程序,具体可以是指:第二区块链网络中包含第二服务设备,可信跨链协同层可以在第二服务设备中部署第二协同服务程序,并指示第二服务设备在第二协同服务程序中配置第二应用子链的参数;第二应用子链的参数可以包括但不限于第二应用子链的管理机构的机构信息、第二应用子链的子链信息等等;第二应用子链的管理机构可以通过第二服务设备登录第二协同服务程序,例如,跨链协同治理系统可以提供跨链协同治理界面,第二应用子链的管理机构的管理员可以通过向第二服务设备中显示的跨链协同治理界面中输入第二账号信息,以登录第二协同服务程序。需要说明的是,区块链网络中的服务设备可以是指部署于区块链网络中的、独立于区块链网络中的应用子链之外的服务器或服务集群设备;例如,第一服务设备是指第一区块链网络中独立于第一应用子链之外的服务器,该第一服务设备通过其上部署的第一协同服务程序与第一应用子链通信;再如,第二服务设备是指第二区块链网络中独
立于第二应用子链之外的服务器,该第二服务设备通过其上部署的第二协同服务程序与第二应用子链通信。
65.②
可信跨链协同层可以通过对部署在各区块链网络中的协同服务程序进行管理来为各应用子链之间的跨链互操作提供协同服务。以第一应用子链与第二应用子链之间的跨链互操作为例,可信跨链协同层通过对第一协同服务程序和第二协同服务程序进行管理来对第一应用子链与第二应用子链之间的跨链互操作提供协同服务。跨链协同层用于建立第一协同服务程序和所述第二协同服务程序之间的通信连接以使第一应用子链与第二应用子链之间进行跨链互操作;建立第一协同服务程序和第二协同服务程序之间的通信连接具体可以是指:在第一协同服务程序和第二协同服务程序运行跨链协议,使得第一协同服务程序和第二协同服务程序之间可以通过跨链协议进行通信。具体地,可信跨链协同层支持第一协同服务程序与第二协同服务程序之间相互通信,以协同第一应用子链与第二应用子链之间进行跨链互操作;也就是说,第一应用子链与第二应用子链之间的跨链互操作是通过第一协同服务程序与第二协同服务程序之间相互通信实现的;第一协同服务程序与第二协同服务程序之间直接进行相互通信,能够有效提升第一应用子链与第二应用子链之间跨链互操作的执行效率。
66.第一协同服务程序或第二协同服务程序中均可以包括跨链服务接口、子链代理服务子程序和跨链互操作引擎。跨链服务接口可以用于接收相应应用子链所属的区块链网络中的跨链互操作的业务请求。子链代理服务子程序可以用于监听相应应用子链上的业务请求;子链代理服务子程序还可以用于对相应应用子链进行权限控制;子链代理服务子程序还可以用于对相应应用子链进行流量控制;子链代理服务子程序还可以用于进行tls(transport layer security,安全传输层协议)双向认证,以对跨链双方的安全证书(例如可以是ca(certificate authority,证书颁发机构)颁发的ca证书)进行认证(例如对第一协同服务程序的安全证书认证和对第二协同服务的安全证书进行认证)。跨链互操作引擎可以用于执行跨链互操作;其中,跨链互操作引擎所执行的跨链互操作可以包括但不限于:验签服务、公钥管理、身份注册、权限认证、管道申请与授权、预警监控、协同间交互、交易验证、交易台账、amdp(authorized multi-stage distributed protocol,跨链协议)、跨链适配器、权限控制等等;其中amdp是面向产业区块间的跨链协议,该跨链协议涵盖权限验证、数据完整性校验、跨链互操作交互流程等。跨链互操作引擎用于当子链代理服务子程序监听到相应应用子链上存在跨链互操作的业务请求时,执行跨链互操作;例如,当第一协同服务程序的子链代理服务子程序监听到第一应用子链上存在跨链互操作的业务请求时,第一协同服务程序的跨链互操作引擎用于执行跨链互操作。或者,跨链互操作引擎用于当在跨链服务接口上接收到相应应用子链所属的区块链网络中的跨链互操作的业务请求时,执行跨链互操作,业务请求可以是相应应用子链所属的区块链网络中的业务应用发送的;例如,当在第二协同服务程序的跨链服务接口上接收到第二应用子链所属的第二区块链网络中的第二业务应用发送的跨链互操作的业务请求时,第二协同服务程序的跨链互操作引擎用于执行跨链互操作。
67.③
可信跨链协同层还支持第一协同服务程序与治理链中的第一治理节点之间相互通信,以及支持第二协同服务程序与治理链中的第二治理节点之间相互通信,第一治理节点与第一应用子链相关联,第二治理节点与第二应用子链相关联。换句话说,第一协同服
务程序是连接第一应用子链与第一治理节点的中间可信服务,第二协同服务程序是连接第二应用子链与第二治理节点的中间可信服务。
68.(3)可信跨链治理层
69.跨链协同治理系统的可信跨链治理层可以对跨链联盟中的应用子链之间的跨链互操作进行管控治理。其中:
70.①
可信跨链治理层可以包括治理链,可信跨链治理层可以通过治理链对跨链联盟中的应用子链之间的跨链互操作进行管控治理。治理链可以包括m个治理节点,治理节点是已加入跨链联盟中的各应用子链对应的管理机构在治理链中构建的节点,治理链中的治理节点均具备参与跨链治理的权限,m为大于1的整数;跨链联盟中的各应用子链的管理机构均加入到治理链中,在治理链中建立治理节点,共同参与跨链互操作的管控治理,使得跨链协同治理系统能够实现多方共建、多方共治。当跨链联盟中的某条应用子链(例如第三应用子链)存在跨链互操作的业务需求时,第三应用子链的管理机构可以申请加入到治理链中,成为治理链中的第三治理节点,参与跨链互操作的管控治理。按照权限划分,治理链包括的m个治理节点中可以包括p个创世节点以及m-p个普通的治理节点,p为正整数且p≤m。普通的治理节点仅具备参与跨链治理的权限;而创世节点不仅具备参与跨链治理的权限,还具备对治理链的管理权限。此处,参与跨链治理的权限包括但不限于:对跨链互操作的双方进行统一身份管理的权限、准入治理的权限、管道配置管理的权限、跨链智能合约管理的权限、事务管控的权限、治理与评价的权限、协同服务管控的权限等等与跨链互操作相关的权限。而对治理链的管理权限包括:创建治理链的权限、运行治理链的权限、对普通的治理节点进行管理的权限等等。治理链至少可以由多个(两个或两个以上,例如4个)创世机构协商创建,各个创世机构创建创世节点,组网并构建治理链;在治理链构建完成后,由创世节点对该治理链进行初始化并运行。治理链在运行过程中,创世节点的数量还可以继续增加,例如,治理链中的某个治理节点对应的管理机构具备较高的管理权限,则经所有创世节点投票通过可以将该治理节点确定为创世节点。另外,治理链还可以包括s个观察节点,s为正整数;观察节点不具备对治理链的管理权限,也不具备参与跨链治理的权限,其不参与治理链的区块共识,仅同步治理链中的区块信息;实际应用中,观察节点一般可以是审计机构参与跨链治理的节点。
71.治理链中的一个治理节点对应一个管理机构,一个管理机构可以对跨链联盟中的一条或多条应用子链进行管理,即治理链中的一个治理节点与跨链联盟中的一条或多条应用子链相关联。治理节点与应用子链相关联是指治理节点与应用子链属于同一管理机构。例如,第一应用子链与治理链中的第一治理节点相关联,第一治理节点是第一应用子链的管理机构参与跨链治理的节点;第二应用子链与治理链中的第二治理节点相关联,第二治理节点是第二应用子链的管理机构参与跨链治理的节点。治理链是基于区块链技术构建的联盟链,可信跨链治理层基于治理链对跨链互操作中涉及的跨链参与方(即跨链联盟中的各应用子链、跨链联盟中的各应用子链的管理机构)、跨链权限、跨链事务、跨链执行等进行管控治理。可信跨链治理层可以用于建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接,以对第一应用子链与第二应用子链之间的跨链互操作进行管控治理;建立第一协同服务程序与第一治理节点之间的通信连接具体可以是指:在第一协同服务程序和第一治理节点中运行跨链协议,使得第一
协同服务程序和第一治理节点之间可以通过跨链协议进行通信;建立第二协同服务程序与第二治理节点之间的通信连接具体可以是指:在第二协同服务程序和第二治理节点中运行跨链协议,使得第一协同服务程序和第一治理节点之间可以通过跨链协议进行通信。可信跨链协同层可以支持第一协同服务程序与第一治理节点之间相互通信,且支持第二协同服务程序与第二治理节点之间相互通信;可信跨链治理层可以基于第一协同服务程序与第一治理节点之间的相互通信,以及基于第二协同服务程序与所述第二治理节点之间的相互通信,来对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
72.②
可信跨链治理层还包括治理服务,治理服务以智能合约的方式部署于治理链中;治理服务是跨链协同治理系统对跨链联盟中的应用子链之间的跨链互操作进行管控治理的服务支撑,治理服务可以包括但不限于:统一身份管理、准入治理、管道配置管理、跨链合约管理、跨链台账、事务管控、治理与评价、协同服务管控以及应用子链、业务应用、业务数据的目录配置等等。可信跨链治理层将智能合约开放给治理链中的治理节点进行调用,治理链中的治理节点通过调用并运行治理服务对应的智能合约来对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。例如,可信跨链治理层将智能合约开放给第一治理节点和第二治理节点调用,第一治理节点可以调用并运行统一身份管理对应的智能合约,对第一应用子链的管理机构的机构信息进行管理;第二治理节点可以调用并运行管道配置管理对应的智能合约对第二治理节点接入治理链的接入通道进行配置。
73.(4)安全支撑层
74.跨链协同治理系统的安全支撑层用于提供跨链安全规则,安全支撑层基于跨链安全规则对跨链协同治理系统提供安全保障。安全支撑层可以用于向可信跨链协同层提供安全规则的指引,以使在第一应用子链与第二应用子链之间进行跨链互操作的过程中,可信跨链协同层可以在安全支撑层提供的跨链安全规则的指引下提供协同服务;安全支撑层可以用于向可信跨链治理层提供安全规则的指引,以使在第一应用子链与第二应用子链之间进行跨链互操作的过程中,可信跨链治理层可以在安全支撑层提供的跨链安全规则的指引下进行管控治理。
75.跨链安全规则可以包括但不限于:证书合规规则、安全沙箱规则、算法安全规则、可信防护规则、合约审计规则、通信安全规则、秘钥管理安全规则。举例来说,在可信跨链协同层对参与跨链互操作的第一应用子链和第二应用子链进行tls双向认证时,可以基于证书合规规则对第一协同服务程序的安全证书以及第二协同服务程序的安全证书进行认证。跨链安全规则从多个方面(例如通信安全、安全沙箱中间件、证书合规、合约审计、密钥管理、节点与跨链中继服务的可信防护环境以及跨链权限管理等方面)向跨链协同治理系统提供安全支撑,能够提高跨链联盟中各个应用子链之间跨链互操作的安全性。
76.本技术实施例中,基于跨链接入应用层、可信跨链协同层、可信跨链治理层、安全支撑层之间的相互配合,跨链协同治理系统可以实现“以链治链”的跨链互操作模式;可信跨链协同层支持第一协同服务程序与第二协同服务程序之间相互通信,通过第一协同服务程序与第二协同服务程序之间直接进行通信,有效提升了第一应用子链与第二应用子链之间的跨链互操作的执行效率;第一协同服务程序将第一治理节点与第一应用子链进行连接,第二协同服务程序将第二治理节点与第二应用子链进行连接,可信跨链协同层支持第一协同服务程序与第一治理节点之间相互通信,且支持第二协同服务程序与第二治理节点
之间相互通信;可信跨链治理层基于第一协同服务程序与第一治理节点之间的相互通信以及第二协同服务程序与第二治理节点之间的相互通信,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理,有效提升了第一应用子链与第二应用子链之间的跨链互操作的执行效率。由此可见,跨链协同治理系统可以向跨链联盟中的各应用子链之间的跨链互操作提供协同服务,以及跨链协同治理系统可以对跨链联盟中的各应用子链之间的跨链互操作进行管控治理,“以链治链”的跨链互操作模式能够有效提高跨链联盟中的各应用子链之间的跨链互操作的执行效率。
77.图3所示的跨链协同治理系统可以实现图4所示的产品模型,图4示出了本技术一个示例性实施例提供的一种跨链协同治理系统的产品模型的架构示意图;如图4所示,治理链中包括创世节点、第一治理节点、第二治理节点和第三治理节点;需要说明的是,治理链包括创世节点、第一治理节点、第二治理节点和第三治理节点仅用于示例,在实际应用场景中,治理链中的创世节点、治理节点的数量可以为其他情况。第一治理节点与第一应用子链相关联,第二治理节点与第二应用子链相关联,第三治理节点与第三应用子链相关联;第一协同服务程序、第二协同服务程序与第三协同服务程序之间可以相互通信;第一协同服务程序与第一治理节点之间可以相互通信,第一协同服务程序将第一治理节点与第一应用子链、第一应用子链所属的第一区块链网络中的第一业务应用连接起来,第二协同服务程序将第二治理节点与第二应用子链、第二应用子链所属的第二区块链网络中的第二业务应用连接起来,第三协同服务程序将第三治理节点与第三应用子链、第三应用子链所属的第三区块链网络中的第三业务应用连接起来。
78.在图4所示的跨链协同治理系统的产品模型中,可以实现应用子链加入跨链联盟、应用子链申请跨链互操作权限以及应用子链之间进行跨链互操作等过程;以第一应用子链和第二应用子链为例,下面分别对应用子链加入跨链联盟、应用子链申请跨链互操作权限以及应用子链之间进行跨链互操作这三个过程进行介绍:
79.(1)应用子链加入跨链联盟
80.当第一应用子链申请加入跨链联盟时,第一应用子链的管理机构需要向治理链提交加入申请;当治理链同意第一应用子链加入跨链联盟后,第一应用子链的管理机构加入至治理链中,成为治理链中的第一治理节点;跨链协同治理系统的可信跨链协同层在第一应用子链所属的第一区块链网络中的第一服务设备中部署第一协同服务程序;至此,第一应用子链成功加入跨链联盟,第一应用子链具备跨链互操作的第一条件。
81.当第二应用子链申请加入跨链联盟时,第二应用子链的管理机构需要向治理链提交加入申请;当治理链同意第二应用子链加入跨链联盟后,第二应用子链的管理机构加入至治理链中,成为治理链中的第二治理节点;跨链协同治理系统的可信跨链协同层在第二应用子链所属的第二区块链网络中的第二服务设备中部署第二协同服务程序;至此,第二应用子链成功加入跨链联盟,第二应用子链具备跨链互操作的第一条件。
82.(2)应用子链申请跨链互操作权限
83.当跨链联盟中第一应用子链存在与跨链联盟中的第二应用子链进行跨链互操作的业务需求时,第一应用子链需要向第二应用子链申请跨链互操作权限。具体地,第一应用子链可以在治理链上发起跨链互操作权限申请,第一治理节点将跨链互操作权限申请记录在治理链中;当第二治理节点从治理链上同步到第一应用子链的跨链互操作权限申请后,
第二应用子链的管理机构对第一应用子链的跨链互操作权限申请进行响应,并生成权限申请结果,第二治理节点将权限申请结果记录在治理链中;第一治理节点可以从治理链中同步第二治理节点反馈的权限申请结果;若权限申请结果指示申请成功,则第一应用子链具备与第二应用子链进行跨链互操作的权限,第一应用子链具备跨链互操作的第二条件,第一应用子链申请跨链互操作权限的过程全部记录于治理链上,从而实现对此申请跨链互操作权限过程的留痕可追溯。
84.(3)应用子链之间进行跨链互操作
85.当第一应用子链与第二应用子链均具备跨链互操作的第一条件和第二条件时,即当第一应用子链、第二应用子链均成功加入跨链联盟,并且第一应用子链与第二应用子链之间具备跨链互操作权限时,第一应用子链与第二应用子链之间可以进行跨链互操作。具体地,当第一协同服务程序监测到第一应用子链上存在跨链互操作的业务请求时,第一协同服务程序可以向第二协同服务程序发送业务请求;第二协同服务程序可以调用跨链互操作引擎向第二应用子链执行跨链互操作,并向第一协同服务程序返回跨链互操作的执行结果。第一治理节点可以将业务请求记录在治链上,第二治理节点可以将执行结果记录在治理链上。通过治理链上的区块同步,则可以将第一应用子链与第二应用子链之间的跨链互操作的全流程记录在治理链上,从而实现对此跨链互操作的全流程的留痕可追溯。
86.举例来说,随着区块链技术在产业互联网的发展,在特定的业务场景领域构建起了非常多且有价值的基于区块链技术的联盟链(即应用子链),这些应用子链在特定的业务领域发挥着极其重要的作用,例如司法存证、溯源、知识产权保护、政务大数据共享、机构监管等;跨链协同治理系统为各应用子链之间提供了一个高效、安全、可信的网络通道,从而应用子链之间可以进行安全高效地跨链互操作,使得应用子链之间的数据价值流通起来。以监管机构与金融机构之间的跨链互操作为例,第一应用子链由金融机构管理,第二应用子链由监管机构管理,监管机构需要对金融机构的第一应用子链上的业务数据进行审核;第一应用子链可以申请加入跨链联盟中,从而金融机构可以加入治理链,成为治理链中的第一治理节点参与跨链治理;第二应用子链也可以申请加入跨链联盟中,从而监管机构可以加入治理链,成为治理链中的第二治理节点参与跨链治理;当金融机构需要将业务数据提交至监管机构审核时,跨链联盟中第一应用子链存在与跨链联盟中的第二应用子链进行跨链互操作的需求,第一应用子链需要向第二应用子链申请跨链互操作权限;当第一应用子链与第二应用子链之间具备跨链互操作权限时,若第一协同服务程序监测到第一应用子链上存在跨链互操作的业务请求,则第一协同服务程序可以向第二协同服务程序发送业务请求,业务请求中可以携带金融机构的第一应用子链上的业务数据;监管机构的管理员可以通过第二服务设备登录第二协同服务程序,并通过第二协同服务程序调用跨链互操作引擎对第二应用子链执行跨链互操作,例如,第二协同服务程序调用跨链互操作引擎向第二应用子链执行的跨链互操作具体可以是对业务数据进行审核,并向第一协同服务程序返回跨链互操作的执行结果,例如跨链互操作的执行结果具体可以是对业务数据的审核结果。第一治理节点可以将金融机构的第一应用子链上的业务数据记录在治理链上,第二治理节点可以将对业务数据的审核结果记录在治理链上。
87.本技术实施例中,跨链协同治理系统对跨链联盟中的各应用子链之间的跨链互操作的管控治理可以包括应用子链加入跨链联盟、应用子链申请跨链互操作权限以及应用子
链之间进行跨链互操作这三个阶段,通过跨链协同治理系统对应用子链加入跨链联盟、应用子链申请跨链互操作权限以及应用子链之间进行跨链互操作这三个阶段进行管控治理,能够提供一种高效、安全、易扩展的跨链互操作模式。
88.基于图3所示的跨链协同治理系统的架构示意图,以及图4所示的跨链协同系统的产品模型的架构示意图,本技术实施例提供的跨链协同治理系统具备以下五个特点:
89.(1)通用易扩展
90.在产业区块链的跨链业务场景中,参与方(即各应用子链的管理机构)多、组网拓扑模型多样、实施限制条件繁多,同时还需支撑互为同构链的应用子链以及互为异构链的应用子链之间的跨链互操作需求。基于产业区块链的跨链业务场景需求,本技术实施例提出的跨链协同治理系统具备较强的通用性及易扩展性。跨链协同治理系统中分布式的中继服务可适配互为同构链的应用子链以及互为异构链的应用子链的接入,提供通用标准化的接入通道(即互为同构链的应用子链以及互为异构链的应用子链均可以通过标准化的接入通道接入跨链协同治理系统),可横向动态接入参与方(即横向接入多条应用子链)、纵向动态互通治理(即跨链接入应用层、可信跨链协同层、可信跨链治理层、安全支撑层纵向互通治理),可平滑支撑多种组网拓扑模型(即多条应用子链分别所属的区块链网络中,区块链网络之间的组网拓扑模型不相同),极具高通用性和易扩展性。同时实现了带有权限、多阶段、分布式的管道通信协议,所谓管道通信协议是指第一协同服务程序与第二协同服务程序之间,或者第一协同服务程序与第一治理节点之间,或者第二协同服务程序与第二协同程序服务之间支持任意一种通信协议,使得跨链协同交互具备极高的易用性。
91.(2)多方共治
92.在产业区块链的跨链业务场景中,存在参与方之间需具备强信任基础、跨链互操作过程透明、跨链互操作权限可管控、跨链互操作过程可追溯等跨链互操作需求。基于产业区块链的跨链业务场景需求,本技术实施例提出的跨链协同治理系统是以区块链为手段建立的多方共建、共治的协同治理平台,跨链联盟中的各应用子链的管理机构加入到治理链中,成为治理链中的多个治理节点,共同参与跨链互操作的管控治理。
93.(3)高效
94.跨链互操作的目的是构建区块链之间的通信网络,消灭数据孤岛,在区块链网络间传递信任,构建区块链价值互联网。在产业区块链的跨链业务场景中,大数据量的跨链互通是其特点之一,具备高效率的跨链互操作能力已然成为跨链互操作系统基本要求。基于产业区块链的跨链业务场景需求,本技术实施例提出的跨链协同治理系统在架构上实现了治理模式下的大规模组网、分布式中继服务,使得交易验证更加高效,在“以链治链”的设计理念下,依托于治理体系的权限管控能力,使得整个跨链互操作过程中权限的验证流程简化、通信高效。
95.(4)高安全性
96.跨链协同治理系统需保障参与方身份、业务数据、跨链通信过程、合约安全合规等方面的高安全性。基于该需求,本技术实施例提出的跨链协同治理系统从通信安全、安全沙箱中间件、证书合规、合约审计、密钥管理、节点与跨链中继服务的可信防护环境以及跨链权限管理等方面进行安全性保障架构设计,以保障跨链互操作全流程的高安全性。
97.(5)留痕可追溯
98.产业区块链的跨链协同治理系统的构建是建立在信任基础之上的,除了通过交易验证等技术手段实现跨链互操作的确认之外,对跨链互操作的留痕、审计及追溯也是常见的刚性需求。基于该需求,本技术实施例提出的跨链协同治理系统在治理链上通过智能合约实现对跨链交易台账的记录(即通过治理链中的治理节点将跨链互操作的业务请求、跨链互操作的执行结果、跨链互操作权限申请、权限申请结果等上传至治理链中)以及交易事务终态的确认(即跨链互操作的执行结果进行验证),同时提供跨链互操作的留痕、追溯、异常预警以及最终一致性对账机制等功能。
99.综上所述,本技术实施例提供的跨链协同治理系统通过多方共治的治理链对跨链联盟中的各应用子链之间的跨链互操作全流程进行治理与管控;本技术实施例构建了一个通用易扩展、多方共治、高效率、高安全、留痕可追溯的跨链协同治理系统。基于跨链协同治理系统可大大提高不同应用子链(例如互为异构链的应用子链以及属于不同应用场景的应用子链)之间的跨链互操作性,有效进行可信数据流通和价值交换。本技术实施例提出面向产业区块链的跨链协同治理系统,该跨链协同治理系统是同构、异构跨链互操作平台与分布式应用业务系统的连通,提供了从产业区块链技术平台协作到区块链应用业务系统协作的能力,并以“治理链”为基础,提供分布式、高安全、多阶段的跨链互操作模型。跨链协同治理系统作为一个高效、易用、灵活性强、安全性高的跨链开放平台,为产业区块链构建的价值共享系统提供了“润滑剂”,让应用子链和应用子链之间协同增效。
100.本技术实施例还提供一种跨链协同治理方法,该跨链协同治理方法可以应用于如图3所示的跨链协同治理系统中;图5示出了本技术一个示例性实施例提供的一种跨链协同治理方法的流程示意图,该跨链协同治理方法可以包括以下步骤s501至步骤s506:
101.s501,将第一应用子链和第二应用子链接入至跨链协同治理系统。
102.步骤s501之前,多个(两个或两个以上,例如4个)创世机构可以通过b aas(blockchain as a service,区块链开放服务)平台创建、运行并初始化治理链,从而构建跨链协同治理系统。图6示出了本技术一个示例性实施例提供的一种治理链的创建过程的流程示意图,如图6所示,创世机构在创建治理链时,每个创世机构需要在baas平台中实名注册,填写创始机构的机构信息,并构建相应的创世节点,然后多个创世节点组网运行治理链;治理链运行成功后,创世节点需要初始化前置机,并在创世机构所属的区块链网络中接入dapp(去中心化应用),前置机可以理解为创世节点的适配器,可以用于在不同通信协议之间进行数据格式转换、语言转换等等;治理链运行成功后,创世节点还需要给创世机构下发协同服务程序,并在创世机构所属的区块链网路中部署协同服务程序;至此,治理链创建并运行成功。治理链创建并运行成功之后,需要对治理链进行初始化,图7示出了本技术一个示例性实施例提供的一种治理链的初始化过程的流程示意图,如图7所示,创世节点将各个创世成员的信息(例如可以包括创世机构的机构信息、创世节点的节点信息、前置机信息、治理权限信息等等)上传至治理链中,以及将治理服务相关的智能合约部署到治理链中,完成对治理链的初始化流程;其中,治理服务相关的智能合约可以包括对跨链互操作进行管控治理的智能合约(例如图7中所示的跨链互操作权限配置合约、跨链互操作身份管理合约、跨链互操作事务控制合约、跨链台账合约等)以及根据不同底链、不同业务场景制定的执行跨链互操作的智能合约(例如图7中所示的跨链存证合约、积分通兑合约等等),本技术实施例对此不作限定。
103.治理链创建并初始化完成之后,应用子链可以申请加入至跨链联盟中;跨链协同治理系统的治理链中包含m个治理节点,m个治理节点中包括p个创世节点,创世节点具备治理链的管理权限,p为正整数且p≤m。图8示出了本技术一个示例性实施例提供的一种应用子链申请加入跨链联盟的流程示意图,如图8所示,当第一应用子链申请加入跨链联盟时,第一应用子链的管理机构的管理员可以通过第一服务设备显示的跨链协同治理系统的跨链协同治理界面进行实名注册,跨链协同治理系统对实名注册信息认证成功后,第一应用子链的管理机构的管理员在跨链协同治理界面中填写第一区块链网络的身份信息(例如可以是第一应用子链的管理机构的机构信息)以及第一应用子链的参数(例如可以是第一应用子链的子链信息),跨链协同治理系统根据第一区块链网络的身份信息以及第一应用子链的参数生成加入申请;通过第一创世节点在治理链中广播第一应用子链的加入申请,加入申请中包括第一区块链网络的身份信息以及第一应用子链的参数,第一创世节点是p个创世节点中的任一个;由治理链中的各个治理节点对加入申请进行投票处理;若投票成功,则将第一应用子链加入至跨链联盟;投票成功可以是指治理链中同意第一应用子链加入跨链联盟的治理节点的数量超过数量阈值,数量阈值可以是治理链中治理节点数量的二分之一、三分之二或者五分之四等等,或者数量阈值可以等于治理链中治理节点的数量,即治理链中的治理节点全部同意第一应用子链加入跨链联盟,则可以将第一应用子链加入至跨链联盟中;至此,第一应用子链成功加入至跨链联盟中,可以将第一应用子链接入至跨链协同治理系统中,在治理链中创建与第一应用子链相关联的第一治理节点,重新运行治理链并初始化前置机,并在第一应用子链所属的第一区块链网络中接入dapp(去中心化应用),通过第一治理节点参与跨链互操作的管控治理,进一步地,可以在第一应用子链所属的第一区块链网络中部署第一协同服务程序,使得第一协同服务程序可以正常连接第一治理节点和第一应用子链。
104.类似地,第二应用子链可以申请加入跨链联盟中,第二应用子链成功加入至跨链联盟中,可以将第二应用子链接入至跨链协同治理系统中,在治理链中创建与第二应用子链相关联的第二治理节点,通过第二治理节点参与跨链互操作的管控治理,进一步地,可以在第二应用子链所属的第二区块链网络中部署第二协同服务程序,使得第二协同服务程序可以正常连接第二治理节点和第二应用子链。
105.s502,在治理链中构建与第一应用子链相关联的第一治理节点,以及在治理链中构建与第二应用子链相关联的第二治理节点。
106.s503,在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序。
107.治理链中包含m个治理节点,m为大于1的整数;m个治理节点中包括p个创世节点,创世节点具备治理链的管理权限,p为正整数且p≤m;第一应用子链属于第一区块链网络,第一区块链网络中包含第一服务设备;第二应用子链属于第二区块链网络,第二区块链网络中包含第二服务设备。
108.在第一区块链网络中部署第一协同服务程序具体可以包括:通过第二创世节点向第一服务设备下发指示信息,指示信息包括协同服务程序或协同服务程序的地址;使第一服务设备按照指示信息获得协同服务程序,并在协同服务程序中配置第一应用子链的参数形成第一协同服务程序;第二创世节点是p个创世节点中的任一个。在第二区块链网络中部
署第二协同服务程序具体可以包括:通过第三创世节点向第二服务设备下发指示信息,指示信息包括协同服务程序或协同服务程序的地址;使第二服务设备按照指示信息获得协同服务程序,并在协同服务程序中配置第二应用子链的参数形成第二协同服务程序;第三创世节点是p个创世节点中的任一个。需要说明的是,第一创世节点、第二创世节点以及第三创世节点可以是同一个创世节点,也可以是不同的创世节点,本技术实施例对此不作限定。
109.s504,建立第一协同服务程序与第二协同服务程序之间的通信连接,并在第一应用子链与第二应用子链之间进行跨链互操作。
110.步骤s504之前,即基于第一协同服务程序与第二协同服务程序之间的相互通信在第一应用子链与第二应用子链之间进行跨链互操作之前,第一应用子链可以向第二应用子链申请跨链互操作权限,或者第二应用子链可以向第一应用子链申请跨链互操作权限。以第一应用子链向第二应用子链申请跨链互操作权限为例,图9示出了本技术一个示例性实施例提供的一种跨链互操作申请过程的流程示意图,如图9所示,跨链互操作申请流程可以包括以下子步骤s901至子步骤s912:
111.s901,第一应用子链的管理员发起跨链互操作权限申请。
112.第一应用子链的管理员可以通过向跨链协同治理系统的跨链协同治理界面输入第一账号信息,登录第一协同服务程序,并通过第一协同服务程序向第二应用子链发起跨链互操作权限申请,跨链协同治理系统的跨链协同治理界面显示于第一服务设备中;其中,跨链互操作权限申请中可以包括第一账号信息和第二应用子链的参数。
113.s902,第一协同服务程序对第一应用子链的管理员进行身份验证。
114.第一协同服务程序可以对第一账号信息进行验证,以对第一应用子链的管理员进行身份验证。具体地,第一协同服务程序获取到的第一账号信息可以是采用第一应用子链的私钥加密得到的,第一协同服务程序可以从治理链上获取第一应用子链的公钥;若第一协同服务程序采用第一应用子链的公钥对第一账号信息验证成功,则第一协同服务程序对第一应用子链的管理员的身份验证通过;若第一协同服务程序采用第一应用子链的公钥对第一账号信息验证失败,则第一协同服务程序对第一应用子链的管理员的身份验证未通过。
115.s903,若第一协同服务程序对第一应用子链的管理员的身份验证通过,则第一协同服务程序执行跨链互操作权限的处理操作,向第一治理节点发送权限申请智能合约的调用请求。权限申请智能合约的调用请求中可以携带跨链互操作权限申请。
116.s904,第一治理节点响应权限申请智能合约的调用请求,调用并执行权限申请智能合约将跨链互操作权限申请上传至治理链中。
117.第一治理节点可以根据跨链互操作权限申请生成第一区块,并将第一区块上传至治理链中。
118.s905,第二治理节点从治理链中同步区块信息,从第一区块中获取跨链互操作权限申请,并将跨链互操作权限申请发送至第二协同服务程序。
119.s906,第二协同服务程序对跨链互操作权限申请进行解析,并生成权限处理事务。
120.s907,第二应用子链的管理员对权限处理事务进行处理,得到权限处理事务的处理结果。
121.第二应用子链的管理员可以通过向跨链协同治理系统的跨链协同治理界面输入
第二账号信息,登录第二协同服务程序,并通过第二协同服务程序对权限处理事务进行处理,得到权限处理事务的处理结果,处理结果包括同意授权或拒绝授权。其中,跨链协同治理系统的跨链协同治理界面显示于第二服务设备中。
122.s908,第二协同服务程序执行权限处理事务的处理操作,根据权限处理事务的处理结果生成权限申请结果,并向第二治理节点发送授权治理智能合约的调用请求。授权治理智能合约的调用请求中可以携带权限申请结果,权限申请结果可以包括同意授权或拒绝授权。
123.s909,第二治理节点响应授权治理智能合约的调用请求,调用并执行授权治理智能合约将权限申请结果上传至治理链中。
124.第二治理节点可以根据权限申请结果生成第二区块,并将第二区块上传至治理链中。
125.s910,第一治理节点从治理链中同步区块信息,从第二区块中获取权限申请结果,并将权限申请结果发送至第一协同服务程序。
126.s911,第一协同服务程序对权限申请结果进行解析。
127.s912,第一应用子链的管理员从第一协同服务程序中获取权限申请结果。
128.第一应用子链的管理员可以通过向跨链协同治理系统的跨链协同治理界面输入第一账号信息,登录第一协同服务程序,从而可以从第一协同服务程序中获取权限申请结果,跨链协同治理系统的跨链协同治理界面显示于第一服务设备中。
129.由图9所示的跨链互操作权限申请流程可知,通过第一协同服务程序与第一治理节点之间的相互通信,以及通过第二协同服务程序与第二治理节点之间的相互通信,可以实现第一应用子链与第二应用子链之间的跨链互操作权限申请流程;并且依托于跨链协同治理系统的权限管控能力,使得跨链互操作权限申请过程中的验证流程得以简化,提升跨链互操作权限申请流程的执行效率;第一应用子链向第二应用子链申请跨链互操作权限的过程全部记录于治理链上,从而实现对跨链互操作权限申请过程的留痕可追溯。
130.s505,建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接。
131.s506,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
132.步骤s504至步骤s506中,当第一协同服务程序监测到第一应用子链上存在跨链互操作的业务请求时,第一协同服务程序可以向第二协同服务程序发送业务请求;业务请求包括第二应用子链的参数;可以对业务请求进行验证,若验证通过,则由第二协同服务程序调用跨链互操作引擎向第二应用子链执行跨链互操作,并向第一协同服务程序返回跨链互操作的执行结果。基于第一协同服务程序与第一治理节点之间的通信连接,可以由第一协同服务程序可以向第一治理节点发送业务请求,使第一治理节点调用并执行跨链治理智能合约将业务请求上传至治理链中;基于所述第一协同服务程序与所述第一治理节点之间的通信连接,可以由第二协同服务程序可以向第二治理节点发送执行结果,使第二治理节点调用并执行跨链治理智能合约将执行结果上传至治理链中。
133.第一协同服务程序或第二协同服务程序中均可以包括跨链服务接口、子链代理服务子程序和跨链互操作引擎。第一协同服务程序中的跨链服务接口可以用于接收第一应用子链所属的第一区块链网络中的跨链互操作的业务请求;第一协同服务程序中的子链代理
服务子程序可以用于监听第一应用子链上的业务请求;第一协同服务程序中的跨链互操作引擎可以用于执行跨链互操作。第二协同服务程序中的跨链服务接口可以用于接收第二应用子链所属的第二区块链网络中的跨链互操作的业务请求;第二协同服务程序中的子链代理服务子程序可以用于监听第二应用子链上的业务请求;第二协同服务程序中的跨链互操作引擎可以用于执行跨链互操作。当第一协同服务程序中的子链代理服务子程序监听到第一应用子链上存在跨链互操作的业务请求时,可以触发第一协同服务程序中的跨链互操作引擎执行跨链互操作,此时可以实现第一应用子链与第二应用子链之间的跨链互操作,具体可以参见图10所示实施例的描述。或者,当在第一协同服务程序中的跨链服务接口上接收到第一应用子链所属的第一区块链网络中的第一业务应用发送的跨链互操作的业务请求时,可以触发第一协同服务程序中的跨链互操作引擎执行跨链互操作,此时可以实现第一业务应用与第二应用子链之间的跨链互操作,具体可以参见图11所示实施例的描述。
134.图10示出了本技术一个示例性实施例提供的一种跨链互操作过程的流程示意图,如图10所示,第一应用子链与第二应用子链之间的跨链互操作流程可以包括以下子步骤s1001至子步骤s1010:
135.s1001,第一应用子链上产生新的目标交易。
136.目标交易可以携带跨链标签,即目标交易需要执行跨链互操作;其中,跨链标签可以包括目标交易的to地址(即第二应用子链的地址)或智能合约地址,智能合约地址可以是指执行跨链互操作时需要调用的智能合约的地址。
137.s1002,当第一协同服务程序中的子链代理服务子程序监听到第一应用子链上产生的目标交易需要执行跨链互操作时,第一协同服务程序对目标交易进行解析。
138.第一协同服务程序对目标交易进行解析,生成业务请求,业务请求中可以携带第二应用子链的参数以及目标交易的交易数据,第二应用子链的参数可以包括第二应用子链的地址或第二应用子链的子链信息。
139.s1003,第一协同服务程序对目标交易进行组装。
140.第一协同服务程序可以按照跨链协议,对业务请求进行组装,得到业务请求数据包。
141.s1004,第一协同服务程序调用第一协同服务程序的跨链互操作引擎对目标交易进行处理。
142.第一协同服务程序调用第一协同服务程序的跨链互操作引擎对目标交易进行处理具体可以包括:第一协同服务程序可以向第一治理节点发送跨链治理智能合约的调用请求,跨链治理智能合约的调用请求中可以携带业务请求数据包;第一协同服务程序可以根据第二应用子链的地址,通过路由寻址从治理链中获取第二协同服务程序的地址,并向第二协同服务程序发送业务请求数据包。需要说明的是,当第二应用子链成功接入至跨链联盟后,治理链中关联存储有第二应用子链的地址和第二协同服务程序的地址。
143.s1005,第一治理节点响应跨链治理智能合约的调用请求,调用并执行跨链治理智能合约将业务请求数据包上传至治理链中。
144.s1006,第二协同服务程序进行协议解析、身份验证、权限验证。
145.第二协同服务程序可以基于跨链协议对业务请求数据包进行解析,得到业务请求。可以对业务请求进行验证,若验证通过,则执行步骤s1007。对业务请求进行认证可以包
括:第一协同服务程序和第二协同服务程序的双向身份验证,以及第二协同服务程序对第一应用子链的跨链互操作权限进行验证。业务请求可以包括第一协同服务程序的安全证书(例如可以为第一协同服务程序的ca证书);第一协同服务程序和第二协同服务程序的双向身份验证即tls双向认证,具体可以为:第二协同服务程序对第一协同服务程序的安全证书的进行验证;第二协同服务程序将第二协同服务程序的安全证书(例如可以为第二协同服务程序的ca证书)发送至第一协同服务程序进行验证;若第一协同服务程序的安全证书和第二协同服务程序的安全证书均验证通过,则确定业务请求验证通过;若第一协同服务程序的安全证书或第二协同服务程序的安全证书中的某一项或两项验证未通过,则确定业务请求验证未通过。第二协同服务程序对第一应用子链的跨链互操作权限进行验证,具体可以为:第二协同服务程序可以从治理链中获取授权列表,授权列表中包括具备跨链互操作权限的各应用子链的参数;若授权列表中包括第一应用子链的参数,则第一应用子链具备跨链互操作权限,权限验证通过;若授权列表中不存在第一应用子链的参数,则第一应用子链不具备跨链互操作权限,权限验证未通过。依托于治理体系的权限管控能力,治理链中存储有授权列表,在进行跨链互操作权限验证的过程中,可以从治理链中直接获取授权列表进行权限验证,使得整个跨链互操作过程中权限的验证流程简化、通信高效。
146.s1007,第二协同服务程序调用第二协同服务程序的跨链互操作引擎向第二应用子链执行跨链互操作。
147.身份验证、权限验证均通过后,第二协同服务程序调用第二协同服务程序的跨链互操作引擎向第二应用子链执行跨链互操作,并生成跨链互操作的执行结果。
148.s1008,第二协同服务程序调用第二协同服务程序的跨链互操作引擎对执行结果进行处理。
149.第二协同服务程序调用第二协同服务程序的跨链互操作引擎对执行结果进行处理可以包括:第二协同服务程序可以向第二治理节点发送跨链治理智能合约的调用请求,跨链治理智能合约的调用请求中可以携带跨链互操作的执行结果;第二协同服务程序可以向第一协同服务程序发送跨链互操作的执行结果。
150.s1009,第一治理节点响应跨链治理智能合约的调用请求,调用并执行跨链治理智能合约将执行结果上传至治理链中。
151.s1010,第一协同服务程序对执行结果进行验证。
152.第一协同服务程序对执行结果进行验证可以包括:第一协同服务程序从治理链中获取第一治理节点上传的执行结果,将第一治理节点上传的执行结果与接收到的执行结果进行比对;若第一治理节点上传的执行结果与接收到的执行结果相同,则验证成功,第一应用子链与第二应用子链之间的跨链互操作结束;若第一治理节点上传的执行结果与接收到的执行结果不相同,则验证失败。
153.由图10所示的第一应用子链与第二应用子链之间的跨链互操作流程可知,通过第一协同服务程序与第一治理节点之间的相互通信,以及通过第二协同服务程序与第二治理节点之间的相互通信,以及通过第一协同服务程序与第二协同服务之间的相互通信,可以实现第一应用子链与第二应用子链之间的跨链互操作流程;并且依托于跨链协同治理系统的权限管控能力,使得跨链互操作过程中的验证流程得以简化,提升第一应用子链与第二应用子链之间的跨链互操作的执行效率;通过治理链中的第一治理节点和第二治理节点对
跨链互操作的管控治理,则可以将第一应用子链与第二应用子链之间的跨链互操作的全流程记录在治理链上,从而实现对此跨链互操作的全流程的留痕可追溯。
154.图11示出了本技术另一个示例性实施例提供的一种跨链互操作过程的流程示意图,如图11所示,第一业务应用与第二应用子链之间的跨链互操作流程可以包括以下子步骤s1101至s1110:
155.s1101,第一业务应用基于跨链协议向第一协同服务程序发送业务请求。
156.业务请求中可以携带第二应用子链的参数以及目标交易的交易数据,第二应用子链的参数可以包括第二应用子链的地址或第二应用子链的子链信息。
157.s1102,第一协同服务程序进行协议解析、身份验证、权限验证。
158.第一协同服务程序可以基于跨链协议对业务请求进行解析。可以对业务请求进行验证,若验证通过,则执行步骤s1103。对业务请求进行认证可以包括:第一协同服务程序和第二协同服务程序的双向身份验证,以及第一协同服务程序对第二应用子链的跨链互操作权限进行验证。第一协同服务程序和第二协同服务程序的双向身份验证即tls双向认证,具体可以为:第一协同服务程序获取第二协同服务程序的安全证书(例如可以为第二协同服务程序的ca证书)并对其进行验证,第一协同服务程序将第一协同服务的安全证书(例如可以为第一协同服务程序的ca证书)发送至第二协同服务程序进行验证;若第一协同服务程序的安全证书和第二协同服务程序的安全证书均验证通过,则确定业务请求验证通过;若第一协同服务程序的安全证书或第二协同服务程序的安全证书中的某一项或两项验证未通过,则确定业务请求验证未通过。第一协同服务程序对第二应用子链的跨链互操作权限进行验证,具体可以为:第二协同服务程序可以从治理链中获取授权列表,授权列表中包括具备跨链互操作权限的各应用子链的参数;若授权列表中包括第二应用子链的参数,则第二应用子链具备跨链互操作权限,权限验证通过;若授权列表中不存在第二应用子链的参数,则第二应用子链不具备跨链互操作权限,权限验证未通过。依托于治理体系的权限管控能力,治理链中存储有授权列表,在进行跨链互操作权限验证的过程中,可以从治理链中直接获取授权列表进行权限验证,使得整个跨链互操作过程中权限的验证流程简化、通信高效。
159.s1103,第一协同服务程序调用第一协同服务程序的跨链互操作引擎对目标交易进行处理。
160.第一协同服务程序调用第一协同服务程序的跨链互操作引擎对目标交易进行处理具体可以包括:第一协同服务程序可以向第一治理节点发送跨链治理智能合约的调用请求,跨链治理智能合约的调用请求中可以携带业务请求;第一协同服务程序可以根据第二应用子链的地址,通过路由寻址从治理链中获取第二协同服务程序的地址,并向第二协同服务程序发送业务请求。需要说明的是,当第二应用子链成功接入至跨链联盟后,治理链中关联存储有第二应用子链的地址和第二协同服务程序的地址。
161.s1104,第一治理节点响应跨链治理智能合约的调用请求,调用并执行跨链治理智能合约将业务请求上传至治理链中。
162.s1105,第二协同服务程序进行协议解析、身份验证、权限验证。
163.第二协同服务程序可以基于跨链协议对业务请求进行解析。可以对业务请求进行验证,若验证通过,则执行步骤s1007。对业务请求进行认证可以包括:第一协同服务程序和
第二协同服务程序的双向身份验证,以及第二协同服务程序对第一应用子链的跨链互操作权限进行验证。业务请求可以包括第一协同服务程序的安全证书(例如可以为第一协同服务程序的ca证书);第一协同服务程序和第二协同服务程序的双向身份验证即tls双向认证,具体可以为:第二协同服务程序对第一协同服务程序的安全证书的进行验证;第二协同服务程序将第二协同服务程序的安全证书(例如可以为第二协同服务程序的ca证书)发送至第一协同服务程序进行验证;若第一协同服务程序的安全证书和第二协同服务程序的安全证书均验证通过,则确定业务请求验证通过;若第一协同服务程序的安全证书或第二协同服务程序的安全证书中的某一项或两项验证未通过,则确定业务请求验证未通过。第二协同服务程序对第一应用子链的跨链互操作权限进行验证,具体可以为:第二协同服务程序可以从治理链中获取授权列表,授权列表中包括具备跨链互操作权限的各应用子链的参数;若授权列表中包括第一应用子链的参数,则第一应用子链具备跨链互操作权限,权限验证通过;若授权列表中不存在第一应用子链的参数,则第一应用子链不具备跨链互操作权限,权限验证未通过。依托于治理体系的权限管控能力,治理链中存储有授权列表,在进行跨链互操作权限验证的过程中,可以从治理链中直接获取授权列表进行权限验证,使得整个跨链互操作过程中权限的验证流程简化、通信高效。
164.s1106,第二协同服务程序调用第二协同服务程序的跨链互操作引擎向第二应用子链执行跨链互操作。
165.身份验证、权限验证均通过后,第二协同服务程序调用第二协同服务程序的跨链互操作引擎向第二应用子链执行跨链互操作,并生成跨链互操作的执行结果。
166.s1107,第二协同服务程序调用第二协同服务程序的跨链互操作引擎对执行结果进行处理。
167.第二协同服务程序调用第二协同服务程序的跨链互操作引擎对执行结果进行处理可以包括:第二协同服务程序可以向第二治理节点发送跨链治理智能合约的调用请求,跨链治理智能合约的调用请求中可以携带跨链互操作的执行结果;第二协同服务程序可以向第一协同服务程序发送跨链互操作的执行结果。
168.s1108,第一治理节点响应跨链治理智能合约的调用请求,调用并执行跨链治理智能合约将执行结果上传至治理链中。
169.s1109,第一协同服务程序对执行结果进行验证。
170.第一协同服务程序对执行结果进行验证可以包括:第一协同服务程序从治理链中获取第一治理节点上传的执行结果,将第一治理节点上传的执行结果与接收到的执行结果进行比对;若第一治理节点上传的执行结果与接收到的执行结果相同,则验证成功,第一协同服务程序将执行结果反馈至第一业务应用;若第一治理节点上传的执行结果与接收到的执行结果不相同,则验证失败。
171.s1110,第一业务应用接收到执行结果。
172.由图11所示的第一业务应用与第二应用子链之间的跨链互操作流程可知,通过第一协同服务程序与第一治理节点之间的相互通信,以及通过第二协同服务程序与第二治理节点之间的相互通信,以及通过第一协同服务程序与第二协同服务之间的相互通信,可以实现第一业务应用与第二应用子链之间的跨链互操作流程;并且依托于跨链协同治理系统的权限管控能力,使得跨链互操作过程中的验证流程得以简化,提升第一业务应用与第二
应用子链之间的跨链互操作的执行效率;通过治理链中的第一治理节点和第二治理节点对跨链互操作的管控治理,则可以将第一业务应用与第二应用子链之间的跨链互操作的全流程记录在治理链上,从而实现对此跨链互操作的全流程的留痕可追溯。
173.本技术实施例中,将跨链联盟中的第一应用子链和第二应用子链接入跨链协同治理系统之后,需要在治理链中构建与第一应用子链相关联的第一治理节点,在治理链中构建与第二应用子链相关联的第二治理节点,以及需要在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序,第一应用子链布设于第一区块链网络中,第二应用子链布设于第二区块链网络中;还需要建立第一协同服务程序与第二协同服务程序之间的通信连接,建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接;从而,可以基于第一协同服务程序与第二协同服务程序之间的相互通信,在第一应用子链与第二应用子链之间进行跨链互操作,以及基于第一协同服务程序与第一治理节点之间的相互通信,基于第二协同服务程序与第二治理节点之间的相互通信,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。由上述方案可知,通过各应用子链对应的协同服务程序之间的相互通信,实现跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作,以及通过治理链中的治理节点对跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作进行管控治理,能够有效提升各应用链之间的跨链互操作的执行效率。通过智能合约实现对跨链交易台账的记录(即通过治理链中的第一治理节点将跨链互操作权限申请、跨链互操作的业务请求等上传至治理链中以及通过治理链中的第二治理节点将跨链互操作的权限申请结果、执行结果等上传至治理链中)以及交易事务终态的确认(即第一协同服务程序对跨链互操作的执行结果进行验证),同时提供跨链互操作的留痕、追溯、异常预警以及最终一致性对账机制等功能。
174.请参见图12,图12示出了本技术一个示例性实施例提供的一种跨链协同治理设备的结构示意图,该跨链协同治理设备120至少包括处理器1201、计算机可读存储介质1202以及通信接口1203。其中,处理器1201、计算机可读存储介质1202以及通信接口1203可通过总线或者其它方式连接。通信接口1203可以用于接收或者发送数据。计算机可读存储介质1202可以存储在存储器中,计算机可读存储介质1202用于存储跨链协同治理系统的计算机程序,即跨链协同治理系统以计算机程序的形式部署于计算机可读存储介质1202中,计算机程序包括计算机指令。处理器1201用于执行计算机指令。处理器1201(或称cpu(central processing unit,中央处理器))是跨链协同治理设备120的计算核心以及控制核心,其适于实现一条或多条计算机指令,具体适于加载并执行一条或多条计算机指令从而实现相应方法流程或相应功能。
175.本技术实施例还提供了一种计算机可读存储介质(memory),计算机可读存储介质是跨链协同治理设备120中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机可读存储介质1202既可以包括跨链协同治理设备120中的内置存储介质,当然也可以包括跨链协同治理设备120所支持的扩展存储介质。计算机可读存储介质提供存储空间,该存储空间存储了跨链协同治理设备120的操作系统。并且,在该存储空间中还存放了适于被处理器1201加载并执行的一条或多条的计算机指令,这些计算机指令可以是一个或多个的计算机程序(包括程序代码)。需要说明的是,此处的计算机可读存储介质1202可以是高速ram
(random access memory,随机存取存储器),也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器1201的计算机可读存储介质。
176.计算机可读存储介质1202中存储有计算机程序,计算机程序包括一条或多条计算机指令;由处理器1201加载并执行一条或多条计算机指令,以实现图5至图11所示方法实施例中的相应步骤;具体实现中,计算机可读存储介质1202中的计算机指令由处理器1201加载并执行如下步骤:
177.将第一应用子链和第二应用子链接入至跨链协同治理系统;
178.在治理链中构建与第一应用子链相关联的第一治理节点,以及在治理链中构建与第二应用子链相关联的第二治理节点;
179.在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序;
180.建立第一协同服务程序与第二协同服务程序之间的通信连接,并在第一应用子链与第二应用子链之间进行跨链互操作;
181.建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接;以及,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。
182.在一种实现方式中,治理链包含m个治理节点,m为大于1的整数;m个治理节点中包括p个创世节点,创世节点具备治理链的管理权限,p为正整数且p≤m;计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并且还执行如下步骤:
183.当第一应用子链申请加入跨链联盟时,通过第一创世节点在治理链中广播第一应用子链的加入申请,加入申请中包括第一区块链网络的身份信息以及第一应用子链的参数;第一创世节点是p个创世节点中的任一个;
184.由治理链中的各个治理节点对加入申请进行投票处理;
185.若投票成功,则将第一应用子链加入至跨链联盟。
186.在一种实现方式中,治理链包含m个治理节点,m为大于1的整数;m个治理节点中包括p个创世节点,创世节点具备治理链的管理权限,p为正整数且p≤m;第一区块链网络中包含第一服务设备,第二区块链网络中包含第二服务设备;计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行在第一区块链网络中部署第一协同服务程序的步骤时,具体执行如下步骤:
187.通过第二创世节点向第一服务设备下发指示信息,指示信息包括协同服务程序或协同服务程序的地址;使第一服务设备按照指示信息获得协同服务程序,并在协同服务程序中配置第一应用子链的参数形成第一协同服务程序;第二创世节点是p个创世节点中的任一个;
188.计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行在第二区块链网络中部署第二协同服务程序的步骤时,具体执行如下步骤:
189.通过第三创世节点向第二服务设备下发指示信息,指示信息包括协同服务程序或协同服务程序的地址;使第二服务设备按照指示信息获得协同服务程序,并在协同服务程序中配置第二应用子链的参数形成第二协同服务程序;第三创世节点是p个创世节点中的
任一个。
190.在一种实现方式中,计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并且还执行如下步骤:
191.第一协同服务程序向第一治理节点发送跨链互操作权限申请,跨链互操作权限申请包含第二应用子链的参数;
192.第一治理节点调用并执行权限申请智能合约将跨链互操作权限申请上传至治理链中;
193.第二治理节点从治理链中获取跨链互操作权限申请,并将跨链互操作权限申请发送至第二协同服务程序;
194.第二协同服务程序根据跨链互操作权限申请生成权限处理事务,并根据权限处理事务的处理结果生成权限申请结果,以及将权限申请结果发送至第二治理节点;
195.第二治理节点调用并执行授权治理智能合约将权限申请结果上传至治理链中;
196.第一治理节点从治理链中获取权限申请结果,并将权限申请结果发送至第一协同服务程序。
197.在一种实现方式中,第二协同服务程序包括跨链互操作引擎,跨链互操作引擎用于执行跨链互操作;计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行在第一应用子链与第二应用子链之间进行跨链互操作的步骤时,具体执行如下步骤:
198.当第一协同服务程序监测到第一应用子链上存在跨链互操作的业务请求时,第一协同服务程序向第二协同服务程序发送业务请求;
199.对业务请求进行验证,若验证通过,则由第二协同服务程序调用跨链互操作引擎向第二应用子链执行跨链互操作,并向第一协同服务程序返回跨链互操作的执行结果。
200.在一种实现方式中,业务请求包括第一协同服务程序的安全证书;计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行在对业务请求进行验证的步骤时,具体执行如下步骤:
201.第二协同服务程序对第一协同服务程序的安全证书的进行验证;以及,
202.第二协同服务程序将第二协同服务程序的安全证书发送至第一协同服务程序进行验证;
203.若第一协同服务程序的安全证书和第二协同服务程序的安全证书均验证通过,则确定业务请求验证通过。
204.在一种实现方式中,业务请求中还包括第一应用子链的参数;计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行在对业务请求进行验证的步骤时,具体执行如下步骤:
205.通过第二协同服务程序从治理链中获取授权列表,授权列表中包括具备跨链互操作权限的多条应用子链的参数;
206.若授权列表中存在第一应用子链的参数,则确定对业务请求验证通过。
207.在一种实现方式中,计算机可读存储介质1202中的一条或多条计算机指令由处理器1201加载并执行对第一应用子链与第二应用子链之间的跨链互操作进行管控治理的步骤时,具体执行如下步骤:
208.基于第一协同服务程序与第一治理节点之间的通信连接,由第一协同服务程序向第一治理节点发送业务请求,使第一治理节点调用并执行跨链治理智能合约将业务请求上传至治理链中;
209.基于第二协同服务程序与第二治理节点之间的通信连接,由第二协同服务程序向第二治理节点发送执行结果,使第二治理节点调用并执行跨链治理智能合约将执行结果上传至治理链中。
210.本技术实施例中,将跨链联盟中的第一应用子链和第二应用子链接入跨链协同治理系统之后,需要在治理链中构建与第一应用子链相关联的第一治理节点,在治理链中构建与第二应用子链相关联的第二治理节点,以及需要在第一区块链网络中部署第一协同服务程序,并在第二区块链网络中部署第二协同服务程序,第一应用子链布设于第一区块链网络中,第二应用子链布设于第二区块链网络中;还需要建立第一协同服务程序与第二协同服务程序之间的通信连接,建立第一协同服务程序与第一治理节点之间的通信连接,并建立第二协同服务程序与第二治理节点之间的通信连接;从而,可以基于第一协同服务程序与第二协同服务程序之间的相互通信,在第一应用子链与第二应用子链之间进行跨链互操作;以及基于第一协同服务程序与第一治理节点之间的相互通信,基于第二协同服务程序与第二治理节点之间的相互通信,对第一应用子链与第二应用子链之间的跨链互操作进行管控治理。由上述方案可知,通过各应用子链对应的协同服务程序之间的相互通信,能够实现跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作,以及通过治理链中的治理节点对跨链联盟中的各应用子链(例如可以是第一应用子链与第二应用子链)之间的跨链互操作进行管控治理,能够有效提升各应用子链之间的跨链互操作的执行效率。
211.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备(例如可以是上述的跨链协同治理设备)的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选方式中提供的跨链协同治理方法。
212.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献