Paper 2011/660

Program Obfuscation with Leaky Hardware

Nir Bitansky, Ran Canetti, Shafi Goldwasser, Shai Halevi, Yael Tauman Kalai, and Guy N. Rothblum


We consider general program obfuscation mechanisms using ``somewhat trusted'' hardware devices, with the goal of minimizing the usage of the hardware, its complexity, and the required trust. Specifically, our solution has the following properties: \begin{itemize} \item The obfuscation remains secure even if all the hardware devices in use are {\em leaky}. That is, the adversary can obtain the result of evaluating any polynomial-time computable function on the local state of the device, as long as this function has short output. In addition the adversary also controls the communication between the devices. \item The number of hardware devices used in an obfuscation and the amount of work they perform are polynomial in the security parameter {\em independently} of the obfuscated function's complexity. \item A ({\em universal}) set of hardware components, owned by the user, is initialized only once and from that point on can be used with multiple ``software-based" obfuscations sent by different vendors. \end{itemize}

Available format(s)
Publication info
Published elsewhere. An extended abstract of this paper appears in the proceedings of ASIACRYPT '11
Contact author(s)
nirbitan @ tau ac il
2011-12-21: last of 2 revisions
2011-12-09: received
See all versions
Short URL
Creative Commons Attribution


      author = {Nir Bitansky and Ran Canetti and Shafi Goldwasser and Shai Halevi and Yael Tauman Kalai and Guy N.  Rothblum},
      title = {Program Obfuscation with Leaky Hardware},
      howpublished = {Cryptology ePrint Archive, Paper 2011/660},
      year = {2011},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.