加密数据搜索方法、装置、设备及计算机存储介质制造方法及图纸

技术编号:37770060 阅读:9 留言:0更新日期:2023-06-06 13:33
本申请公开了一种加密数据搜索方法、装置、设备及计算机存储介质。该方法包括:接收用户输入的关键词;遍历预先构建好的字典树,从字典树中确定与关键词对应的默克尔路径以及内容寻址;根据默克尔路径以及内容寻址,从存储扇区中获取关键词对应的加密数据;解密加密数据,得到目标数据;向用户设备发送目标数据。本申请能够基于用户输入的关键词,及时为用户搜索到加密数据,从而提高了搜索效率。从而提高了搜索效率。从而提高了搜索效率。

【技术实现步骤摘要】
加密数据搜索方法、装置、设备及计算机存储介质


[0001]本申请属于通信
,尤其涉及一种加密数据搜索方法、装置、设备及计算机存储介质。

技术介绍

[0002]目前由于存储和计算资源需求的增长,如今的企业组织往往会把数据外包给云服务提供商等远程服务器,基于安全隐私等考虑,数据拥有者在外包给服务器前往往都会选择加密他们的数据。而目前对于加密搜索的方法中,通常都是基于以太坊通过将搜索令牌发送至具有多个智能合约的指定智能合约,由于以太坊的特殊性,通常是多个智能合约同时运行,数据传输效率并不高,从而导致搜索的效率也不高。

技术实现思路

