O'Reilly logo

Surreptitious Software by Christian Collberg, Jasvir Nagra

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 5. Obfuscation Theory

Let’s reiterate what you hope to achieve when you create an obfuscated program. You would like to give a user an executable program but prevent him from understanding some part of its construction. For example, you may want to prevent the user from extracting secret keys you have embedded in the program, replacing the keys, understanding the algorithms, extracting specific functionality out of the program, or adding some functionality to the program.

In the previous chapter, you saw a large number of obfuscation techniques. We argued that these obfuscating transformations are useful, saying that the confusion they add to the program increases the complexity of analyzing and understanding it, using the static and dynamic ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required