1 Introduction
The proliferation of ubiquitous computing and the recent advances in cloud services have amplified the reliance of millions of users to outsourced computation and storage for their data [1]. Remote servers across the globe are becoming the virtual containers of sensitive data, from banking records and medical information, to file storage and search queries. The numerous benefits of outsourcing, however, are often matched with several limitations in the security and privacy guarantees offered to the end users. Even though cloud providers invest in cryptographic protections and access control mechanisms, examples of high-profile compromises, such as Dropbox in 2012 or Amazon EC2/S3 and LastPass in 2011 [2], emphasize that privacy in outsourced computation remains an unresolved problem.