Code obfuscation is a technique used to convert simple, easy-to-read code into a new version that becomes hard to understand and reverse engineer - for humans and machines alike.
The procedure is performed manually (long, difficult to bring to the original form - that is "deobfuscate") or automatically (fast, performed by special programs "obfuscators" with the function "deobfuscate"). The task is performed by the programmer so that no other programmer can read the program code and decipher the algorithms of the obfuscator.
First of all, code obfuscation is done for software product security. The developer may also pursue commercial goals (competitive protection against tampering or hiding values/logic). The result is a compressed (unused classes, attributes, methods are removed) or optimized (operators are checked and rewritten) software. Obfuscated code is used, for example, on Android and Java (example of an optimizer: R8 for Android; ProGuard for Java and Android).
How it works?
Just paste your code and click on "obfuscate".