Is there a .NET obfuscation tool present for Linux? Or is there a class which can provide me a functionality of writing a obfuscation tool for byte code?
- Just an aside: I'm not usually convinced how much obfuscation buys you.. the cheap ones can be broken; even the expensive ones can be reversed if you are determined enough. If you make the dll available (in any technology), consider it breakable.Marc Gravell– Marc Gravell2009-04-08 11:00:47 +00:00Commented Apr 8, 2009 at 11:00
4 Answers
Try this tool, its free : http://www.foss.kharkov.ua/g1/projects/eazfuscator/dotnet/Default.aspx#downloads and it does what commercial products do.
1 Comment
Do you want an obfuscator that executes under Mono or one that outputs assemblies that will run under Mono?
If you want one that runs under Mono I don't know of any whose GUI runs under Mono but I do know that we have tested the Dotfuscator command line interface internally under Mono and it works. This is not (yet) an officially supported or extensively tested solution so your mileage may vary.
Dotfuscator accepts any standard MSIL assembly and we only emit 100% PEverifiable assemblies out so as long as your source assembly is Mono compatible the Dotfuscator output should also be Mono compatible. This can be verified using the Mono Migration Analyzer on both your source assembly and the Dotfuscator output.
Disclaimer: I do work for PreEmptive Solutions, the makers of Dotfuscator.
4 Comments
You might try Spices.Obfuscator. It advertises that it supports Mono but that may be that it generates assemblies which are compatible with Mono (assuming they were in the first place) rather than runs on Mono. Since they indicate they obfuscate themselves it would suggest that their command line app stands a good chance of working (I suggest you try downloading their evaluation package)
I concur with Marc Gravell's comment on their utility, especially once you start using c# 3.0 features which make the resulting unobfuscated decompiled code pretty ugly anyway. If the code is local it can be broken, at best you remove meaningful names (at the cost of a permanent hassle for reflective scenarios).
Comments
Crypto Obfuscator supports Mono apps. It itself does not run on Mono, but all assemblies obfuscated with it will run on Mono as long as the original assemblies run too.
DISCLAIMER: I work for LogicNP Software, the developer of Crypto Obfuscator.