Encoding Functions with Constant Online Rate, or How to Compress Garbled Circuit Keys

Benny Applebaum, Yuval Ishai, Eyal Kushilevitz, Brent Waters
2015 SIAM journal on computing (Print)  
Randomized encodings of functions can be used to replace a "complex" function f (x) by a "simpler" randomized mappingf (x; r) whose output distribution on an input x encodes the value of f (x) and hides any other information about x. One desirable feature of randomized encodings is low online complexity. That is, the goal is to obtain a randomized encodingf of f in which most of the output can be precomputed and published before seeing the input x. When the input x is available, it remains to
more » ... blish only a short stringx, where the online complexity of computingx is independent of (and is typically much smaller than) the complexity of computing f . Yao's garbled circuit construction gives rise to such randomized encodings in which the online partx consists of n encryption keys of length κ each, where n = |x| and κ is a security parameter. Thus, the online rate |x|/|x| of this encoding is proportional to the security parameter κ. In this paper, we show that the online rate can be dramatically improved. Specifically, we show how to encode any polynomial-time computable function f : {0, 1} n → {0, 1} m(n) with online rate of 1+o(1) and with nearly linear online computation. More concretely, the online part x consists of an n-bit string and a single encryption key. These constructions can be based on the decisional Diffie-Hellman assumption (DDH), the Learning with Errors assumption (LWE), or the RSA assumption. We also present a variant of this result which applies to arithmetic formulas, where the encoding only makes use of arithmetic operations, as well as several negative results which complement our positive results. Our positive results can lead to efficiency improvements in most contexts where randomized encodings of functions are used. We demonstrate this by presenting several concrete applications. These include protocols for secure multiparty computation and for non-interactive verifiable computation in the preprocessing model which achieve, for the first time, an optimal online communication complexity, as well as non-interactive zero-knowledge proofs which simultaneously minimize the online communication and the prover's online computation.
doi:10.1137/130929643 fatcat:pwv2vdym4jeptaawxgca2pygxe