[发明专利]一种基于区块链的增量MPT树账户状态存储方法及系统有效
申请号: | 202110592799.8 | 申请日: | 2021-05-28 |
公开(公告)号: | CN113254450B | 公开(公告)日: | 2022-07-22 |
发明(设计)人: | 赵永光;肖宗水;仪莉;闵新平;赵静;于秋波;朱晓洪;张玉波;于飞 | 申请(专利权)人: | 山大地纬软件股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23;G06F16/27;G06F21/64;G06Q20/38 |
代理公司: | 济南圣达知识产权代理有限公司 37221 | 代理人: | 张庆骞 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 增量 mpt 账户 状态 存储 方法 系统 | ||
本发明属于区块链技术领域,提供了一种基于区块链的增量MPT树账户状态存储方法及系统。其中,该方法包括获取区块中交易中涉及的账户状态对象并加载到临时状态缓存区pre‑state;监控交易执行过程中pre‑state中账户状态对象的变化信息,并将新生成的账户状态对象及有变化的状态对象加载到临时状态缓存区dirty‑state;当区块中所有交易的状态转换过程执行完后,基于dirty‑state中的状态对象来构建增量MPT树,并计算增量MPT树的根哈希作为相应区块的根哈希值;将计算出的根哈希值与其他区块链节点计算出的根哈希值比较,校验状态转换的合法性;当校验通过后,将增量MPT树存入增量状态库,并将临时状态缓存区dirty‑state中的状态对象发生状态变化的交易ID更新到状态转换K‑V表,并清空临时状态缓存区。
技术领域
本发明属于区块链技术领域,尤其涉及一种基于区块链的增量MPT树账户状态存储方法及系统。
背景技术
本部分的陈述仅仅是提供了与本发明相关的背景技术信息,不必然构成在先技术。
比特币中使用UTXO(Unspent Transaction Output,交易输入输出)模型来管理交易的状态,但UTXO模型只适合于数值型简单状态的管理,并不适用于账户模型下的复杂状态管理。以太坊中使用MPT树组织和管理账户状态,MPT树既具有merkle树的数据校验能力,又具有前缀树的特性能够一定程度上节省存储空间。其中,Merkle Patricia Tree(简称MPT树,实际上是一种trie前缀树)是以太坊中的一种加密认证的数据结构,可以用来存储所有的(key,value)对。
但发明人发现,在以太坊的账户状态模型下,所有账户的状态均存储在一个MPT树上(世界状态树),交易的校验需要对MPT树自底向上计算根节点hash值,当单个区块中包含大量交易并涉及到大量账户状态的变化时,需要对上述所有账户状态所在MPT树分支的大量节点载入或重构,并依次向上计算hash值,这样带来大量的内存开销以及性能损耗。
发明内容
为了解决上述背景技术中存在的技术问题,本发明提供一种基于区块链的增量MPT树账户状态存储方法及系统,其采用的增量MPT树只涉及到区块中有状态变化的对象,MPT树的构建和检索过程更加简洁,避免了大量分支节点的载入及重构造成的内存占用高、性能损耗问题。
为了实现上述目的,本发明采用如下技术方案:
本发明的第一个方面提供一种基于区块链的增量MPT树账户状态存储方法。
一种基于区块链的增量MPT树账户状态存储方法,其包括:
获取区块中交易中涉及的账户状态对象并加载到临时状态缓存区pre-state;
监控交易执行过程中pre-state中账户状态对象的变化信息,并将新生成的账户状态对象及有变化的状态对象加载到临时状态缓存区dirty-state;
当区块中所有交易的状态转换过程执行完后,基于dirty-state中的状态对象来构建增量MPT树,并计算增量MPT树的根哈希作为相应区块的根哈希值;
将计算出的根哈希值与其他区块链节点计算出的根哈希值比较,校验状态转换的合法性;
当校验通过后,将增量MPT树存入增量状态库,并将临时状态缓存区dirty-state中的状态对象发生状态变化的交易ID更新到状态转换K-V表,并清空临时状态缓存区。
本发明的第二个方面提供一种基于区块链的增量MPT树账户状态存储系统。
一种基于区块链的增量MPT树账户状态存储系统,其包括:
账户状态对象加载模块,其用于获取区块中交易中涉及的账户状态对象并加载到临时状态缓存区pre-state;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山大地纬软件股份有限公司,未经山大地纬软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110592799.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种发电机内冷水系统铜垢化学清洗剂
- 下一篇:一种C型槽连续跟踪切断式生产线