[论文解读] Revisiting Definitional Foundations of Oblivious RAM for Secure Processor Implementations
本文重新定义了不经意访问内存(ORAM)的安全性,以解决现代安全处理器实现中的实际问题,即程序终止和缓存导致的可变长度访问序列会泄露信息。该文提出一种新型ORAM形式化定义,将终止通道泄露独立出来,通过放宽存储桶大小和溢出概率约束,简化了Path ORAM的安全性分析,并引入一种动态资源分区框架,以极小的性能开销缓解内部侧信道攻击。
Oblivious RAM (ORAM) is a renowned technique to hide the access patterns of an application to an untrusted memory. According to the standard ORAM definition presented by Goldreich and Ostrovsky, two ORAM access sequences must be computationally indistinguishable if the lengths of these sequences are identically distributed. An artifact of this definition is that it does not apply to modern ORAM implementations adapted in current secure processors technology because of their arbitrary lengths of memory access sequences depending on programs' behaviors (their termination times). As a result, the ORAM definition does not directly apply; the theoretical foundations of ORAM do not clearly argue about the timing and termination channels. This paper conducts a first rigorous study of the standard Goldreich-Ostrovsky ORAM definition in view of modern practical ORAMs (e.g., Path ORAM) and demonstrates the gap between theoretical foundations and real implementations. A new ORAM formulation which clearly separates out termination channel leakage is proposed. It is shown how this definition implies the standard ORAM definition (for finite length input access sequences) and better fits the modern practical ORAM implementations. The proposed definition relaxes the constraints around the stash size and overflow probability for Path ORAM, and essentially transforms its security argument into a performance consideration problem. Finally, a `strong' ORAM formulation which clearly includes obfuscation of termination leakage is shown to imply our new ORAM formulation and applies to ORAM for outsourced disk storage. In this strong formulation constraints are not relaxed and the security argument for Path ORAM remains complex as one needs to prove that the stash overflows with negligible probability.
研究动机与目标
- 识别理论ORAM定义与现代安全处理器实现之间的脱节,后者使用可变长度的ORAM访问序列。
- 形式化一种新的ORAM安全定义,明确将终止通道泄露与内存访问模式泄露分离。
- 通过放宽对存储桶大小和溢出概率的约束,简化Path ORAM的安全性分析。
- 缓解共享硬件资源(如DRAM带宽和ORAM访问速率)带来的内部侧信道。
- 提供一种通用的动态资源分区框架,以在多线程安全处理器环境中平衡性能与泄露。
提出的方法
- 提出一种新型ORAM形式化定义,将终止通道泄露明确建模为与访问模式泄露分离的独立泄露源。
- 证明该新形式化定义在有限长度输入序列下蕴含原始Goldreich-Ostrovsky ORAM定义,确保向后兼容性。
- 引入一种动态资源分区框架,根据每个周期内的性能与隐私指标调整资源分配。
- 使用函数 $\mathcal{F}$ 根据历史记录和性能指标决定配置变更,确保仅泄露与线程相关的特定信息。
- 利用香农熵的信息论界定量衡量隐私泄露,表示为 $H(PastHist_i)$,其上界为 $\sum_j \lambda_j = \sum_j \log|C^{(j-1)}|$。
- 采用两阶段机制:每个周期内静态分配资源以防止内部侧信道,以及通过不可区分的真实/虚假ORAM访问防止外部泄露。
实验结果
研究问题
- RQ1标准Goldreich-Ostrovsky ORAM定义为何无法捕捉现代安全处理器中可变长度ORAM序列带来的泄露?
- RQ2能否设计一种新型ORAM形式化定义,将终止通道泄露独立出来,同时保持安全保证?
- RQ3通过放宽存储桶大小和溢出概率约束,Path ORAM的安全性分析能在多大程度上被简化?
- RQ4如何在不造成显著性能损失的前提下,缓解共享硬件资源(如DRAM带宽和ORAM访问速率)带来的内部侧信道?
- RQ5能否构建一种动态资源分区框架,实现在多线程安全处理器环境下的可控、有界泄露?
主要发现
- 所提出的ORAM形式化定义明确分离了终止通道泄露,使其可独立于访问模式泄露进行分析。
- 新形式化定义在有限长度输入序列下蕴含原始Goldreich-Ostrovsky定义,确保向后兼容性。
- Path ORAM的安全性论证从复杂的概率溢出证明转变为性能考量,显著简化了分析过程。
- 动态资源分区框架将隐私泄露限制在最多 $\sum_j \lambda_j$ 比特以内,其中 $\lambda_j = \log|C^{(j-1)}|$,基于线程特定配置历史的熵。
- 该框架在实现极小性能损失的同时,有效缓解了共享资源(如DRAM带宽和ORAM访问速率)竞争导致的侧信道。
- 引入了一种“强”ORAM形式化定义,包含终止混淆机制,适用于外包磁盘存储,且在不放松约束的前提下保持完整安全性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。