This blog is dedicated to Eazfuscator.NET. Such a strange name was given to a special application which obfuscates .NET applications. Facts, motivations, history, thoughts and other aspects of Eazfuscator.NET obfuscator will be covered in this blog.
First of all I would like to make some short introduction to the .NET world and domain of obfuscation.
.NET is a technology from Microsoft which 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.
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.
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.
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.