关键词:
加密数据库
SGX
密文检索
可信计算
远程认证
摘要:
数据库是支撑许多计算机系统的基础设施。数据库中存储的机密信息一旦被非法泄露,往往会造成重大经济损失和不良的社会影响。外部黑客入侵和恶意的内部人员泄密是数据库中的机密信息面临的主要安全威胁。密文数据库方案是应对这些安全威胁的有效措施,此类方案通过对数据库中的内容进行加密,防止数据库遭受内外攻击导致的数据泄露。通过对现有的密文数据库方案进行研究和分析可以发现,现有的密文数据库方案仍存在多种问题,包括:部署困难,需要对现有系统进行较多改造,性能受限于客户端算力;部署的中间件缺乏有效的安全保护机制,容易成为攻击的突破口,通常只能假设其可信;难以兼顾安全性和效率,采用的加密算法不够成熟高效,导致不具有实用性。因此,本文针对现有研究中存在的不足进行了改进,主要研究工作包括:(1)对现有的密文数据库方案、密文数据库检索技术进行了总结,将密文数据库方案归纳为三种类型,并分析了每种类型的优缺点,随后对基于代理架构的CryptDB和基于SGX(软件防护扩展)技术的CryptSQLite这两种较为典型的密文数据库方案进行了具体的介绍,并分析总结了其优缺点。(2)针对现有方案存在的部署困难、无法保证中间件安全的问题,本文通过引入SGX可信计算技术,提出了一种基于SGX可信代理架构的密文数据库框架。该框架通过SGX隔离机制,将可能泄露明文或密钥的操作转移到可信的安全区中执行;采用SGX远程认证机制,使用户能够确认代理端安全可信;使用SGX密封功能,确保密钥在持久化保存过程中无法被窃取。(3)针对现有方案存在的密文查询效率较低的问题,本文在所提密文数据库框架的基础上,设计了一种基于动态分区的密文索引策略。该策略通过在每次查询时进行分区标记,从而减少后续查询时的解密数量,提高查询效率;同时将分区信息保存在SGX安全区内,以避免分区信息泄露查询隐私。(4)对本文提出的方案进行了实现,并进行了功能和性能测试。实验测试表明,本文所提的密文数据库架构具有可行性,在保证安全性的前提下,能够保持较高的运行效率;本文所提的密文索引策略在多数情况下性能优于现有的基于保序加密的密文索引策略。