当前位置: 首页 > 专利查询>安徽大学专利>正文

云环境中基于两级索引的中心关键词密文搜索方法技术

技术编号:18711683 阅读:36 留言:0更新日期:2018-08-21 22:48
本发明专利技术公开一种云环境中基于两级索引的中心关键词密文搜索方法,依次包括以下步骤:(1)数据拥有者生成密钥;(2)数据拥有者构造倒排索引并加密;(3)数据拥有者构造前向索引并加密;(4)数据用户生成中心关键词标签;(5)数据用户生成查询陷门;(6)云服务器执行两步搜索。本发明专利技术实现了中心关键词搜索,并且搜索效率高,搜索精确性高。

A ciphertext search method based on two level index in cloud computing environment

The invention discloses a two-level index based central keyword ciphertext search method in cloud environment, which comprises the following steps: (1) the data owner generates a key; (2) the data owner constructs an inverted index and encrypts it; (3) the data owner constructs a forward index and encrypts it; (4) the data user generates a central keyword label; (5) the number. The user generates query trapdoor; (6) cloud server performs two step search. The invention realizes central keyword search, and has high search efficiency and high search accuracy.

【技术实现步骤摘要】
云环境中基于两级索引的中心关键词密文搜索方法
本专利技术涉及云安全技术,具体涉及一种云环境中基于两级索引的中心关键词密文搜索方法。
技术介绍
近年来,云计算技术以其优质便捷的服务,吸引着越来越多的个人用户或企业用户租用云存储服务,这使得云端数据快速增长。由于云服务商大多属于商业性质的私立企业,在提供服务的同时,可能出于某种商业目的窃取用户隐私。因此,我们要意识到,云存储环境下,用户数据隐私所面临的安全威胁。隐私数据加密是防止隐私泄露的重要手段,但是这使得基于关键词的搜索受到挑战,因此研究可搜索加密技术成为迫切的现实需要。可搜索加密技术是云计算安全技术中重要的研究内容,它能够在保护数据隐私的前提下,提供快速的数据搜索服务,从而方便数据的使用。为了提高搜索效率,许多方案采用了不同的索引结构,如倒排索引,前向索引等。有时为了达到某种搜索功能,需要结合这几种索引,例如将倒排索引结合前向索引。在之前的多关键词搜索研究中,没有充分考虑关键词之间的语义关联,而是将这些关键词笼统地作为一个个独立的单词,而实际上我们搜索的关键词存在主次之分。例如搜索:“white,desk”,显然关键词“white”的重要性不如“desk”。前人的研究,提出中心关键词语义扩展搜索(FuZ,WuX,WangQ,etal.Enablingcentralkeyword-basedsemanticextensionsearchoverencryptedoutsourceddata[J].IEEETransactionsonInformationForensicsandSecurity,2017,12(12):2986-2997.),他们借助语法树,设计了关键词权值算法,计算每个查询关键词的权值,然后选择权值最大的关键词作为中心关键词,再进行同义词扩展。搜索时关键词的权值和逆向文档频率(IDF)嵌入查询向量中,使得搜索结果更符合用户实际的搜索意图。但是目前的相关技术方案有以下缺陷:(1)没有确保搜索结果中必包含中心关键词,虽然强调了中心关键词的权重问题,优化了搜索结果的排序,但是,会出现搜索结果中包含其他关键词而不包含中心关键词的情况;(2)一次搜索需要遍历所有的索引向量,分别计算每个索引向量与查询向量的内积,时间开销较大。
技术实现思路
专利技术目的:本专利技术的目的在于解决现有技术中存在的不足,提供一种云环境中基于两级索引的中心关键词密文搜索方法。技术方案:本专利技术的一种云环境中基于两级索引的中心关键词密文搜索方法,依次包括以下步骤:(1)数据拥有者生成密钥:数据拥有者生成密钥SK(M1,M2,S,k1,k2),其中M1,M2分别是(m+2)阶的可逆矩阵,S是(m+2)位长度的随机向量,k1,k2分别是λ位长度的对称密钥,即k1,k2←{0,1}λ;(2)数据拥有者构造倒排索引并加密;(3)数据拥有者构造前向索引并加密;(4)数据用户生成中心关键词标签;(5)数据用户生成查询陷门;(6)云服务器执行两步搜索。进一步的,所述步骤(2)的具体过程为:(21)数据拥有者从文件集F={f1,f2,…,fn}提取关键词W={w1,w2,…,wm},并使用BSBI算法生成倒排索引;(22)使用伪随机函数f(·):{0,1}λ×{0,1}λ→{0,1}λ,为倒排索引中的每一个索引关键词生成标签twi←f(wi,k1)和密钥ke←f(wi,k2);twi是指第i个关键词的标签;(23)通过AES算法,为索引关键词对应的文件标识符生成文件标签tfi←Enc(id,ke),得到加密的倒排索引I1。进一步的,所述步骤(3)的具体过程为:(31)为文件集F={f1,f2,…,fn}中的每个文件f生成一个m维的索引向量若文件f包含某关键词wx∈W,则在中第i个位置嵌入关键词wx的TF值,即(32)将向量扩展到m+2维,第m+1位填入随机数ε,第m+2位填入1,即(即一共m位长,加了两位,分别在后面填上数字ε和1);(33)通过密钥SK加密索引向量v:首先,根据随机向量S,分割索引向量v为两个向量v1,v2,如果Si=1,则v1i=v2i=vi;如果Si=0,则其中r是一个随机数;然后,v1,v2分别与矩阵M1,M2相乘,得加密的索引向量v'=(M1T·v1,M2T·v2),最后数据拥有者得到前向索引I2={v'1,v'2,…,v'n};(34)将两重索引I={I1,I2}和文件集F={f1,f2,…,fn}的密文文件集C上传至云服务器,其中,F={f1,f2,…,fn}。进一步的,所述步骤(4)的具体过程为:(41)使用StanfordParser计算每个查询关键词的权值(42)选择权值最大的关键词(记为w)作为中心关键词,利用伪随机函数f(·):{0,1}λ×{0,1}λ→{0,1}λ为中心关键词w生成标签tw。进一步的,所述步骤(5)的具体过程为:(51)构造m维查询向量其中每一维代表关键词集合中对应的关键词,初始值为0,分别将查询关键词的权值嵌入查询向量即(52)将向量扩展至m+2维,得到其中r,t是两个随机数;(53)加密查询向量q,首先,根据随机向量S,分割查询向量q,如果Si=1,则如果Si=0,则q1i=q2i=qi;然后v1,v2分别与矩阵M1-1,M2-1相乘,得加密的查询向量Q=(M1-1q1,M2-1q2);(54)将查询陷门T={tw,ke,Q}上传至云服务器。进一步的,所述步骤(6)的具体过程为:(61)云服务器根据中心关键词标签tw在倒排索引I1中匹配目标文件标签tf={tfx,tfy,…};(62)解密文件标签,得到文件标识符idx←Dec(tfx,ke),并将Q与索引向量作内积运算,得到相关性分数,并按分数将结果排序;计算如下:(63)根据文件标识符idx找出加密的目标文件,并返回给用户。有益效果:与现有技术相比,本专利技术具有以下优点:(1)本专利技术通过使用中心关键词在倒排索引上执行初次搜索,使得搜索的候选文件中必包含中心关键词,从而使搜索的结果更精确,更符合用户搜索的实际意图。(2)通过倒排索引结合前向索引,组成的两级索引结构,使每次搜索不需要再遍历所有的索引向量,只需遍历包含中心关键词的文件索引向量,从而提高了搜索的效率。附图说明图1为本专利技术的整体流程图;图2为本专利技术的功能模块示意图;图3为本专利技术的系统框架图;图4为实施例中搜索时间与文件集大小的关系示意图;图5为实施例中搜索时间与查询关键词个数的关系示意图。具体实施方式下面对本专利技术技术方案进行详细说明,但是本专利技术的保护范围不局限于所述实施例。如图1所示,本实施例中的一种云环境中基于两级索引的中心关键词密文搜索方法,依次包括以下6个步骤:(1)数据拥有者生成密钥SK(M1,M2,S,k1,k2),用于加密索引以及生成查询陷门。(2)数据拥有者构造倒排索引并加密,具体地,使用BSBI算法生成倒排索引,使用伪随机函数f(·):{0,1}λ×{0,1}λ→{0,1}λ加密其中的关键词,使用AES算法加密关键词对应的文件标识符。(3)数据拥有者构造前向索引并加密,具体地,使用MRSE算法生成索引向量,使用对称密钥SK(M1,M2,S,k1,k2)加密索引向量。(4)数据用户生成中心关键词标签,具体本文档来自技高网
...

