Home - Forums-.NET - Spices.Net - Obfuscate Assemblies


NET code security, tools to protect, obfuscate, tamper defense, code and data safety, recover, convert, optimize, explore, browse and analyze .Net software.

This forum related to following products: Spices.Net Suite, Spices.Net Obfuscator, Spices.Net Decompiler

Obfuscate Assemblies
Link Posted: 18-Sep-2007 07:43
I am able to obfuscate an executable.  I create a project, add the .exe, configure the options and then click Obfuscate! from the Tools menu, right click or tool bar.  However, I have additional .NET assemblies (.dll) which are references.  When I add these to the project, all the Obfuscate options are grayed out / disabled.  I also tried to create a new project with just the assemblies and again, everything is grayed out.  I can set the Obfuscation Options for the assemblies, but I can't figure out what to do next.
Link Posted: 19-Sep-2007 02:19
Seems you've used v4.x when AssemblyBrowser is locked when obfuscation task is running.
1. Don't add referenced assemblies to the Spices.Project. In that case referenced assemblies will also obfuscated. You can add paths to the referenced assemblies to the SearchPaths (Edit->Options menu, find the SearchPaths property in the property grid) or add these files to your Spices.Project's References collection.
2. You can skip the 1. but dynamically resolve references to the assemblies in the process of the first obfuscation. Resolutions of referenced assemblies will solved in the global AssemblyResolutions collection (menu Tools->Manage Assembly Resolutions) and next time will automatically resolved.
Link Posted: 19-Sep-2007 09:28
I'm using a licensed version, v5.3.  I tried the suggested ways and they did not work.  

1a - Added the path to the SeachPaths
1b - Added the files to the Spices.Project's References collection
2 - Tools -> Manage Assembly Resolutions...nothing appears on this screen.

The .exe is obfuscated and copied to the Output directory, but the referenced assemblies are not copied (or obfuscated).
Link Posted: 19-Sep-2007 19:29
If you want to copy referenced assemblies into output directory, you can use Spices.Project.ObfuscationEvents to run custom tasks at different obfuscation steps.
Create .bat file that copies referenced assemblies to output directory, for example:

copy C:\\myasms\\MyRefAssembly.dll d:\\myoutputs

and specify that .bat in Spices.Project.ObfuscationEvents.AfterProjectObfuscation event to copy MyRefAssembly.dll to d:\\myoutputs directory.