Larkware banner
border

Review: Assemblur

Assemblur 1.0, free
Metapropeller
http://www.metapropeller.com/index.htm

Assemblur is an obfuscator for .NET projects that works as a Visual Studio 2005 add-in. It's pretty simple to use: you pick your assemblies (ideally, by specifying outputs from a Visual Studio project, though you can also add assemblies from a fixed disk location), specify signing and output properties if you want to override what's built into the solution, and specify renaming rules and exceptions. Assemblur then hooks itself right into the build chain, so that when you build the project, it automatically gets obfuscated as a final step, with Assemblur's output appearing in the output window as you would expect. The whole is quite painless.

The nicest feature here is the Preview tab of the user interface, which lets you do a "dry run" of obfuscation to confirm the results of your renaming and exception choices before an actual build. It presents two treeviews showing types, members, string resources, and so on. To the left you see what's in the assembly right now, and to the right you see what will be in the assembly after Assemblur gets done with it. So if you've got a complex set of rules and exceptions (Assemblur supports excluding types from renaming based on their protection level or name, for example) you can confirm that the resulting assembly will have the interface that you expect.

Assemblur supports obfuscation in C#, VB, and managed C++ projects. The obfuscation appears to be limited to simple member renaming and some string obfuscation - there's no attempt to apply the sort of code-level obfuscation that higher-end packages include. The version currently available is free; the help refers to a distinction between a free version that can obfuscate a single assembly, and a paid version that handles multiple assemblies, but currently there appears to be no provision to register the application. If your obfuscation needs are light (being limited to a single assembly and member and type renaming), then Assemblur provides a free and painless way to handle them.

Assemblur screenshot  Click for larger screenshot 

Mike GunderloyLarkware is the editor of Larkware, the daily .NET newspaper of record.

Published December 4, 2006