本申请一个或多个实施例涉及区块链,尤其涉及一种区块链系统中的交易提议方法、共识节点和区块链系统。
背景技术:
1、区块链(blockchain)是分布式数据存储、点对点传输、共识协议、加密算法等计算机技术的新型应用模式。区块链系统中按照时间顺序将数据区块以顺序相连的方式组合成链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。由于区块链具有去中心化、信息不可篡改、自治性等特性,使得区块链的应用越来越广泛。
技术实现思路
1、本申请一个或多个实施例提供一种异步共识中的交易提议方法、共识节点和区块链系统,包括:
2、一种区块链系统中交易提议方法;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述方法应用于所述区块链系统中具有交易提议权限的任一目标共识节点,包括:
3、计算本地交易池中维护的交易的摘要值;
4、将所述摘要值与预设数值进行算数运算;
5、根据所述算数运算的运算结果确定所述目标共识节点是否具有所述交易的交易提议权限;如果所述目标节点具有所述交易的交易提议权限,将所述交易添加至由所述目标共识节点针对待共识的目标区块提议的待共识的交易集合。
6、一种区块链系统中的共识节点;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述共识节点具有交易提议权限,包括:
7、摘要值计算单元,计算本地交易池中维护的交易的摘要值;
8、算数运算单元,将所述摘要值与预设数值进行算数运算;
9、交易分配单元,根据所述算数运算的运算结果确定所述目标共识节点是否具有所述交易的交易提议权限;如果所述目标节点具有所述交易的交易提议权限,将所述交易添加至由所述目标共识节点针对待共识的目标区块提议的待共识的交易集合。
10、一种区块链系统,包括共识节点;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述区块链系统中具有交易提议权限的任一目标共识节点:
11、计算本地交易池中维护的交易的摘要值;
12、将所述摘要值与预设数值进行算数运算;
13、根据所述算数运算的运算结果确定所述目标共识节点是否具有所述交易的交易提议权限;如果所述目标节点具有所述交易的交易提议权限,将所述交易添加至由所述目标共识节点针对待共识的目标区块提议的待共识的交易集合。
14、在上述实施例中,区块链系统中的目标共识节点可以计算其本地交易池中维护的交易的摘要值,并将该摘要值与预设数值进行算数运算,从而可以将该算数运算的运算结果与该目标共识节点的节点标识进行匹配,并根据匹配结果,确定是否将该交易添加至由该目标共识节点针对待共识的目标区块提议的待共识的交易集合。
15、采用上述方式,对于区块链系统中具有交易提议权限的任意一个共识节点而言,该共识节点不再需要从其本地交易池中随机地选取出若干交易进行提议,而是可以针对其本地交易池中维护的任意一笔交易,判断是否将这笔交易添加至由该共识节点针对待共识的区块提议的交易集合。这样,在结果上等价于从本地交易池中维护了同一笔交易的多个共识节点中,针对这笔交易确定出合适的共识节点,由该共识节点将这笔交易作为该共识节点针对待共识的区块提议的待共识的交易,就可以避免这多个共识节点都从各自的本地交易池中选取出了这笔交易,并针对待共识的区块提议这笔交易,由此可以降低不同的共识节点提议相同的交易的概率,从而可以降低共识过程中的交易重复率,减少共识过程中的资源浪费,并且可以避免共识完成后的区块中包含重复的交易,解决同一笔交易被多次执行的问题。
1.一种区块链系统中交易提议方法;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述方法应用于所述区块链系统中具有交易提议权限的任一目标共识节点,包括:
2.如权利要求1所述的方法,计算本地交易池中维护的交易的摘要值,包括:
3.如权利要求1所述的方法,所述预设数值为所述区块链系统中的共识节点的总数量对应的目标数量值;
4.如权利要求3所述的方法,所述区块链系统中的各个共识节点的节点标识,为不大于所述目标数量值的无符号整数;
5.如权利要求3所述的方法,根据所述算数运算的运算结果确定所述目标共识节点是否具有所述交易的交易提议权限,包括:
6.如权利要求5所述的方法,所述算数运算的运算结果,以及所述区块链系统中的各个共识节点的节点标识,均为小于所述目标数量值的无符号整数;
7.如权利要求5所述的方法,所述区块链系统中的各个共识节点的节点标识,为小于所述目标数量值的无符号整数;所述算数运算的运算结果为不小于所述目标数量值的无符号整数;
8.如权利要求3所述的方法,所述方法还包括:
9.如权利要求6或7所述的方法,所述方法还包括:
10.如权利要求9所述的方法,计算所述交易集合中的交易的摘要值,包括:
11.如权利要求9所述的方法,如果所述算数运算的运算结果,以及所述区块链系统中的各个共识节点的节点标识,均为小于所述目标数量值的无符号整数;
12.如权利要求9所述的方法,如果所述区块链系统中的各个共识节点的节点标识,为小于所述目标数量值的无符号整数,而所述算数运算的运算结果为不小于所述目标数量值的无符号整数;
13.如权利要求9所述的方法,所述方法还包括:
14.如权利要求1所述的方法,所述方法还包括:
15.如权利要求1所述的方法,所述区块链系统为采用honeybadgerbft协议的区块链系统。
16.一种区块链系统中的共识节点;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述共识节点具有交易提议权限,包括:
17.一种区块链系统,包括共识节点;其中,所述区块链系统包括多个具有交易提议权限的共识节点;所述区块链系统中具有交易提议权限的各个共识节点的本地交易池中包含重复的交易;所述区块链系统中具有交易提议权限的任一目标共识节点: