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

一种不可信云计算环境中支持动态验证的模糊查询加密方法技术

技术编号:15542427 阅读:98 留言:0更新日期:2017-06-05 11:22
本发明专利技术公开了一种不可信云计算环境中支持动态验证的模糊查询加密方法,实现了云计算环境中用户查询隐私的保护,提高了云计算环境中加密数据的查询体验。该方法通过编辑距离来定义关键词之间的相似度,利用通配符构造模糊关键词集,基于倒排索引构造安全索引,使得用户能够进行模糊关键词的查询。利用可验证技术,构造可验证集合验证服务器是否篡改查询结果,验证云服务器返回的查询结果是否正确和完整。针对云计算环境中用户需要大量更新数据的问题,实现了数据的高效更新。该方法支持用户同时进行模糊查询、动态更新加密数据、验证查询结果的正确性和完整性,在保护数据隐私的前提下,提升了用户的查询体验。

A fuzzy query encryption method supporting dynamic verification in unreliable cloud computing environment

The invention discloses a fuzzy support dynamic verification of trusted cloud computing environment in the query encryption method to achieve the user query privacy protection in cloud computing environment, improve the experience of querying the encrypted data in the cloud computing environment. This method defines the similarity between keywords by editing distance, constructs fuzzy keyword sets by using wildcards, and constructs security index based on inverted index, which enables users to query fuzzy key words. A verifiable set is constructed using verifiable techniques to verify whether the server tampered with the query results and to verify whether the query results returned by the cloud server are correct and complete. In order to solve the problem that users need to update a lot of data in the cloud computing environment, the data is updated efficiently. The method supports the user to do the fuzzy query, update the encrypted data dynamically, verify the correctness and integrity of the query results, and improve the user's query experience under the premise of protecting data privacy.

