Oblivious RAM (ORAM) is a provable secure primitive to prevent access pattern leakage on the memory bus. It serves as the intermediate layer between the trusted on-chip components and the untrusted external memory systems to modulate the original memory access patterns into indistinguishable memory sequences. By randomly remapping the data blocks and accessing redundant blocks, ORAM prevents access pattern leakage through obfuscation. While there is much prior work focusing on improving ORAM's performance on the conventional DRAM-based memory system, when the memory technology shifts to use non-volatile memory (NVM), new challenges come up as to how to efficiently support crash consistency for ORAM. In this work, we propose EHAP-ORAM, which studies how to persist ORAM construction with an NVM-based memory system. We first analyze the design requirements for a persistent ORAM system and discuss the need to preserve crash consistency and atomicity for both data and ORAM metadata. Next, we discuss some of the challenges in the design of a persistent ORAM system and propose some solutions to those challenges. Then, we propose the modified on-chip ORAM controller architecture. Based on the improved hardware architecture of the ORAM controller on-chip, we propose different persistency protocols to ensure the crash consistency of the ORAM system and satisfy that the metadata in PosMap is safe when it is persisted to NVM in trusted/untrusted off-chip. The proposed architecture and persistency protocol steps minimize the overhead and leakage during the write-back process. Finally, we compared our persistent ORAM with the system without crash consistency support, show that in non-recursive and recursive cases, EHAP-ORAM only incurs 3.36% and 3.65% performance overhead. The results show that the EHAP-ORAM can support efficient crash consistency with minimal performance and hardware overhead.
翻译:ORAM (ORAM) 是一个可被确认的安全的原始系统, 以防止存储总线上存取模式泄漏。 它作为可信任的芯片组件和不可信任的外部内存系统之间的中间层, 将原始的内存访问模式转换成无法区分的内存序列序列。 通过随机地重新绘制数据区块和访问冗余区块, ORAM 防止访问模式渗漏。 虽然先前有许多工作侧重于改进 ORAM 常规的DRAM 托盘存储系统的性能, 当记忆技术转向使用非挥发性内存存储器时, 当记忆技术转向使用非挥发性内存存储器时( NNVM ), 新的挑战将出现在如何有效支持 ORAM 的崩溃一致性。 在此过程中, 我们建议 EHAP- ORAM 运行持续性能, 当 ORCM 系统运行期间, 我们不断的 ORCRAM 程序会显示, 持续性内存的 ORCM 系统会显示, 当 ORAM 系统运行期间, 我们不断的 OLM 系统会显示不断的内存的内存性系统。