Why is obfuscation necessary?
The main problem with .Net code is that is can easily be reverse engineered. .Net programs are comprised of code in the intermediate-compiled format (Intermediate Language, IL), which is more advanced language than native processor code, whose instructions are easier to understand and are more informative. The code is convenient and understandable for research, analysis, disassembly and decompilation. In this case, one can use ILDASM or a decompiler such as Spices.Decompiler to generate the source code from a program very similar to an original code. When using the roundtrip ILDASM/ILASM, one has the ability to forge code by eliminating verifying, licensing or other information, and can thus compile a fully functioning version of the original program, devoid of its initial protection. One can also analyze code to uncover necessary “sensitive” information, such as passwords. Enterprises and developers that are concerned with the protection of their intellectual property must understand