Cryptology ePrint Archive: Report 2014/222

Optimizing Obfuscation: Avoiding Barrington's Theorem

Prabhanjan Ananth and Divya Gupta and Yuval Ishai and Amit Sahai

Abstract: In this work, we seek to optimize the efficiency of secure general-purpose obfuscation schemes. We focus on the problem of optimizing the obfuscation of general Boolean formulas -- this corresponds to optimizing the "core obfuscator'' from the work of Garg, Gentry, Halevi, Raykova, Sahai, and Waters (FOCS 2013), and all subsequent works constructing general-purpose obfuscators. This core obfuscator builds upon approximate multilinear
maps, where efficiency in proposed instantiations is closely tied to the maximum number of "levels'' of multilinearity required.

The most efficient previous construction of a core obfuscator, due to
Barak, Garg, Kalai, Paneth, and Sahai (Eurocrypt 2014), required the maximum
number of levels of multilinearity to be \Theta(ls^3.64), where s is the size of the Boolean formula to be obfuscated, and l is the number of input bits to the formula. In contrast, our construction only requires the maximum number of levels of multilinearity to be \Theta(ls). This results in significant improvements in both the total size of the obfuscation, as well as the running time of evaluating an obfuscated formula.

Our efficiency improvement is obtained by generalizing the class of branching programs that can be directly obfuscated. This generalization allows us to achieve a simple simulation of formulas by branching programs while avoiding the use of Barrington's theorem,
on which all previous constructions relied.