CN117057913A - 区块链管理方法、装置、计算机、存储介质及程序产品 - Google Patents
区块链管理方法、装置、计算机、存储介质及程序产品 Download PDFInfo
- Publication number
- CN117057913A CN117057913A CN202210485107.4A CN202210485107A CN117057913A CN 117057913 A CN117057913 A CN 117057913A CN 202210485107 A CN202210485107 A CN 202210485107A CN 117057913 A CN117057913 A CN 117057913A
- Authority
- CN
- China
- Prior art keywords
- sub
- chain
- block
- link
- parallel
- 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.)
- Pending
Links
- 238000003860 storage Methods 0.000 title claims abstract description 35
- 238000007726 management method Methods 0.000 title abstract description 142
- 238000000034 method Methods 0.000 claims abstract description 73
- 238000012795 verification Methods 0.000 claims description 54
- 230000003993 interaction Effects 0.000 claims description 36
- 238000004590 computer program Methods 0.000 claims description 25
- 238000012545 processing Methods 0.000 claims description 23
- 230000008569 process Effects 0.000 claims description 21
- 238000001514 detection method Methods 0.000 claims description 8
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 22
- 239000010410 layer Substances 0.000 description 15
- 238000013500 data storage Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 10
- 230000001360 synchronised effect Effects 0.000 description 9
- 230000002159 abnormal effect Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 238000010276 construction Methods 0.000 description 5
- 238000013475 authorization Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 239000002355 dual-layer Substances 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Classifications
-
- 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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Development Economics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例公开了一种区块链管理方法、装置、计算机、存储介质及程序产品,该方法包括:目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链。采用本申请,可以提高主链的管理效率。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种区块链管理方法、装置、计算机、存储介质及程序产品。
背景技术
一般的区块链产品为点对点(peer-to-peer,P2P)的单层区块链,也就是说,存在的节点对等,处于同一个网络中,该网络用于管理区块链中的所有区块,这也就可能会导致区块的管理较为复杂。基于此,目前存在一种双层链,基于双层链实现网络布局,而在这双层链下,主链需要实现区块的共识上链,以及对区块的同步等,使得主链会耗费较多的资源,降低主链的管理效率。
发明内容
本申请实施例提供了一种区块链管理方法、装置、计算机、存储介质及程序产品,可以提高对区块链管理的效率。
本申请实施例一方面提供了一种区块链管理方法,该方法包括:
目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;
在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;
若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块中获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
本申请实施例一方面提供了一种区块链管理方法,该方法包括:
共识节点接收虚拟平行子链所对应的平行交易数据,获取平行交易数据中的区块验证数据;
在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中;平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从虚拟平行子链的子链区块中所获取到的;子链业务节点包括目标子链业务节点;虚拟平行子链中的子链区块包括子链交易区块;子链交易区块是由目标子链业务节点在子链交易数据共识通过时,根据子链交易数据及子链共识数据所生成的。
本申请实施例一方面提供了一种区块链管理装置,该装置包括:
数据发送模块,用于目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;
区块处理模块,用于在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;
子链归档模块,用于若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块中获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该装置还包括:
平行注册模块,用于向共识节点发送平行子链注册请求,在平行子链注册成功时,获取平行子链注册请求所请求的子链业务节点的节点信息;子链业务节点包括目标子链业务节点及关联子链业务节点;
子链创建模块,用于创建子链临时账本,根据子链业务节点的节点信息及子链临时账本生成临时创世区块,存储临时创世区块,得到虚拟平行子链。
其中,该装置还包括:
交互发送模块,用于目标子链业务节点基于子链业务节点的节点信息,向关联子链业务节点发送第一子链交互消息;
交互获取模块,用于获取关联子链业务节点所发送的第二子链交互消息;
网络生成模块,用于若第一子链交互消息及第二子链交互消息,指示目标子链业务节点与关联子链业务节点之间存在网络连接,则确定目标子链业务节点与关联子链业务节点组成平行子链网络。
其中,该装置还包括:
节点选取模块,用于目标子链业务节点从平行子链网络中获取候选主节点,在目标子链业务节点与关联子链业务节点对候选主节点共识通过时,将候选主节点确定为子链主节点;
节点检测模块,用于若目标子链业务节点生成子链交易数据,则对目标子链业务节点进行节点检测;
发送调用模块,用于若目标子链业务节点为子链主节点,则执行目标子链业务节点将子链交易数据发送至关联子链业务节点的过程;
权限确定模块,用于若目标子链业务节点不为子链主节点,则确定目标子链业务节点无区块生成权限。
其中,该装置还包括:
资源获取模块,用于向共识节点发送资源获取请求,获取共识节点基于资源获取请求所发送的子链资源;
资源管理模块,用于根据子链资源生成资源管理区块,在对资源管理区块共识通过时,将资源管理区块添加至虚拟平行子链;
资源反馈模块,用于向共识节点发送资源管理成功消息,以使共识节点对子链资源进行锁定处理;共识节点不具备针对被锁定的子链资源的使用权限。
其中,该装置还包括:
资源检测模块,用于若子链资源被完全使用,则确定虚拟平行子链满足区块上链条件;或者,
归档接收模块,用于若目标子链业务节点接收到共识节点所发送的子链归档请求,则确定虚拟平行子链满足区块上链条件。
其中,该装置还包括:
阈值获取模块,用于从虚拟平行子链中获取临时创世区块,从临时创世区块中获取子链区块阈值;临时创世区块是指虚拟平行子链中的第一个区块;
高度匹配模块,用于获取虚拟平行子链中的待检测区块,若待检测区块的区块高度为子链区块阈值,则确定虚拟平行子链满足区块上链条件;待检测区块是指虚拟平行子链中区块高度最大的区块。
其中,该装置还包括:
范围获取模块,用于获取子链交易数据的交易范围;
交易发送模块,用于若交易范围大于子链限定范围阈值,则将子链交易数据发送至共识节点,以使共识节点在对子链交易数据共识通过时,将子链交易数据进行上链;
共识调用模块,用于若交易范围小于或等于子链限定范围阈值,则执行目标子链业务节点将子链交易数据发送至关联子链业务节点的过程。
其中,该子链归档模块,包括:
区块获取单元,用于若虚拟平行子链满足区块上链条件,则获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据;
平行确定单元,用于将区块数据确定为虚拟平行子链所对应的平行交易数据,将平行交易数据发送至共识节点,以使共识节点在基于区块数据中的区块验证数据对区块数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该子链归档模块,包括:
该区块获取单元,还用于若虚拟平行子链满足区块上链条件,则获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据;
数据选取单元,用于根据区块数据中的区块验证数据、交易基础信息及子链交易结果,生成虚拟平行子链所对应的平行交易数据;
平行发送单元,用于将平行交易数据发送至共识节点,以使共识节点在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该装置还包括:
同步请求模块,用于若目标子链业务节点检测到共识节点在主区块链中添加了主交易区块,则目标子链业务节点向共识节点发送区块同步请求;
业务同步模块,用于获取共识节点基于区块同步请求所发送的主交易区块,将主交易区块添加至业务同步区块链中。
其中,该装置还包括:
合约更新模块,用于若主交易区块中的主交易数据指示平行子链网络的关联合约数据发生变化,则基于主交易数据更新关联合约数据;
资源更新模块,用于根据更新后的关联合约数据生成子链更新合约,根据子链更新合约生成资源更新区块,将资源更新区块添加至虚拟平行子链中。
本申请实施例一方面提供了一种区块链管理装置,该装置包括:
数据接收模块,用于共识节点接收虚拟平行子链所对应的平行交易数据,获取平行交易数据中的区块验证数据;
交易验证模块,用于基于区块验证数据对平行交易数据进行验证;
子链上链模块,用于在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中;平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从虚拟平行子链的子链区块中所获取到的;子链业务节点包括目标子链业务节点;虚拟平行子链中的子链区块包括子链交易区块;子链交易区块是由目标子链业务节点在子链交易数据共识通过时,根据子链交易数据及子链共识数据所生成的。
其中,平行交易数据包括虚拟平行子链所包括的子链区块中的区块数据;
该子链上链模块,包括:
交易划分单元,用于获取主区块链的区块交易空间,基于区块交易空间将平行交易数据分成N个交易子数据;N为正整-5数;
子链上链单元,用于对N个交易子数据分别进行封装,得到N个子链管理区块,将N个子链管理区块添加至主区块链中。
本申请实施例一方面提供了一种计算机设备,包括处理器、存储器、输入输出接口;
处理器分别与存储器和输入输出接口相连,其中,输入输出接口用于接收数据及输出数据,存储器用于存储计算机程序,处理器用于调用该计算机程序,以使包含该处理器的计算机设备执行本申请实施例一方面中的区块链管理方法。
本申请实施例一方面提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,该计算机程序适于由处理器加载并执行,以使得具有该处理器的计算机设备执行本申请实施例一方面中的区块链管理方法。
本申请实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例一方面中的各种可选方式中提供的方法。
实施本申请实施例,将具有如下有益效果:
在本申请实施例中,目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链。通过以上过程,可以使得子链业务节点可以进行临时区块链的构建(即虚拟平行子链),也就是说,子链业务节点在作为共识节点所对应的业务节点的情况下,还可以作为一种子链中的共识节点,进行区块的生成及上链处理,在该情况下生成的虚拟平行子链可以认为是由子链业务节点单独生成的,与共识节点的关联性较小,而且由子链业务节点所组成的平行子链网络可以认为是一个临时的区块链网络,实现对区块的临时管控。在虚拟平行子链满足区块上链条件时,将该虚拟平行子链中的交易内容等上链至主链(即主区块链)中,实现对虚拟平行子链的交易归档,使得子链业务节点分担了主链的部分工作,即分担了局部区块链业务流量,减少了主链的数据存储和处理量,从而提高主链的管理效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种区块链管理的网络交互架构图;
图1b是本申请实施例提供的一种节点交互架构示意图;
图2是本申请实施例提供的一种区块管理场景示意图;
图3是本申请实施例提供的一种区块链子链管理的方法流程图;
图4是本申请实施例提供的一种区块链主链管理的方法流程图;
图5是本申请实施例提供了一种节点交互流程示意图;
图6是本申请实施例提供的一种票据管理网络架构图;
图7是本申请实施例提供的一种区块链业务结构示意图;
图8是本申请实施例提供的一种区块链管理装置示意图;
图9是本申请实施例提供的另一种区块链管理装置示意图;
图10是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
首先,对本申请实施例中提到的区块链、区块、链及共识机制进行介绍。
1、区块链:狭义上,区块链是一种以区块为基本单位的链式数据结构,区块中利用数字摘要对之前的交易历史进行校验,适合分布式记账场景下防篡改和可扩展性的需求;广义上,区块链还指代区块链结构实现的分布式记账技术,包括分布式共识、隐私与安全保护、点对点通信技术、网络协议、智能合约等。区块链的目标是实现一个分布的数据记录账本,此账本只允许添加,不允许删除。账本底层的基本结构是一个线性的链表。链表由一个个“区块”串联组成,后继区块中记录前继区块的哈希(Hash)值,每个区块(以及区块中的交易)是否合法,可通过计算哈希值的方式进行快速检验。若网络中节点提议添加一个新的区块,必须经过共识机制对区块达成确认。
2、区块(Block):记录一段时间内发生的所有交易和状态结果等,是对当前账本状态的一次共识。具体的,对于区块链来说,每次写入数据,即上述的交易过程,就是创建一个区块。
3、链(Chain):由区块按照发生顺序串联而成,是整个账本状态变化的日志记录。
4、共识机制:通过特殊节点的投票,在很短的时间内完成对交易的验证和确认,目标是使所有的诚实节点保存一致的区块链式图。
具体的,一条区块链是由一个个区块组成,每个区块都包括两部分:区块头和区块体,而区块头包括时间戳、当前哈希值和前继哈希值。其中,时间戳用于记录该区块的生成时间;当前哈希值,为该区块的哈希值;前继哈希值,为该区块的前继区块的哈希值;区块体,为该区块存储的交易信息。
其中,若在本申请中需要收集对象(如用户等)数据,则在收集前、收集中,显示提示界面或者弹窗,该提示界面或者弹窗用于提示用户当前正在收集XXXX数据,也就是说,该提示界面或者弹窗可以提示用户当前正在收集的数据是什么,或者还可以提示用户当前收集的数据用于什么用途等,仅仅在获取到用户对该提示界面或者弹窗发出确认操作后,开始执行数据获取的相关的步骤,否则结束。而且,对于获取到的用户数据,会在合理合法的场景或用途等上进行使用,对用户数据的使用方式或场景等符合相关法律规定。可选的,在一些需要使用用户数据但未得到用户授权的场景中,还可以向用户请求授权,在授权通过时,再使用用户数据。
在本申请实施例中,请参见图1a,图1a是本申请实施例提供的一种区块链管理的网络交互架构图。其中,该网络可以认为是一个区块链网络,该区块链网络包括见证网络(也可以称为业务网络)101及共识网络102等,也就是说,可以认为该区块链网络为多层链结构,被分为见证网络101及共识网络102。可选的,见证网络101与共识网络102之间可以通过路由代理层进行交互。其中,该见证网络101可以包括至少两个业务节点,该至少两个业务节点的数量是由见证网络101的部署所确定的,不做限制,例如,该至少两个业务节点可以如图1a中所示,如业务节点10a、业务节点10b、业务节点10c、业务节点10d、业务节点10e、业务节点10f、业务节点10g及业务节点10h等,各个业务节点之间可以进行数据交互;该共识网络102可以包括至少两个共识节点,该至少两个共识节点的数量是由共识网络102的部署所确定的,不做限制,例如,该至少两个共识节点可以如图1a中所示,如共识节点10i、共识节点10j、共识节点10k、共识节点10m、共识节点10n、共识节点10p、共识节点10q及共识节点10r等,各个共识节点之间可以进行数据交互。其中,见证网络101中的业务节点可以与共识网络102中的共识节点之间进行数据交互,见证网络101中的业务节点可以访问共识网络102,从共识网络102中同步数据,共识网络102中的共识节点可以向见证网络101发送数据等。可选的,见证网络101中的业务节点可以通过路由代理层,访问共识网络102,共识网络102中的共识节点可以通过路由代理层向见证网络101发送消息等。
其中,该见证网络101中的业务节点用于进行业务执行,可以通过身份认证等方式从共识网络102中获取区块头数据及部分授权可见的区块数据等。可选的,该业务节点可以是一种简单支付验证(Simplified Payment Verification,SPV)节点,或者是其他的轻量节点等。该共识网络102中的共识节点可以对区块进行共识上链,向见证网络101中的业务节点发送数据等。可选的,该见证网络101与共识网络102可以处于相同的网络环境下,如见证网络101与共识网络102均处于联盟网络中等;或者,该见证网络101与共识网络102可以处于不同的网络环境下,如,见证网络101处于公有网络中,而共识网络102处于私有网络中等,在此不做限制。可选的,当共识网络102处于私有网络中时,数据交互有共识网络102中的共识机制保障安全,可以不增加额外的身份管理和网络控制等,其中,为提高数据安全性,也可以对共识网络102中的数据交互进行进一步地安全验证,如身份管理及网络控制等。可选的,也可以不考虑该共识网络102所处的网络环境,对共识网络102中的数据交互进行进一步安全验证,如身份管理及网络控制等,在此不做限制。可选的,共识网络102中的共识节点,可以对业务节点以及其他可能的节点接入该共识网络102中的行为进行检测,以提高区块链网络中的数据访问的安全性。
进一步地,可以参见图1b,图1b是本申请实施例提供的一种节点交互架构示意图。如图1b所示,见证网络103中包括业务节点,其中,可以从见证网络103(也就是图1a中的见证网络101)所包括的业务节点中获取子链业务节点,将子链业务节点组成平行子链网络,其中,该平行子链网络可以包括至少两个子链业务节点,以图1b为例,该至少两个子链业务节点可以如子链业务节点104、子链业务节点1051及子链业务节点1052等。其中,目标子链业务节点可以将子链交易数据发送至关联子链业务节点进行共识,并在共识通过后生成区块进行上链,其中,该目标子链业务节点是指平行子链网络中的任意一个子链业务节点,关联子链业务节点是指平行子链网络中除目标子链业务节点之外的子链业务节点,例如,假定该目标子链业务节点为子链业务节点104,则该关联子链业务节点105可以包括子链业务节点1051及子链业务节点1052等。进一步地,若平行子链网络所管理的虚拟平行子链满足区块上链条件,则子链业务节点可以将虚拟平行子链中的交易内容发送至共识网络106,以使共识网络106中的共识节点对该虚拟平行子链中的交易内容进行上链,该共识网络106可以包括至少两个共识节点,如图1b中所示,共识节点1061、共识节点1062、共识节点1063及共识节点1064等。
具体的,可以参见图2,图2是本申请实施例提供的一种区块管理场景示意图。如图2所示,目标子链业务节点201可以认为是见证网络中的任意一个子链业务节点,该目标子链业务节点201可以包括业务同步区块链2021及虚拟平行子链2022。其中,该业务同步区块链2021用于同步共识网络中所生成的主区块链中的区块;该虚拟平行子链2022用于管理平行子链网络中所生成的区块。其中,该平行子链网络中的任意一个子链业务节点可以包括业务同步区块链及虚拟平行子链。具体的,目标子链业务节点201可以将子链交易数据发送至关联子链业务节点203,以使关联子链业务节点203可以对该子链交易数据进行共识,该关联子链业务节点203的数量为m个,m为正整数,如图2中所示的子链业务节点2031、子链业务节点2032及子链业务节点2033等。在关联子链业务节点203对子链交易数据共识通过时,目标子链业务节点201可以根据子链交易数据及子链共识数据生成子链交易区块204,该子链共识数据用于表示关联子链业务节点对子链交易数据的投票信息等,进一步地,可以将子链交易区块204添加至虚拟平行子链2022中。进一步地,若虚拟平行子链2022满足区块上链条件,则目标子链业务节点可以从虚拟平行子链的子链区块中获取平行交易数据,将该平行交易数据发送至共识节点,该共识节点可以认为是共识网络205中的任意一个共识节点,如共识节点2051、共识节点2052或共识节点2053等。共识节点可以对该平行交易数据进行上链处理,即添加至主区块链中,使得业务节点可以分担主区块链中的局部区块管理功能,分担局部区块链业务流量,从而减少主区块链的数据存储和处理量,进而提高主链的管理效率。其中,可以认为见证网络中包括业务节点,该见证网络中组成平行子链网络的业务节点可以认为是该平行子链网络中的子链业务节点。
可选的,该见证网络中的平行子链网络是可以发生变化的,例如,在平行子链网络中的虚拟平行子链归档,即添加至主区块链时,可以删除该平行子链网络,其中,还可以注册新的平行子链网络。不同的平行子链网络所包括的子链业务节点可以不完全相同。例如,平行子链网络1可以包括业务节点1、业务节点2及业务节点3等,平行子链网络2可以包括业务节点2、业务节点5及业务节点6等。
可以理解的是,本申请实施例中所提及的业务节点可以是一种计算机设备,共识节点可以是一种计算机设备,本申请实施例中的计算机设备包括但不限于终端设备或服务器。换句话说,计算机设备可以是服务器或终端设备,也可以是服务器和终端设备组成的系统。其中,以上所提及的终端设备可以是一种电子设备,包括但不限于手机、平板电脑、台式电脑、笔记本电脑、掌上电脑、车载设备、增强现实/虚拟现实(Augmented Reality/VirtualReality,AR/VR)设备、头盔显示器、可穿戴设备、智能音箱、数码相机、摄像头及其他具备网络接入能力的移动互联网设备(mobile internet device,MID)等。其中,以上所提及的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、车路协同、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
可选的,本申请还可以采用云存储技术管理该虚拟平行子链等,其中,云存储(cloud storage)是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
进一步地,请参见图3,图3是本申请实施例提供的一种区块链子链管理的方法流程图。如图3所示,在图3所描述的方法实施例中,该区块链子链管理过程包括如下步骤:
步骤S301,目标子链业务节点将子链交易数据发送至关联子链业务节点。
在本申请实施例中,见证网络中的部分或全部业务节点,即(m+1)个业务节点,组成平行子链网络,该m为正整数,该(m+1)个业务节点可以认为是该平行子链网络中的子链业务节点。其中,在目标子链业务节点获取到子链交易数据时,可以将该子链交易数据发送至关联子链业务节点,以使关联子链业务节点对该子链交易数据进行共识,其中,该目标子链业务节点可以是该平行子链网络中的任意一个子链业务节点,该关联子链业务节点可以是该平行子链网络中除了目标子链业务节点之外的子链业务节点。可选的,目标子链业务节点可以根据子链交易数据生成初始交易区块,将初始交易区块发送至关联子链业务节点,以使关联子链业务节点对该初始交易区块进行共识。也就是说,目标子链业务节点可以直接将子链交易数据发送至关联子链业务节点,也可以根据子链交易数据生成初始交易区块,将初始交易区块发送至关联子链业务节点。
可选的,在生成平行子链网络时,可以对组成该平行子链网络的(m+1)个子链业务节点进行主节点选取,也就是从平行子链网络中获取候选主节点。在目标子链业务节点与关联子链业务节点对候选主节点共识通过时,将该候选主节点确定为子链主节点。进一步地,若目标子链业务节点生成子链交易数据,则对目标子链业务节点进行节点检测。若该目标子链业务节点为子链主节点,则目标子链业务节点将子链交易数据发送至关联子链业务节点;若该目标子链业务节点不为子链主节点,则确定该目标子链业务节点无区块生成权限,进一步可选的,可以将该子链交易数据发送至子链主节点,子链主节点可以广播该子链交易数据,并在对该子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将该子链交易区块添加至虚拟平行子链。
总的来说,该子链交易区块可以由平行子链网络中的任意一个子链业务节点生成,也可以只由子链主节点生成,在此不做限制。
可选的,共识网络可以为该平行子链网络分配子链资源,并对该子链资源进行锁定处理。平行子链网络中的子链业务节点可以获取共识网络所分配的子链资源,该子链业务节点可以基于该子链资源执行子链交易数据所对应的交易业务。
步骤S302,在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链。
在本申请实施例中,目标子链业务节点可以获取关联子链业务节点针对该子链交易数据的投票信息,若关联子链业务节点针对该子链交易数据的投票信息满足共识通过条件,则确定关联子链业务节点对子链交易数据共识通过。其中,该共识通过条件可以是由任意一种共识算法所确定的,例如,该共识算法可以是但不限于工作量证明(Proof of Work,PoW)算法、权益证明(Proof of Stake,PoS)算法、股份授权证明(Delegated Proof ofStake,DPoS)算法或实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)算法等,在此不做限制。进一步地,在关联子链业务节点对子链交易数据共识通过时,目标子链业务节点可以根据子链交易数据及子链共识数据生成子链交易区块。可选的,若该目标子链业务节点生成了初始交易区块,则可以根据该子链共识数据对初始交易区块进行更新,生成子链交易区块。其中,该子链共识数据可以用于表示关联子链业务节点对子链交易数据(或包括子链交易数据的初始交易区块)的投票信息等。进一步地,可以将该子链交易区块添加至虚拟平行子链。其中,可以将该虚拟平行子链中所包括的区块记作子链区块,该虚拟平行子链中的子链区块包括上述生成的子链交易区块。
可选的,在生成子链交易区块时,可以执行该子链交易数据所对应的交易业务,获取该交易业务的业务执行结果,根据子链交易数据、子链共识数据及业务执行结果等生成子链交易区块。
步骤S303,若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块中获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
在本申请实施例中,目标子链业务节点可以对该虚拟平行子链进行检测,若该虚拟平行子链满足区块上链条件,则可以从虚拟平行子链的子链区块中获取平行交易数据,将该平行交易数据发送至共识节点。共识节点可以根据平行交易数据生成子链关管理区块,将该子链管理区块添加至主区块链中。该主区块链可以认为是共识网络中所维护的区块链。若该虚拟平行子链不满足区块上链条件,则可以继续进行子链交易,在获取到新的子链交易数据时,执行步骤S301至步骤S302,对新的子链交易数据进行共识上链。
可选的,若该平行子链网络所关联的子链资源被完全使用,则表示该平行子链网络不存在可供分配的资源,可以确定虚拟平行子链满足区块上链条件。或者,若目标子链业务节点接收到共识节点所发送的子链归档请求,则可以确定虚拟平行子链满足区块上链条件。
或者,该虚拟平行子链的子链区块中包括临时创世区块,可以从虚拟平行子链中获取临时创世区块,从临时创世区块中获取子链回归条件;基于该子链回归条件获取虚拟平行子链中的区块信息,若该区块信息满足子链回归条件,则可以确定该虚拟平行子链满足区块上链条件。可选的,该临时创世区块中所包括的子链回归条件可以包括但不限于子链区块阈值、子链节点异常阈值或交易失败阈值等。举例来说,以子链区块阈值为例,可以从临时创世区块中获取子链区块阈值,其中,该临时创世区块是指虚拟平行子链中的第一个区块,该子链区块阈值可以认为是临时创世区块中所设定的一个子链回归条件;获取该虚拟平行子链中的待检测区块,若该待检测区块的区块高度为子链区块阈值,或者说该虚拟平行子链中所包括的子链区块的数量达到该子链区块阈值,则确定该虚拟平行子链满足区块上链条件。其中,该待检测区块是指虚拟平行子链中区块高度最大的区块。以子链节点异常阈值为例,可以从临时创世区块中获取子链节点异常阈值;获取该平行子链网络所包括的子链业务节点中的异常子链节点,若该异常子链节点的数量大于或等于子链节点异常阈值,则可以确定该虚拟平行子链满足区块上链条件。以交易失败阈值为例,可以从临时创世区块中获取交易失败阈值;获取该平行子链网络中共识失败的异常交易数量,若该异常交易数量大于或等于交易失败阈值,则可以确定该虚拟平行子链满足区块上链条件。其中,该临时创世区块中所包括的子链回归条件的数量可以为一个或至少两个等,在此不做限制。
其中,以上为例举的几种可选的区块上链条件,可以根据需要进行修改。例如,假定存在f种区块上链条件,若虚拟平行子链针对f种区块上链条件均不满足,则确定虚拟平行子链不满足区块上链条件。f为正整数。
进一步地,若该虚拟平行子链满足区块上链条件,则可以从虚拟平行子链的子链区块中获取平行交易数据,将该平行交易数据发送至共识节点。具体的,一种情况下,目标子链业务节点可以获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据,该区块数据是指子链区块中的区块头数据及区块体数据等,其中,该区块数据可以包括区块验证数据、子链交易数据及业务执行结果等,在此不做限制,其中,该区块验证数据可以包括但不限于对应的子链区块的投票信息及区块头数据(如区块哈希值或默克尔树等)等。可以将区块数据确定为虚拟平行子链所对应的平行交易数据,将平行交易数据发送至共识节点,以使共识节点在基于区块数据中的区块验证数据对区块数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。也就是说,可以将虚拟平行子链中所包括的所有的子链区块中的所有数据发送至共识节点。共识节点可以直接基于获取到的平行交易数据,生成子链管理区块,将该子链管理区块添加至主区块链中。可选的,由于该主区块链中对该虚拟平行子链进行了完全备份,平行子链网络中的子链业务节点可以注销平行子链网络,并删除虚拟平行子链,以减少区块链网络中的存储数据量,减少业务节点的资源损耗。当然,为了进一步保障数据的安全性,平行子链网络中的子链业务节点可以注销平行子链网络,可以保留该虚拟平行子链。
一种情况下,可以获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据,该区块数据是指子链区块中的区块头数据及区块体数据等,其中,该区块数据可以包括区块验证数据、子链交易数据及业务执行结果等,在此不做限制,其中,该区块验证数据可以包括但不限于对应的子链区块的投票信息及区块头数据(如区块哈希值或默克尔树等)等。根据区块数据中的区块验证数据、交易基础信息及子链交易结果,生成虚拟平行子链所对应的平行交易数据。其中,该交易基础信息可以是从子链交易数据中获取到的,具体的,可以从子链交易数据中获取交易基础信息,该交易基础信息可以是该子链交易数据的简单描述,进一步,可以获取区块高度最大的子链区块,将该区块高度最大的子链区块中的业务执行结果,确定为子链交易结果。其中,该子链交易结果可以认为是虚拟平行子链中的交易的最终执行结果。进一步地,可以将平行交易数据发送至共识节点,以使共识节点在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。此时,主区块链中未存储虚拟平行子链中的全部数据,只保留了虚拟平行子链中的部分数据,如区块验证数据(如投票信息等)、交易基础信息及子链交易结果等。此时,平行子链网络中的子链业务节点可以注销该平行子链网络,但不删除虚拟平行子链,在该方式下,可以减少主区块链所耗费的存储空间及资源等。
在本申请实施例中,目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链。通过以上过程,可以使得子链业务节点可以进行临时区块链的构建(即虚拟平行子链),也就是说,子链业务节点在作为共识节点所对应的业务节点的情况下,还可以作为一种子链中的共识节点,进行区块的生成及上链处理,在该情况下生成的虚拟平行子链可以认为是由子链业务节点单独生成的,与共识节点的关联性较小,而且由子链业务节点所组成的平行子链网络可以认为是一个临时的区块链网络,实现对区块的临时管控。在虚拟平行子链满足区块上链条件时,将该虚拟平行子链中的交易内容等上链至主链(即主区块链)中,实现对虚拟平行子链的交易归档,使得子链业务节点分担了主链的部分工作,即分担了局部区块链业务流量,减少了主链的数据存储和处理量,从而提高主链的管理效率。
进一步地,请参见图4,图4是本申请实施例提供的一种区块链主链管理的方法流程图。如图4所示,该区块链主链管理过程包括如下步骤:
步骤S401,共识节点接收虚拟平行子链所对应的平行交易数据,获取平行交易数据中的区块验证数据。
在本申请实施例中,共识节点可以接收虚拟平行子链所对应的平行交易数据,获取该平行交易数据中的区块验证数据,该区块验证数据可以包括但不限于对应的子链区块的投票信息及区块头数据(如区块哈希值或默克尔树等)等。也就是说,该虚拟平行子链中的子链区块是已经经过共识的的区块,共识节点可以直接对该区块验证数据进行验证。
步骤S402,在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
在本申请实施例中,共识节点可以基于区块验证数据对平行交易数据进行验证。平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从虚拟平行子链的子链区块中所获取到的;子链业务节点包括目标子链业务节点;虚拟平行子链中的子链区块包括子链交易区块;子链交易区块是由目标子链业务节点在子链交易数据共识通过时,根据子链交易数据及子链共识数据所生成的。例如,共识节点可以检测针对子链区块的投票信息是否满足共识通过条件,若该针对子链区块的投票信息不满足共识通过条件,则确定对平行交易数据验证失败。可以检测该区块头数据,若该区块头数据异常,则确定对平行交易数据验证失败等。进一步地,在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。可选的,在基于区块验证数据对平行交易数据验证失败时,可以向子链业务节点发送子链数据验证失败消息,可以从平行子链网络中重新获取平行交易数据。通过该方式,使得主区块链中的部分交易可以在子链中进行,即通过子链业务节点分担局部区块链业务流量,从而使得这部分交易的相关数据(即区块数据)可以被主区块链进行快速验证,并添加至主区块链中,减少了主区块链的数据存储及处理量,提高区块链的管理效率。
可选的,平行交易数据包括虚拟平行子链所包括的子链区块中的区块数据。共识节点可以获取主区块链的区块交易空间,基于区块交易空间将平行交易数据分成N个交易子数据;N为正整数。对N个交易子数据分别进行封装,得到N个子链管理区块,将N个子链管理区块添加至主区块链中。也就是将虚拟平行子链中的区块数据(相当于批量交易)尽可能地填充到少量区块中,快速打包上链,而且无需重新执行这些交易,直接将该子链交易结果应用到主链(即主区块链)的结果中进行保存即可,提高了主链的管理效率。
可选的,该平行交易数据包括虚拟平行子链所包括的区块验证数据、交易基础信息及子链交易结果等,共识节点可以根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
进一步可选的,可以参见图5,图5是本申请实施例提供的一种节点交互流程示意图。如图5所示,子链业务节点可以存在子链模式及业务模式等,该子链模式用于表示管理虚拟平行子链,即生成或验证子链区块的模式;业务模式用于表示从共识网络中同步交易的模式等。其中,该节点之间的交互过程可以包括如下步骤:
步骤S501,发送平行子链注册请求。
在本申请实施例中,目标业务节点可以向共识节点发送平行子链注册请求,该平行子链注册请求可以包括至少两个业务节点的节点信息。共识节点可以基于该平行子链注册请求对至少两个业务节点的节点信息进行验证,若验证通过,则向目标子链业务节点发送子链注册成功消息,此时,该目标业务节点可以认为还是一个普通的业务节点。可选的,可以根据上述至少两个业务节点的节点信息生成初始创世区块,向共识节点发送平行子链注册请求,该平行子链注册请求包括该初始创世区块;共识节点在基于该平行子链注册请求对至少两个业务节点的节点信息进行验证时,可以对该初始创世区块进行共识,若共识通过,则确定对至少两个业务节点的节点信息验证通过。可选的,该共识网络中可以包括平行链管理合约,具体的,目标子链业务节点可以是通过该平行链管理合约,向共识节点发送平行子链注册请求。
步骤S502,生成平行子链网络。
在本申请实施例中,在平行子链注册成功时,可以将平行子链注册请求所请求的至少两个业务节点确定为子链业务节点,若该至少两个业务节点包括上述目标业务节点,则此时该目标业务节点为目标子链业务节点。可以获取平行子链注册请求所请求的子链业务节点的节点信息,子链业务节点包括目标子链业务节点及关联子链业务节点。创建子链临时账本,根据子链业务节点的节点信息及子链临时账本生成临时创世区块,存储临时创世区块,得到虚拟平行子链。其中,若存在初始创世区块,则可以根据子链业务节点的节点信息及子链临时账本更新该初始创世区块,生成临时创世区块,得到虚拟平行子链。可选的,该临时创世区块中还可以包括子链智能合约等,该子链智能合约可以用于执行子链交易数据所对应的交易业务等。
可选的,可以基于至少两个子链业务节点的节点信息,生成平行子链网络。具体的,目标子链业务节点可以基于子链业务节点的节点信息,向关联子链业务节点发送第一子链交互消息;获取关联子链业务节点所发送的第二子链交互消息。若第一子链交互消息及第二子链交互消息,指示目标子链业务节点与关联子链业务节点之间存在网络连接,则确定目标子链业务节点与关联子链业务节点组成平行子链网络。具体的,可以基于该第一子链交互消息及第二子链交互消息,构建目标子链业务节点与关联子链业务节点之间的网络连接,即至少两个子链业务节点之间的网络连接,将至少两个子链业务节点组成平行子链网络。可选的,还可以对初始共识算法进行初始化,得到用于平行子链网络中共识的子链共识算法等。
可选的,可以从至少两个子链业务节点中获取候选主节点,在至少两个子链业务节点(即目标子链业务节点与关联子链业务节点)对候选主节点共识通过时,将候选主节点确定为子链主节点。
步骤S503,获取子链资源。
在本申请实施例中,目标子链业务节点可以向共识节点发送资源获取请求,获取共识节点基于资源获取请求所发送的子链资源;根据子链资源生成资源管理区块,在对资源管理区块共识通过时,将资源管理区块添加至虚拟平行子链;向共识节点发送资源管理成功消息,以使共识节点对子链资源进行锁定处理;共识节点不具备针对被锁定的子链资源的使用权限。举例来说,假定该平行子链网络用于开具发票,该子链资源可以是发票数据集合,在向共识节点发送资源管理成功消息时,共识节点对该发票数据集合进行锁定处理,可选的,可以对该发票数据集合所对应的票据法人的状态进行锁定处理等。若共识节点需要开具发票,则需要从除该发票数据集合之外的发票数据中获取待开具发票;而平行子链网络中的子链业务节点可以从该发票数据集合中获取待开具发票,以进行发票开具等。或者,该子链资源可以是数字资产等,在此不做限制。
步骤S504,发送子链交易数据。
在本申请实施例中,目标子链业务节点可以将子链交易数据发送至关联子链业务节点。可选的,目标子链业务节点可以获取子链交易数据的交易范围。若交易范围大于子链限定范围阈值,则输出交易异常消息,或者,可以将子链交易数据发送至共识节点,以使共识节点在对子链交易数据共识通过时,将子链交易数据进行上链。若交易范围小于或等于子链限定范围阈值,则执行目标子链业务节点将子链交易数据发送至关联子链业务节点的过程。举例来说,以开具发票这一场景为例,该子链限定范围阈值为开具发票,获取子链交易数据的交易范围,假定该交易范围为发票税率及发票开具交易,该交易范围大于子链限定范围阈值,则可以输出交易异常消息,或者,可以将子链交易数据发送至共识节点,以使共识节点在对子链交易数据共识通过时,将子链交易数据进行上链。
步骤S505,进行共识。
在本申请实施例中,关联子链业务节点可以对子链交易数据进行共识投票,将针对该子链交易数据的投票信息发送至目标子链业务节点。
具体的,该步骤S504至步骤S505,可以参见图3的步骤S301中所示的相关描述。
步骤S506,在共识通过时,生成子链交易区块,添加至虚拟平行子链。
在本申请实施例中,在对子链交易数据共识通过时,可以根据子链交易数据及子链共识数据生成子链交易区块,将该子链交易区块添加至虚拟平行子链中,具体可以参见图3的步骤S302中的相关描述。
步骤S507,检测虚拟平行子链满足区块上链条件。
在本申请实施例中,目标子链业务节点可以检测虚拟平行子链是否满足区块上链条件。若该虚拟平行子链不满足区块上链条件,则目标子链业务节点可以继续进行子链交易,在获取到子链交易数据时,执行步骤S504;若该虚拟平行子链满足区块上链条件,则执行步骤S508。具体的,可以参见图3的步骤S303中的相关描述。
步骤S508,发送平行交易数据。
在本申请实施例中,目标子链业务节点可以从虚拟平行子链的子链区块中获取平行交易数据,将该平行交易数据发送至共识节点。
步骤S509,对平行交易数据进行上链。
在本申请实施例中,共识节点可以根据平行交易数据生成子链管理区块,将该子链管理区块添加至主区块链中。
其中,该步骤S508至步骤S509,可以参见上述图3的步骤S303中的相关描述。
可选的,共识节点获取到全局交易数据,若该全局交易数据与虚拟平行子链相关,则向平行子链网络中的子链业务节点发送子链归档请求,获取子链业务节点基于该子链归档请求所发送的平行交易数据,根据平行交易数据生成子链管理区块,将该子链管理区块添加至主区块链中。进一步地,基于该子链管理区块及全局交易数据生成初始全局区块,在对该初始全局区块进行共识通过时,基于初始全局区块生成全局交易区块,将该全局交易区块添加至主区块链中。可选的,若该全局交易数据包括针对子链资源的变更数据,则确定该全局交易数据与虚拟平行子链相关;若该全局交易数据包括针对全局参数的变更数据,则确定该全局交易数据与虚拟平行子链相关等,该全局参数是指与整个区块链网络相关的参数。进一步可选的,在平行子链网络注销后,业务节点还可以向共识网络注册新的平行子链网络。
步骤S510,同步主交易区块。
在本申请实施例中,若目标子链业务节点检测到共识节点在主区块链中添加了主交易区块,则目标子链业务节点向共识节点发送区块同步请求;获取共识节点基于区块同步请求所发送的主交易区块,将主交易区块添加至业务同步区块链中。或者,共识节点在主区块链中添加了主交易区块,可以向见证网络中所包括的业务节点(包括目标子链业务节点及关联子链业务节点等)发送主交易区块,以使见证网络中的业务节点将主交易区块同步添加至业务同步区块链中。可选的,可以从见证网络中获取与主交易区块相关的待同步业务节点,向待同步业务节点发送主交易区块,以使待同步业务节点将主交易区块同步添加至业务同步区块链中。可选的,在该情况下,可以认为业务节点可能涉及的业务类型不同,需要从共识网络中进行同步的交易数据也有所不同,例如,该主交易区块用于表示票据相关信息,则可以将涉及票据这一业务类型的业务节点确定为待同步业务节点;该主交易区块用于表示教育相关信息,则可以将涉及教育这一业务类型的业务节点确定为待同步业务节点等。其中,该见证网络中所包括的业务节点可以关联业务同步区块链,该见证网络中被设定为子链业务节点的业务节点可以包括虚拟平行子链。
其中,上述步骤S510可以在步骤S501至步骤S509的任意一个步骤执行过程中进行,或任意一个步骤执行前进行,或任意一个步骤执行后进行。
其中,该过程可以认为目标子链业务节点执行业务模式相关的功能,步骤S501至步骤S509可以认为目标子链业务节点执行子链模式相关的功能,也就是说,平行子链网络中的子链业务节点可以灵活地在子链模式与业务模式之间进行切换,而且平行子链网络相当于是临时创建,可以很灵活地归档结束,使得对子链的使用更加灵活,适配不同的业务形态,进而可以在一定程度上提高区块链的管理效率。
可选的,若主交易区块中的主交易数据指示平行子链网络的关联合约数据发生变化,则基于主交易数据更新关联合约数据。例如,假定该主交易数据中包括发票税率变更数据,该子链资源包括发票数据集合,则该主交易数据会影响到平行子链网络开具发票的相关信息,可以基于主交易数据更新关联合约数据。根据更新后的关联合约数据生成子链更新合约,具体的,可以是根据更新后的关联合约数据更新子链智能合约,得到子链更新合约。根据子链更新合约生成资源更新区块,将资源更新区块添加至虚拟平行子链中。
进一步地,可以参见图6,图6是本申请实施例提供的一种票据管理网络架构图。如图6所示,假定该子链交易数据为电子票据,则该票据管理网络包括业务层(即见证网络)、路由代理层及共识网络层等,也就是说,业务层(即见证网络)、路由代理层及共识网络层等组成了整个完整的区块链业务体系。其中,该业务层可以包括至少两个业务节点,至少两个业务节点用于为不同的使用方提供业务服务,如,电子税局、企业或消费者等。其中,不同的业务节点可以处于相同的网络环境下,也可以处于不同的网络环境下,如,电子税局访问的业务节点可以处于税务专网(也可以认为是一种私有网络),包括但不限于地方税局对应的业务节点等;企业可以访问的业务节点可以处于公有云,包括但不限于开票服务商对应的业务节点、报销服务商对应的业务节点及开票服务商对应的业务节点等;消费者访问的业务节点可以处于私有云,包括但不限于支付服务商对应的业务节点、流转服务商对应的业务节点及开票服务商对应的业务节点等。其中,路由代理层用于连通业务层与共识网络层,包括代理节点,该代理节点可以用于提供认证服务(如身份认证等)、证书缓存、路由服务及点对点服务等。共识网络层包括区块链子网,如核心链1及核心链2等,该核心链包括共识节点,共识节点包括权限合约、节点缓存及共识区块链(如主区块链)等。
进一步地,可以参见图7,图7是本申请实施例提供的一种区块链业务结构示意图。如图7所示,可以认为该区块链网络包括常规业务网络701、平行子链网络702及共识网络703。其中,该常规业务网络701可以认为是见证网络中除了子链业务节点之外的业务节点,该常规业务网络701可以包括k个常规业务节点,k为正整数,如图7中所示,如常规业务节点1、常规业务节点2及常规业务节点3等;该平行子链网络702可以包括(m+1)个子链业务节点,如子链业务节点1、子链业务节点2及子链业务节点3等,各个子链业务节点之间互联,组成了该平行子链网络702;共识网络703可以包括h个共识节点,h为正整数,如图7中所示。
举例来说,以企业为例,假定该企业中的各个部门组成了平行子链网络,也就是说,该子链业务节点可以认为是部门节点,部门节点下的员工可以认为是常规业务节点等。或者,该平行子链网络是由省级SPV节点组成,该平行子链网络中的省级SPV节点可以认为是同一个省中的省级SPV的多个多活节点,该常规业务节点可以认为是该省级SPV节点下的业务节点。
进一步地,请参见图8,图8是本申请实施例提供的一种区块链管理装置示意图。该区块链管理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码等),例如该区块链管理装置可以为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图8所示,该区块链管理装置800可以用于图3所对应实施例中的计算机设备,具体的,该装置可以包括:数据发送模块11、区块处理模块12及子链归档模块13。
数据发送模块11,用于目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;
区块处理模块12,用于在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;
子链归档模块13,用于若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块中获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该装置800还包括:
平行注册模块14,用于向共识节点发送平行子链注册请求,在平行子链注册成功时,获取平行子链注册请求所请求的子链业务节点的节点信息;子链业务节点包括目标子链业务节点及关联子链业务节点;
子链创建模块15,用于创建子链临时账本,根据子链业务节点的节点信息及子链临时账本生成临时创世区块,存储临时创世区块,得到虚拟平行子链。
其中,该装置800还包括:
交互发送模块16,用于目标子链业务节点基于子链业务节点的节点信息,向关联子链业务节点发送第一子链交互消息;
交互获取模块17,用于获取关联子链业务节点所发送的第二子链交互消息;
网络生成模块18,用于若第一子链交互消息及第二子链交互消息,指示目标子链业务节点与关联子链业务节点之间存在网络连接,则确定目标子链业务节点与关联子链业务节点组成平行子链网络。
其中,该装置800还包括:
节点选取模块19,用于目标子链业务节点从平行子链网络中获取候选主节点,在目标子链业务节点与关联子链业务节点对候选主节点共识通过时,将候选主节点确定为子链主节点;
节点检测模块20,用于若目标子链业务节点生成子链交易数据,则对目标子链业务节点进行节点检测;
发送调用模块21,用于若目标子链业务节点为子链主节点,则执行目标子链业务节点将子链交易数据发送至关联子链业务节点的过程;
权限确定模块22,用于若目标子链业务节点不为子链主节点,则确定目标子链业务节点无区块生成权限。
其中,该装置800还包括:
资源获取模块23,用于向共识节点发送资源获取请求,获取共识节点基于资源获取请求所发送的子链资源;
资源管理模块24,用于根据子链资源生成资源管理区块,在对资源管理区块共识通过时,将资源管理区块添加至虚拟平行子链;
资源反馈模块25,用于向共识节点发送资源管理成功消息,以使共识节点对子链资源进行锁定处理;共识节点不具备针对被锁定的子链资源的使用权限。
其中,该装置800还包括:
资源检测模块26,用于若子链资源被完全使用,则确定虚拟平行子链满足区块上链条件;或者,
归档接收模块27,用于若目标子链业务节点接收到共识节点所发送的子链归档请求,则确定虚拟平行子链满足区块上链条件。
其中,该装置800还包括:
阈值获取模块28,用于从虚拟平行子链中获取临时创世区块,从临时创世区块中获取子链区块阈值;临时创世区块是指虚拟平行子链中的第一个区块;
高度匹配模块29,用于获取虚拟平行子链中的待检测区块,若待检测区块的区块高度为子链区块阈值,则确定虚拟平行子链满足区块上链条件;待检测区块是指虚拟平行子链中区块高度最大的区块。
其中,该装置800还包括:
范围获取模块30,用于获取子链交易数据的交易范围;
交易发送模块31,用于若交易范围大于子链限定范围阈值,则将子链交易数据发送至共识节点,以使共识节点在对子链交易数据共识通过时,将子链交易数据进行上链;
共识调用模块32,用于若交易范围小于或等于子链限定范围阈值,则执行目标子链业务节点将子链交易数据发送至关联子链业务节点的过程。
其中,该子链归档模块13,包括:
区块获取单元131,用于若虚拟平行子链满足区块上链条件,则获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据;
平行确定单元132,用于将区块数据确定为虚拟平行子链所对应的平行交易数据,将平行交易数据发送至共识节点,以使共识节点在基于区块数据中的区块验证数据对区块数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该子链归档模块13,包括:
该区块获取单元131,还用于若虚拟平行子链满足区块上链条件,则获取虚拟平行子链所包括的子链区块,从子链区块中获取区块数据;
数据选取单元133,用于根据区块数据中的区块验证数据、交易基础信息及子链交易结果,生成虚拟平行子链所对应的平行交易数据;
平行发送单元134,用于将平行交易数据发送至共识节点,以使共识节点在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
其中,该装置800还包括:
同步请求模块33,用于若目标子链业务节点检测到共识节点在主区块链中添加了主交易区块,则目标子链业务节点向共识节点发送区块同步请求;
业务同步模块34,用于获取共识节点基于区块同步请求所发送的主交易区块,将主交易区块添加至业务同步区块链中。
其中,该装置800还包括:
合约更新模块35,用于若主交易区块中的主交易数据指示平行子链网络的关联合约数据发生变化,则基于主交易数据更新关联合约数据;
资源更新模块36,用于根据更新后的关联合约数据生成子链更新合约,根据子链更新合约生成资源更新区块,将资源更新区块添加至虚拟平行子链中。
本申请实施例提供了一种区块链管理装置,该装置可以运行于子链业务节点中,将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链。通过以上过程,可以使得子链业务节点可以进行临时区块链的构建(即虚拟平行子链),也就是说,子链业务节点在作为共识节点所对应的业务节点的情况下,还可以作为一种子链中的共识节点,进行区块的生成及上链处理,在该情况下生成的虚拟平行子链可以认为是由子链业务节点单独生成的,与共识节点的关联性较小,而且由子链业务节点所组成的平行子链网络可以认为是一个临时的区块链网络,实现对区块的临时管控。在虚拟平行子链满足区块上链条件时,将该虚拟平行子链中的交易内容等上链至主链(即主区块链)中,实现对虚拟平行子链的交易归档,使得子链业务节点分担了主链的部分工作,即分担了局部区块链业务流量,减少了主链的数据存储和处理量,从而提高主链的管理效率。
进一步地,请参见图9,图9是本申请实施例提供的另一种区块链管理装置示意图。该区块链管理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码等),例如该区块链管理装置可以为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图9所示,该区块链管理装置900可以用于图3所对应实施例中的计算机设备,具体的,该装置可以包括:数据接收模块41、交易验证模块42及子链上链模块43。
数据接收模块41,用于共识节点接收虚拟平行子链所对应的平行交易数据,获取平行交易数据中的区块验证数据;
交易验证模块42,用于基于区块验证数据对平行交易数据进行验证;
子链上链模块43,用于在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中;平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从虚拟平行子链的子链区块中所获取到的;子链业务节点包括目标子链业务节点;虚拟平行子链中的子链区块包括子链交易区块;子链交易区块是由目标子链业务节点在子链交易数据共识通过时,根据子链交易数据及子链共识数据所生成的。
其中,平行交易数据包括虚拟平行子链所包括的子链区块中的区块数据;
该子链上链模块43,包括:
交易划分单元431,用于获取主区块链的区块交易空间,基于区块交易空间将平行交易数据分成N个交易子数据;N为正整数;
子链上链单元432,用于对N个交易子数据分别进行封装,得到N个子链管理区块,将N个子链管理区块添加至主区块链中。
本申请实施例提供了一种区块链管理装置,该装置可以运行于共识节点中,可以使得主区块链中的部分交易可以在子链中进行,即通过子链业务节点分担局部区块链业务流量,从而使得这部分交易的相关数据(即区块数据)可以被主区块链进行快速验证,并添加至主区块链中,减少了主区块链的数据存储及处理量,提高区块链的管理效率。
参见图10,图10是本申请实施例提供的一种计算机设备的结构示意图。如图10所示,本申请实施例中的计算机设备可以包括:一个或多个处理器1001、存储器1002和输入输出接口1003。该处理器1001、存储器1002和输入输出接口1003通过总线1004连接。存储器1002用于存储计算机程序,该计算机程序包括程序指令,输入输出接口1003用于接收数据及输出数据,如用于业务节点与业务节点之间进行数据交互,或者用于业务节点与共识节点之间进行数据交互;处理器1001用于执行存储器1002存储的程序指令。
其中,在业务节点中,该处理器1001可以执行如下操作:
目标子链业务节点将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;
在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;
若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块中获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中。
或者,在共识节点中,该处理器1001可以执行如下操作:
共识节点接收虚拟平行子链所对应的平行交易数据,获取平行交易数据中的区块验证数据;
在基于区块验证数据对平行交易数据验证通过时,根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链中;平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从虚拟平行子链的子链区块中所获取到的;子链业务节点包括目标子链业务节点;虚拟平行子链中的子链区块包括子链交易区块;子链交易区块是由目标子链业务节点在子链交易数据共识通过时,根据子链交易数据及子链共识数据所生成的。
在一些可行的实施方式中,该处理器1001可以是中央处理单元(centralprocessing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
该存储器1002可以包括只读存储器和随机存取存储器,并向处理器1001和输入输出接口1003提供指令和数据。存储器1002的一部分还可以包括非易失性随机存取存储器。例如,存储器1002还可以存储设备类型的信息。
具体实现中,该计算机设备可通过其内置的各个功能模块执行如该图3或图4中各个步骤所提供的实现方式,具体可参见该图3或图4中各个步骤所提供的实现方式,在此不再赘述。
本申请实施例通过提供一种计算机设备,包括:处理器、输入输出接口、存储器,通过处理器获取存储器中的计算机程序,执行该图3或图4中所示方法的各个步骤,进行区块链管理操作。本申请实施例实现了将子链交易数据发送至关联子链业务节点;关联子链业务节点是指平行子链网络中除了目标子链业务节点之外的子链业务节点;在关联子链业务节点对子链交易数据共识通过时,根据子链交易数据及子链共识数据生成子链交易区块,将子链交易区块添加至虚拟平行子链;虚拟平行子链中的子链区块包括子链交易区块;若虚拟平行子链满足区块上链条件,则从虚拟平行子链的子链区块获取平行交易数据,将平行交易数据发送至共识节点,以使共识节点根据平行交易数据生成子链管理区块,将子链管理区块添加至主区块链。通过以上过程,可以使得子链业务节点可以进行临时区块链的构建(即虚拟平行子链),也就是说,子链业务节点在作为共识节点所对应的业务节点的情况下,还可以作为一种子链中的共识节点,进行区块的生成及上链处理,在该情况下生成的虚拟平行子链可以认为是由子链业务节点单独生成的,与共识节点的关联性较小,而且由子链业务节点所组成的平行子链网络可以认为是一个临时的区块链网络,实现对区块的临时管控。在虚拟平行子链满足区块上链条件时,将该虚拟平行子链中的交易内容等上链至主链(即主区块链)中,实现对虚拟平行子链的交易归档,使得子链业务节点分担了主链的部分工作,即分担了局部区块链业务流量,减少了主链的数据存储和处理量,从而提高主链的管理效率。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序适于由该处理器加载并执行图3或图4中各个步骤所提供的区块链管理方法,具体可参见该图3或图4中各个步骤所提供的实现方式,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。作为示例,计算机程序可被部署为在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行。
该计算机可读存储介质可以是前述任一实施例提供的区块链管理装置或者该计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图3或图4中的各种可选方式中所提供的方法,实现了子链业务节点可以进行临时区块链的构建(即虚拟平行子链),也就是说,子链业务节点在作为共识节点所对应的业务节点的情况下,还可以作为一种子链中的共识节点,进行区块的生成及上链处理,在该情况下生成的虚拟平行子链可以认为是由子链业务节点单独生成的,与共识节点的关联性较小,而且由子链业务节点所组成的平行子链网络可以认为是一个临时的区块链网络,实现对区块的临时管控。在虚拟平行子链满足区块上链条件时,将该虚拟平行子链中的交易内容等上链至主链(即主区块链)中,实现对虚拟平行子链的交易归档,使得子链业务节点分担了主链的部分工作,即分担了局部区块链业务流量,减少了主链的数据存储和处理量,从而提高主链的管理效率。
本申请实施例的说明书和权利要求书及附图中的术语“第一”、“第二”等是用于区别不同对象,而非用于描述特定顺序。此外,术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、装置、产品或设备固有的其他步骤单元。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在该说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例提供的方法及相关装置是参照本申请实施例提供的方法流程图和/或结构示意图来描述的,具体可由计算机程序指令实现方法流程图和/或结构示意图的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。这些计算机程序指令可提供到通用计算机、专用计算机、嵌入式处理机或其他可编程区块链管理设备的处理器以产生一个机器,使得通过计算机或其他可编程区块链管理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程区块链管理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或结构示意图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程区块链管理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或结构示意一个方框或多个方框中指定的功能的步骤。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (19)
1.一种区块链管理方法,其特征在于,所述方法包括:
目标子链业务节点将子链交易数据发送至关联子链业务节点;所述关联子链业务节点是指平行子链网络中除了所述目标子链业务节点之外的子链业务节点;
在所述关联子链业务节点对所述子链交易数据共识通过时,根据所述子链交易数据及子链共识数据生成子链交易区块,将所述子链交易区块添加至虚拟平行子链;所述虚拟平行子链中的子链区块包括所述子链交易区块;
若所述虚拟平行子链满足区块上链条件,则从所述虚拟平行子链的子链区块中获取平行交易数据,将所述平行交易数据发送至共识节点,以使所述共识节点根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
向所述共识节点发送平行子链注册请求,在平行子链注册成功时,获取所述平行子链注册请求所请求的子链业务节点的节点信息;所述子链业务节点包括所述目标子链业务节点及所述关联子链业务节点;
创建子链临时账本,根据所述子链业务节点的节点信息及所述子链临时账本生成临时创世区块,存储所述临时创世区块,得到所述虚拟平行子链。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:
所述目标子链业务节点基于所述子链业务节点的节点信息,向所述关联子链业务节点发送第一子链交互消息;
获取所述关联子链业务节点所发送的第二子链交互消息;
若所述第一子链交互消息及所述第二子链交互消息,指示所述目标子链业务节点与所述关联子链业务节点之间存在网络连接,则确定所述目标子链业务节点与所述关联子链业务节点组成所述平行子链网络。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述目标子链业务节点从所述平行子链网络中获取候选主节点,在所述目标子链业务节点与所述关联子链业务节点对所述候选主节点共识通过时,将所述候选主节点确定为子链主节点;
若所述目标子链业务节点生成所述子链交易数据,则对所述目标子链业务节点进行节点检测;
若所述目标子链业务节点为所述子链主节点,则执行所述目标子链业务节点将子链交易数据发送至关联子链业务节点的过程;
若所述目标子链业务节点不为所述子链主节点,则确定所述目标子链业务节点无区块生成权限。
5.如权利要求1所述的方法,其特征在于,所述方法还包括:
向所述共识节点发送资源获取请求,获取所述共识节点基于所述资源获取请求所发送的子链资源;
根据所述子链资源生成资源管理区块,在对所述资源管理区块共识通过时,将所述资源管理区块添加至所述虚拟平行子链;
向所述共识节点发送资源管理成功消息,以使所述共识节点对所述子链资源进行锁定处理;所述共识节点不具备针对被锁定的子链资源的使用权限。
6.如权利要求5所述的方法,其特征在于,所述方法还包括:
若所述子链资源被完全使用,则确定所述虚拟平行子链满足区块上链条件;或者,
若所述目标子链业务节点接收到所述共识节点所发送的子链归档请求,则确定所述虚拟平行子链满足区块上链条件。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:
从所述虚拟平行子链中获取临时创世区块,从所述临时创世区块中获取子链区块阈值;所述临时创世区块是指所述虚拟平行子链中的第一个区块;
获取所述虚拟平行子链中的待检测区块,若所述待检测区块的区块高度为所述子链区块阈值,则确定所述虚拟平行子链满足区块上链条件;所述待检测区块是指所述虚拟平行子链中区块高度最大的区块。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述子链交易数据的交易范围;
若所述交易范围大于子链限定范围阈值,则将所述子链交易数据发送至所述共识节点,以使所述共识节点在对所述子链交易数据共识通过时,将所述子链交易数据进行上链;
若所述交易范围小于或等于所述子链限定范围阈值,则执行所述目标子链业务节点将子链交易数据发送至关联子链业务节点的过程。
9.如权利要求1所述的方法,其特征在于,所述若所述虚拟平行子链满足区块上链条件,则从所述虚拟平行子链的子链区块中获取平行交易数据,将所述平行交易数据发送至共识节点,以使所述共识节点根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中,包括:
若所述虚拟平行子链满足区块上链条件,则获取所述虚拟平行子链所包括的子链区块,从所述子链区块中获取区块数据;
将所述区块数据确定为所述虚拟平行子链所对应的平行交易数据,将所述平行交易数据发送至共识节点,以使所述共识节点在基于所述区块数据中的区块验证数据对所述区块数据验证通过时,根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中。
10.如权利要求1所述的方法,其特征在于,所述若所述虚拟平行子链满足区块上链条件,则从所述虚拟平行子链的子链区块中获取平行交易数据,将所述平行交易数据发送至共识节点,以使所述共识节点根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中,包括:
若所述虚拟平行子链满足区块上链条件,则获取所述虚拟平行子链所包括的子链区块,从所述子链区块中获取区块数据;
根据所述区块数据中的区块验证数据、交易基础信息及子链交易结果,生成所述虚拟平行子链所对应的平行交易数据;
将所述平行交易数据发送至共识节点,以使所述共识节点在基于所述区块验证数据对所述平行交易数据验证通过时,根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中。
11.如权利要求1所述的方法,其特征在于,所述方法还包括:
若所述目标子链业务节点检测到所述共识节点在所述主区块链中添加了主交易区块,则所述目标子链业务节点向所述共识节点发送区块同步请求;
获取所述共识节点基于所述区块同步请求所发送的所述主交易区块,将所述主交易区块添加至业务同步区块链中。
12.如权利要求11所述的方法,其特征在于,所述方法还包括:
若所述主交易区块中的主交易数据指示所述平行子链网络的关联合约数据发生变化,则基于所述主交易数据更新所述关联合约数据;
根据更新后的关联合约数据生成子链更新合约,根据所述子链更新合约生成资源更新区块,将所述资源更新区块添加至所述虚拟平行子链中。
13.一种区块链管理方法,其特征在于,所述方法包括:
共识节点接收所述虚拟平行子链所对应的平行交易数据,获取所述平行交易数据中的区块验证数据;
在基于所述区块验证数据对所述平行交易数据验证通过时,根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中;所述平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从所述虚拟平行子链的子链区块中所获取到的;所述子链业务节点包括目标子链业务节点;所述虚拟平行子链中的子链区块包括子链交易区块;所述子链交易区块是由所述目标子链业务节点在子链交易数据共识通过时,根据所述子链交易数据及子链共识数据所生成的。
14.如权利要求13所述的方法,其特征在于,所述平行交易数据包括所述虚拟平行子链所包括的子链区块中的区块数据;
所述根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中,包括:
获取所述主区块链的区块交易空间,基于所述区块交易空间将所述平行交易数据分成N个交易子数据;N为正整数;
对所述N个交易子数据分别进行封装,得到N个子链管理区块,将所述N个子链管理区块添加至所述主区块链中。
15.一种区块链管理装置,其特征在于,所述装置包括:
数据发送模块,用于将子链交易数据发送至关联子链业务节点;所述关联子链业务节点是指平行子链网络中除了所述目标子链业务节点之外的子链业务节点;
区块处理模块,用于在所述关联子链业务节点对所述子链交易数据共识通过时,根据所述子链交易数据及子链共识数据生成子链交易区块,将所述子链交易区块添加至虚拟平行子链;所述虚拟平行子链中的子链区块包括所述子链交易区块;
子链归档模块,用于若所述虚拟平行子链满足区块上链条件,则从所述虚拟平行子链的子链区块中获取平行交易数据,将所述平行交易数据发送至共识节点,以使所述共识节点根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中。
16.一种区块链管理装置,其特征在于,所述装置包括:
数据接收模块,用于接收所述虚拟平行子链所对应的平行交易数据,获取所述平行交易数据中的区块验证数据;
交易验证模块,用于基于所述区块验证数据对所述平行交易数据进行验证;
子链上链模块,用于在基于所述区块验证数据对所述平行交易数据验证通过时,根据所述平行交易数据生成子链管理区块,将所述子链管理区块添加至主区块链中;所述平行交易数据是由子链业务节点在虚拟平行子链满足区块上链条件时,从所述虚拟平行子链的子链区块中所获取到的;所述子链业务节点包括目标子链业务节点;所述虚拟平行子链中的子链区块包括子链交易区块;所述子链交易区块是由所述目标子链业务节点在子链交易数据共识通过时,根据所述子链交易数据及子链共识数据所生成的。
17.一种计算机设备,其特征在于,包括处理器、存储器、输入输出接口;
所述处理器分别与所述存储器和所述输入输出接口相连,其中,所述输入输出接口用于接收数据及输出数据,所述存储器用于存储计算机程序,所述处理器用于调用所述计算机程序,以使得所述计算机设备执行权利要求1-12任一项所述的方法,或者执行权利要求13-14任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序适于由处理器加载并执行,以使得具有所述处理器的计算机设备执行权利要求1-12任一项所述的方法,或者执行权利要求13-14任一项所述的方法。
19.一种计算机程序产品,包括计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现权利要求1-12任一项所述的方法,或者执行权利要求13-14任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210485107.4A CN117057913A (zh) | 2022-05-06 | 2022-05-06 | 区块链管理方法、装置、计算机、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210485107.4A CN117057913A (zh) | 2022-05-06 | 2022-05-06 | 区块链管理方法、装置、计算机、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117057913A true CN117057913A (zh) | 2023-11-14 |
Family
ID=88652293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210485107.4A Pending CN117057913A (zh) | 2022-05-06 | 2022-05-06 | 区块链管理方法、装置、计算机、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117057913A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117478304A (zh) * | 2023-12-28 | 2024-01-30 | 湖南天河国云科技有限公司 | 区块链管理方法、系统和计算机设备 |
-
2022
- 2022-05-06 CN CN202210485107.4A patent/CN117057913A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117478304A (zh) * | 2023-12-28 | 2024-01-30 | 湖南天河国云科技有限公司 | 区块链管理方法、系统和计算机设备 |
CN117478304B (zh) * | 2023-12-28 | 2024-03-01 | 湖南天河国云科技有限公司 | 区块链管理方法、系统和计算机设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110598446B (zh) | 基于区块链的测试方法、装置、存储介质和计算机设备 | |
CN111598566A (zh) | 基于混合跨链的网络支付系统 | |
US11689372B2 (en) | Secure, energy-efficient public blockchain | |
CN111737104B (zh) | 区块链网络服务平台及其测试用例共享方法、存储介质 | |
AU2019380381A1 (en) | Smart logistics management using blockchain | |
CN112612856B (zh) | 基于区块链的数据处理方法和装置 | |
CN113259130B (zh) | 一种交易数据处理方法、装置、设备以及介质 | |
CN113837760B (zh) | 数据处理方法、装置、计算机设备以及存储介质 | |
CN117057913A (zh) | 区块链管理方法、装置、计算机、存储介质及程序产品 | |
CN116827957B (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
CN112200680A (zh) | 区块链节点管理方法、装置、计算机以及可读存储介质 | |
CN112003925A (zh) | 基于区块链的物联网数据存储方法和物联网系统 | |
US20220114276A1 (en) | Controlling a data network with respect to a use of a distributed database | |
CN117951217A (zh) | 基于多区块链的跨链配置方法、装置、设备、系统及介质 | |
CN117938867A (zh) | 一种多区块链数据处理方法、装置、设备、介质及产品 | |
CN117917681A (zh) | 基于多区块链的资产转移方法、装置、设备、介质及产品 | |
CN116804949B (zh) | 基于区块链的数据处理方法、装置、设备及可读存储介质 | |
CN116886444B (zh) | 跨链数据处理方法、装置、计算机、存储介质及程序产品 | |
CN116975158B (zh) | 请求处理方法、装置、计算机设备和存储介质 | |
CN117056084B (zh) | 基于分层区块链网络的数据处理方法、装置、设备及介质 | |
CN116708463B (zh) | 基于多区块链的信息处理方法、装置、设备以及介质 | |
US12045256B2 (en) | Tracing data in complex replication system | |
CN117436861A (zh) | 区块链资产预分配方法、装置、设备、存储介质及程序 | |
CN117097735A (zh) | 区块链数据传输方法、装置、设备、存储介质及程序产品 | |
CN117372016A (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 |