Sub-logarithmic distributed oblivious RAM with small block size

From MaRDI portal
Publication:2289203



Abstract: Oblivious RAM (ORAM) is a cryptographic primitive that allows a client to securely execute RAM programs over data that is stored in an untrusted server. Distributed Oblivious RAM is a variant of ORAM, where the data is stored in m>1 servers. Extensive research over the last few decades have succeeded to reduce the bandwidth overhead of ORAM schemes, both in the single-server and the multi-server setting, from O(sqrtN) to O(1). However, all known protocols that achieve a sub-logarithmic overhead either require heavy server-side computation (e.g. homomorphic encryption), or a large block size of at least Omega(log3N). In this paper, we present a family of distributed ORAM constructions that follow the hierarchical approach of Goldreich and Ostrovsky [GO96]. We enhance known techniques, and develop new ones, to take better advantage of the existence of multiple servers. By plugging efficient known hashing schemes in our constructions, we get the following results: 1. For any mgeq2, we show an m-server ORAM scheme with O(logN/loglogN) overhead, and block size Omega(log2N). This scheme is private even against an (m1)-server collusion. 2. A 3-server ORAM construction with O(omega(1)logN/loglogN) overhead and a block size almost logarithmic, i.e. Omega(log1+epsilonN). We also investigate a model where the servers are allowed to perform a linear amount of light local computations, and show that constant overhead is achievable in this model, through a simple four-server ORAM protocol.











This page was built for publication: Sub-logarithmic distributed oblivious RAM with small block size

Report a bug (only for logged in users!)Click here to report a bug for this page (MaRDI item Q2289203)