论文部分内容阅读
云计算的出现给用户带来了便利和节省了成本,因此越来越多的用户愿意将自己的数据外包到云服务器。然而由于攻击者可能试图访问敏感数据,好奇或恶意的管理员也可能会捕获和泄漏数据。为了保护用户的敏感数据,数据在外包之前应该进行加密。加密后的数据会丧失明文数据的一些特性,例如在明文上的一些传统操作(SQL查询和文档检索等)在密文上就不能执行。本文主要针对云环境下面向隐私保护的加密数据库密文查询和密文文档检索的关键问题进行深入研究,结合同态加密、保序加密和可检索加密等技术提出了一系列加密数据库密文查询算法和密文文档检索方案,并且对算法和方案的性能进行了分析。本文的主要贡献如下:(1)针对加密数据库查询的需求,设计了支持SQL查询的加密数据库模型QSDB(queryable and secure database model),对敏感数据加密,能够在经过加密的数据上执行SQL查询。通过在真实数据集上的测试,对系统的高效性和实用性进行了验证分析。(2)针对重复加密降低了查询效率的问题,提出了高效的同态保序加密算法FHOPE(efficient homomorphic order-preserving encryption),它允许云服务器在加密数据上执行复杂的SQL查询(包含了不同的运算符,例如加法、乘法、保序比较和等值比较),并且不需要重复加密。这些运算符之间是可互操作的,因此可以将它们组合在一起以形成复杂的SQL查询。实验结果表明,和现存的方案相比,FHOPE算法在计算和通信上的开销较少,适合在云环境中的加密数据上执行大批量的复杂SQL查询。(3)针对密文文档检索效率不高和检索结果不精确的问题,提出了高效和精确的可检索加密方案FASE(efficient and accurate searchable encryption),它能够支持精确的top-k多关键词检索。使用同态保序加密算法加密索引和查询向量,实现了加密索引和查询向量之间的相关性分数的安全计算,保护了排名操作的隐私。和传统方法相比,不需要向查询向量和文档向量中添加虚拟关键词,因此FASE方案的top-k检索精确度是100%。为了提高检索效率,通过文档标记向量和查询标记向量匹配,过滤掉大量无关文档,并且通过基于关键词匹配度和相关性分数的两轮排名,不仅返回了更精确的检索结果,而且进一步提高了检索效率。理论分析和实验结果显示,该方案实现了高效和精确的多关键词排名检索。(4)针对大多数方案忽略了拼写错误和关键词的语义扩展问题,提出了高效的模糊语义可检索加密方案FSSE(fuzzy semantic searchable encryption),该方案支持在云计算中对加密数据进行多关键词检索。FSSE利用关键词指纹生成算法生成关键词字典的指纹集和查询关键词的指纹,并利用汉明距离来量化关键词的相似度。基于提出的指纹生成算法和汉明距离,实现了模糊检索。此外,利用语义扩展技术对查询关键词进行扩展,计算查询关键词与查询关键词的扩展词之间的语义相似度,从而实现语义检索。为了提高检索效率,FSSE构造了倒排索引结构,并使用向量交匹配以及短路匹配操作过滤不相关的文档。理论分析和实验结果表明,该方案保证了可检索加密的安全,增强了系统的可用性,和现有方案相比更有效。