【技术实现步骤摘要】
一种不可信云计算环境中支持动态验证的模糊查询加密方法
本专利技术涉及计算机科学与
,特别涉及一种不可信云计算环境中支持动态验证的模糊查询加密方法。
技术介绍
随着云计算的快速发展,可查询加密方案逐渐获得人们的关注和认可。大量的用户通过云盘上传个人文件,然而人们在享用云计算服务带来便利的同时,也面临着敏感信息泄露的风险。在云计算环境中,用户失去了对数据的直接控制权。为了保护用户的隐私信息不被云破解,很多用户会选择将个人的数据加密之后上传。用户需要在加密的数据集上进行查询,而明文的信息查询方法无法适用于加密数据,因此可查询加密方法成为了研究的热点问题。可查询加密方法可按照不同的功能和设定条件进行划分。模糊查询指的是在用户输入的查询请求存在拼写错误时云服务器仍可以返回正确的查询结果。另外,不可信云服务器可能会由于病毒或意外而出现故障,甚至会为了节省存储空间和计算资源而恶意的删除或修改用户的加密数据,或者直接篡改用户的查询结果。而支持验证的可查询加密方法可以验证文档和查询结果的完整性,保护用户的查询结果不被篡改。在实际生活中,用户将大量的数据外包到云存储后,用户可能需要动态频繁地更新数据,如插入、删除、修改数据,此时数据更新成为了一个重要的问题。现有的可查询加密方法都只是单独针对模糊查询、可验证查询或动态更新等问题,而没有方法能够同时支持加密数据的模糊查询、验证结果和动态更新。因此需要针对不可信云计算环境,提供一种支持动态验证的模糊查询加密方法。
技术实现思路
本专利技术提供了一种不可信云计算环境中支持动态验证的模糊查询加密方法,该方法支持用户对加密数据进行模糊查询、验证结果以及动态更新,可以保护用户的数据隐私,并方便用户进行查询、验证和更新。一种不可信云计算环境中支持动态验证的模糊查询加密方法,包括以下几个步骤:步骤1:数据拥有者利用密钥生成算法,获得私钥集合k和公钥集合pk=(N,g),然后使用对称加密算法和私钥集合k将明文文档集合D加密,生成加密文档集合步骤2:数据拥有者依据明文文档中的每个关键词和编辑距离构建关键词模糊集合和对应的查询陷门Ti,利用查询陷门构建模糊关键词的安全查询索引Index,并对加密文档和对应的安全查询索引采用RSA累加器计算验证累加值;同时,将密文集合安全查询索引Index和公钥集合pk上传至云服务器;通过模糊关键词集生成算法,输入关键词w和编辑距离ed,输出模糊关键词集Sw。步骤3:数据使用者发出查询请求关键词wa,并依据查询请求关键词生成查询请求关键词模糊集合数据拥有者接收到查询请求关键词模糊集合后,计算该查询请求关键词的查询陷门,并将查询陷门返回给数据使用者;对于查询请求wa,首先数据使用者通过FuzzySet算法计算出wa对应的模糊关键词集并将发送到数据拥有者。接收后,数据拥有者通过Trapdoor算法计算查询陷门并将Ta返回给数据使用者。云服务器从数据使用者处接收到查询陷门Ta后,服务器将与查询索引进行匹配,查找到获得索引然后服务器再利用查询辅助信息计算解密得到Ia。令Ia=(e1,...,en),最终服务器计算出查询结果步骤4:数据使用者将从数据拥有者发送来的查询陷门Ta发送至云服务器,从云服务器中存储的安全查询索引集合中寻找与查询陷门Ta匹配的安全查询索引,并从匹配的安全查询索引中提取对应的加密索引再利用加密索引获取对应的加密文档;步骤5:对步骤4获得的加密文档和对应的安全查询索引计算验证累加值,得到文档验证证据和索引验证证据并将获得的加密文档的查询结果和验证证据发送至数据使用者;对于所有不在查询结果中的文档即ej=0,先利用无碰撞哈希函数H:{0,1}*→{0,1}σ生成文档哈希值,再通过质数生成函数P(·)生成一个质数。再利用密钥生成算法生成的公钥集合(N,g)计算文档的验证证据:对于不包含查询关键词wa的索引即i≠a。先利用无碰撞哈希函数H:{0,1}*→{0,1}σ生成索引哈希值,再通过质数生成函数P(·)生成一个质数。再利用密钥生成算法生成的公钥集合(N,g)计算索引的验证证据:步骤6:对步骤5获得的查询结果和验证证据进行验证,若验证通过,则允许数据使用者下载步骤4获得的加密文档,并从云服务器中获取私钥集合k对加密文档进行解密。进一步地,所述安全查询索引的构建步骤如下:步骤1):采用Trapdoor算法对明文文档中每个关键词分别构造一个查询陷门Ti,其中,表示关键词模糊集合的加密集合,表示利用伪随机函数fk和密钥k0加密关键词模糊集合中的关键词wi′,表示取前128位;是由属于文档中的关键词wi采用FuzzySet算法生成的集合;表示查询辅助信息,表示利用伪随机函数fk和密钥k1加密关键词wi,表示取前n位;步骤2):将查询辅助信息和第i行索引Ii进行异或运算,获得加密后的第i行索引所有的关键词wi∈W,获得加密索引为Ii代表I的第i行,I为m×n的二元矩阵,I={Ii,j},关键词wi包含在文档dj中,则Ii,j=1;否则Ii,j=0;步骤3):使用随机排列函数γ作用于{1,...,m},m为关键词数量,获得安全查询索引集合进一步地,所述对加密文档和对应的安全查询索引采用RSA累加器计算验证累加值的具体过程如下:文档验证累加值索引验证累加值代表加密后的第i行索引的第j位;其中,P(·)是一个质数生成函数,H:{0,1}*→{0,1}σ是一个无碰撞哈希函数,m为关键词数量,n为明文文档数量,(N,g)为利用密钥生成算法生成的公钥集合。所述对步骤5获得的查询结果和验证证据进行验证的具体过程如下:步骤A:对于查询结果中包含的所有文档利用无碰撞哈希函数H生成文档哈希值,再通过质数生成函数P(·)生成一个质数xj,步骤B:从数据拥有者处获得验证累加值从云服务器处获得验证证据判断是否相等,若相等,则查询结果正确且完整,验证通过,若不相等,则验证失败,退出整个查询加密过程;步骤C:根据查询结果重建查询关键词wa对应的索引行Ia,通过Ia和查询辅助信息重建出加密后的索引行步骤D:对于所有的1≤j≤n,利用H和P(·)生成一个质数zj,步骤E:判断与是否相等,若相等,则索引未被篡改,验证通过,若不相等,则退出整个查询加密过程。进一步地,在动态云存储环境中,数据拥有者按照以下步骤进行任意的增加、删除或修改文档,实现动态数据更新:1)增加一个文档dn+1首先对矩阵索引新增一列,如果文档dn+1中包含关键词文档wi,令Ii,n+1=1,否则令Ii,n+1=0;其次,数据拥有者首先使用加密算法将文档dn+1加密成对于1≤i≤m,计算再计算出bn+1=(bγ(1),...,bγ(m)),其中,γ(1)...γ(m)为随机排列函数γ作用于{1,...,m}得到,数据拥有者将发送到云服务器;对于1≤i≤m,云服务器将安全加密索引更新为其中“||”代表连接词;最后,计算出将更新为更新为云服务器更新密文集合、安全查询索引和验证累加值;2)删除文档dj云服务器收到数据拥有者发出的文档dj删除请求后,计算计算累加值云服务器删除密文将累加值更新为3)修改:数据拥有者将文档dj修改为d′j,且dj和d′j拥有相同的关键词;云服务器收到数据拥有者发出的修改请求后,计算和其中是d′j的密文;计本文档来自技高网...
一种不可信云计算环境中支持动态验证的模糊查询加密方法

