一种云网络中面向加密云数据多关键词匹配排序搜索方法技术

技术编号:19009208 阅读:62 留言:0更新日期:2018-09-22 09:04
本发明专利技术公开一种云网络中面向加密云数据多关键词匹配排序搜索方法,该方法采用多关键词的形式建立索引,使得从一篇文档中提取的多个关键词通过综合评分算法映射到索引的一个维度上,同时在搜索过程中采用匹配得分算法,这种算法结合综合评分算法使得搜索结果能够根据匹配类型和匹配关键词的多少来进行排序,因此本发明专利技术的方法减少了索引存储开销,排序精度高,且加密和搜索效率高。

A multi keyword matching and ranking search method for encrypted cloud data in cloud network

The invention discloses a multi-keyword matching sorting search method for encrypted cloud data in a cloud network. The method adopts the form of multi-keyword to establish an index, so that multiple keywords extracted from a document are mapped to a dimension of the index through a comprehensive scoring algorithm, and the matching score is used to calculate the search process. The algorithm combines the comprehensive scoring algorithm to enable the search results to be sorted according to the matching type and the number of matching keywords, so the method of the invention reduces the index storage overhead, has high sorting precision, and has high encryption and search efficiency.

【技术实现步骤摘要】
一种云网络中面向加密云数据多关键词匹配排序搜索方法
本专利技术涉及云网络中加密数据排序检索领域,特别涉及一种云网络中面向加密云数据多关键词匹配排序搜索方法。
技术介绍
为了节省本地存储开销,越来越多的人选择将私人数据存放在不可信的远程服务器中。然而云存储环境存在着潜在的风险,近年来数据泄露事件屡见不鲜,很多人为了利用便捷的云服务,只好将自己的隐私数据加密后上传到云端。尽管加密增大数据利用难度,但却可以保护隐私数据的安全性。在不可信的云环境下,很多学者已经针对不同的云存储服务问题提出了自己的解决方案。他们的工作集中在设计一个可搜索的加密索引上,这种索引能够对服务器隐藏文档的信息,并且只能通过特定的陷门进行运算。可搜索加密的索引方式可以是通过关键词映射生成的布隆过滤器,也可以是反映关键词重要程度的索引向量。但是这些可搜索加密方案存储开销大并且搜索精度较低。在可搜索加密过程中,寻找一种能够满足用户准确查询的方案尤为困难。虽然现在已经有很多支持多关键词查询的可搜索加密方法,但是它们没有考虑到提取的关键词具有模糊性和多意性。现有的方法评判一个关键词对于一篇文档重要程度尚不够完善,并且当从文档中提取关键词数量较多时,必然会造成巨大的索引开销,进而影响加密和检索效率。针对搜索结果缺失或不完整问题,很多学者提出了模糊关键词搜索和排序搜索方案。这些方案很大程度上丰富了搜索结果,但是返回的结果往往与用户的搜索意图不符。众所周知,在明文文档查询过程中通过短语查询方法被广泛应用并取得了较好的查询效果。最近,很多学者开始将以短语或连续关键词查询的方法运用在密文搜索系统中。相比于多关键词或联合关键词密文查询方法,支持短语查询的可搜索加密方式能获得更高的查询精度。但是随着从文档中提取词语数量增多,短语查询将会造成巨大的计算开销,并且与词语数量呈线性增长趋势。因此寻找一种既能降低计算量又能准确返回搜索结果的查询方案,已经是一个亟待解决的问题。
技术实现思路
本专利技术针对现有技术的不足提出一种云网络中面向加密云数据多关键词匹配排序搜索方法,该方法更加注重查询请求中关键词与词典集中关键词的匹配关系,并且综合考虑每一种匹配情况,使查询结果更贴近用户的真实需求,具体技术方案如下:一种云网络中面向加密云数据多关键词匹配排序搜索方法,其特征在于,该方法包括如下步骤:S1:设从第i篇文档中提取的关键词组成的集合为gi,所有文档的关键词集组成的集合记为G,由G中所有不重复的元素组成的集合记为词典集D,记dj为词典集D中第j个关键词词典,计算gi∩dj中第b个关键词vi,b的归一化词频TF(vi,b):其中,wi,k表示第i篇文档中提取的第k个关键词,fi,k和fi,b分别表示关键词wi,k和vi,b在第i篇文档中出现的次数。S2:根据数据所有者提供的词典集D中关键词词典的个数n,创建一个n维的索引向量索引向量的第j(j=1,2,...,n)维是一个关键词词典dj(j=1,2,...,n)中的所有关键词在第i篇文档Fi中的综合评分CS,所述的综合评分CS的计算过程如下:(a)设定综合评分CS的初始值CS=0;给定参数α和qα,记{αb}是首项为α公比为qα的等比数列;(b)给定gi和dj,并记gi∩dj中有y个元素;(c)当gi=dj时,CS=IMAX_SCORE,转(f);否则b=0转(d);其中,IMAX_SCORE为最高综合评分;(d)当b=y时,转(f);否则b=b+1,转(e);(e)如果b=1,CS1=TF(vi,b),α1=α,转(d);如果b>1,则CSb=CSb-1+(TF(vi,b)+αb-1),并使αb=αb-1qα,转(d);(f)输出CS;S3:将n维的索引向量扩展到n+u维,并将其设置成服从同一均匀分布U(μ-c,μ+c)的随机数ε;然后再扩展至n+u+1维,形成并将最后一维设置成常数1;S4:生成索引和查询请求的两个加密密钥M1和M2,以及对索引和查询请求进行随机分割的分割指示器S,其中,M1和M2是(n+u+1)×(n+u+1)维随机可逆矩阵,S∈{0,1}n+u+1,n是词典集中关键词词典的总数,u+1是扩展的维度;S5:根据分割指示器S的值对扩展后的索引随机分割成和分割规则如下,当S[j]等于0时,和设置成任意两个不相等的随机数,且它们的和等于当S[j]等于1时,和设置成两个相等的数且都等于S6:用密钥M1和M2对分割后的索引和进行加密,最终生成加密索引S7:设查询时输入的关键词构成的集合记为e,词典集D中第j个关键词词典仍记为dj,则计算dj∩e中第b个关键词vj,b的归一化反词频其中,n表示词典总数,Ik和Ib分别表示词典集D中包含关键词wj,k和vj,b的词典数。S8:根据授权用户输入的查询关键词创建一个n维的查询请求的第j(j=1,2,...,n)维是查询关键词集e与对应的关键词词典dj(j=1,2,...,n)的匹配得分MS,MS具体计算过程如下:(a)设定匹配得分MS的初始值MS=0;给定参数β和qβ,记{βb}是首项为β公比为qβ的等比数列;(b)给定e和dj,并记dj∩e中有y个元素;(c)当e=dj时,MS=QMAX_SCORE,转(f);否则b=0转(d);其中,MS=QMAX_SCORE为最高匹配得分;(d)当b=y时,转(f);否则b=b+1,转(e);(e)如果b=1,MS1=TF(vj,b),β1=β,转(d);如果b>1,则MSb=MSb-1+(IDF(vj,b)+βb-1),并使βb=βb-1qβ,转(d);(f)输出MS;S9:对查询请求从n维扩展到n+u维,并从中随机选出z个位置设置成1,其余位置设置成0;然后乘以随机数r;最后将扩展至n+u+1维,并将其设置成另一随机数t;S10:根据分割指示器S的值对扩展后的查询请求随机分割成和分割规则如下:如果S[j]等于1,和设置成任意两个不相等的随机数,且它们的和等于如果S[j]等于0,和设置成两个相等的数,且都等于S11:对分割后的查询请求和加密生成陷门T,S12:将授权用户输入的查询关键词生成陷门后提交给云服务器进行搜索,即计算查询陷门与每个索引向量的安全内积,然后根据内积数值的大小对搜索结果进行排序,并将得分较高的前k个结果返回给授权用户,云服务器执行搜索过程如下:优选地,计算CS时的初始区分参数α∈(T,1),区分参数公比qα∈(1.2,1.5),完全匹配最高得分设置为IMAX_SCORE∈(α·(qα)N,10ε),其中,T为gi(i=1,2,...,m)中关键词的最大归一化词频,N为gi(i=1,2,...,m)中包含关键词的最大数量,ε为索引维度扩展时引入的服从均匀分布U(μ-c,μ+c)的随机数。优选地,计算MS时的初始区分参数β∈(I,1),区分参数公比qβ∈(1.2,1.5),完全匹配最高得分QMAX_SCORE∈(β·(qβ)N,10ε),其中,I为dj(j=1,2,...,n)中关键词的最大归一化反词频,N为dj(j=1,2,...,n)中包含关键词的最大数量,ε为索引维度扩展时引入的服从均匀分布U(μ-c,μ+c)的随机数。本专利技术的有益效果:第一、本专利技术在创建索引过程中首次提出多本文档来自技高网
...
一种云网络中面向加密云数据多关键词匹配排序搜索方法

