Date: May 2006
Creator: Gomathisankaran, Mahadevan & Tyagi, Akhilesh
Description: This article discusses architecture support for 3D obfuscation. Abstract: Software obfuscation is defined as a transformation of a program P into T(P) such that the whitebox and blackbox behaviors of T(P) are computationally indistinguishable. However, robust obfuscation is impossible to achieve with the existing software only solutions. This results from the power of the adversary model in DRM which is significantly more than in the traditional security scenarios. The adversary has complete control of the computing node - supervisory privileges along with the full physical as well as architectural object observational capabilities. In essence, this makes the operating system (or any other layer around the architecture) untrustworthy. Thus the trust has to be provided by the underlying architecture. In this paper, the authors develop an architecture to support 3-D obfuscation through the use of well known cryptographic methods. The three dimensional obfuscation hides the address sequencing, the contents associated with an address, and the temporal reuse of address sequences such as in loops (or the second order address sequencing). The software is kept as an obfuscated file system image statically. Moreover, its execution traces are also dynamically obfuscated along all the three dimensions of address sequencing, contents and second order ...
Contributing Partner: UNT College of Engineering