Dear Readers,
This blog is initially dedicated to Eazfuscator.NET. Such a strange name was given to a special tool that obfuscates .NET applications. Facts, motivations, history, thoughts and other aspects of Eazfuscator.NET obfuscator will be covered in this blog.
.NET World and Obfuscation
First of all I would like to make some short introduction to .NET and domain of obfuscation.
.NET is a technology from Microsoft that allows to create quality and reliable software. .NET platform is similar to Java platform but has many unique features. I would say that .NET inherits the best achievements of Java and adds some new superior concepts such as support of multiple programming languages.
Applications that were written in one of .NET languages (C#, VB.NET, etc.) are often called managed applications. The word managed means that those applications work under control of .NET Runtime. It is worth to mention that there is another kind of applications which do not use .NET Runtime; these applications are called native ones.
Pros and Cons
Application development with .NET is much more easier and productive comparing to native application development and brings many benefits to developers and product quality. However .NET has some weak points. The most concerning one is an ability to easily reverse-engineer an application after compilation. It is possible because managed applications are compiled to Common Intermediate Language (CIL) which contains a lot of additional meta data. So it's a piece of cake for decompiler tool to reverse the source of an application. You may take a look at .NET Reflector tool as a proof of concept.
The Solution
Eazfuscator.NET allows to minimize the risks of possible decompilation. It uses several techniques to prevent reverse-engineering of applications. The short description of obfuscation process is: sensitive data are hashed or encrypted, superfluous meta data are removed.
Is Obfuscation the Right Thing?
It is possible to find a lot of flaming forum threads on the Internet where people debate about obfuscators and their applicability. However if you value your intellectual property then I would say that obfuscation is a must-have for your precious software products.
Yes, it is the right thing and it makes a big difference when it comes to securing the income of your products.