区块链的记账方法、装置、终端和计算机可读存储介质制造方法及图纸

技术编号:21612374 阅读:26 留言:0更新日期:2019-07-13 20:43
本发明专利技术属于区块链技术领域,尤其涉及一种区块链的记账方法、装置、终端和计算机可读存储介质。其中,记账方法包括:本地节点生成随机数,并广播至区块链网络中的其他节点;本地节点接收其他节点广播的随机数信息,缓存并继续广播此随机数,然后对接收到的随机数以及本地节点生成的随机数进行排序,得到初始随机数排序列表,接着,本地节点将所述初始随机数排序列表广播至所述其他节点,以得到经全网共识的随机数排序列表;所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造;有效地避免了算力的浪费,并且不会出现算力集中的问题,提高了区块链网络的稳定性。

Block Chain Accounting Method, Device, Terminal and Computer Readable Storage Media

【技术实现步骤摘要】
区块链的记账方法、装置、终端和计算机可读存储介质
本专利技术属于区块链
,尤其涉及一种区块链的记账方法、装置、终端和计算机可读存储介质。
技术介绍
区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。区块链的一个核心技术是共识机制,即,所有节点之间达成共识、认定一个记录有效性的方法。目前,典型的区块链共识机制主要包括工作量证明(ProofofPower,PoW)算法和权益证明(ProofofStake,PoS)算法。然而,在PoW算法中,由于全网矿工(节点)都投入算力计算区块,而最终只有一名矿工的区块会成为全网共识,容易造成大量算力被浪费。对于PoS算法,虽然不会存在算力的浪费,但是由于其以质押数字货币的方式进行铸造者的竞选,使得拥有货币数量较多的节点成为铸造者的概率较大,导致网络有可能存在算力集中的问题,降低了区块链网络的稳定性。
技术实现思路
有鉴于此,本专利技术实施例提供一种区块链的记账方法、装置、终端和计算机可读存储介质,可以解决现有技术中区块链的共识机制存在算力浪费以及算力集中的技术问题。本专利技术实施例第一方面提供一种区块链的记账方法,包括:本地节点生成随机数,并将携带有所述随机数以及所述本地节点的节点标识信息的随机数信息广播至区块链网络中的其他节点;同时,所述本地节点接收其他节点广播的随机数信息,并将接收到的所述随机数信息进行再次广播,以使区块链网络中的每个节点均能够接收到区块链网络中所有节点的随机数信息;所述本地节点对接收到的随机数信息中的随机数以及所述本地节点生成的随机数进行排序,得到携带有节点标识信息的初始随机数排序列表,接着,所述本地节点将所述初始随机数排序列表广播至所述其他节点,以得到经全网共识的随机数排序列表;所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造。本专利技术实施例第二方面提供一种区块链的记账装置,包括:随机数生成模块,用于本地节点生成随机数,并将携带有所述随机数以及所述本地节点的节点标识信息的随机数信息广播至区块链网络中的其他节点;同时,所述本地节点接收其他节点广播的随机数信息,并将接收到的所述随机数信息进行再次广播,以使区块链网络中的每个节点均能够接收到区块链网络中所有节点的随机数信息;随机数排序列表生成模块,用于所述本地节点对接收到的随机数信息中的随机数以及所述本地节点生成的随机数进行排序,得到携带有节点标识信息的初始随机数排序列表,接着,所述本地节点将所述初始随机数排序列表广播至所述其他节点,以得到经全网共识的随机数排序列表;区块铸造模块,用于所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造。本专利技术实施例第三方面提供一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述方法的步骤。本专利技术实施例第四方面提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述方法的步骤。本专利技术实施例中,通过区块链网络中的各个节点在进行区块铸造之前进行区块铸造时间片的分配,使得每个节点只需要在相应的区块铸造时间片内进行区块铸造,而不需要每时每刻都进行区块铸造,即,在一个区块铸造时间片内,不需要全网节点全部投入新区块的计算,有效地避免了算力的浪费;同时,由于本申请实施例中,是通过区块链网络中的各个节点生成随机数,并得到经全网共识的随机数排序列表的方式确定各个节点在当前时间周期内所属的区块铸造时间片,因此,区块铸造时间片的选取具有较大的随机性,而且每个节点都有机会进行区块铸造,不会出现算力集中的问题,提高了区块链网络的稳定性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1是本专利技术实施例提供的一种区块链的记账方法的第一实现流程示意图;图2是本专利技术实施例提供的一种区块链的记账方法的步骤103的具体实现流程示意图;图3是本专利技术实施例提供的一种区块链的记账的方法的第二实现流程示意图;图4是本专利技术实施例提供的一种区块链的记账装置的结构示意图;图5是本专利技术实施例提供的一种终端的结构示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本专利技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本专利技术的描述。为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。目前常见的区块链应用有比特币项目和以太坊项目。这两个项目使用的共识机制包括PoW共识算法和PoS算法。然而,PoW算法和PoS算法都有其固有的缺点。例如,对于PoW算法,由于全网矿工都投入算力计算区块,而最终只有一名矿工的区块会成为全网共识,容易造成大量算力被浪费;对于PoS算法,虽然不会存在算力的浪费,但是由于其以质押数字货币的方式进行铸造者的竞选,使得拥有货币数量较多的节点成为铸造者的概率较大,导致网络有可能存在算力集中的问题,降低了区块链网络的稳定性。本专利技术实施例中,通过区块链网络中的各个节点在进行区块铸造之前进行区块铸造时间片的分配,使得每个节点只需要在相应的区块铸造时间片内进行区块铸造,而不需要每时每刻都进行区块铸造,即,在一个区块铸造时间片内,不需要全网节点全部投入新区块的计算,有效地避免了算力的浪费;同时,由于本申请实施例中,是通过区块链网络中的各个节点生成随机数,并得到经全网共识的随机数排序列表的方式确定各个节点在当前时间周期内所属的区块铸造时间片,因此,区块铸造时间片的选取具有较大的随机性,而且每个节点都有机会进行区块铸造,不会出现算力集中的问题,提高了区块链网络的稳定性。图1示出了本专利技术实施例提供的区块链的记账方法的第一实现流程示意图。该方法应用于终端(区块链的节点),可以由终端上配置的区块链的记账装置执行,该区块链的记账装置可以通过硬件和/或软件的方式实现。所述记账方法可以包括步骤101至步骤103。步骤101,本地节点生成随机数,并将携带有所述随机数以及所述本地节点的节点标识信息的随机数信息广播至区块链网络中的其他节点;同时,所述本地节点接收其他节点广播的随机数信息,并将接收到的所述随机数信息进行再次广播,以使区块链网络中的每个节点均能够接收到区块链网络中所有节点的随机数信息。需要说明的是,由于区块链网络中的各个节点地位相同,都按相同的规则进行区块铸造。因此,本申请实施例中,本地节点的工作流程可以看作为整个区块链网络的工作流程,同样的,整个区块链网络的工作流程也同样可以看作为本地节点需要执行的本文档来自技高网...

