[发明专利]一种支持可搜索加密的安全索引结构及其构造方法在审
申请号: | 201710418493.4 | 申请日: | 2017-06-06 |
公开(公告)号: | CN107273467A | 公开(公告)日: | 2017-10-20 |
发明(设计)人: | 路松峰 | 申请(专利权)人: | 南京搜文信息技术有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F21/62 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 210000 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 支持 搜索 加密 安全 索引 结构 及其 构造 方法 | ||
1.一种支持可搜索加密的密文索引结构,其特征在于,包括sys文件、bf文件、doc文件和seg文件,所述sys文件、bf文件、doc文件和seg文件包含所有索引信息及文档信息;其中:
sys文件包括生成索引时伪随机函数要用到的大素数,索引中的文档数目,bf文件的字节长度,doc文件的字节长度等,sys文件中还包含了一个文档信息列表,其中的每一条文档信息包括了该文档ID、seg文件编号、对应的BloomFilter串在bf文件中的偏移值、文档在doc文件中的偏移值、以及该文档的字节长度,所述BloomFilter串在bf文件中的偏移值与文档在doc文件中的偏移值在查询的时候起到了指针的作用,可以帮助快速的定位到对应的索引信息位置;
doc文件保存文档信息,每一条文档信息包括文档ID、文档名称、文档所包含的域数目、文档的字节长度以及文档包含的域信息列表,所述域信息列表中的每一条域信息包括该域的名称以及在seg文件中的偏移值,所述域在seg文件中的偏移值用来快速查找域内容;
seg文件是存放被索引内容的文件,包括了所有文档的域的内容,seg文件分成多个限定长度的文件分开存储,每个文件以“seg_x”的方式命名,x为分片文件编号,seg文件中的域信息包括域的名称,权值,是否进行索引,是否进行存储,是否进行token化,以及域的文本内容,域被标记为不存储时,则该域内容为空;
bf文件保存了各个文档所对应的Bloom Filter串,单个Bloom Filter串是一系列的01组合,在进行查询的时候,索引通过sys文件找到文档对应的Bloom Filter串在bf文件中所处的位置,将其提取出来以01检验的方式完成校验和查询。
2.根据权利要求1所述的一种支持可搜索加密的密文索引结构的构造方法,其特征在于,包括以下步骤:
1.对每一个文档建立一个Bloom Filter结构,将文档中的每一个关键字w的N个哈希值作为陷门,分别映射到m长度的点阵的N个点上,并将N个点的值全部置为1,将一篇文档中的关键词全部处理完毕之后,将Bloom Filter存储起来作为索引文件;
2.在一个文档对象中保存一个包含所有域的列表,然后遍历列表中的每一个域,为需要建立索引的域建立索引,具体包含如下步骤:
2.1) 首先对域值进行分析处理,得到它的token流,对于token流中的每一个token,通过一个伪随机函数f(token)计算其函数值S;
2.2) 通过一组哈希函数h1,h2,h3,… hn分别计算S的哈希值,得到n个哈希值h1(S), h2(S), h3(S), … hn(S);
2.3) 通过一组哈希函数h1,h2,h3,… hn分别计算S的哈希值,得到n个哈希值h1(S), h2(S), h3(S), … hn(S);
2.4) 把2.2)中的n个哈希值映射到[0, M]中的n个值,其中M是该文档的BloomFilter串的长度,这n个值就是该token所对应的陷门;
2.5)将2.3)中的n个[0, M]范围内的值对应的BloomFilter串位置置为1,若已经为1的位则不做处理;
3.所有域都按照上述步骤索引完毕后,将文档对应的BloomFilter串作为索引文件保存在磁盘中,并将文档信息及需要保存的域的内容写入索引文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京搜文信息技术有限公司,未经南京搜文信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710418493.4/1.html,转载请声明来源钻瓜专利网。