coolwolf / 16/03/2013

Obfuscators (code encryptors) for .net

obfuscate
Because of dotfuscator coming with visual studio gives very entry level !protection, i had to use another obfuscator.
A few months ago i had maked a little google search. then i found Eazfuscator. It was enough for a singe developer like me. But in time Eazfuscator become commercial and i had to stop encrypting my software publications. It was not a big problem because most of my software has local install source.
But last week i had to distribute a software on my web site. For some reasons i can not share its source code. So the solution is to obfuscate (encrypt) the code. So i started again to found a replacement for eazfuscator.
Here i will share my experiments.
1. Eazfuscator  ($399):
Ofcourse my first try was eazfuscator. Because it is very easy to use it. You just install it. Then drag solution into eazfuscator’s green area. That’s all. Whenever you build and publish your project it will be obfuscated. You do not have to do additional steps.
It is not very expensive. $399 is acceptible price. I decide to use it in trial period (30 days) and then buy it. But when i install and use the eazfuscator, it show me “builded applciation will not work after 7 days”. I can not buy it in 7 days. In this step i continue my research for alternative obfuscator.
2. Orange Heap (free):
I heard it before. Download and installation was easy. After that it show me a screen. You choose the source and destionaton folder. As i understand after that the applciation obfuscate the executables and puts in the output folder. In comparison to eazfuscator it is not easy for me. I am using clickonce to publish my applications. So i rght click on my solutions in visual studio and choose publish. This is the way i publish my applicastions. When using eazfuscator i do not have to do additional steps. With orange heap i have to create executables first. Then use another installer than clickonce and also another than visual studio installer project. You can use install project in visual studio. But you have to configure the installer project. Ofcours i make a search on the google. May be another one think this is not easy and made a tutorial how to use orange heap with visual studio. But no success. I read the help file in pdf format (it is included with installation). There are good samples. But there is no information about how to integrate with visual studio. At he end i decide to do not use orange heap. When i use another installer orange heap will be my choice.
3. NToolbox Yano (free):
No visual studio integration.
4. The Enigma Protector ($149):
No visual studio integration.
5. Phoenix Protector (free) :
No Visual Studio integration.
6. ILProtector (free) :
From these address add the following code to your post build event. Do not forgot: it will protect only RELEASE builds. Debug builds will not be protected.
On 32 bit windows :

if /I "$(ConfigurationName)" == "Release" "c:\Program Files\VgrSoft\ILProtector\ILProtector.exe" "$(TargetPath)" -nologo

On 64 Windows :

if /I "$(ConfigurationName)" == "Release" "c:\Program Files (x86)\VgrSoft\ILProtector\ILProtector.exe" "$(TargetPath)" -nologo

I have another obfuscators to try. I will share my expreiences here. If you have anything to add to this post, please be free. Just specify in the comment, i will ad your suggestion to this post.
Decompilers (reflectors) i used to try opening obfuscated source code :
ILsPy
JustDecompile
Red Gate reflector (trial)
.