【技术保护点】
1.一种云网络中面向加密云数据多关键词匹配排序搜索方法,其特征在于,该方法包括如下步骤:S1:设从第i篇文档中提取的关键词组成的集合为gi,所有文档的关键词集组成的集合记为G,由G中所有不重复的元素组成的集合记为词典集D,记dj为词典集D中第j个关键词词典,计算gi∩dj中第b个关键词vi,b的归一化词频TF(vi,b):

【技术特征摘要】
1.一种云网络中面向加密云数据多关键词匹配排序搜索方法,其特征在于,该方法包括如下步骤:S1:设从第i篇文档中提取的关键词组成的集合为gi,所有文档的关键词集组成的集合记为G,由G中所有不重复的元素组成的集合记为词典集D,记dj为词典集D中第j个关键词词典,计算gi∩dj中第b个关键词vi,b的归一化词频TF(vi,b):其中,wi,k表示第i篇文档中提取的第k个关键词,fi,k和fi,b分别表示关键词wi,k和vi,b在第i篇文档中出现的次数。S2:根据数据所有者提供的词典集D中关键词词典的个数n,创建一个n维的索引向量索引向量的第j(j=1,2,...,n)维是一个关键词词典dj(j=1,2,...,n)中的所有关键词在第i篇文档Fi中的综合评分CS,所述的综合评分CS的计算过程如下:(a)设定综合评分CS的初始值CS=0;给定参数α和qα,记{αb}是首项为α公比为qα的等比数列;(b)给定gi和dj,并记gi∩dj中有y个元素;(c)当gi=dj时,CS=IMAX_SCORE,转(f);否则b=0转(d);其中,IMAX_SCORE为最高综合评分;(d)当b=y时,转(f);否则b=b+1,转(e);(e)如果b=1,CS1=TF(vi,b),α1=α,转(d);如果b>1,则CSb=CSb-1+(TF(vi,b)+αb-1),并使αb=αb-1qα,转(d);(f)输出CS;S3:将n维的索引向量扩展到n+u维,并将其设置成服从同一均匀分布U(μ-c,μ+c)的随机数ε;然后再扩展至n+u+1维,形成并将最后一维设置成常数1;S4:生成索引和查询请求的两个加密密钥M1和M2,以及对索引和查询请求进行随机分割的分割指示器S,其中,M1和M2是(n+u+1)×(n+u+1)维随机可逆矩阵,S∈{0,1}n+u+1,n是词典集中关键词词典的总数,u+1是扩展的维度;S5:根据分割指示器S的值对扩展后的索引随机分割成和分割规则如下,当S[j]等于0时,和设置成任意两个不相等的随机数,且它们的和等于当S[j]等于1时,和设置成两个相等的数且都等于S6:用密钥M1和M2对分割后的索引和进行加密,最终生成加密索引S7:设查询时输入的关键词构成的集合记为e,词典集D中第j个关键词词典仍记为dj,则计算dj∩e中第b个关键词vj,b的归一化反词频其中,n表示词典总数,Ik和Ib分别表示词典集D中包含关键词wj,k和vj,b的词典数。S8:根据授权用户输入的查询关键词创建一个n...

【专利技术属性】
技术研发人员:刘良桂孙辉贾会玲张宇
申请(专利权)人:浙江理工大学
类型:发明
国别省市:浙江,33

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

1