Software obfuscation is the deliberate act of creating obfuscated code by making source or machine code difficult to understand from a human point of view.

Programmers may deliberately obfuscate code to conceal its purpose (security through obscurity) or its logic, in order to prevent tampering, deter reverse engineering, or as a puzzle or recreational challenge for someone reading the source code. Programs known as obfuscators transform readable code into obfuscated code using various techniques; including cryptographic techniques.

history | show excerpt | excerpt history