Abstract
Indistinguishability obfuscation, introduced by [Barak et. al. Crypto’2001], aims to compile programs into unintelligible ones while preserving functionality. It is a fascinating and powerful object that has been shown to enable a host of new cryptographic goals and beyond. However, constructions of indistinguishability obfuscation have remained elusive, with all other proposals relying on heuristics or newly conjectured hardness assumptions.
In this work, we show how to construct indistinguishability obfuscation from subexponential hardness of four well-founded assumptions. We prove:
Theorem (Informal) Let p be a prime of magnitude \Theta(2^n), where n is the security parameter. Assume sub-exponential security of the following assumptions:
-
the Learning With Errors (LWE) assumption over Z_p with subexponential modulus-to-noise ratio,
-
the Learning Parity with Noise (LPN) assumption over Z_p with polynomially many LPN samples and inverse polynomial error rate,
-
the existence of a Boolean Pseudo-Random Generator (PRG) in NC0 with polynomial stretch,
-
the Symmetric eXternal Diffie-Hellman (SXDH) assumption on asymmetric bilinear groups of order p.
Then, (subexponentially secure) indistinguishability obfuscation for all polynomial-size circuits exists.
Further, assuming only polynomial security of the aforementioned assumptions, there exists collusion resistant public-key functional encryption for all polynomial-size circuits.