We consider the problem of
private function evaluation
(PFE) in the two-party setting. Here, informally, one party holds an input
while the other holds a (circuit describing a) function
; the goal is for one (or both) of the parties to learn
) while revealing nothing more to either party. In contrast to the usual setting of secure computation, where the function being computed is known to both parties, PFE is useful in settings where the function (i.e., algorithm) itself must remain secret, e.g., because it is proprietary or classified.
It is known that PFE can be reduced to standard secure computation by having the parties evaluate a
, and this is the approach taken in most prior work. Using a universal circuit, however, introduces additional overhead and results in a more complex implementation. We show here a completely new technique for PFE that avoids universal circuits, and results in constant-round protocols with communication/computational complexity
in the size of the circuit computing
. This gives the first constant-round protocol for PFE with linear complexity (without using fully homomorphic encryption), even restricted to semi-honest adversaries.