Skip to main content
QUICK REVIEW

[论文解读] ObliDB: Oblivious Query Processing for Secure Databases

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

ObliDB 是首个在硬件可信执行环境(hardware enclaves)中,针对多种访问方法上的通用关系型工作负载,提供高效、不经意查询处理的数据库引擎。它引入了新颖的不经意物理算子,与 Opaque 相比,性能开销降低高达 19 倍,并实现点查询 3–10ms 的延迟,与可信系统相当,同时保持强访问模式隐私。

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 工作负载(包括连接、聚合和点查询)的高效、不经意处理。
  • 在保持强隐私保证的同时,弥合不经意数据库与不可信系统之间的性能差距。
  • 设计新型不经意物理算子,以优化查询选择性,减少对朴素 ORAM 开销的依赖。

提出的方法

  • ObliDB 采用一组专为不同查询选择性水平量身定制的新型不经意物理算子,最大限度减少访问模式泄露。
  • 它集成 Path ORAM 作为底层的不经意内存原 primitive,确保无论数据或查询如何,访问模式均不可区分。
  • 系统使用查询优化器,根据查询结构和数据大小选择最优的不经意算子。
  • 它支持多种访问方法,包括基于索引和全表扫描的操作,且端到端保持不经意性。
  • 对于点查询,ObliDB 使用优化的不经意索引结构,使 100 万行表的查询延迟降低至 3–10ms。
  • 设计避免泄露查询参数,仅暴露输出大小和查询结构,与 Opaque 的泄露模型一致。

实验结果

研究问题

  • RQ1通用关系型 DBMS 是否能在多种访问方法上实现高效不经意查询处理,同时保持强隐私?
  • RQ2如何设计不经意物理算子,使其性能优于标准数据库算子的朴素 ORAM 映射?
  • RQ3在真实世界中的分析与事务型工作负载中,能否以最小性能开销实现最大程度的不经意性?
  • RQ4不经意索引结构能否支持与可信系统相当的低延迟点查询?
  • RQ5不经意 DBMS 的性能与安全分析专用系统及不可信、高性能系统(如 Spark SQL)相比如何?

主要发现

  • 在分析型工作负载上,ObliDB 相较于先前的基于可信执行环境的不经意分析系统 Opaque,最高可实现 19 倍性能提升。
  • 在 100 万行表上完成点查询的延迟为 3.6–9.4ms,相比 HIRB 提升超过 7 倍,且与仅使用索引的可信系统延迟相当。
  • 在分析型工作负载上,ObliDB 的性能仅比 Spark SQL 慢 2.6 倍,证明其在强隐私保证下仍具备出色的实用性。
  • 通过针对查询选择性和数据大小自适应的专用不经意算子,系统显著降低了 ORAM 访问开销。
  • ObliDB 支持广泛的数据库操作,包括连接、聚合、插入、删除和点查询,所有操作均实现端到端不经意性。
  • 开源实现已发布于 GitHub,支持可复现性与进一步研究。

更好的研究,从现在开始

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

无需绑定信用卡

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