【技术实现步骤摘要】
交易打包方法、设备和存储介质
本申请涉及区块链
,具体涉及一种交易打包方法、设备和存储介质。
技术介绍
在现有技术中,用户甲在主链上开设有账户A,在第一平行链上开设有账户a,用户乙在第一平行链上开设有账户b,用户丙在第一平行链上开设有账户c;用户甲想要将主链上的10coin转账至用户乙,会生成两笔交易,tx1(将A中的10coin转账至a),tx2(将a中的10coin转账至b);由于需要保证tx1执行的正确性,tx1不能与普通平行链转账交易(包括tx2)放入一个交易组来执行;由于P2P广播交易不保证顺序,交易池也不会为各交易排序,在把有顺序关联的交易打包进区块时候,有可能会先打包tx2再打包tx1,打包顺序与预期不一致。由于tx1、tx2是相互关联的两笔交易,用户希望tx1与tx2能够按执行逻辑顺序打包。
技术实现思路
鉴于现有技术中的上述缺陷或不足,期望提供一种为了实现一笔跨链转账需求所生成的多笔交易能够按照执行逻辑顺序进行打包的交易打包方法、设备和存储介质。第一方面,本专利技术提供一种 ...
【技术保护点】
1.一种交易打包方法,其特征在于,适用于区块链节点,所述方法包括:/n响应于获得第一区块高度的第一区块的打包权,从内存池中预确定若干即将被打包入所述第一区块的交易,并对各所述交易执行如下操作:/n在判断出第一交易为有执行逻辑顺序的第一类交易时,根据所述第一交易的第一标识查找应当在所述第一交易前执行的各第二交易;/n判断各所述第二交易是否均按照预配置的第一执行逻辑顺序记录在区块链上:/n否,则判断未记录在区块链上的各所述第二交易是否均在内存池中:/n是,则判断未记录在区块链上的各所述第二交易是否均将被打包入所述第一区块:/n否,则调整未记录在区块链上的各所述第二交易与若干将被 ...
【技术特征摘要】
1.一种交易打包方法,其特征在于,适用于区块链节点,所述方法包括:
响应于获得第一区块高度的第一区块的打包权,从内存池中预确定若干即将被打包入所述第一区块的交易,并对各所述交易执行如下操作:
在判断出第一交易为有执行逻辑顺序的第一类交易时,根据所述第一交易的第一标识查找应当在所述第一交易前执行的各第二交易;
判断各所述第二交易是否均按照预配置的第一执行逻辑顺序记录在区块链上:
否,则判断未记录在区块链上的各所述第二交易是否均在内存池中:
是,则判断未记录在区块链上的各所述第二交易是否均将被打包入所述第一区块:
否,则调整未记录在区块链上的各所述第二交易与若干将被打包入所述第一区块的没有执行逻辑顺序的第二类交易的打包顺序,以保证所述第一交易与各所述第二交易将被共同打包入所述第一区块;其中,调整完的所述第一交易与各所述第二交易的打包顺序与预配置的所述第一交易与各所述第二交易的第一执行逻辑顺序相同;
是,则在所述第一交易与未记录在区块链上的各所述第二交易的打包顺序与所述第一执行逻辑顺序不同时,调整所述第一交易与未记录在区块链上的各所述第二交易的打包顺序以保证与所述第一执行逻辑顺序相同;
否,则暂不将所述第一交易打包入所述第一区块。
2.根据权利要求1所述的方法,其特征在于,所述在判断出第一交易为有执行逻辑顺序的第一类交易时,根据所述第一交易的第一标识查找应当在所述第一交易前执行的各第二交易包括:
在判断出第一交易为有执行逻辑顺序的第一类交易时,根据所述第一交易的第一头交易信息找到第一头交易;
根据所述第一头交易的后序交易信息查找对应的后序交易;
判断所找到的后序交易的后序交易信息是否为所述第一交易:
否,则根据所找到的后序交易的后序交易信息查找对应的后序交易,并返回所述判断所找到的后序交易的后序交易信息是否为所述第一交易;
是,则将所找到的除去所述第一交...
【专利技术属性】
技术研发人员:马登极,王志文,吴思进,
申请(专利权)人:杭州复杂美科技有限公司,
类型:发明
国别省市:浙江;33
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。