all groups > dotnet compact framework > april 2007 >
You're in the

dotnet compact framework

group:

Obfuscation with Xenocode


Obfuscation with Xenocode David
4/28/2007 12:26:01 PM
dotnet compact framework:
I downloaded a trial copy of Xenocode, but it breaks my application.

I loaded my CF1 app and two assemblies, and selected the "Minimize size -
recommended for CF apps" option. I also turned off "metadata reduction" (so I
could use mapping file feature) and "dead code elimination" (because my app
kept bombing with a message saying things had been dead-code stripped) and
added a [Xenocode.Client.Attributes.RenameSymbol(false)] attribute in front
of every property that is used by reflection.

Now I'm getting MissingMethodException errors. In some cases, these are
thrown by CF when trying to call my overrides for such methods as OnClosing,
which Xenocode has elected not to rename (obfuscate). In other cases, they're
thrown by my overrides trying to call the CF base class.

If I tell Xenocode to rename the OnClosing method, this particular problem
goes away. My application then bombs with the next error, and so on. I've
spent two days chasing my tail :-(

Has anyone run into these issues? Is there a guide somewhere on how to
configure things? Can anyone recommend a different obfuscator?

TIA

--
David
Re: Obfuscation with Xenocode Neville Lang
4/30/2007 12:00:00 AM
David,

I have used Xenocode successfully for about 3 years now. Since I migrated my
app from VS .NET 2003 to VS2005, I upgraded my older Xenocode 2004 to
Postbuild 2007, the new name of the product.

Broadly, there are 4 features that you can use, namely: Symbol Renaming,
Control Flow Obfuscation, ILDASM Suppression and String Encryption. I found
that for my CF1 app (when it was in VS .NET 2003) that I could only use
Symbol Renaming and Control Flow Obfuscation. Both ILDASM Suppression and
String Encryption caused problems in my app and so I stopped using them.

After migrating my CF1 app to VS2005 (still using CF1 at the moment) and
Postbuild 2007, I have not had the time to see if ILDASM Suppression and
String Encryption still fail or not.

Hopefully this information my help you.

Regards,
Neville Lang



[quoted text, click to view]

Re: Obfuscation with Xenocode Graham McKechnie
4/30/2007 12:00:00 AM
David,

[quoted text, click to view]
One that works well on the desktp and also claims to suppport CF is .Net
Reactor. http://www.eziriz.com/

I've used it successfully for a desktop app, but haven't tried it yet on my
CF app.

Graham

[quoted text, click to view]

Re: Obfuscation with Xenocode David
4/30/2007 7:50:03 AM
Rebuilding my application as a single assembly, before running it through
xenocode, seems to have solved the immediate problem.

--
David
Re: Obfuscation with Xenocode Chris Craft
5/1/2007 8:06:47 PM
Hi David,

[quoted text, click to view]

..NET Obfuscator, Code Protector, and Pruner
http://preemptive.com/products/dotfuscator/index.html

Salamander .NET obfuscator
http://www.remotesoft.com/salamander/obfuscator.html

Hope that helps,
Chris Craft
http://www.cjcraft.com/blog/

[quoted text, click to view]
AddThis Social Bookmark Button