  We study oblivious storage (OS), a natural way to model privacy-preserving
data outsourcing where a client, Alice, stores sensitive data at an
honest-but-curious server, Bob. We show that Alice can hide both the content of
her data and the pattern in which she accesses her data, with high probability,
using a method that achieves O(1) amortized rounds of communication between her
and Bob for each data access. We assume that Alice and Bob exchange small
messages, of size $O(N^{1/c})$, for some constant $c\ge2$, in a single round,
where $N$ is the size of the data set that Alice is storing with Bob. We also
assume that Alice has a private memory of size $2N^{1/c}$. These assumptions
model real-world cloud storage scenarios, where trade-offs occur between
latency, bandwidth, and the size of the client's private memory.
