全网唯一标准王
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210750970.8 (22)申请日 2022.06.29 (71)申请人 蚂蚁区块链科技 (上海) 有限公司 地址 200010 上海市黄浦区外马路618号8 层803室 (72)发明人 王江  (74)专利代理 机构 北京亿腾知识产权代理事务 所(普通合伙) 11309 专利代理师 张静娟 周良玉 (51)Int.Cl. G06F 16/27(2019.01) G06F 16/23(2019.01) G06Q 40/04(2012.01) (54)发明名称 在区块链系统中执行 交易的方法、 区块链系 统和节点 (57)摘要 一种在区块链中执行 交易的方法、 区块链系 统和节点, 所述区块链系统包括主节点和从节 点, 所述方法包括: 所述主节点预执行多个交易, 得到各个交易的预执行读写集; 根据多个交易的 预执行读写集对多个交易进行分组, 得到多个交 易组, 生成各个交易组的预执行读写集; 将分组 结果和各个交易组的预执行读写集发送给从节 点; 所述从节点根据所述多个交易组的预执行读 写集对分组结果进行验证; 在验证通过的情况中 根据分组结果并行执行所述多个交易, 得到每个 交易组包括的交易的执行读写集, 基于每个交易 组包括的交易的执行读写集对所述交易组的预 执行读写集进行验证 。 权利要求书2页 说明书10页 附图2页 CN 115098594 A 2022.09.23 CN 115098594 A 1.一种在区块链系统中执行交易的方法, 所述区块链系统包括主节点和从节点, 所述 方法包括: 所述主节点预执行多个交易, 得到各个交易的预执行读写集; 根据多个交易的预执行 读写集对多个交易进 行分组, 得到多个交易组, 生成各个交易组的预执行读写集; 将分组结 果和各个交易组的预 执行读写集发送给从节点; 所述从节点根据 所述多个交易组的预执行读写集对分组结果进行验证; 在验证通过的 情况中根据分组结果并行执行所述多个交易, 得到每个交易组包括的交易的执行读写集, 基于每个交易组包括的交易的执 行读写集对所述交易组的预 执行读写集进行验证。 2.根据权利要求1所述的方法, 所述基于每个交易组包括的交易的执行读写集对所述 交易组的预执行读写集进行验证包括: 在执行每个交易的过程中, 使用交易的执行读集对 该交易所属的交易组的预 执行读集进行验证。 3.根据权利要求1或2所述的方法, 所述基于每个交易组包括的交易的执行读写集对所 述交易组的预执行读写集进行验证包括: 在完成对所述多个交易的并行执行之后, 根据各 个交易组中包括的交易的执行读写集生成各个交易组的执行读写集, 基于各个交易组的执 行读写集对各个交易组的预 执行读写集进行验证。 4.根据权利要求1 ‑3任一项所述的方法, 所述从节点根据所述多个交易组的预执行读 写集对分组结果进行验证包括: 所述从节点根据所述多个交易组的预执行读写集验证所述 多个交易组中的交易组之间是否访问相同变量。 5.根据权利要求1 ‑3任一项所述的方法, 所述主节点预执行多个交易包括: 所述主节点 基于预执行状态集预执行所述多个交易, 所述方法还包括: 所述主节点在预执行完每个交 易之后, 串行地对每个交易进行如下处理: 确定所述交易的预执行读集是否与所述预执行 状态集存在冲突, 其中, 在 对于预执行完的第一交易确定不存在冲突的情况中, 基于所述第 一交易的预执行读写集更新所述预执行状态集, 将所述第一交易顺序 记录到预执行交易集 合中; 其中, 各个交易组中的交易排列顺序基于各个交易组中的交易在所述预执行交易集 合中的排列顺序确定 。 6.根据权利要求5所述的方法, 还包括: 所述主节点将所述多个交易在所述预执行交易 集合中的排列顺序发送给所述从节点, 所述从节点在验证不通过 的情况中, 根据所述多个 交易在所述预 执行交易集合中的排列顺序串行 执行所述多个交易。 7.根据权利要求5或6所述的方法, 其中, 所述主节点基于预执行状态集预执行所述多 个交易包括, 所述主节点在预执行任一交易中读取第一变量时, 确定所述预执行状态集中 是否存储有所述第一变量的值, 在确定所述预执行状态集中未存储所述第一变量的值的情 况中, 从状态数据库读取 所述第一变量的值。 8.根据权利要求5或6所述的方法, 其中, 所述确定所述交易的预执行读集是否与所述 预执行状态集存在冲突包括, 确定所述预执行状态集中是否包括所述交易的预执行读集中 的第二变量, 在确定所述预执行状态集中包括所述第二变量的情况中, 确定所述预执行状 态集中的第二变量的值与所述预执行读集中的第二变量的值是否一致, 如果不一致, 则确 定所述交易的预 执行读集与所述预 执行状态集存在冲突。 9.一种在区块链系统中执行交易的方法, 所述区块链系统包括主节点和从节点, 所述 方法由所述从节点执 行, 包括:权 利 要 求 书 1/2 页 2 CN 115098594 A 2从所述主节点接收对多个交易进行分组得到的分组结果和各个交易组的预执行读写 集, 其中, 所述交易组的预执行读写集基于所述交易组中包括的各个交易的预执行读写集 生成; 根据所述多个交易组的预 执行读写集对分组结果进行验证; 在验证通过的情况中根据分组结果并行执行所述多个交易, 得到每个交易组包括的交 易的执行读写集; 基于每个交易组包括的交易的执 行读写集对所述交易组的预 执行读写集进行验证。 10.根据权利要求9所述的方法, 所述基于每个交易组包括的交易的执行读写集对所述 交易组的预执行读写集进行验证包括: 在执行每个交易的过程中, 使用交易的执行读集对 该交易所属的交易组的预 执行读集进行验证。 11.根据权利要求10所述的方法, 所述基于每个交易组包括的交易的执行读写集对所 述交易组的预执行读写集进行验证还包括: 在完成对所述多个交易的并行执行之后, 根据 各个交易组中包括的交易的执行读写集得到各个交易组的执行写集, 基于各个交易组的执 行写集对各个交易组的预 执行写集进行验证。 12.根据权利要求9 ‑11任一项所述的方法, 所述根据所述多个交易组的预执行读写集 对分组结果进 行验证包括: 根据所述多个交易组的预执行读写集验证所述多个交易组中的 交易组之间是否访问相同变量。 13.一种区块链系统的从节点, 包括: 接收单元, 用于从所述 区块链系统的主节点接收对多个交易进行分组得到的分组结果 和各个交易组的预执行读写集, 其中, 所述交易组的预执行读写集基于所述交易组中包括 的各个交易的预 执行读写集 生成; 验证单元, 用于根据所述多个交易组的预 执行读写集对分组结果进行验证; 执行单元, 用于在验证通过的情况中根据分组结果并行执行所述多个交易, 得到每个 交易组包括的交易的执 行读写集; 所述验证单元还用于, 基于每个交易组包括的交易的执行读写集对所述交易组 的预执 行读写集进行验证。 14.一种区块链系统, 包括主节点和从节点, 所述主节点用于: 预执行多个交易, 得到各个交易的预执行读写集; 根据多个交易的预 执行读写集对多个交易进 行分组, 得到多个交易组, 生成各个交易组的预执行读写集; 将分 组结果和各个交易组的预 执行读写集发送给从节点; 所述从节点用于: 根据所述多个交易组的预执行读写集对分组结果进行验证; 在验证 通过的情况中根据分组结果并行执行所述多个交易, 得到每个交易组包括的交易的执行读 写集, 基于每 个交易组包括的交易的执 行读写集对所述交易组的预 执行读写集进行验证。 15.一种计算机可读存储介质, 其上存储有计算机程序, 当所述计算机程序在计算机中 执行时, 令计算机执 行权利要求9 ‑12中任一项的所述的方法。 16.一种区块链节点, 包括存储器和 处理器, 所述存储器中存储有可执行代码, 所述处 理器执行所述可执行代码时, 实现权利要求9 ‑12中任一项所述的方法。权 利 要 求 书 2/2 页 3 CN 115098594 A 3

PDF文档 专利 在区块链系统中执行交易的方法、区块链系统和节点

文档预览
中文文档 15 页 50 下载 1000 浏览 0 评论 0 收藏 3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 在区块链系统中执行交易的方法、区块链系统和节点 第 1 页 专利 在区块链系统中执行交易的方法、区块链系统和节点 第 2 页 专利 在区块链系统中执行交易的方法、区块链系统和节点 第 3 页
下载文档到电脑,方便使用
本文档由 SC 于 2024-02-24 00:49:23上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。