iso file download
(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210666120.X (22)申请日 2022.06.13 (71)申请人 中国科学院软件研究所 地址 100190 北京市海淀区中关村南四街 4 号 (72)发明人 徐静 尹铃元  (74)专利代理 机构 北京君尚知识产权代理有限 公司 11200 专利代理师 余长江 (51)Int.Cl. H04L 9/32(2006.01) H04L 9/40(2022.01) H04L 67/1097(2022.01) (54)发明名称 一种区块链交易验证方法和系统 (57)摘要 本发明公开一种区块链交易验证方法和系 统, 所述方法包括: 分隔证据链, 其中, 前n个区块 为已验证区块, 待验证交易位于未验证区块; 通 过构建MMR树, 获取对同一个子段中所有区块的 承诺值, 以及各区块MMR证据; 基于 所述承诺值与 所述MMR证据, 生成证明待验证交易的存在性证 据; 基于所述证明链C的有效性证据与所述待验 证交易的存在性证据, 计算所述证明链C中待验 证交易的有效性证据; 将所述待验证交易的有效 性证据发送至验证者, 以使所述验证者基于获取 各待验证交易的有效性证据, 计算所述待验证交 易的验证结果。 本发明减少了证据尺寸, 降低了 验证过程中所需要的通信和存 储开销。 权利要求书2页 说明书7页 附图1页 CN 114900319 A 2022.08.12 CN 114900319 A 1.一种区块链交易验证方法, 包括以下步骤: 将区块链中每一证明者维护的证明链C, 每间隔len个区块就分隔为一个子段, 总共分 隔为P个子段Cp, 其中, 所述证明链C包括n ′个区块, 所述n ′个区块中的前n个区块对应的证 据已被验证者验证, 第n+1个区块属于子段Ci中, 待验证交易包含在第n+1个区块至第n ′个 区块中的一区块, 1<i≤P; 针对每一子段Cj, 通过构建MM R树, 获取对同一个子段Cp中所有区块的承诺值, 以及各区 块MMR证据, 其中, j∈[i, P], i表示第n+1个区块所在的子段Cp的序号; 基于所述承诺值与所述M MR证据, 计算所述证明链C的有效性证据; 计算所述待验证交易的默克尔路径, 并结合所述待验证交易所在区块的区块头与 所述 MMR证据, 生成证明待验证交易的存在性证据; 基于所述证 明链C的有效性证据与所述待验证交易的存在性证据, 计算所述证 明链C中 待验证交易的有效性证据, 并将所述待验证交易的有效性证据发送至验证者, 以使所述验 证者基于获取 各待验证交易的有效性证据, 计算所述待验证交易的验证结果。 2.如权利要 求1所述的方法, 其特征在于, 所述针对每一子 段Cp, 通过构建MMR树, 获取对 同一个子段Cp中所有区块的承诺值, 以及各区块M MR证据, 包括: 对于所述证明链C中第s个位置的区块Bs, 获取所述区块Bs所在的子段Cp; 在所述子段Cp中, 基于所述区块Bs之前的区块, 构建区块 集合; 根据所述区块集合中各区块的区块头, 组成一棵MMR树, 其 中, 所述MMR树的根存放在所 述区块Bs的区块头中, 且所述M MR树中第一个叶子结点存放的M MR根设置为空值; 基于前一个区块中的M MR根和前一个区块的区块头, 可以获取当前区块中的M MR根。 基于各个区块所在 子段Cp中最后一个区块中包含的MM R根, 获取对Cp中所有之前区块的 承诺值; 基于所述承诺值, 获取 各区块的M MR证据。 3.如权利要 求1所述的方法, 其特征在于, 所述MMR证据的尺寸与相应的子段Cp的长度成 对数关系。 4.如权利要求1所述的方法, 其特征在于, 所述基于所述承诺值与所述MMR证据, 计算所 述证明链C的有效性证据, 包括: 对于每一子段Cj, 基于所述承诺值, 并利用FlyClient协 议中证明算法Prove(Cj, length (Cj), c), 生成所述子段Cj的初始有效性证据 πj, 其中, length(Cj)表示子段Cj的长度, c表示 敌手节点数目除以诚实节点数目数值; 将所述子段Cj的第一个区块的区块头和MMR证据, 加入所述子段Cj的初始有效性证据, 得到所述子段Cj的有效性证据 π ′j; 根据各子段Cj的有效性证据 π ′j, 获取所述证明链C的有效性证据。 5.如权利要求 4所述的方法, 其特 征在于, 计算所述长度length(Cj)的方法, 包括: 若j=i, 则 若j=P, 则 其它情况, 则length(Cj)=len。 6.如权利要求1所述的方法, 其特 征在于, 所述证明链C的有效性证据, 还 包括:权 利 要 求 书 1/2 页 2 CN 114900319 A 2获取第一个未被验证者验证的区块序号 n+1; 计算所述证明链C中区块总数与已验证区块数的差值 n’ ‑n; 将所述区块序号 n+1与所述差值 n’ ‑n, 加入所述证明链C的证据。 7.如权利要求1所述的方法, 其特征在于, 所述验证者基于获取各待验证交易的有 效性 证据, 计算所述待验证交易的验证结果, 包括: 计算各证明链C的长度, 并基于所述长度, 获取 各证明链C的验证顺序 根据验证顺序, 选取一证明链C的有效性证据, 并验证该证明链C的有效性证据; 若所述证明链C的有效性证据验证成功, 则验证链C上待验证交易的存在性证据; 若所述验证都成功, 则认为该证 明链C中的待验证交易为有 效交易, 并中止后续证明链 C的验证, 且输出 所述验证结果; 若所述验证失败, 则依据所述验证顺序选取一证明链C, 并对该证明链C的有效性证据 进行验证。 8.如权利要求7 所述的方法, 其特 征在于, 所述验证该证明链C的有效性证据, 包括: 验证证明链C的有效性证据 π ′i中区块Bn+1的区块头指针, 是否指向区块Bn的区块头; 和, 验证证明链 C的有效性证据 π ′k中区块Bk·len+1的区块头指针, 是否指向证明链 C的有效性 证据 π′k‑1中区块Bk·len的区块头, 其中, k∈[i+1, P]; 和, 调用FlyCl ient协议中的验证算法, 验证 证明链C的有效性证据 π ′j的正确性。 9.如权利要求7所述的方法, 其特征在于, 所述验证链C上待验证交易的存在性证据, 包 括: 分别验证包含所述待验证交易的区块B的区块头、 所述MMR证据以及所述待验证交易到 所述区块B的区块头的默克尔路径是否正确。 10.一种区块链交易验证系统, 所述区块链中每一证明者维护的证明链C被分隔为P个 子段Cp, 所述证明链C包括n ′个区块, 所述n ′个区块中的前n个区块对应的证据已被验证者 验证, 待验证交易包含在第n+1个区块至第n ′个区块中的一区块, 针对每一子段, 通过构建 MMR树, 获取对同一个子段中所有区块的承诺值, 以及M MR证据, 所述系统包括: 证明者节点, 用于基于所述承诺值与所述MMR证据, 计算所述证 明链C的有效性证据; 计 算所述待验证交易的默克尔路径, 并结合所述待验证交易所在区块的区块头与MMR证据, 生 成交易的存在性证据; 基于所述证明链的有效性证据与待验证交易的存在性证据, 获取所 述待验证交易的有效性证据, 并将所述证据发送至验证者; 验证者节点, 基于各待验证交易的有效性证据, 计算所述待验证交易的验证结果。权 利 要 求 书 2/2 页 3 CN 114900319 A 3

.PDF文档 专利 一种区块链交易验证方法和系统

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