发明内容
本发明的主要目的在于提供一种区块链分片方法及装置,以使区块链分片不依赖中心化设备。
为实现上述目的,本发明提供的一种区块链分片方法,应用于区块链系统中的辅链节点,包括:
接收主链节点发送的分片请求;
确定随机数信息;
广播所述随机数信息以完成对所述随机数信息的共识;
将所述随机数信息发送至所述主链节点,以使所述主链节点利用所述随机数信息进行分片。
可选地,所述随机数信息包括VRF抽签机制对应的第一抽签随机信息。
可选地,所述将所述随机数信息发送至所述主链节点之后,还包括:
接收每个所述主链节点的第一抽签结果;所述第一抽签结果为所述主链节点利用所述第一抽签随机信息进行抽签得到的结果;
利用所述第一抽签随机信息验证所述第一抽签结果和抽签证明,并将验证结果进行共识。
可选地,所述利用所述第一抽签随机信息与抽签证明验证所述第一抽签结果之前,还包括:
接收所述主链节点发送的主链merkle proof;
利用预先同步的主链区块头数据与所述主链merkle proof验证所述第一抽签结果是否为主链数据;
若是,则继续执行所述利用所述第一抽签随机信息验证所述第一抽签结果的步骤。
可选地,所述方法还包括:
接收第一分片的主链节点发送的待转发交易;
验证所述待转发交易是否属于所述第一分片;
若是,则确定所述待转发交易对应的第二分片,并将所述待转发交易发送至所述第二分片。
可选地,所述辅链共识节点的性能高于所述主链节点。
可选地,所述方法还包括:
接收未分片主链节点发送的加入分片请求;
利用所述随机数信息确定所述未分片主链节点所属分片。
可选地,所述共识分片数据,并将所述分片数据发送至每个所述主链节点之后,还包括:
接收分片中的目标主链节点发送的参与共识请求;
向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息;
接收所述目标主链节点发送的第二抽签结果;所述第二抽签结果为所述主链节点利用所述第二抽签随机信息进行抽签得到的结果;
利用预设规则对所有所述第二抽签结果进行排序,并按照预设顺序确定共识节点的选定结果;
将所述选定结果发送至所述主链接点。
可选地,所述向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息之前,还包括:
接收所述目标主链节点发送的资产抵押证明数据;
获取主链merkle proof;
利用利用预先同步的主链区块头数据与所述主链merkle proof验证所述资产抵押证明数据是否为主链数据;
若是,则执行所述向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息的步骤。
为实现上述目的,本申请还提供一种区块链分片装置,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的数据调度程序,所述数据调度程序被所述处理器执行时实现如任意一项所述的数据调度方法。
为实现上述目的,本申请进一步提供一种区块链分片系统,包括:
分片请求接收模块,用于接收主链节点发送的分片请求;
随机数信息确定模块,用于确定随机数信息;
广播模块,用于广播所述随机数信息以完成对所述随机数信息的共识;
随机数信息发送模块,用于将所述随机数信息发送至所述主链节点,以使所述主链节点利用所述随机数信息进行分片。
可选地,所述随机数信息包括VRF抽签机制对应的第一抽签随机信息。
可选地,还包括:
第一抽签结果接收模块,用于接收每个所述主链节点的第一抽签结果和抽签证明;所述第一抽签结果为所述主链节点利用所述第一抽签随机信息进行抽签得到的结果;
第一抽签结果验证模块,用于利用所述第一抽签随机信息与抽签证明验证所述第一抽签结果,并将验证结果进行共识。
可选地,还包括:
主链证明数据接收模块,用于接收所述主链节点发送的主链merkle proof;
验证模块,用于利用预先同步的主链区块头数据与所述主链merkle proof验证所述第一抽签结果是否为主链数据;若是,则继续执行所述利用所述第一抽签随机信息验证所述第一抽签结果的步骤。
可选地,还包括:
待转发交易接收模块,用于接收第一分片的主链节点发送的待转发交易;
待转发交易验证模块,用于验证所述待转发交易是否属于所述第一分片;
待转发交易发送模块,用于确定所述待转发交易对应的第二分片,并将所述待转发交易发送至所述第二分片。
可选地,所述辅链共识节点的性能高于所述主链节点。
可选地,还包括:
加入分片请求接收模块,用于接收未分片主链节点发送的加入分片请求;
所属分片确定模块,用于利用所述随机数信息确定所述未分片主链节点所属分片。
可选地,还包括:
参与共识请求接收模块,用于接收分片中的目标主链节点发送的参与共识请求;
第二抽签随机信息发送模块,用于向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息;
第二抽签结果接收模块,用于接收所述目标主链节点发送的第二抽签结果;所述第二抽签结果为所述主链节点利用所述第二抽签随机信息进行抽签得到的结果;
排序模块,用于利用预设规则对所有所述第二抽签结果进行排序,并按照预设顺序确定共识节点的选定结果;
选定结果发送模块,用于将所述选定结果发送至所述主链接点。
可选地,还包括:
资产抵押证明数据接收模块,用于接收所述目标主链节点发送的资产抵押证明数据;
资产抵押证明数据验证模块,用于获取主链merkle proof;利用利用预先同步的主链区块头数据与所述主链merkle proof验证所述资产抵押证明数据是否为主链数据;若是,则执行所述向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息的步骤。
为实现上述目的,本发明进一步提供一种计算机程序产品,包括计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机可以执行前述公开的资产抵押证明数据方法。
为实现上述目的,本发明进一步提供一种区块链分片方法,应用于区块链系统中的主链节点,包括:
向辅链节点发送分片请求,以使所述辅链节点确定随机数信息,并广播所述随机数信息以完成对所述随机数信息的共识;
接收所述辅链节点发送的随机数信息;其中,所述随机信息为在辅链完成共识的随机数信息;
利用所述随机数信息确定分片。
为实现上述目的,本发明进一步提供一种区块链系统,包括主链与辅链,主链节点用于向辅链节点发送分片请求,并利用辅链节点发送的随机数信息进行分片;
辅链节点用于在接收到所述分片请求后,确定随机数信息,广播所述随机数信息以完成对所述随机数信息的共识,将所述随机数信息发送至所述主链节点。
本申请提供一种区块链分片方法,应用于辅链节点,包括:接收主链节点发送的分片请求;确定随机数信息;广播所述随机数信息以完成对所述随机数信息的共识;将所述随机数信息发送至所述主链节点,以使所述主链节点利用所述随机数信息进行分片。由此可见,本申请当接收到主链节点发送的分片请求后,由辅链这个区块链网络来确定并随机数信息,从而使随机数信息不再是中心化设备分配,而且辅链节点与主链节点独立,不对主链本来的操作进行干涉,保证分片结果的公平可靠。本申请还提供一种区块链分片装置同样可以实现上述效果。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明提供了一种区块链分片方法及装置,以使区块链分片不依赖中心化设备。
参照图1,图1为本发明一实施例的流程示意图。
在一实施例中,该方法包括:
S101,接收主链节点发送的分片请求。
在本方案中,包括主链与辅链,主链与现有技术的区块链网络大致相同,实现普通的区块链交易,主链中可以包括多个分片;本方案应用于辅链,辅链用于实现区块链分片的配置操作。
具体的,首先接收主链节点发送的分片请求。
需要说明的是,分片请求是主链节点在检测到其所在的区块链网络或分片达到分片条件时,向辅链节点发送的分片请求。
分片条件可以是由辅链节点生成并共识后发送给主链接点的,分片条件的具体内容在本方案中不做具体的限定,可以根据实际情况确定。在一个具体的实施方式中,分片条件具体可以是一个区块链网络或一个分片中连续预设次数出现区块交易满额。更进一步地,为了保证分片的均衡,分片条件还可以包括当前区块链网络或分片中的资产余额不为0的账户数目达到预设阈值。
S102,确定随机数信息。
需要说明的是,分片技术即是将当前一个待分片的区块链网络或分片中的各个节点进行划分,从而得到至少两个分片,原来区块链网络或分片中的各个节点分别被分配到不同的分片中。
因此,需要确定各个节点的分配情况。在本方案中,首先确定随机数信息。随机数信息具体可以包括随机算法以及随机算法所需要的随机数,待分片的主链节点可以根据随机数信息确定自己的随机结果,从而可以根据随机结果确定自己所属的分片。
S103,广播所述随机数信息以完成对所述随机数信息的共识。
为了保证随机数信息的安全可靠,在本方案中,随机数信息不是由单个节点生成,而是由辅链这个区块链网络中的节点进行广播、共识,并可以打包上链。
具体地,辅链节点广播随机数信息,从而使共识随机输信息被打包为区块,添加至辅链的区块链中。
辅链的共识算法具体可以采用但不限于DPOS(Delegated Proof of Stake,委托权益证明)、PBFT(Practical Byzantine Fault Tolerance,实用拜占庭容错算法)等算法。
S104,将所述随机数信息发送至所述主链节点,以使所述主链节点利用所述随机数信息进行分片。
在完成随机数信息的共识后,将随机数信息发送至主链节点,每个主链接点在收到随机数信息后,会利用随机数信息计算自己的随机结果,并通过随机结果确定自己所属的分片。
由此可见,本申请实施例提供的一种区块链分片方法,当接收到主链节点发送的分片请求后,由辅链这个区块链网络来确定并随机数信息,从而使随机数信息不再是中心化设备分配,而且辅链节点与主链节点独立,不对主链本来的操作进行干涉,保证分片结果的公平可靠。
在一个优选的实施方式中,当辅链需要竞选共识节点时,可以为辅链设置一个共识节点的性能限制,满足性能限制的节点才能够成为共识节点。为了避免辅链影响到主链的出块速度以及其他的性能,本申请利用性能限制来筛选出性能高于主链节点的节点,作为辅链的共识节点。
在上述实施例的基础上,本申请实施例对技术方案作出进一步的限定与说明。
在一个优选的实施方式中,在将所述随机数信息发送至所述主链节点之后,还可以接收主链节点的分片结果,并通过随机数信息来验证分片结果的正确性。
可选地,随机数信息可以是VRF(Verifiable Random Function,可验证随机函数)抽签机制对应的随机信息,即,第一抽签随机信息。
需要说明的是,VRF抽签机制是一种能够使分片结果更加随机,最大程度避免危险节点被划分到同一分片的机制。
需要说明的是,VRF可以基于私钥对一个输入值产生一个唯一的固定长度的输出值,以及一个对应的抽签证明。其他验证方在知道了公钥、输出值、证明之后就能验证这三者的正确性。具体地,主链节点在进行抽签时,首先需要生成一对密钥(PK、SK),其中,SK为私钥,PK为公钥,利用第一抽签随机信息(info)计算第一抽签结果result,result=VRF_Hash(SK,info),并计算抽签证明proof,proof=VRF_proof(SK,info)。主链节点将第一抽签结果result和抽签证明proof发送至辅链节点,以使辅链节点利用密钥中的PK对第一抽签结果进行验证。
具体地,所述将所述随机数信息发送至所述主链节点之后,还包括:
接收每个所述主链节点的第一抽签结果和抽签证明;所述第一抽签结果为所述主链节点利用所述第一抽签随机信息进行抽签得到的结果;
利用所述第一抽签随机信息与所述抽签证明验证所述第一抽签结果,并将验证结果进行共识。
具体地,辅链节点作为验证者,利用公钥PK对第一抽签信息进行验证,验证True/Flase=VRF_Vertify(PK,info,proof)。
在一个优选的实施方式中,考虑到辅链与主链是独立的两个区块链网络,为了保证辅链接收到的主链数据时安全、真实的,需要对主链数据进行校验。
具体地,所述利用所述第一抽签随机信息验证所述第一抽签结果之前,还包括:
接收所述主链节点发送的主链merkle proof;
利用预先同步的主链区块头数据与所述主链merkle proof验证所述第一抽签结果是否为主链数据;
若是,则继续执行所述利用所述第一抽签随机信息验证所述第一抽签结果的步骤。
需要说明的是,验证第一抽签结果的真实性,即验证第一抽签结果是否为主链上的数据,而在本方案中为了避免辅链节点消耗大量的存储资源来存储完整的主链区块链数据,选用merkle树的机制进行验证。在辅链的节点中只需要保存主链的区块头数据,在进行验证时,只需要再接收主链中与第一抽签结果对应的merkle proof即可对第一抽签结果进行验证。
在上述实施例的基础上,本申请实施例对技术方案作出进一步的扩充与说明。
参见图2,在上述实施例的基础上,所述方法还包括:
S201,接收第一分片的主链节点发送的待转发交易;
S202,验证所述待转发交易是否属于所述第一分片;
S203,若是,则确定所述待转发交易对应的第二分片,并将所述待转发交易发送至所述第二分片。
在本方案中,利用辅链来实现跨分片的交易转发。当一笔交易的目的地址不在当前分片,则需要在当前分片(第一分片)执行对源地址的状态转换后,将交易打包成跨分片的待转发交易,由主链共识节点发送辅链,出于安全性考虑,辅链可以先对待转发交易进行验证,验证方式也可以是通过merkle树机制进行,不再赘述。在完成验证后,确定目的地址,将待转发交易发送至目的地址对应的第二分片。出于数据的安全性考虑,辅链可以对待转发交易进行签名后发送至第二分片,以供第二分片利用密钥进行验证。
由此可见,本申请实施例可以通过辅链来实现跨分片的交易转发,并且能够保证跨分片交易的数据安全性。
在上述实施例的基础上,本申请实施例对技术方案作出进一步的扩充与说明。
在上述实施例的基础上,所述方法还包括:
接收未分片主链节点发送的加入分片请求;
利用所述随机数信息确定所述未分片主链节点所属分片。
在完成分片后,如有在线用户发现不属于当前分片,则可以向辅链获取所属分片并接入。未分片主链节点可以先接入辅链,由辅链用历史的随机数信息确定该未分片主链接点的所属分片,并将确定结果返回给该节点,以使该节点加入其所属分片,同步账本。
在上述实施例的基础上,本申请实施例对技术方案作出进一步的扩充与说明。
在上述实施例的基础上,所述共识分片数据,并将所述分片数据发送至每个所述主链节点之后,还包括:
S301,接收分片中的目标主链节点发送的参与共识请求。
在分片后,接收分片中的目标主链发送的参与共识的请求,目标主链节点可以是满足主链中预设参与共识条件的节点。
例如,主链选择用资产抵押证明来筛选出可以成为共识节点的目标主链节点。资产抵押证明即节点抵押资产数据后的证明数据,资产抵押证明具体可以包括抵押资产的数量数据以及抵押的有效时长,数量数据满足预设条件的节点,在其有效时长内,即为目标主链节点。
S302,向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息。
在本方案中,同样通过VRF抽签机制来确定共识节点。
具体的,首先向目标主链节点发送VRF抽签机制对应的第二抽签随机信息。
在一个具体的实施方式中,向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息之前,还包括:
接收所述目标主链节点发送的资产抵押证明数据;
获取主链merkle proof;
利用利用预先同步的主链区块头数据与所述主链merkle proof验证所述资产抵押证明数据是否为主链数据;
若是,则执行所述向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息的步骤。
在本方案中,为了确保资产抵押证明数据的真实性,需要对资产抵押证明进行验证,同样可以采用merkle树机制进行验证。
S303,接收所述目标主链节点发送的第二抽签结果;所述第二抽签结果为所述主链节点利用所述第二抽签随机信息进行抽签得到的结果。
S304,利用预设规则对所有所述第二抽签结果进行排序,并按照预设顺序确定共识节点的选定结果。
第二抽签结果是由目标主链节点计算得到的抽签结果,辅链在接收到抽签结果后,可以验证该抽签结果的真实性,验证方式可以考上述第一抽签结果的介绍,此处不再赘述。
考虑到主链共识节点在进行共识时的性能问题,应该选取适量的共识节点,既需要避免共识节点过少时带来的安全性问题,又要结合共识算法考虑到共识节点过多时,出块速度降低的问题,对于PBFT算法,本方案优选选取21个共识节点。
S305,将所述选定结果发送至所述主链节点。
在分片后,分片中共识节点的筛选由辅链进行,使主链的共识节点能够被公平的筛选,不存在算力或权益的垄断。
进一步的,本实施例还公开了一种区块链分片装置。
参照图4,图4为本发明一实施例揭露的区块链分片装置的内部结构示意图。图4中,区块链分片装置1包括存储器11和处理器12,所述存储器11上存储有可在所述处理器12上运行的区块链分片程序,所述区块链分片程序被所述处理器12执行时实现如下方法:
接收主链节点发送的分片请求;
确定随机数信息;
广播所述随机数信息以完成对所述随机数信息的共识;
将所述随机数信息发送至所述主链节点,以使所述主链节点利用所述随机数信息进行分片。
由此可见,本申请实施例提供的一种区块链分片方法,当接收到主链节点发送的分片请求后,由辅链这个区块链网络来确定并随机数信息,从而使随机数信息不再是中心化设备分配,而且辅链节点与主链节点独立,不对主链本来的操作进行干涉,保证分片结果的公平可靠。
可选地,所述随机数信息包括VRF抽签机制对应的第一抽签随机信息。
所述区块链分片程序被所述处理器12执行时,还可以实现:接收每个所述主链节点的第一抽签结果;所述第一抽签结果为所述主链节点利用所述第一抽签随机信息进行抽签得到的结果;利用所述第一抽签随机信息验证所述第一抽签结果,并将验证结果进行共识。
所述区块链分片程序被所述处理器12执行时,还可以实现:接收所述主链节点发送的主链merkle proof;利用预先同步的主链区块头数据与所述主链merkle proof验证所述第一抽签结果是否为主链数据;若是,则继续执行所述利用所述第一抽签随机信息验证所述第一抽签结果的步骤。
所述区块链分片程序被所述处理器12执行时,还可以实现:接收第一分片的主链节点发送的待转发交易;验证所述待转发交易是否属于所述第一分片;若是,则确定所述待转发交易对应的第二分片,并将所述待转发交易发送至所述第二分片。所述区块链分片程序被所述处理器12执行时,还可以实现:间隔预设时间在所述DHT网络中获取所述目标数据的数量;判断所述数量是否大于或等于预设阈值;若否,则在路由表中确定预设个数的新节点;向所述新节点发送获取所述目标数据的通知,以使所述新节点存储所述目标数据。
可选地,所述辅链共识节点的性能高于所述主链节点。
所述区块链分片程序被所述处理器12执行时,还可以实现:
接收未分片主链节点发送的加入分片请求;利用所述随机数信息确定所述未分片主链节点所属分片。
所述区块链分片程序被所述处理器12执行时,还可以实现:接收分片中的目标主链节点发送的参与共识请求;向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息;接收所述目标主链节点发送的第二抽签结果;所述第二抽签结果为所述主链节点利用所述第二抽签随机信息进行抽签得到的结果;利用预设规则对所有所述第二抽签结果进行排序,并按照预设顺序确定共识节点的选定结果;将所述选定结果发送至所述主链接点。
所述区块链分片程序被所述处理器12执行时,还可以实现:接收所述目标主链节点发送的资产抵押证明数据;获取主链merkle proof;利用利用预先同步的主链区块头数据与所述主链merkle proof验证所述资产抵押证明数据是否为主链数据;若是,则执行所述向所述目标主链节点发送VRF抽签机制对应的第二抽签随机信息的步骤。
在本实施例中,所述区块链分片装置1可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、掌上电脑、便携计算机。
进一步的,参照图4,所述区块链分片装置1还可以包括总线13,其中,所述存储器11和所述处理器12通过所述总线13连接。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是区块链分片装置1的内部存储单元,例如该区块链分片装置1的硬盘。存储器11在另一些实施例中也可以是区块链分片装置1的外部存储设备,例如区块链分片装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括区块链分片装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于区块链分片装置1的应用软件及各类数据,例如区块链分片程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行区块链分片程序等。
总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,区块链分片装置1还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该区块链分片装置1与其他电子设备之间建立通信连接。
可选地,该区块链分片装置1还可以包括用户接口15,用户接口15可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在区块链分片装置1中处理的信息以及用于显示可视化的用户界面。
图4仅示出了具有组件11-15的区块链分片装置1,本领域技术人员可以理解的是,图4示出的结构并不构成对区块链分片装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
进一步的,本实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有区块链分片程序,所述区块链分片程序可被一个或多个处理器执行,以实现如上述任一实施例所述的资产抵押证明数据方法。
进一步的,本发明还提供一种计算机程序产品,包括计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机可以执行上述任一实施例所述的资产抵押证明数据方法。
进一步的,本发明还提供另一种区块链分片方法,参见图5,该方法应用于区块链系统中的主链节点,具体包括:
S401,向辅链节点发送分片请求,以使所述辅链节点确定随机数信息,并广播所述随机数信息以完成对所述随机数信息的共识。
S402,接收所述辅链节点发送的随机数信息;其中,所述随机信息为在辅链完成共识的随机数信息。
S403,利用所述随机数信息确定分片。
有关主链节点的具体内容已在上述实施例做出具体介绍,此处将不再赘述。
进一步的,本发明还提供另一种区块链系统,参见图6,该系统具体包括:主链与辅链,主链节点用于向辅链节点发送分片请求,并利用辅链节点发送的随机数信息进行分片;
辅链节点用于在接收到所述分片请求后,确定随机数信息,广播所述随机数信息以完成对所述随机数信息的共识,将所述随机数信息发送至所述主链节点。
有关主链节点、辅链节点在分片过程中的具体操作均已在上述实施例中做出具体介绍,此处将不再进行赘述,需要说明的是,主链中当前包括至少一个分片,主链与辅链进行交互,以不断进行分片操作。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。