Data-Oblivious Data Structures

Authors John C. Mitchell, Joe Zimmerman

Thumbnail PDF


  • Filesize: 0.58 MB
  • 12 pages

Document Identifiers

Author Details

John C. Mitchell
Joe Zimmerman

Cite AsGet BibTex

John C. Mitchell and Joe Zimmerman. Data-Oblivious Data Structures. In 31st International Symposium on Theoretical Aspects of Computer Science (STACS 2014). Leibniz International Proceedings in Informatics (LIPIcs), Volume 25, pp. 554-565, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2014)


An algorithm is called data-oblivious if its control flow and memory access pattern do not depend on its input data. Data-oblivious algorithms play a significant role in secure cloud computing, since programs that are run on secret data—as in fully homomorphic encryption or secure multi-party computation—must be data-oblivious. In this paper, we formalize three definitions of data-obliviousness that have appeared implicitly in the literature, explore their implications, and show separations. We observe that data-oblivious algorithms often compose well when viewed as data structures. Using this approach, we construct data-oblivious stacks, queues, and priority queues that are considerably simpler than existing constructions, as well as improving constan factors. We also establish a new upper bound for oblivious data compaction, and use this result to show that an "offline" variant of the Oblivious RAM problem can be solved with O(log(n).log(log(n))) expected amortized time per operation - as compared with O(log^2(n)/log(log(n))), the best known upper bound for the standard online formulation.
  • Data-oblivious algorithms
  • Data-oblivious data structures
  • Oblivious RAM
  • Secure multi-party computation
  • Secure cloud computing


  • Access Statistics
  • Total Accesses (updated on a weekly basis)
    PDF Downloads