Skip to main content
QUICK REVIEW

[论文解读] ObliDB: Oblivious Query Processing using Hardware Enclaves

Saba Eskandarian, Matei Zaharia|arXiv (Cornell University)|Oct 2, 2017
Security and Verification in Computing参考文献 45被引用 11
一句话总结

ObliDB 是一种新型数据库引擎,通过使用 Intel SGX 硬件信封,实现了通用 SQL 工作负载的端到端无迹查询处理。它结合可信执行环境与优化的无迹数据结构,以保护访问模式。在分析型工作负载上,ObliDB 相较于 Opaque 实现了 1.1–19 倍的性能提升,点查询延迟为 3–10ms,优于先前系统如 HIRB,并接近 Spark SQL 的性能表现。

ABSTRACT

Hardware enclaves such as Intel SGX are a promising technology for improving the security of databases outsourced to the cloud. These enclaves provide an execution environment isolated from the hypervisor/OS, and encrypt data in RAM. However, for applications that use large amounts of memory, including most databases, enclaves do not protect against access pattern leaks, which let attackers gain a large amount of information about the data. Moreover,the naive way to address this issue, using Oblivious RAM (ORAM) primitives from the security literature, adds substantial overhead. A number of recent works explore trusted hardware enclaves as a path toward secure, access-pattern oblivious outsourcing of data storage and analysis. While these works efficiently solve specific subproblems (e.g. building secure indexes or running analytics queries that always scan entire tables), no prior work has supported oblivious query processing for general query workloads on a DBMS engine with multiple access methods. Moreover, applying these techniques individually does not guarantee that an end-to-end workload, such as a complex SQL query over multiple tables, will be oblivious. In this paper, we introduce ObliDB, an oblivious database engine design that is the first system to provide obliviousness for general database read workloads over multiple access methods. ObliDB supports a broad range of queries, including aggregation, joins, insertions, deletions and point queries. We implement ObliDB and show that, on analytics work-loads, ObliDB ranges from 1.1-19x faster than Opaque,a previous oblivious, enclave-based system designed only for analytics, and comes within 2.6x of Spark SQL. ObliDB supports point queries with 3-10ms latency, which runs over 7x faster than HIRB, a previous encryption-based oblivious index system.

研究动机与目标

  • 解决现有系统在云数据库中对复杂、多访问方法的 SQL 工作负载缺乏端到端无迹性的关键缺陷。
  • 缓解基于硬件信封数据库中的访问模式泄露问题,尽管具备强隔离与内存加密,但该问题仍是主要安全威胁。
  • 设计一个支持通用数据库操作(包括连接、聚合、点查询和 DML)的系统,同时在所有访问方法中保持无迹性。
  • 通过为数据库工作负载优化 ORAM 和访问模式隐藏技术,降低无迹计算的性能开销。

提出的方法

  • 利用 Intel SGX 信封提供硬件隔离执行与内存加密,为安全计算提供可信基础。
  • 集成优化的无迹数据结构(如无迹 B 树和哈希表),在索引查找与数据检索过程中隐藏访问模式。
  • 设计一个查询执行引擎,在查询处理的每个阶段(包括连接算法与聚合操作符)强制实现无迹性。
  • 采用混合方法,结合硬件隔离与软件级无迹性,以最小化性能开销,同时确保安全性。
  • 实现一个查询优化器,选择能跨多张表与索引保持无迹性的访问方法与执行计划。
  • 应用性能优化技术,如批量无迹内存访问与流水线无迹操作,以减少 ORAM 相关开销。

实验结果

研究问题

  • RQ1能否构建一个通用数据库引擎,为跨多种访问方法的复杂 SQL 工作负载提供端到端无迹性?
  • RQ2在保持强安全保证的前提下,如何最小化数据库环境中无迹计算的性能开销?
  • RQ3硬件信封与无迹数据结构在多大程度上可结合使用,以在真实分析工作负载中实现安全与实际性能的平衡?
  • RQ4能否在不牺牲性能的前提下,高效支持点查询与 DML 操作的无迹查询处理?

主要发现

  • ObliDB 在一系列分析型工作负载上相较先前基于信封的无迹分析系统 Opaque 实现了 1.1–19 倍的性能提升。
  • ObliDB 在相同分析基准测试中性能仅比 Spark SQL 慢 2.6 倍,展现出强大的实际效率。
  • ObliDB 支持点查询,延迟为 3–10ms,比先前基于加密的无迹索引系统 HIRB 快逾 7 倍。
  • 该系统成功在涉及连接、聚合与多种访问方法的复杂查询中强制实现无迹性,确保无访问模式泄露。
  • 将优化的无迹数据结构与硬件信封结合,相较于直接应用朴素 ORAM,显著降低了 ORAM 相关的性能开销。
  • ObliDB 证明了在完整 DBMS 架构中实现端到端无迹性是可行的,且不会牺牲真实工作负载下的可用性或性能。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

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