Automatic obfuscationAutomatic obfuscation

Your assembly is analysed to setup safe obfuscation without any configuration.

Build tool integrationBuild tool integration

Works with Visual Studio and any other build environment.

XAML ObfuscationXAML Obfuscation

Protect easy to read XAML and BAML streams.

Control Flow ObfuscationControl Flow Obfuscation

Prevent reverse engineering and hacking by making spaghetti.

Dependency Injection/MergingDependency Injection/Merging

Combine multiple assemblies into a single file for easy deployment.

String EncryptionString Encryption

Protect valueable information in your code with encryption.

Code AssistantCode Assistant

Helps you finetune your obfuscation settings.

Debug and Support toolsDebug and Support tools

De-obfuscate stack traces to track down problems in obfuscated assemblies.

Automatic obfuscation

Automatic obfuscation

Obfuscation is critical for the protection of your Intellectual Property in .NET applications. Because of the nature of the .NET framework, your applications will show a lot of your Intellectual Property. Obfuscation will change the name of your classes and members to unreadable characters. This make understanding your code much more complicated.

DeepSea Obfuscator will automatically detect code that cannot be obfuscated using its Smart Protection rules. You can also exclude classes and/or members from obfuscation using standard Obfuscation attributes or an External Configuration file.

Build tool integration

Build tool integration

Protecting your .NET applications is essential, but you don't want to spend too much time on it. You want your obfuscation to integrate nicely into your build environment.

DeepSea Obfuscator comes standard with deep integration in VisualStudio and has excellent support for MSBuild and NAnt. If that does not fit your environment, you can also use a command line interface.

XAML Obfuscation

XAML Obfuscation

Developing modern applications with WPF or Silverlight implies that you leave a lot of information about your application easily readable. The XAML/BAML streams used in such applications contain a lot of information that can be used by a hacker.

DeepSea Obfuscator will modify these streams just like it modifies type and member names. As a result, a hacker will be confused by all meaningless names.

Control Flow Obfuscation

Control Flow Obfuscation

Due to the nature of the .NET framework all code in a .NET assembly is visible and is subject to reverse engineering. Commonly used tools are able to decompile this code into C# or VB.NET code which is almost identical to the original source code.

DeepSea Obfuscator will modify this code such that a decompiler can only make 'spaghetti' of it, even do the behavior of the application remains the same.

Dependency Injection/Merging

Dependency Injection/Merging

It is often easier to develop a large project in many different modules (assemblies). However from a deployment point of view, one (larger) assembly is preferred. Combining various assemblies into one will also improve the protection of your intellectual property.

DeepSea Obfuscator enables you to inject assemblies into another assembly with one (larger) assembly as the result. In this process you can make the entire injected assembly internal for better performance and protection.

String Encryption

String Encryption

Have you ever considered how much valuable information is contained in the literal strings used in your assemblies? It might contain passwords, SQL statements, internal URL's and so on.

DeepSea Obfuscator will automatically encrypt those strings in such a way that hacking your code becomes much more time consuming. The encryption algorithme used also serves a second purpose. If a hacker manages to sign your code with a different strong name, the entire application will break and become useless to the hacker.

Code Assistant

Code Assistant

Although DeepSea Obfuscator takes almost all decisions y itself, there are situations where you may want more control over the obfuscation process. For example, an assembly that uses reflection cannot be obfuscated fully automatic.

DeepSea Obfuscator let you control the obfuscation process using attributes. These attribute can be placed in your assembly or you can place them in an external configuration file. Which ever you choose, you can use a Code assistant to help generate code snippets for the various attributes, or edit an external configuration file.

Debug and Support tools

Debug and Support tools

Every application contains errors, so you must be able to find and solve them.

DeepSea Obfuscator assists you in that process. First a map file is generated during each obfuscation. This map file contains the new and old names for the identifiers found in your assembly. Using this map file DeepSea Obfuscator can de-obfuscate a stack trace.

DeepSea Obfuscator also updates any .pdb file attached to your assembly. Using this updates .pdb file, you can still debug your application after obfuscation.

Automatic obfuscation

Automatic obfuscation

Obfuscating you assemblies with DeepSea Obfuscator is very simple.

Just drag your assemblies into DeepSea and hit the Go button. DeepSea will take care of the rest.

Build tool integration

Build tool integration

Obfuscating your assembly in Visual Studio with DeepSea Obfuscator is very straight forward.

You can choose between the Single Assembly approach or you can choose the Obfuscation Project approach. If you only need to obfuscate one assembly, the Single Assembly approach is the easiest. Just set the Obfuscate property to Yes.

If you want to obfuscate many assemblies at once, use an Obfuscation Project. It's a full fledged Visual Studio project you can add to your solution.

XAML Obfuscation

XAML Obfuscation

Can you see how much information is in this XAML stream?

DeepSea Obfuscator makes hacking your code a lot more difficult by renaming all type and member names found in the XAML stream.

Control Flow Obfuscation

Control Flow Obfuscation

Can you understand what's going on here?
Dependency Injection/Merging

Dependency Injection/Merging

DeepSea Obfuscator enables you to merge dependencies by injecting them into the target assembly.

Use the code assistant to generate the snippet for each injected assembly or use the external configuration editor.

String Encryption

String Encryption

It's fascinating how much information you can get from literal strings found in an assembly.

Without the literal strings it is much harder to understand what's going on.

Code Assistant

Code Assistant

Are you also tired of reading a manual to find the exact attributes needed?

DeepSea Obfuscator comes with a Code Assistant that helps you generate the exact code snippets needed for custom obfuscation settings. You tell it what you want and DeepSea presents you the code snippet. Just click on it and paste it in your code.

Debug and Support tools

Debug and Support tools

Exception traces are a great feature of .NET, but an obfuscator will obfuscate these too.

DeepSea Obfuscator comes with a stack trace de-obfuscator that converts an obfuscated stack trace back into a readable one.