Can a Program Reverse-Engineer Itself?
Antoine Amarilli, David Naccache, Pablo Rauzy, Emil Simion · 2011
Abstract. Shape-memory alloys are metal pieces that "remember " their original cold-forged shapes and return to the pre-deformed shape after heating. In this work we construct a software analogous of shape-memory alloys: programs whose code resists obfuscation. We show how to pour arbitrary functions into protective envelops that allow recovering the functions ' exact initial code after obfuscation. We explicit the theoretical foundations of our method and provide a concrete implementation in Scheme. 1