[发明专利]智能合约存储内容的遍历方法及装置、电子设备有效
申请号: | 202110510926.5 | 申请日: | 2021-05-11 |
公开(公告)号: | CN113220685B | 公开(公告)日: | 2022-04-19 |
发明(设计)人: | 卓海振 | 申请(专利权)人: | 支付宝(杭州)信息技术有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2455;G06F16/27 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 周嗣勇 |
地址: | 310000 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 智能 合约 存储 内容 遍历 方法 装置 电子设备 | ||
一种智能合约存储内容的遍历方法,包括:接收针对智能合约中存储的合约数据的查询请求;查询请求包括目标合约数据的key;响应于查询请求,从与所述智能合约对应的Merk l e树的根节点开始,遍历Merk l e树,在Merk l e树中查找,与该key的字符前缀中的字符匹配的字符节点,以及与查找到的字符节点对应的第一叶子节点;在查找到第一叶子节点后,进一步遍历与第一叶子节点存储的数据内容对应的Merk l e子树,从Merk l e子树的根节点开始,在Merk l e子树中查找与该key的字符后缀中的字符匹配的字符节点,以及与该字符节点对应的第二叶子节点,并进一步读取第二叶子节点中存储的所述目标合约数据的Va l ue。
技术领域
本说明书一个或多个实施例涉及区块链技术领域,尤其涉及一种智能合约存储内容的遍历方法及装置、电子设备。
背景技术
区块链技术,也被称之为分布式账本技术,是一种由若干台节点设备共同参与“记账”,共同存储和维护一份完整的分布式数据库的新兴技术。
对于区块链的节点设备来说,需要存储和维护的区块链数据,通常包括区块数据、区块链中的区块链账户对应的账户状态数据;而区块数据又可以进一步包括区块头数据、区块中的区块交易数据、以及与区块中的区块交易数据对应的交易收据,等等。
区块链的节点设备在存储以上示出的各种区块链数据时,通常可以将上述各种区块链数据以key-value键值对的形式,组织成Merkle树在数据库中存储。当需要查询节点设备存储的上述各种区块链数据时,可以通过将上述各种区块链数据的key作为查询索引,遍历上述Merkle树来高效的查询数据。
发明内容
本说明书提出一种智能合约存储内容的遍历方法,与所述智能合约对应的存储空间中存储的合约数据,以key-value键值对的形式被组织成Merkle树在数据库中存储;所述Merkle树的各叶子节点存储的数据内容,被进一步组织成与所述Merkle树对应的Merkle子树;其中,所述Merkle树以及所述Merkle子树均为融合了Trie字典树的树形结构的多层树状存储结构,包含至少一层字符节点和一层叶子节点;所述字符节点用于存储所述合约数据的key对应的字符串中的字符;所述叶子节点用于存储所述合约数据的Value;所述Merkle树和所述Merkle子树上的节点,通过在其上一层的节点中填充该节点的hash值,与其上一层的节点进行链接;
所述方法包括:
接收针对所述智能合约对应的存储空间中存储的合约数据的查询请求;其中,所述查询请求包括被查询的目标合约数据的key;所述目标合约数据的key对应的字符串包括字符前缀和字符后缀;
响应于所述查询请求,从所述Merkle树的根节点开始,遍历所述Merkle树,在所述Merkle树中查找,与所述字符前缀中的字符匹配的字符节点,以及与查找到的所述字符节点对应的第一叶子节点;
在查找到所述第一叶子节点后,进一步遍历与所述第一叶子节点存储的数据内容对应的Merkle子树,从所述Merkle子树的根节点开始,在所述Merkle子树中查找,与所述字符后缀中的字符匹配的字符节点,以及与查找到的所述字符节点对应的第二叶子节点,并在查找到所述第二叶子节点时,进一步读取所述第二叶子节点中存储的所述目标合约数据的Value。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于支付宝(杭州)信息技术有限公司,未经支付宝(杭州)信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110510926.5/2.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法