预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共30页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN112287032A(43)申请公布日2021.01.29(21)申请号202011516854.7(22)申请日2020.12.21(71)申请人支付宝(杭州)信息技术有限公司地址310000浙江省杭州市西湖区西溪路556号8层B段801-11(72)发明人邓福喜周知远谢桂鲁徐泉清李康杨达一(74)专利代理机构北京亿腾知识产权代理事务所(普通合伙)11309代理人张静娟周良玉(51)Int.Cl.G06F16/27(2019.01)G06F16/22(2019.01)G06Q40/04(2012.01)G06F21/64(2013.01)权利要求书5页说明书19页附图5页(54)发明名称一种区块链数据存储方法、装置及区块链节点(57)摘要本说明书提供一种区块链数据存储方法及区块链节点。所述方法的一个实施例包括:区块链节点执行创建/调用合约的交易,产生待存储的与所述区块链外部账户相关的状态;将所述待存储的与所述区块链外部账户相关的状态存储到对应的区块链外部账户的状态存储中。通过本说明书实施例,可以使区块链系统对外部账户的访问分散到各个外部账户的状态存储中,从而可以避免单账户热点的问题。同时,每个外部账户存储的负载压力比较小,可以提升整个区块链系统的性能。CN112287032ACN112287032A权利要求书1/5页1.一种区块链状态的存储方法,包括:区块链节点执行创建/调用合约的交易,产生待存储的与区块链外部账户相关的状态;将所述待存储的与区块链外部账户相关的状态存储到对应的区块链外部账户的状态存储中。2.如权利要求1所述的方法,所述与区块链外部账户相关的状态包括:所述合约中定义的外部账户与资产的映射关系。3.如权利要求2所述的方法,所述合约中定义的外部账户与资产的映射关系包括:通过映射数据结构定义的外部账户与资产的映射关系。4.如权利要求3所述的方法,所述通过映射数据结构定义的外部账户与资产的映射关系通过key-value来存储。5.如权利要求2所述的方法,对于区块链系统中仅有一个智能合约的情况,且该智能合约中仅定义或启用了一种新类型的资产,则区块链中状态树的存储包括两层;第一层通过树形结构在每个叶子节点中存储一个外部账户相关的包括所述新类型资产的key-value的hash值;第二层存储定义的包括所述外部账户与所述新类型资产的key-value的映射关系。6.如权利要求2所述的方法,对于区块链系统中仅有一个智能合约的情况,且该智能合约中定义且启用了至少两种新类型的资产,则区块链中状态树的存储包括两层;第一层通过树形结构在每个叶子节点中存储一个外部账户相关的包括所有所述新类型资产的key-value的根hash值;第二层通过树形结构在每个叶子节点中存储定义的包括所述外部账户与一种所述新类型资产的key-value的映射关系。7.如权利要求2所述的方法,对于区块链系统中有至少两个智能合约的情况,且该智能合约中仅定义或启用了一种新类型的资产,则区块链中状态树的存储包括三层;第一层通过树形结构在每个叶子节点中存储与一个外部账户相关的包括所有智能合约涉及信息的根hash值;第二层通过树形结构在每个叶子节点中存储一个外部账户相关的包括一个智能合约涉及的所述新类型资产的key-value的hash值;第三层存储定义的包括所述外部账户与所述资产的key-value的映射关系。8.如权利要求2所述的方法,对于区块链系统中有至少两个智能合约的情况,且该智能合约中定义或启用了至少两种新类型的资产,则区块链中状态树的存储包括三层;第一层通过树形结构在每个叶子节点中存储与一个外部账户相关的包括所有智能合约涉及信息的根hash值;第二层通过树形结构在每个叶子节点中存储一个外部账户相关的包括一个智能合约涉及的所有所述新类型资产的key-value的根hash值;第三层通过树形结构在每个叶子节点存储定义的包括所述外部账户与一种所述新类型资产的key-value的映射关系。9.如权利要求5-8中任一项所述的方法,所述第一层通过树形结构在每个叶子节点中还存储该外部账户的交易计数。10.如权利要求7或8所述的方法,所述第二层通过树形结构在每个叶子节点中还存储2CN112287032A权利要求书2/5页关联的智能合约的编号。11.如权利要求1所述的方法,所述区块链节点执行调用合约的交易,还产生待存储的与所述区块链合约账户相关的状态;所述与区块链合约账户相关的状态包括所述合约中基本数据类型的状态变量以及合约账户的状态变量。12.如权利要求11所述的方法,还包括:将所述待存储的与所述区块链合约账户相关的状态存储到对应的区块链合约账户的状态存储中;所述合约账户的状态存储中通过树形结构存储