  The security of our data stores is underestimated in current practice, which
resulted in many large-scale data breaches. To change the status quo, this
paper presents the design of ShieldDB, an encrypted document database. ShieldDB
adapts the searchable encryption technique to preserve the search functionality
over encrypted documents without having much impact on its scalability.
However, merely realising such a theoretical primitive suffers from real-world
threats, where a knowledgeable adversary can exploit the leakage (aka access
pattern to the database) to break the claimed protection on data
confidentiality. To address this challenge in practical deployment, ShieldDB is
designed with tailored padding countermeasures. Unlike prior works, we target a
more realistic adversarial model, where the database gets updated continuously,
and the adversary can monitor it at an (or multiple) arbitrary time
interval(s). ShieldDB's padding strategies ensure that the access pattern to
the database is obfuscated all the time. Additionally, ShieldDB provides other
advanced features, including forward privacy, re-encryption, and flushing, to
further improve its security and efficiency. We present a full-fledged
implementation of ShieldDB and conduct intensive evaluations on Azure Cloud.