[0003]本申请实施例提供一种加密数据搜索方法、装置、设备及计算机存储介质,能够与基于用户输入的关键词,为用户搜索到合适的加密数据。
[0004]第一方面,本申请实施例提供一种加密数据搜索方法,包括:
[0005]接收用户输入的关键词;
[0006]遍历预先构建好的字典树,从字典树中确定与关键词对应的默克尔路径以及内容寻址;
[0007]根据默克尔路径以及内容寻址,从存储扇区中获取关键词对应的加密数据;
[0008]解密加密数据,得到目标数据。
[0009]可选地,在遍历预先构建好的字典树,从字典树中确定与关键词对应的默克尔路径以及内容寻址之前,方法还包括:
[0010]获取原始数据,原始数据中包括目标数据;
[0011]对原始数据进行拆分,形成多个具有不同内容寻址的第一预设字节长度的数据元,其中,每个数据元中包括一个关键词;
[0012]将每个数据元的第一预设字节长度带入哈希函数,计算其哈希值;
[0013]根据计算得到的所有数据元的哈希值以及预设的默克尔树构建规则,构建默克尔树;
[0014]基于默克尔树,生成每个关键词对应的默克尔路径。
[0015]可选地,基于默克尔树,生成每个关键词对应的默克尔路径之后,方法还包括:
[0016]计算每个关键词在原始数据中出现的频率;
[0017]根据每个关键词的频率,将每个关键词倒排组成一个字典树,字典树包括多个关键词,以及关键词对应的默克尔路径和内容寻址。
[0018]可选地,计算每个所述关键词在所述原始数据中出现的频率,包括:
[0019]统计每个关键词在原始数据中出现的频次;
[0020]统计原始数据中所有词条数目的总和;
[0021]将每个关键词在原始数据中出现的频次与所述原始数据中所有词条数目的总和的比值作为每个关键词在原始数据中出现的频率。
[0022]可选地,在根据默克尔路径以及内容寻址,从存储扇区中获取关键词对应的加密数据之前,方法还包括:
[0023]获取关键词的加密数据;
[0024]将加密数据存储至存储扇区。
[0025]可选地,在获取关键词的加密数据之前,方法还包括:
[0026]获取目标数据,目标数据带有数据所有者的加密签名;
[0027]对目标数据进行切片,形成多个第二预设字节长度的切片数据;
[0028]将多个切片数据打包成多个数据包;
[0029]将每个切片数据的第二预设字节长度带入哈希函数,计算其哈希值;
[0030]根据计算得到的所有切片数据的哈希值以及预设的默克尔树的算法,生成哈希列表;
[0031]将所有数据包以及对应的哈希列表带入证明电路进行加密计算得到第三预设字节长度的带有数据所有者签名的加密数据。
[0032]可选地,解密所述加密数据,得到目标数据,包括:
[0033]向数据所有者发送获取解密秘钥得到请求;
[0034]响应于确定接收到数据所有者发送的解密秘钥;
[0035]基于解密秘钥对加密数据进行解密,得到目标数据;
[0036]向用户设备发送目标数据
[0037]第二方面,本申请实施例提供一种加密数据搜索装置,装置包括:
[0038]接收模块,用于接收用户输入的关键词;
[0039]搜索模块,用于遍历预先构建好的字典树,从字典树中确定与关键词对应的默克尔路径以及内容寻址;
[0040]获取模块,用于根据默克尔路径以及内容寻址,从存储扇区中获取关键词对应的加密数据;
[0041]解密模块,用于解密加密数据,得到目标数据。
[0042]可选地,在搜索模块遍历预先构建好的字典树,从字典树中确定与所述关键词对应的默克尔路径以及内容寻址之前,装置还包括:
[0043]获取模块,还用于:获取原始数据,原始数据中包括至少一个目标数据;
[0044]拆分模块,用于对目标数据进行拆分,形成多个具有不同内容寻址的第一预设字节长度的数据元,其中,每个数据元中包括一个关键词;
[0045]计算模块,用于将每个数据元的第一预设字节长度带入哈希函数,计算其哈希值;
[0046]构建模块,用于根据计算得到的所有数据元的哈希值以及预设的默克尔树构建规则,构建默克尔树;
[0047]生成模块,用于基于默克尔树,生成每个关键词对应的默克尔路径。
[0048]可选地,装置还包括:
[0049]计算模块,还用于计算每个关键词在原始数据中出现的频率;
[0050]构建模块,还用于根据每个关键词的频率,将每个关键词倒排组成一个字典树,字
典树包括多个关键词,以及关键词对应的默克尔路径和内容寻址。
[0051]可选地,所述计算每个所述关键词在所述原始数据中出现的频率,包括:
[0052]统计模块,用于统计每个关键词在原始数据中出现的频次;
[0053]统计模块,还用于统计原始数据中所有词条数目的总和;
[0054]计算模块,还用于将每个关键词在原始数据中出现的频次与原始数据中所有词条数目的总和的比值作为每个关键词在原始数据中出现的频率。
[0055]可选地,获取模块在根据所述默克尔路径以及内容寻址,从存储扇区中获取所述关键词对应的加密数据之前,装置还包括:获取模块,还用于获取关键词的加密数据;
[0056]存储模块,用于将加密数据存储至存储扇区。
[0057]可选地,在获取模块获取关键词的加密数据之前,装置还包括:获取模块,还用于获取目标数据,目标数据带有数据所有者的加密签名;
[0058]切片模块,用于对原始数据进行切片,形成多个第二预设字节长度的切片数据;
[0059]打包模块,用于将多个切片数据打包成多个数据包;
[0060]计算模块,还用于将每个切片数据的第二预设字节长度带入哈希函数,计算其哈希值;
[0061]生成模块,还用于根据计算得到的所有切片数据的哈希值以及预设的默克尔树的算法,生成哈希列表;
[0062]计算模块,还用于将所有数据包以及对应的哈希列表带入证明电路进行加密计算得到第三预设字节长度的带有数据所有者签名的加密数据。
[0063]可选地,上述解密模块本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种加密数据的搜索方法,其特征在于,包括:接收用户输入的关键词;遍历预先构建好的字典树,从所述字典树中确定与所述关键词对应的默克尔路径以及内容寻址;根据所述默克尔路径以及内容寻址,从存储扇区中获取所述关键词对应的加密数据;解密所述加密数据,得到目标数据。2.根据权利要求1所述的加密数据的搜索方法,其特征在于,在所述遍历预先构建好的字典树,从所述字典树中确定与所述关键词对应的默克尔路径以及内容寻址之前,所述方法还包括:获取原始数据,所述原始数据中包括目标数据;对所述原始数据进行拆分,形成多个具有不同内容寻址的第一预设字节长度的数据元,其中,每个所述数据元中包括一个关键词;将每个数据元的第一预设字节长度带入哈希函数,计算其哈希值;根据计算得到的所有数据元的所述哈希值以及预设的默克尔树构建规则,构建默克尔树;基于所述默克尔树,生成所述每个所述关键词对应的默克尔路径。3.根据权利要求2所述的加密数据的搜索方法,其特征在于,所述方法还包括:计算每个所述关键词在所述原始数据中出现的频率;根据所述每个关键词的频率,将所述每个关键词倒排组成一个字典树,所述字典树包括多个关键词,以及关键词对应的默克尔路径和内容寻址。4.根据权利要求2所述的加密数据的搜索方法,其特征在于,所述计算每个所述关键词在所述原始数据中出现的频率,包括:统计所述每个关键词在原始数据中出现的频次;统计所述原始数据中所有词条数目的总和;将所述每个关键词在原始数据中出现的频次与所述原始数据中所有词条数目的总和的比值作为所述每个关键词在原始数据中出现的频率。5.根据权利要求1所述的加密数据的搜索方法,其特征在于,在所述根据所述默克尔路径以及内容寻址,从存储扇区中获取所述关键词对应的加密数据之前,所述方法还包括:获取关键词的加密数据;将所述加密数...

【专利技术属性】
技术研发人员:刘肖赵思远方有轩辛艳双龙春华曹树鹏赖思为
申请(专利权)人:中国移动通信集团有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1