[发明专利]一种基于链上合约微型索引的检索方法、装置和电子设备在审
申请号: | 202110366248.X | 申请日: | 2021-04-06 |
公开(公告)号: | CN113064898A | 公开(公告)日: | 2021-07-02 |
发明(设计)人: | 张诚;朱国君;张勇 | 申请(专利权)人: | 北京瑞卓喜投科技发展有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/2458;G06F16/27;G06F21/64 |
代理公司: | 北京动力号知识产权代理有限公司 11775 | 代理人: | 梁艳 |
地址: | 101200 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 合约 微型 索引 检索 方法 装置 电子设备 | ||
本发明公开了一种基于链上合约微型索引的检索方法、装置和电子设备。方法应用于预言机中,包括:在链下预先生成数据的微型索引,并将其保存在链上合约中;在链上根据输入的搜索请求检索所述微型索引,得到所述搜索请求对应的索引信息;在链下根据所述索引信息获取数据。其采用预言机技术主动为区块链提供安全的链下数据;同时,为了方便快速地对提供的数据进行查找,采用了索引的检索方式,提高了特定数据的查询效率;而且,通过采用微型索引,并将其保存在链上合约中,以便在链上完成索引检索的方式,解决了链上存储空间小,无法存储链下提供的大量数据的问题。
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于链上合约微型索引的检索方法、装置和电子设备。
背景技术
区块链是一个封闭的环境,链上智能合约无法主动获取链下真实世界的数据。而且,智能合约只有在满足相应条件下才达到触发状态的程序。如果智能合约的触发条件取决于区块链下信息,就需要通过预言机来提供这些区块链下的信息,写入区块链上记录。
目前,随着区块链技术的不断发展,预言机为链上智能合约提供的数据越来越多,如果采用遍历的方式查询数据,会导致性能非常低下;而且,链上合约的存储空间很小,无法满足大量数据的存储需求。
发明内容
为了解决现有技术中存在的问题,本发明提供了如下技术方案。
本发明一方面提供了一种基于链上合约微型索引的检索方法,所述方法应用于预言机中,包括:
在链下预先生成数据的微型索引,并保存在链上合约中;
在链上根据输入的搜索请求检索所述微型索引,得到所述搜索请求对应的索引信息;
在链下根据所述索引信息获取数据。
优选地,本发明提供的基于链上合约微型索引的检索方法还包括:在链下预先计算所述微型索引的哈希值,并保存在链上合约中。
优选地,计算所述搜索请求对应的索引信息的哈希值,并将其与保存在链上合约中对应的哈希值进行比较,判断得到的所述搜索请求对应的索引信息是否被篡改。
优选地,所述在链下根据所述索引信息获取数据包括:
链下节点读取所述索引信息;
链下节点根据所述索引信息获取保存在链下微型索引中的索引信息;
根据保存在链下的索引信息获取数据。
优选地,本发明提供的基于链上合约微型索引的检索方法还包括:
计算获取到的保存在链下的索引信息的哈希值,并将计算得到的哈希值与保存在链上合约的哈希值进行比较,判断获取到的保存在链下的索引信息是否被篡改。
优选地,所述在链下预先生成数据的微型索引,并保存在链上合约中包括:
在链下节点生成数据的微型索引;
所述链下节点请求将所述微型索引写入链上合约中;
链上的治理合约用户对所述微型索引进行验证,验证成功后签名;
将验证成功的所述微型索引和所述治理合约用户的签名写入链上合约中。
优选地,所述在链下根据所述索引信息获取数据之后还包括:
计算所述数据的哈希值;
比较计算得到的哈希值与区块链中保存的所述数据的哈希值是否一致,如果一致,则将获取到的所述数据返回给用户,否则,返回提示数据可能错误的信息。
本发明第二方面提供了一种基于链上合约微型索引的检索装置,所述装置设置于预言机中,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京瑞卓喜投科技发展有限公司,未经北京瑞卓喜投科技发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110366248.X/2.html,转载请声明来源钻瓜专利网。