论文部分内容阅读
近年来,伴随着计算机网络技术,存储技术等高速发展,继分布式计算,并行计算,网格计算之后,云计算技术开始逐渐成为学术界和工业界广泛关注的主流技术。云计算技术,将传统的信息技术资源进行整合与共享,使用户可以按需使用网络资源,极大地降低了用户的计算和存储成本。并且由于云计算的虚拟化特点,每个用户都能享受独立的高质量服务。云计算带来的这些便利吸引着越来越多的个人用户或企业用户加入,这使得云端数据快速增长。由于云服务商大多属于商业性质的私立企业,在提供服务的同时,可能出于某种商业目的窃取用户隐私。因此,我们不仅关注云计算带来的存储和计算便利,更要意识到,公有云存储环境下,用户数据隐私所面临的安全威胁。隐私数据加密是防止隐私泄露的重要手段,但是这使得基于关键词的搜索受到挑战,因此研究可搜索加密技术成为迫切的现实需要。 本文以可搜索加密技术为基础,围绕公有云存储环境下密文的多关键词搜索这一主题进行研究,调研了国内外研究现状,并针对其中遇到的问题,提出以下两个解决方案。 (1)对密文模糊关键词搜索进行研究。支持模糊关键词搜索的可搜索加密技术具有一定的容错能力,更符合现实搜索环境,因为尽管用户输入的关键词存在小幅度的拼写错误,方案仍然能为用户快速提供正确的搜索结果。然而,现有的模糊关键词密文搜索方案效率较低,而且不支持文件的动态更新。针对以上问题,本文提出一个在加密云数据中高效动态的多关键词模糊搜索方案,能够实现多关键词的模糊搜索,并且支持文件的动态更新。方案使用局部敏感哈希和布隆过滤器生成多个索引向量和查询向量。基于这些索引向量,构造了一棵平衡二叉树作为整个文件集的索引。另外,通过引入贪心深度优先搜索算法,在构造的索引树上快速搜索相关文件,搜索效率与原始的模糊搜索方案相比得到进一步提升。我们使用了k-NN问题中的安全内积方法来加密索引向量和查询向量,设计两个方案分别适应于两个不同级别的安全模型,并就方案的安全性分别作了分析证明。最后,与其他相关的方案作了综合的比较分析,并实施大量实验,结果表明,方案的搜索效率较之前的研究,有明显提升。 (2)对中心关键词排序搜索进行研究。搜索效率,准确性,以及安全性是衡量关键词搜索方案的重要指标。现有的多关键词密文搜索方案,采用了各种索引结构,如倒排索引,基于树的索引等来提高搜索效率;通过加密算法,以及盲存储等提高安全性。然而,在提高准确性上,没有充分考虑搜索关键词的重要性和语义关联。针对这个问题,本文提出了一个基于两级索引的中心关键词排序搜索方案。方案采用倒排索引结合前向索引的方式组成两级索引,使用关键词权值算法为多个搜索关键词计算关键词权值,将权值最大的作为中心关键词。首先在倒排索引中筛选文件集,缩小搜索范围,然后在前向索引中用查询向量与索引向量作内积计算,得到目标文件集。以这种方式确保了搜索结果中必包含中心关键词,从而提高了准确性,另外,通过第一步在倒排索引上筛选,减少了大量的向量内积计算过程,从而提高了搜索效率。至于安全性,倒排索引采用了伪随机函数和对称加密算法加密,前向索引采用了k-NN问题中的安全内积方法加密,文件集使用对称加密算法加密。方案在提高搜索效率和准确性的同时,也保证了用户数据和查询的隐私不被泄露。