Theory and Practice of Program Obfuscation

Xuesong Zhang, Fengling He, Wanli Zuo · InTech eBooks · 2010

Since Collberg's (1997) and Barak's (2001) seminal papers, program obfuscation has received considerable attentions over the last decade. As a result, a variety of formal definitions and practical methods of obfuscation have been developed. This chapter provides a brief survey of this progress on both the context of cryptography and software engineering. As a relatively less expensive method, despite the impossibility in cryptography, obfuscation does introduce the difficulty to reverse engineering. In this sense, it is still one of the promising techniques on software protection. In Sections 4, a call-flow obfuscation method is presented for Java program, which is also applicable to any other object oriented language. At the final section, an instruction obfuscation framework target at mobile phone Java applications is discussed. Different from personal computer platform, the JVM run in embedded system is usually customized according to different mobile phone hardware model, which leads to a large variety of JVMs. This kind diversity of JVM indicates that it is feasible and easy to apply the framework to the protection of mobile Java program.

Read the paper · More papers on PaperTik