【技术保护点】
1.一种云环境中基于两级索引的中心关键词密文搜索方法,其特征在于:依次包括以下步骤:(1)数据拥有者生成密钥:数据拥有者生成密钥SK(M1,M2,S,k1,k2),其中M1,M2分别是(m+2)阶的可逆矩阵,S是(m+2)位长度的随机向量,k1,k2分别是λ位长度的对称密钥,即k1,k2←{0,1}λ;(2)数据拥有者构造倒排索引并加密;(3)数据拥有者构造前向索引并加密;(4)数据用户生成中心关键词标签;(5)数据用户生成查询陷门;(6)云服务器执行两步搜索。

【技术特征摘要】
1.一种云环境中基于两级索引的中心关键词密文搜索方法,其特征在于:依次包括以下步骤:(1)数据拥有者生成密钥:数据拥有者生成密钥SK(M1,M2,S,k1,k2),其中M1,M2分别是(m+2)阶的可逆矩阵,S是(m+2)位长度的随机向量,k1,k2分别是λ位长度的对称密钥,即k1,k2←{0,1}λ;(2)数据拥有者构造倒排索引并加密;(3)数据拥有者构造前向索引并加密;(4)数据用户生成中心关键词标签;(5)数据用户生成查询陷门;(6)云服务器执行两步搜索。2.根据权利要求1所述的云环境中基于两级索引的中心关键词密文搜索方法,其特征在于:所述步骤(2)的具体过程为:(21)数据拥有者从文件集F={f1,f2,…,fn}提取关键词W={w1,w2,…,wm},并使用BSBI算法生成倒排索引;(22)使用伪随机函数f(·):{0,1}λ×{0,1}λ→{0,1}λ,为倒排索引中的每一个索引关键词wi∈W生成标签twi←f(wi,k1)和密钥ke←f(wi,k2);(23)通过AES算法,为索引关键词对应的文件标识符生成文件标签tfi←Enc(id,ke),得到加密的倒排索引I1。3.根据权利要求1所述的云环境中基于两级索引的中心关键词密文搜索方法,其特征在于:所述步骤(3)的具体过程为:(31)为文件集F={f1,f2,…,fn}中的每个文件f生成一个m维的索引向量若文件f包含某关键词wx∈W,则在中相应位置嵌入关键词wx的TF值,即(32)将向量扩展到m+2维,第m+1位填入随机数ε,第m+2位填入1,即(33)通过密钥SK加密索引向量v:首先,根据随机向量S,分割索引向量v为两个向量v1,v2,如果Si=1,则v1i=v2i=vi;如果Si=0,则其中r是一个随机数;然后,v1,v2分别与矩阵M1,M2相乘,...

【专利技术属性】
技术研发人员:崔杰李占飞汪美丽唐林盛蔡心宝仲红
申请(专利权)人:安徽大学
类型:发明
国别省市:安徽,34

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

1