[发明专利]在区块链系统中执行交易的方法、节点和区块链系统有效
申请号: | 202111296878.0 | 申请日: | 2021-11-04 |
公开(公告)号: | CN113743950B | 公开(公告)日: | 2022-08-09 |
发明(设计)人: | 谢桂鲁;邓福喜 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06Q20/40 | 分类号: | G06Q20/40;G06Q20/38 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 张静娟;周良玉 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 区块 系统 执行 交易 方法 节点 | ||
1.一种在区块链系统中执行交易的方法,所述区块链系统中包括第一节点和第二节点,所述第一节点和所述第二节点分别为所述区块链系统中的任意两个节点,所述方法包括:
所述第一节点预执行接收的多个第一交易,得到各个第一交易的预执行读写集;基于所述多个第一交易的预执行读写集,对所述多个第一交易进行分组;并将所述多个第一交易、所述多个第一交易的预执行读写集和对所述多个第一交易进行分组的第一分组信息发送给所述第二节点;
所述第二节点根据所述第一分组信息并行执行所述多个第一交易;
对于任一第一交易,若所述第二节点执行该第一交易后得到的执行读写集与该第一交易的预执行读写集不一致,回滚对该第一交易的执行。
2.根据权利要求1所述的方法,其中,所述方法还包括:
所述第二节点在执行完成所述多个第一交易之后,基于所述多个第一交易的预执行读写集,验证所述第一分组信息,在验证通过的情况中,提交执行所述多个第一交易得到的执行结果。
3.根据权利要求1所述的方法,其中,所述方法还包括:
所述第一节点根据所述第一分组信息并行执行所述多个第一交易;对于任一第一交易,若所述第一节点执行该第一交易后得到的执行读写集中的执行读集与该第一交易的预执行读写集中的预执行读集不一致,回滚对该第一交易的执行。
4.根据权利要求1所述的方法,其中,所述第一节点预执行接收的多个第一交易,包括:所述第一节点基于各个第一交易各自对应的最新区块的世界状态预执行所述各个第一交易。
5.根据权利要求1所述的方法,其中,所述第二节点在执行完成所述多个第一交易之后,还包括:所述第二节点重新执行经回滚的交易。
6.根据权利要求5所述的方法,其中,所述第二节点重新执行经回滚的交易,包括:所述第二节点串行地重新执行经回滚的交易。
7.根据权利要求5所述的方法,其中,所述方法还包括:
所述第二节点在获取到所述多个第一交易之后,获取多个第二交易、对所述多个第二交易进行分组的第二分组信息及所述多个第二交易的预执行读写集。
8.根据权利要求7所述的方法,其中,所述多个第一交易和所述多个第二交易属于第一区块;所述方法还包括:
所述第二节点在完成对所述多个第一交易的执行之后,根据所述第二分组信息并行地执行所述多个第二交易;对于任一第二交易,若所述第二节点执行该第二交易后得到的执行读写集与该第二交易的预执行读写集不一致,回滚对该第二交易的执行;
其中,所述第二节点重新执行经回滚的交易包括,在执行完所述多个第二交易之后,重新执行经回滚的第一交易和经回滚的第二交易。
9.根据权利要求8所述的方法,其中,所述第二节点重新执行经回滚的第一交易和经回滚的第二交易,包括:所述第二节点基于执行完成所述多个第二交易之后的最新的世界状态,重新执行经回滚的第一交易和经回滚的第二交易。
10.根据权利要求8所述的方法,其中,所述方法还包括:
所述第二节点在完成重新执行经回滚的交易之后,生成所述第一区块;所述第一区块包括所述多个第一交易的预执行读写集和所述多个第二交易的预执行读写集。
11.根据权利要求1所述的方法,其中,任一第一交易的预执行读写集中包括预执行该第一交易时的区块高度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111296878.0/1.html,转载请声明来源钻瓜专利网。