论文部分内容阅读
近年来,包括云计算在内的信息技术发展迅猛,为了缩减成本,越来越多的用户将数据库服务迁移到了云端。同时,有关数据库的敏感数据泄露的事件在世界范围内频繁发生,使得数据库安全逐渐受到广泛的关注。一方面,攻击者可以利用系统漏洞入侵服务器,直接窃取存放在硬盘中的数据库的明文内容;另一方面,云服务提供商可以在用户不知情的情况下窥探用户的敏感数据。因此,传统的数据库安全技术如身份认证、访问控制等已经无法应对现有的安全威胁,目前,数据库加密是一种充满前景的解决方案。然而,现有的数据库加密方案主要采用了保序加密或揭序加密用于支持密文状态下的范围查询功能,这使得明文部分内容泄露无法避免。为了提升数据库加密的安全性,同时保障数据库的性能,本文基于ASPE(Asymmetric Scalar-product-Preserving Encryption)和SGX(Software Guard Extensions)对数据库加密进行了研究,主要工作内容如下:(1)本文提出一种基于ASPE的数据库分层加密方案,在该方案中数据库加密分为三层:安全加密层、范围加密层和密文索引层。在安全加密层中,数据被概率性对称密码算法加密,兼具了语义安全性和加解密正确性;在范围加密层中,数据被ASPE加密,相比于使用保序加密或揭序加密的数据库加密方案,范围加密层的密文提供高效的范围查询和等值查询功能的同时,不会泄露明文任意一比特,并且可以抵抗离线攻击;在密文索引层,该方案在ASPE的密文基础上建立了树状索引,能够将密文查询的时间复杂度降低到o(log n)。该方案在保护数据库中数据机密性的同时,计算开销和存储开销都能有效降低。(2)本文提出一种基于SGX的数据库加密方案,在该方案中,所有数据都被概率性对称密码算法加密,可以达到语义安全级别。为了支持密文之间的计算,并降低可信计算基础,我们利用SGX构造了一系列密文计算部件,允许云服务器以黑盒的方式访问这些部件。同时,为了限制云服务器访问这些部件的能力,我们又提出了一种基于布隆过滤器的保障数据新鲜性的方法。此外,我们首次结合了决策树,为数据库提供了分类服务,丰富了密文数据库的功能。该方案能够有效地保障数据库中数据的机密性和新鲜性,降低可信计算基础,提供丰富的功能,并且兼具出色的性能。