Paper 2015/1084

Patchable Indistinguishability Obfuscation: iO for Evolving Software

Prabhanjan Ananth, Abhishek Jain, and Amit Sahai


In this work, we introduce patchable indistinguishability obfuscation: our notion adapts the notion of indistinguishability obfuscation (iO) to a very general setting where obfuscated software evolves over time. We model this broadly by considering software patches P as arbitrary Turing Machines that take as input the description of a Turing Machine M, and output a new Turing Machine description M' = P(M). Thus, a short patch P can cause changes everywhere in the description of M and can even cause the description length of the machine to increase by an arbitrary polynomial amount. We further consider multi-program patchable indistinguishability obfuscation where a patch is applied not just to a single machine M, but to an unbounded set of machines M_1,..., M_n to yield P(M_1),.., P(M_n). We consider both single-program and multi-program patchable indistinguishability obfuscation in a setting where there are an unbounded number of patches that can be adaptively chosen by an adversary. We show that sub-exponentially secure iO for circuits and sub-exponentially secure re-randomizable encryption schemes imply single-program patchable indistinguishability obfuscation; and we show that sub-exponentially secure iO for circuits and sub-exponentially secure DDH imply multi-program patchable indistinguishability obfuscation. At the our heart of results is a new notion of splittable iO that allows us to transform any iO scheme into a patchable one. Finally, we exhibit some simple applications of patchable indistinguishability obfuscation, to demonstrate how these concepts can be applied.

Available format(s)
Publication info
A major revision of an IACR publication in EUROCRYPT 2017
Contact author(s)
prabhanjan va @ gmail com
2017-08-15: last of 2 revisions
2015-11-09: received
See all versions
Short URL
Creative Commons Attribution


      author = {Prabhanjan Ananth and Abhishek Jain and Amit Sahai},
      title = {Patchable Indistinguishability Obfuscation: iO for Evolving Software},
      howpublished = {Cryptology ePrint Archive, Paper 2015/1084},
      year = {2015},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.