【技术保护点】
一种不可信云计算环境中支持动态验证的模糊查询加密方法,其特征在于,包括以下几个步骤:步骤1:数据拥有者利用密钥生成算法,获得私钥集合k和公钥集合pk=(N,g),然后使用对称加密算法和私钥集合k将明文文档集合D加密,生成加密文档集合

【技术特征摘要】
1.一种不可信云计算环境中支持动态验证的模糊查询加密方法,其特征在于,包括以下几个步骤:步骤1:数据拥有者利用密钥生成算法,获得私钥集合k和公钥集合pk=(N,g),然后使用对称加密算法和私钥集合k将明文文档集合D加密,生成加密文档集合步骤2:数据拥有者依据明文文档中的每个关键词和编辑距离构建关键词模糊集合和对应的查询陷门Ti,利用查询陷门构建模糊关键词的安全查询索引Index,并对加密文档和对应的安全查询索引采用RSA累加器计算验证累加值;同时,将密文集合安全查询索引Index和公钥集合pk上传至云服务器;步骤3:数据使用者发出查询请求关键词wa,并依据查询请求关键词生成查询请求关键词模糊集合数据拥有者接收到查询请求关键词模糊集合后,计算该查询请求关键词的查询陷门,并将查询陷门返回给数据使用者;步骤4:数据使用者将从数据拥有者发送来的查询陷门Ta发送至云服务器,从云服务器中存储的安全查询索引集合中寻找与查询陷门Ta匹配的安全查询索引,并从匹配的安全查询索引中提取对应的加密索引再利用加密索引获取对应的加密文档;步骤5:对步骤4获得的加密文档和对应的安全查询索引计算验证累加值,得到文档验证证据和索引验证证据并将获得的加密文档查询结果和验证证据发送至数据使用者;步骤6:对步骤5获得的查询结果和验证证据进行验证,若验证通过,则允许数据使用者下载步骤4获得的加密文档,并从云服务器中获取私钥集合k对加密文档进行解密。2.根据权利要求1所述的方法,其特征在于,所述安全查询索引的构建步骤如下:步骤1):采用Trapdoor算法对明文文档中每个关键词分别构造一个查询陷门Ti,其中,表示关键词模糊集合的加密集合,表示利用伪随机函数fk和密钥k0加密关键词模糊集合中的关键词w′i,表示取前128位;是由属于文档中的关键词wi采用FuzzySet算法生成的集合;表示查询辅助信息,表示利用伪随机函数fk和密钥k1加密关键词wi,表示取前n位;步骤2):将查询辅助信息和第i行索引Ii进行异或运算,获得加密后的第i行索引所有的关键词wi∈W,获得加密索引为Ii代表I的第i行,I为m×n的二元矩阵,I={Ii,j},关键词wi包含在文档dj中,则Ii,j=1;否则Ii,j=0;步骤3):使用随机排列函数γ作用于{1,...,m}...

【专利技术属性】
技术研发人员:罗跃逸朱小玉袁修贵
申请(专利权)人:中南大学
类型:发明
国别省市:湖南,43

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

1