Skip to main content
QUICK REVIEW

[论文解读] StealthDB: a Scalable Encrypted Database with Full SQL Query Support

Alexey Gribov, Dhinakaran Vinayagamurthy|arXiv (Cornell University)|Nov 7, 2017
Security and Verification in Computing参考文献 46被引用 8
一句话总结

StealthDB 是一个可扩展的、支持完整 SQL 的加密数据库系统,基于 Intel SGX 构建,可支持事务工作负载且性能开销极低。它通过在硬件保护的飞地中隔离敏感操作,实现强大的安全保证,在 TPC-C 基准测试中仅导致 30% 的吞吐量下降,同时保持端到端的机密性和完整性。

ABSTRACT

Encrypted database systems provide a great method for protecting sensitive data in untrusted infrastructures. These systems are built using either special-purpose cryptographic algorithms that support operations over encrypted data, or by leveraging trusted computing co-processors. Strong cryptographic algorithms (e.g., public-key encryptions, garbled circuits) usually result in high performance overheads, while weaker algorithms (e.g., order-preserving encryption) result in large leakage profiles. On the other hand, some encrypted database systems (e.g., Cipherbase, TrustedDB) leverage non-standard trusted computing devices, and are designed to work around the architectural limitations of the specific devices used. In this work we build StealthDB - an encrypted database system from Intel SGX. Our system can run on any newer generation Intel CPU. StealthDB has a very small trusted computing base, scales to large transactional workloads, requires minor DBMS changes, and provides a relatively strong security guarantees at steady state and during query execution. Our prototype on top of Postgres supports the full TPC-C benchmark with a 30% decrease in the average throughput over an unmodified version of Postgres operating on a 2GB unencrypted dataset.

研究动机与目标

  • 设计一个安全、可扩展的加密数据库系统,支持在不可信云环境中使用完整 SQL 功能。
  • 在保持对被动和主动攻击者强大安全保证的同时,最小化性能开销。
  • 减少可信计算基(TCB),避免依赖非标准或专有的可信硬件。
  • 实现与现有 DBMS(如 PostgreSQL)的集成,且修改极少。
  • 在硬件强制加密下支持大规模事务工作负载,如 TPC-C。

提出的方法

  • 利用 Intel 软件保护扩展(SGX)创建隔离的、加密的内存飞地,保护数据和代码免受不可信操作系统和云运营商的侵害。
  • 通过将可信和不可信组件分离来设计数据库系统,仅在飞地中运行敏感操作(例如,查询处理、索引访问)。
  • 使用默克尔树确保数据完整性,并检测飞地内存中的篡改行为,每次访问增加对数级开销。
  • 通过在飞地中实现查询处理、索引查找和事务管理,支持完整的 SQL 查询执行,同时最小化侧信道泄露。
  • 通过操作批处理和减少飞地与非飞地模式之间的上下文切换来优化性能。
  • 与 PostgreSQL 轻量级集成,使现有应用程序能够透明地实现使用时加密。

实验结果

研究问题

  • RQ1是否可以基于通用 Intel CPU 和 SGX 在商品硬件上高效且安全地构建全 SQL 加密数据库,而无需大规模或非标准的可信硬件?
  • RQ2如何在保持事务工作负载强大安全保证的同时最小化性能开销?
  • RQ3在 SGX 上构建加密数据库时,受限于飞地内存的情况下,安全、功能与性能之间的权衡是什么?
  • RQ4系统是否能够扩展到大规模数据集和复杂工作负载(如 TPC-C),同时保持端到端的机密性和完整性?
  • RQ5如何减少可信计算基并避免依赖 FPGA 外壳或定制硬件等不可信组件?

主要发现

  • StealthDB 在 2GB 未加密数据集上,与未修改的 PostgreSQL 相比,平均吞吐量仅下降 30%,同时支持完整的 TPC-C 基准测试。
  • 系统在稳定状态和查询执行期间均保持强大的安全保证,保护数据免受云运营商、多租户用户和主动攻击者的侵害。
  • 通过仅依赖 Intel SGX,可信计算基被最小化,避免了对不可信 FPGA 外壳或定制硬件的依赖。
  • 系统仅需对底层 DBMS 进行少量修改,即可实现与成熟系统(如 PostgreSQL)的集成。
  • 通过精心设计飞地,最小化上下文切换,并利用默克尔树等高效数据结构保障完整性,性能开销得以保持在较低水平。
  • 原型证明了在标准 Intel CPU 上使用 SGX 实现全 SQL 支持和可扩展性是可行的,即使在 90MB 飞地内存限制下也成立。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。