【技术实现步骤摘要】
交易筛选和区块生成方法、设备和存储介质
[0001]本申请涉及区块链
,具体涉及一种交易筛选和区块生成方法、设备和存储介质。
技术介绍
[0002]在申请人先前提出的专利申请(可参考CN2019106074995)中,通过交易的检查与区块的确认并行处理的方式,提高吞吐量。
[0003]在上述机制中,交易中包括的指定高度信息会使得tx1变得庞大,而一个区块的大小又是恒定的,上述机制将降低一个区块能存储的交易数量,从另一方面又降低了吞吐量。
技术实现思路
[0004]鉴于现有技术中的上述缺陷或不足,期望提供一种进一步提高吞吐量的交易筛选和区块生成方法、设备和存储介质。
[0005]第一方面,本专利技术提供一种适用于区块链节点的交易筛选和区块生成方法,包括:
[0006]根据预配置的区块共识规则计算当前节点应当参与共识的各第一区块高度;其中,区块共识规则包括当前节点的第一公开信息;
[0007]接收第一交易;
[0008]根据与区块共识规则匹配的预配置的交易存储规则计算第一交易是否应由当前节点存储:
[0009]是,则根据与区块共识规则匹配的预配置的交易打包规则计算应当打包第一交易的第二区块高度;其中,其中,交易存储规则和交易打包规则包括第一交易的第二公开信息,第一区块高度与当前区块高度之差大于第一数值;以及,
[0010]将第一交易存储至第二区块高度的第一待打包队列;
[0011]否,则删除第一交易;
[0012]响应于获得第三 ...
【技术保护点】
【技术特征摘要】
1.一种交易筛选和区块生成方法,其特征在于,适用于区块链节点,所述方法包括:根据预配置的区块共识规则计算当前节点应当参与共识的各第一区块高度;其中,所述区块共识规则包括当前节点的第一公开信息;接收第一交易;根据与所述区块共识规则匹配的预配置的交易存储规则计算所述第一交易是否应由当前节点存储:是,则根据与所述区块共识规则匹配的预配置的交易打包规则计算应当打包所述第一交易的第二区块高度;其中,其中,所述交易存储规则和所述交易打包规则包括所述第一交易的第二公开信息,所述第二区块高度与当前区块高度之差大于第一数值;以及,将所述第一交易存储至所述第二区块高度的第一待打包队列;否,则删除所述第一交易;响应于获得第三区块高度的第三区块的打包权,根据所述第三区块高度的第二待打包队列中的各第二交易生成所述第三区块并广播给其它区块链节点,以供其它区块链节点:在所述第三区块高度为应当参与共识的区块高度时,根据所述区块共识规则判断所述第三区块高度是否为当前节点应当参与共识的区块高度:是,则对各所述第二交易执行如下步骤:根据所述交易打包规则判断所述第二交易是否应当在所述第三区块高度被打包:否,则执行所述第二交易失败;其中,所述接收第一交易至所述删除所述第一交易步骤,与所述根据所述第三区块高度的第二待打包队列中的各第二交易生成所述第三区块并广播给其它区块链节点步骤,并行执行。2.根据权利要求1所述的方法,其特征在于,所述第一公开信息为当前节点的节点哈希,所述第二公开信息为所述第一交易的第一全哈希,所述根据预配置的区块共识规则计算当前节点应当参与共识的各第一区块高度包括:获取当前节点的节点哈希的第一M位,根据所述第一M位计算第一N进制数;将第二N进制数与所述第一N进制数相同的各第四区块高度确定为所述各第一区块高度;其中,所述第二N进制数的计算方法为:(h mod N^M)===>>>(x2)2,(x2)2=(x1)2,h为第四区块高度,(x1)2为第一N进制数,(x2)2为第二N进制数;所述根据与所述区块共识规则匹配的预配置的交易存储规则计算所述第一交易是否应由当前节点存储包括:获取所述第一全哈希的第二M位,根据所述第二M位计算第三N进制数;判断所述第三N进制数与所述第一N进制数是否相同;所述根据与所述区块共识规则匹配的预配置的交易打包规则计算应当打包所述第一交易的第二区块高度包括:计算第五区块高度;其中,所述第五区块高度的计算方法为:min(h1)mod N^M===>>>(x3)2,min(h1)>当前区块高度+第一数值+1,min(h1)为第五区块高度,(x3)2为第三N进制数;以及,将所述第五区块高度确定为所述第二区块高度;所述根据所述区块共识规则判断所述第三区块高度是否为当前节点应当参与共识的区块高度包括:
获取所述第一M位,并计算所述第一N进制数;计算第五N进制数;其中,所述第五N进制数的计算方法为:(h2 mod N^M)===>>>(x5)2,h2为第三区块高度,(x5)2为第五N进制数;判断所述第一N进制数与所述第五N进制数是否相同;所述根据所述交易打包规则判断所述第二交易是否应当在所述第三区块高度被打包:否,则执行所述第二交易失败包括:获取第二交易的第二全哈希的第三M位,根据所述第三M位计算第六N进制数;计算所述第三区块高度与第二数值的第二余数;将所述第二余数换算为第七N进制数;在所述第六N进制数与所述第七N进制数不同时,执行所述第二交易失败。3.根据权利要求1所述的方法,其特征在于,所述根据与所述区块共识规则匹配的预配置的交易打包规则计算应当打包所述第一交易的第二区块高度包括:根据所述第一交易的预打包标识识别所述第一交易为指定区块高度的第一类交易或为不指定区块高度的第二类交易;在所述第一交易为所述第一类交易时,根据与所述区块共识规则匹配的预配置的交易打包规则计算应当打包所述第一交易的第二区块高度;在所述第一交易为所述第二类交易时,将所述第一交易存储至即时打包队列;所述根据所述第三区块高度的第二待打包队列中的各第二交易生成所述第三区块包括:根据所述第三区块高度的第二待打包队列中的各第二交易,以及,所述即时打包队列中的若干交易生成所述第三区块。4.根据权利要求1所述的方法,其特征在于,所述根据与所述区块共识规则匹配的预配置的交易打包规则计算应当打包所述第一交易的第二区块高度包括:根据所述第一交易的第一手续费是否低于第三数值识别所述第一交易为指定区块高度的第一类交易或为不指定区块高度的第二类交易;在所述第一交易为所述第一类交易时,...
【专利技术属性】
技术研发人员:吴思进,王春晖,曹兢,李斌,
申请(专利权)人:杭州复杂美科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。