On the (in)security of hash-based oblivious RAM and a new balancing scheme

  • Authors:
  • Eyal Kushilevitz;Steve Lu;Rafail Ostrovsky

  • Affiliations:
  • Stealth Software Technologies, Inc.;Stealth Software Technologies, Inc.;UCLA

  • Venue:
  • Proceedings of the twenty-third annual ACM-SIAM symposium on Discrete Algorithms
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the gaining popularity of remote storage (e.g. in the Cloud), we consider the setting where a small, protected local machine wishes to access data on a large, untrusted remote machine. This setting was introduced in the RAM model in the context of software protection by Goldreich and Ostrovsky. A secure Oblivious RAM simulation allows for a client, with small (e.g., constant size) protected memory, to hide not only the data but also the sequence of locations it accesses (both reads and writes) in the unprotected memory of size n. Our main results are as follows: • We analyze several schemes from the literature, observing a repeated design flaw that leaks information on the memory access pattern. For some of these schemes, the leakage is actually non-negligible, while for others it is negligible. • On the positive side, we present a new secure oblivious RAM scheme, extending a recent scheme by Goodrich and Mitzenmacher. Our scheme uses only O(1) local memory, and its (amortized) overhead is O(log2 n/log log n), outperforming the previously-best O(log2 n) overhead (among schemes where the client only uses O(1) additional local memory). • We also present a transformation of our scheme above (whose amortized overhead is O(log2 n/log log n)) into a scheme with worst-case overhead of O(log2 n/log log n).