Perfectly one-way probabilistic hash functions (preliminary version)
STOC '98 Proceedings of the thirtieth annual ACM symposium on Theory of computing
Towards Realizing Random Oracles: Hash Functions That Hide All Partial Information
CRYPTO '97 Proceedings of the 17th Annual International Cryptology Conference on Advances in Cryptology
COCO '99 Proceedings of the Fourteenth Annual IEEE Conference on Computational Complexity
On obfuscating point functions
Proceedings of the thirty-seventh annual ACM symposium on Theory of computing
Correcting errors without leaking partial information
Proceedings of the thirty-seventh annual ACM symposium on Theory of computing
On the Impossibility of Obfuscation with Auxiliary Input
FOCS '05 Proceedings of the 46th Annual IEEE Symposium on Foundations of Computer Science
Parameterized Complexity Theory (Texts in Theoretical Computer Science. An EATCS Series)
Parameterized Complexity Theory (Texts in Theoretical Computer Science. An EATCS Series)
Obfuscation for Cryptographic Purposes
Journal of Cryptology
Lower bounds for discrete logarithms and related problems
EUROCRYPT'97 Proceedings of the 16th annual international conference on Theory and application of cryptographic techniques
TCC'07 Proceedings of the 4th conference on Theory of cryptography
TCC'07 Proceedings of the 4th conference on Theory of cryptography
Obfuscating point functions with multibit output
EUROCRYPT'08 Proceedings of the theory and applications of cryptographic techniques 27th annual international conference on Advances in cryptology
On strong simulation and composable point obfuscation
CRYPTO'10 Proceedings of the 30th annual conference on Advances in cryptology
Securely Obfuscating Re-Encryption
Journal of Cryptology
Obfuscation of hyperplane membership
TCC'10 Proceedings of the 7th international conference on Theory of Cryptography
On the (im)possibility of obfuscating programs
Journal of the ACM (JACM)
Abstract models of computation in cryptography
IMA'05 Proceedings of the 10th international conference on Cryptography and Coding
On the circular security of bit-encryption
TCC'13 Proceedings of the 10th theory of cryptography conference on Theory of Cryptography
Hi-index | 0.00 |
We show how to securely obfuscate a new class of functions: conjunctions of NC0d circuits. These are functions of the form C(→/x) = ∧mi=1 C1(→/x), where each C1 is a boolean NC0d circuits circuit, whose output bit is only a function of d = O(1) bits of the input →/x. For example, d-CNFs, where each clause is a disjunction of at most d variables, are in this class. Given such a function, we produce an obfuscated program that preserves the input-output functionality of the given function, but reveals nothing else. Our construction is based on multilinear maps, and can be instantiated using the recent candidates proposed by Garg, Gentry and Halevi (EUROCRYPT 2013) and by Coron, Lepoint and Tibouchi (CRYPTO 2013). We prove that the construction is a secure obfuscation in a generic multilinear group model, under the black-box definition of Barak et al. (CRYPTO 2001). Security is based on a new worst-case hardness assumption about exponential hardness of the NP-complete problem 3-SAT, the Bounded Speedup Hypothesis. One of the new techniques we introduce is a method for enforcing input consistency, which we call randomizing sub-assignments. We hope that this technique can find further application in constructing secure obfuscators. The family of functions we obfuscate is considerably richer than previous works that consider black-box obfuscation. As one application, we show how to achieve obfuscated functional point testing: namely, to construct a circuit that checks whether ƒ(→/x) = →/y, where ƒ is an arbitrary "public" polynomial-time computable function, but →/y is a "secret" point that is hidden in the obfuscation.