Code obfuscation is an application protection technique that works by transforming the code to make it very difficult for hackers to understand and decipher. Strong and well-applied code obfuscation:
Hides and confuses the logic, structure, and purpose of the code to stop hackers who attempt to reverse engineer or tamper with your application
Conceals information that can be used in further attacks, such as debug information, log messages, and strings displayed to the user
Secures valuable intellectual property, such as proprietary algorithms or licensed technology or content
Hardens potential attack points by obscuring security flaws and vulnerabilities so they can’t be exploited
Obfuscation methods range from basic to complex, and include stripping out potentially revealing metadata, renaming useful class and variable names to meaningless labels, adding decoy logic, inlining functions, encrypting some or all of the code, and obfuscating the application’s control flow in.