Skip to main content
QUICK REVIEW

[论文解读] The Pyramid Scheme: Oblivious RAM for Trusted Processors

Manuel Costa, Lawrence Esswood|arXiv (Cornell University)|Dec 21, 2017
Security and Verification in Computing参考文献 23被引用 8
一句话总结

本文提出 Pyramid ORAM,一种专为 Intel SGX 受信任处理器优化的新型分层无害 RAM 方案。它采用一种新型的 Z 字形哈希表(Zigzag hash table)和概率路由机制,以最小化常数开销和在线带宽,在 99% 的访问中实现比 Circuit ORAM 低 8 倍的延迟,同时仅使用 CPU 寄存器作为私有内存。

ABSTRACT

Modern processors, e.g., Intel SGX, allow applications to isolate secret code and data in encrypted memory regions called enclaves. While encryption effectively hides the contents of memory, the sequence of address references issued by the secret code leaks information. This is a serious problem because these leaks can easily break the confidentiality guarantees of enclaves. In this paper, we explore Oblivious RAM (ORAM) designs that prevent these information leaks under the constraints of modern SGX processors. Most ORAMs are a poor fit for these processors because they have high constant overhead factors or require large private memories, which are not available in these processors. We address these limitations with a new hierarchical ORAM construction, the Pyramid ORAM, that is optimized towards online bandwidth cost and small blocks. It uses a new hashing scheme that circumvents the complexity of previous hierarchical schemes. We present an efficient x64-optimized implementation of Pyramid ORAM that uses only the processor's registers as private memory. We compare Pyramid ORAM with Circuit ORAM, a state-of-the-art tree-based ORAM scheme that also uses constant private memory. Pyramid ORAM has better online asymptotical complexity than Circuit ORAM. Our implementation of Pyramid ORAM and Circuit ORAM validates this: as all hierarchical schemes, Pyramid ORAM has high variance of access latencies; although latency can be high for some accesses, for typical configurations Pyramid ORAM provides access latencies that are 8X better than Circuit ORAM for 99% of accesses. Although the best known hierarchical ORAM has better asymptotical complexity, Pyramid ORAM has significantly lower constant overhead factors, making it the preferred choice in practice.

研究动机与目标

  • 解决 Intel SGX 安全区中内存访问模式泄露的问题,尽管已进行加密,但此问题仍会破坏机密性。
  • 设计一种适用于现代受信任处理器的 ORAM 方案,该处理器具有有限的私有内存和高常数开销约束。
  • 针对在 x64 处理器上的实际部署,优化低在线带宽和低常数因子。
  • 仅使用 CPU 寄存器作为私有内存,实现高效且无害的内存访问,避免对大容量片上缓存的需求。
  • 证明分层 ORAM 可通过利用可预测的重建调度,在实践中优于基于树的方案,尽管其最坏情况延迟更高。

提出的方法

  • 提出一种新型分层 ORAM 架构——Pyramid ORAM,以新颖的 Z 字形哈希表(ZHT)作为核心数据结构。
  • 设计一种概率路由网络,实现在 O(n log n) 时间内无害地构建 ZHT,且无隐藏常数。
  • 采用多级自适应哈希,并结合基于阈值的重新插入策略,高效管理溢出元素。
  • 仅使用 CPU 寄存器作为私有内存实现该方案,消除对大容量片上存储的依赖。
  • 针对 x64 Skylake 处理器,通过细粒度指令级优化对实现进行调优。
  • 从在线访问成本和均摊访问成本两个方面,将 Pyramid ORAM 与最先进的基于树的 ORAM——Circuit ORAM 进行对比。

实验结果

研究问题

  • RQ1分层 ORAM 架构是否能在保持受信任处理器中低常数开销的前提下,实现比基于树的 ORAM 更优的在线渐近时间复杂度?
  • RQ2在现代 x64 处理器上,如何在仅使用极少私有内存和低常数因子的前提下,高效构建无害数据结构?
  • RQ3与统一成本的基于树的方案相比,分层 ORAM 中可预测的重建阶段在多大程度上能降低延迟方差并提升实际性能?
  • RQ4像 Z 字形哈希表这样的新型哈希方案是否能消除分层 ORAM 中昂贵的无害排序操作?
  • RQ5在 Intel SGX 上的真实工作负载中,Pyramid ORAM 与 Circuit ORAM 的实际性能权衡如何?

主要发现

  • Pyramid ORAM 实现了比 Circuit ORAM 更优的在线渐近时间复杂度,且每次访问的带宽成本更低。
  • 在典型配置下,Pyramid ORAM 对 99% 的访问将访问延迟降低了至少 8 倍。
  • 该实现仅使用 CPU 寄存器作为私有内存,避免了对大容量片上缓存或外部内存的需求。
  • 尽管最坏情况延迟更高,但 Pyramid ORAM 的可预测重建调度允许主动优化,从而降低高延迟访问的频率。
  • 由于常数因子显著降低,Pyramid ORAM 在实际中优于目前已知的最佳分层 ORAM 方案。
  • 本工作首次在 Intel SGX 上对分层 ORAM 进行了实验评估,验证了其在真实世界基准测试中相对于基于树的替代方案的实际优越性。

更好的研究,从现在开始

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

无需绑定信用卡

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