Paper 2014/234

Enhancing Oblivious RAM Performance Using Dynamic Prefetching

Xiangyao Yu, Ling Ren, Christopher Fletcher, Albert Kwon, Marten van Dijk, and Srinivas Devadas


Oblivious RAM (ORAM) is an established technique to hide the access pattern to an untrusted storage system. With ORAM, a curious adversary cannot tell what data address the user is accessing when observing the bits moving between the user and the storage system. All existing ORAM schemes achieve obliviousness by adding redundancy to the storage system, i.e., each access is turned into multiple random accesses. Such redundancy incurs a large performance overhead. Though traditional data prefetching techniques successfully hide memory latency in DRAM based systems, it turns out that they do not work well for ORAM. In this paper, we exploit ORAM locality by taking advantage of the ORAM internal structures. Though it might seem apparent that obliviousness and locality are two contradictory concepts, we challenge this intuition by exploiting data locality in ORAM without sacrificing provable security. In particular, we propose an ORAM prefetching technique called dynamic super block scheme and comprehensively explore its design space. The dynamic super block scheme detects data locality in the program's working set at runtime, and exploits the locality in a data-independent way. % based on the key observation that position map ORAMs have better locality than the data ORAM. Our simulation results show that with dynamic super block scheme, ORAM performance without super blocks can be significantly improved. After adding timing protection to ORAM, the average performance gain is 25.5\% (up to 49.4\%) over the baseline ORAM and 16.6\% (up to 30.1\%) over the best ORAM prefetching technique proposed previously.

Available format(s)
Cryptographic protocols
Publication info
Preprint. Minor revision.
Oblivious RAMlocalityprefetching
Contact author(s)
yxy @ mit edu
2014-04-01: received
Short URL
Creative Commons Attribution


      author = {Xiangyao Yu and Ling Ren and Christopher Fletcher and Albert Kwon and Marten van Dijk and Srinivas Devadas},
      title = {Enhancing Oblivious RAM Performance Using Dynamic Prefetching},
      howpublished = {Cryptology ePrint Archive, Paper 2014/234},
      year = {2014},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.