(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 20221098625 5.4
(22)申请日 2022.08.17
(71)申请人 杭州趣链科技有限公司
地址 310000 浙江省杭州市滨江区丹 枫路
399号2号楼 A楼2001室
(72)发明人 邱炜伟 端豪 袁超 黄方蕾
张珂杰
(74)专利代理 机构 深圳中一联合知识产权代理
有限公司 4 4414
专利代理师 张禹
(51)Int.Cl.
G06F 16/23(2019.01)
H04L 41/00(2022.01)
(54)发明名称
区块存储方法、 区块链系统、 设备和存储介
质
(57)摘要
本申请公开了一种区块存储方法、 区块链系
统、 设备和存储介质, 属于区块链技术领域。 多个
节点中的每个节点具有并行执行的共识线程、 处
理线程、 存储线 程, 该方法包括: 多个节点中的每
个节点每在多个节点生成一个区块时, 通过共识
线程对最新生成的区块进行共识; 每在完成对一
个区块的共识时, 通过处理线程对最新完成共识
的区块进行执行并验证执行结果的一致性; 每在
确定一个区块的执行结果具有 一致性时, 通过存
储线程将最新确定的执行结果具有一致性的区
块存储至区块链。 本申请实现了共识过程与执行
过程完全解耦合, 从而提高了区块共识效率和区
块执行效率。 并且, 这种多线程并行执行的方式
提高了CPU利用率, 从而提高了区块存 储效率。
权利要求书2页 说明书15页 附图2页
CN 115438053 A
2022.12.06
CN 115438053 A
1.一种区块存储方法, 其特征在于, 应用于区块链系统, 所述区块链系统包括多个节
点, 所述多个节点中的每个节点具有并行执行的共识线程、 处理线程、 存储线程, 所述方法
包括:
所述多个节点中的每个节点每在所述多个节点生成一个区块 时, 通过所述共识线程对
最新生成的区块进行共识;
所述多个节点中的每个节点每在完成对一个区块的共识时, 通过所述处理线程对最新
完成共识的区块进行 执行并在得到执 行结果后验证所述执 行结果的一 致性;
所述多个节点中的每个节点每在确定一个区块的执行结果具有一致性 时, 通过所述存
储线程将最 新确定的执 行结果具有一 致性的区块存 储至区块链。
2.如权利要求1所述的方法, 其特征在于, 所述多个节点包括一个主节点和多个从节
点, 所述多个节点中的每个节点每在所述多个节点生成一个区块时, 通过所述共识线程对
最新生成的区块进行共识, 包括:
所述主节点每生成一个区块, 执行所述共识线程, 以向所述多个从节点中的每个从节
点广播第一区块, 所述第一区块 为最新生成的区块;
所述多个从节点中任意的一个从节点接收到所述第一区块后, 执行所述共识线程, 以
在所述第一区块具有合法性的情况 下向所述主节点发送针对所述第一区块的第一投票;
所述主节点接收到针对所述第一区块的多个第一投票后, 执行所述共识线程, 以在所
述多个第一投票的数量大于或等于第一投票数量阈值的情况下根据所述多个第一投票生
成所述第一区块的聚合投票信息, 向所述多个从节点中的每个从节点发送所述聚合投票信
息, 并确定已完成对所述第一区块的共识;
所述多个从节点中任意的一个从节点接收到所述聚合投票信息后, 执行所述共识线
程, 以确定已完成对所述第一区块的共识。
3.如权利要求1所述的方法, 其特征在于, 所述处理线程包括并行执行的执行线程和验
证线程, 所述多个节点中的每个节点每在完成对一个区块的共识 时, 通过所述处理线程对
最新完成共识的区块进行 执行并在得到执 行结果后验证所述执 行结果的一 致性, 包括:
所述多个节点中的每 个节点执 行以下操作:
每在完成对一个区块的共识时, 执行所述执行线程, 以执行第二 区块, 得到所述第二 区
块的执行结果, 所述第二区块 为最新完成共识的区块;
每在得到一个区块的执行结果时, 执行所述验证线程, 以验证第三区块的执行结果的
一致性, 所述第三区块是最 新得到执 行结果的区块。
4.如权利要求3所述的方法, 其特征在于, 所述验证线程包括并行执行的签名线程和投
票线程, 所述每在得到一个区块的执行结果时, 执行所述验证线程, 以验证第三区块的执行
结果的一 致性, 包括:
每在得到一个区块的执行结果时, 执行所述签名线程, 以对所述第三区块的执行结果
进行签名, 并广播针对所述第三区块的执行结果的第二投票, 所述第二投票携带所述执行
结果和所述签名;
每广播针对一个区块的执行结果的第二投票, 执行所述投票线程, 以接收其他节点发
送的针对第四区块的执行结果的多个第二投票, 并根据所述多个第二投票验证所述第四区
块的执行结果的一 致性, 所述第四区块 为最新广播的第二投票所针对的区块。权 利 要 求 书 1/2 页
2
CN 115438053 A
25.如权利要求4所述的方法, 其特征在于, 所述根据 所述多个第 二投票验证所述第四区
块的执行结果的一 致性, 包括:
对于所述多个第二投票中任意的一个第 二投票, 根据所述一个第 二投票携带的签名验
证所述一个第二投票携带的执 行结果;
根据所述多个第二投票中每个第二投票携带的执行结果和每个第二投票携带的执行
结果的验证结果, 确定所述多个第二投票中的至少一个目标投票, 所述至少一个目标投票
携带的执 行结果的验证结果 为验证通过, 且所述至少一个目标投票携带的执 行结果相同;
若所述至少一个目标投票的数量大于或等于第 二投票数量阈值, 则确定所述第四区块
的执行结果具有一 致性;
若所述至少一个目标投票的数量小于第 二投票数量阈值, 则确定所述第四区块的执行
结果不具有一 致性。
6.一种区块链系统, 其特征在于, 所述 区块链系统包括多个节点, 所述多个节点中的每
个节点具有并行 执行的共识线程、 处 理线程、 存 储线程; 所述多个节点中的每 个节点用于:
每在所述多个节点 生成一个区块时, 通过 所述共识线程对最 新生成的区块进行共识;
每在完成对一个区块的共识时, 通过所述处理线程对最新完成共识的区块进行执行并
在得到执 行结果后验证所述执 行结果的一 致性;
每在确定一个区块的执行结果具有一致性 时, 通过所述存储线程将最新确定的执行结
果具有一 致性的区块存 储至区块链。
7.如权利要求6所述的区块链系统, 其特征在于, 所述处理线程包括并行执行的执行线
程和验证线程, 所述多个节点中的每 个节点用于:
每在完成对一个区块的共识时, 执行所述执行线程, 以执行第二 区块, 得到所述第二 区
块的执行结果, 所述第二区块 为最新完成共识的区块;
每在得到一个区块的执行结果时, 执行所述验证线程, 以验证第三区块的执行结果的
一致性, 所述第三区块是最 新得到执 行结果的区块。
8.如权利要求7所述的区块链系统, 其特征在于, 所述验证线程包括并行执行的签名线
程和投票线程, 所述多个节点中的每 个节点用于:
每在得到一个区块的执行结果时, 执行所述签名线程, 以对所述第三区块的执行结果
进行签名, 并广播针对所述第三区块的执行结果的第二投票, 所述第二投票携带所述执行
结果和所述签名;
每广播针对一个区块的执行结果的第二投票, 执行所述投票线程, 以接收其他节点发
送的针对第四区块的执行结果的多个第二投票, 并根据所述多个第二投票验证所述第四区
块的执行结果的一 致性, 所述第四区块 为最新广播的第二投票所针对的区块。
9.一种计算机设备, 其特征在于, 所述计算机设备包括存储器、 处理器以及存储在所述
存储器中并可在所述处理器上运行的计算机程序, 所述计算机程序被所述处理器执行时实
现如权利要求1至 5任一项所述的方法。
10.一种计算机可读存储介质, 其特征在于, 所述计算机可读存储介质存储有计算机程
序, 所述计算机程序被处 理器执行时实现如权利要求1至 5任一项所述的方法。权 利 要 求 书 2/2 页
3
CN 115438053 A
3
专利 区块存储方法、区块链系统、设备和存储介质
文档预览
中文文档
20 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共20页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 SC 于 2024-02-07 12:42:59上传分享