Learn More
Informally, an <i>obfuscator</i> <i>O</i> is an (efficient, probabilistic) &#8220;compiler&#8221; that takes as input a program (or circuit) <i>P</i> and produces a new program <i>O</i>(<i>P</i>) that has the same functionality as <i>P</i> yet is &#8220;unintelligible&#8221; in some sense. Obfuscators, if they exist, would have a wide variety of(More)
We present a polynomial-time algorithm that, given as a input the description of a game with <italic>incomplete information and any number of players</italic>, produces a protocol for playing the game that leaks no partial information, provided the majority of the players is honest. Our algorithm automatically solves all the multi-party protocol problems(More)
Software protection is one of the most important issues concerning computer practice. There exist many heuristics and ad-hoc methods for protection, but the problem as a whole has not received the theoretical treatment it deserves. In this paper, we make the first steps towards a theoretic treatment of software protection: First, we distill and formulate(More)
We further develop the study of testing graph properties as initiated by Goldreich, Goldwasser and Ron. Whereas they view graphs as represented by their adjacency matrix and measure distance between graphs ss a fraction of all possible vertex pairs, we view graphs as represented by bounded-length incidence lists and measure distance between graphs as a(More)