Title
Outsourcing Private RAM Computation
Abstract
We construct the first schemes that allow a client to privately outsource arbitrary program executions to a remote server while ensuring that: (I) the client's work is small and essentially independent of the complexity of the computation being outsourced, and (II) the server's work is only proportional to the run-time of the computation on a random access machine (RAM), rather than its potentially much larger circuit size. Furthermore, our solutions are non-interactive and have the structure of reusable garbled RAM programs, addressing an open question of Lu and Ostrovsky (Eurocrypt 2013). We also construct schemes for an augmented variant of the above scenario, where the client can initially outsource a large private and persistent database to the server, and later outsource arbitrary program executions with read/write access to this database. Our solutions are built from non-reusable garbled RAM in conjunction with new types of reusable garbled circuits that are more efficient than prior solutions but only satisfy weaker security. For the basic setting without a persistent database, we can instantiate the required type of reusable garbled circuits from indistinguishability obfuscation or from functional encryption for circuits as a black-box. For the more complex setting with a persistent database, we can instantiate the required type of reusable garbled circuits using stronger notions of obfuscation. Our basic solution also requires the client to perform a one-time pre-processing step to garble a program at the cost of its RAM run-time, and we can avoid this cost using stronger notions of obfuscation. It remains an open problem to instantiate these new types of reusable garbled circuits under weaker assumptions, possibly avoiding obfuscation altogether. We show several simple extensions of our results and techniques to achieve: efficiency proportional to the input-specific RAM run-time, verifiability of outsourced RAM computation, functional encryption for RA- s, and a candidate obfuscation for RAMs.
Year
DOI
Venue
2014
10.1109/FOCS.2014.50
Foundations of Computer Science
Keywords
DocType
Volume
cryptography,outsourcing,program compilers,software reusability,computation complexity,functional encryption,input-specific RAM run-time,nonreusable garbled RAM,one-time preprocessing step,outsourced RAM computation verifiability,private RAM computation outsourcing,private arbitrary program execution outsourcing,random access machine,read-write access,remote server,reusable garbled RAM programs,reusable garbled circuits,obfuscation,reusable garbled RAM,reusable garbled circuits
Journal
2014
ISSN
Citations 
PageRank 
0272-5428
42
1.04
References 
Authors
42
4
Name
Order
Citations
PageRank
Craig Gentry19520380.03
Shai Halevi27203442.70
Mariana Raykova3178163.97
Daniel Wichs4191873.41