## Abstract

An obfuscator O is Virtual Grey Box (VGB) for a class C of circuits if, for any C∈ C and any predicate π, deducing π(C) given O(C) is tantamount to deducing π(C) given unbounded computational resources and polynomially many oracle queries to C. VGB obfuscation is often significantly more meaningful than indistinguishability obfuscation (IO). In fact, for some circuit families of interest VGB is equivalent to full-fledged Virtual Black Box obfuscation. We investigate the feasibility of obtaining VGB obfuscation for general circuits. We first formulate a natural strengthening of IO, called strong IO (SIO). Essentially, O is SIO for class C if O(C_{0}) ≈ O(C_{1}) whenever the pair (C_{0}, C_{1}) is taken from a distribution over C where, for all x, C_{0}(x) ≠ C_{1}(x) only with negligible probability. We then show that an obfuscator is VGB for a class C if and only if it is SIO for C. This result is unconditional and holds for any C. We also show that, for some circuit collections, SIO implies virtual black-box obfuscation. Finally, we formulate a slightly stronger variant of the semantic security property of graded encoding schemes [Pass-Seth-Telang Crypto 14], and show that existing obfuscators, such as the obfuscator of Barak et al. [Eurocrypt 14], are SIO for all circuits in NC^{1}, assuming that the underlying graded encoding scheme satisfies our variant of semantic security. Put together, we obtain VGB obfuscation for allNC^{1}circuits under assumptions that are almost the same as those used by Pass et al. to obtain IO forNC^{1}circuits. We also observe that VGB obfuscation for all polynomial-size circuits implies the existence of semantically-secure graded encoding schemes with limited functionality known as jigsaw puzzles.

Original language | English (US) |
---|---|

Pages (from-to) | 1014-1051 |

Number of pages | 38 |

Journal | Algorithmica |

Volume | 79 |

Issue number | 4 |

DOIs | |

State | Published - Dec 1 2017 |

## Keywords

- Cryptography
- Learning
- Obfuscation
- Simulation

## ASJC Scopus subject areas

- General Computer Science
- Computer Science Applications
- Applied Mathematics