【技术保护点】
1.一种区块链的记账方法,其特征在于,包括:本地节点生成随机数,并将携带有所述随机数以及所述本地节点的节点标识信息的随机数信息广播至区块链网络中的其他节点;同时,所述本地节点接收其他节点广播的随机数信息,并将接收到的所述随机数信息进行再次广播,以使区块链网络中的每个节点均能够接收到区块链网络中所有节点的随机数信息;所述本地节点对接收到的随机数信息中的随机数以及所述本地节点生成的随机数进行排序,得到携带有节点标识信息的初始随机数排序列表,接着,所述本地节点将所述初始随机数排序列表广播至所述其他节点,以得到经全网共识的随机数排序列表;所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造。

【技术特征摘要】
1.一种区块链的记账方法,其特征在于,包括:本地节点生成随机数,并将携带有所述随机数以及所述本地节点的节点标识信息的随机数信息广播至区块链网络中的其他节点;同时,所述本地节点接收其他节点广播的随机数信息,并将接收到的所述随机数信息进行再次广播,以使区块链网络中的每个节点均能够接收到区块链网络中所有节点的随机数信息;所述本地节点对接收到的随机数信息中的随机数以及所述本地节点生成的随机数进行排序,得到携带有节点标识信息的初始随机数排序列表,接着,所述本地节点将所述初始随机数排序列表广播至所述其他节点,以得到经全网共识的随机数排序列表;所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造。2.如权利要求1所述的记账方法,其特征在于,所述本地节点根据所述经全网共识的随机数排序列表确定在当前时间周期内的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造包括:所述本地节点根据所述经全网共识的随机数排序列表对区块链网络中的节点进行分组,并确定每个分组在当前时间周期内的区块铸造时间段;所述本地节点根据分组内各个节点的随机数排序顺序确定分组内各个节点的区块铸造顺序;在到达所述本地节点所属的分组的区块铸造时间段时,所述本地节点在其所属的分组的区块铸造时间段内根据分组内各个节点的区块铸造顺序进行周期性的区块铸造时间片的轮候,并在轮候成功的区块铸造时间片内进行区块铸造。3.如权利要求2所述的记账方法,其特征在于,所述本地节点在其所属的分组的区块铸造时间段内根据分组内各个节点的区块铸造顺序进行周期性的区块铸造时间片的轮候包括:所述本地节点在其所属的分组的区块铸造时间段内根据分组内各个节点的区块铸造顺序进行周期性的区块铸造时间片的轮候时,若在区块铸造时间片的历史轮候周期内,所述本地节点的前一个节点未成功完成区块铸造的次数大于预设次数或者生成的区块未通过全网共识,则在分组内各个节点的区块铸造顺序中删除所述本地节点的前一个节点,生成新的区块铸造顺序,所述本地节点按照新的区块铸造顺序进行周期性的区块铸造时间片的轮候。4.如权利要求1-3任意一项所述的记账方法,其特征在于,在所述本地节点根据所述经全网共识的随机数排序列表确定其在当前时间周期内所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造之后,还包括:在进入下一个时间周期的区块铸造时,所述区块链网络中的各个节点重新生成所述随机数,并重新生成经全网共识的随机数排序列表;所述本地节点根据所述重新生成的经全网共识的随机数排序列表重新确定其所属的区块铸造时间片,并在到达区块铸造时间片时进行区块铸造。5.如权利要求4所述的记账方法,其特征在于,所述在进入下一个时间...

【专利技术属性】
技术研发人员:杜力
申请(专利权)人:深圳市融汇通金科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1