The interfaces
Dotfuscator Professional
Dotfuscator itself is a command line tool, but through the interface shown
above, and the resulting XML file it generates, Dotfuscator gives you complete
control over how and where it applies obfuscation - although in most situations
everything should work fine without any tweaking whatsoever. When renaming identifiers,
you get a choice of what classes to exclude, and options such as adding your
own custom renaming prefix and changing what indentifiers are renamed to - be
it numbers, alphanumeric or unprintable unicode characters. My only complaint
about this interface is that it feels a little antiquated, and browsing for
a folder is far more painful than is necessary in this modern day! Obviously
though, once you've chosen the options you want, you can call dotfuscator automatically
from your build process and simply pass it the XML configuration file.
Demeanor for .NET, Enterprise edition
Demeanor is also command line based, but includes an additional program that
can be used stand-alone or as a Visual Studio .NET add-in, and like Dotfuscator,
uses an XML file to store configuration options. This makes the obfuscation
process a little easier to integrate into your existing build process if you're
using Visual Studio.
Conclusion
Both of these tools provide significantly increased protection for your source
code - and I have no major complaints with either of them. Demeanor provides
slightly less control over its behavoir, but also seemed to work first time
more often than Dotfuscator. In the end, the decision will come down to you
deciding which of the additional features you find most compelling. Both have
a large price tag, although there is also a "community" edition of
Dotfuscator available with a more limited feature-set.
|
Demeanor
for .NET
|
1 Developer License - $1250
(no discounts available for bulk purchases) |
|
Dotfuscator
Pro
|
1 Developer License - $1495
2 Developer License - $2395
5 Developer License - $4495
10 Developer License - $5995 |
(prices are correct at time of going to press).