Babel Obfuscator

Babel Obfuscator is a powerful protection tool for the Microsoft .NET Framework.

Learn more about Babel Obfuscator

Request a Quote

What is Babel Obfuscator?

Resources

  • Supports all major .NET Framework technologies
  • Symbol renaming
  • Overloaded rename
  • Cross-mount renaming
  • Ofuscação de XAML e BAML
  • Code encryption and virtualization
  • Obfuscation of the control flow
  • String Encryption
  • Value and matrix encryption
  • Anti-debugging protection
  • Hide external and internal calls
  • Metadata and code optimizations
  • Assembly and incorporation of assembly
  • Automatic obfuscation of satellite sets
  • Code instrumentation
  • PDB debugging support
  • Exception stack trace clearance
  • Encryption and compression features
  • Suporta DevOps, MSBuild e NAnt Build
  • Command line and graphical user interface

Obfuscation and protection

Babel Obfuscator is a powerful protection tool for the Microsoft .NET Framework. Programs written in .NET languages, such as C# and Visual Basic .NET, are typically easy to reverse engineer because they are compiled into the Microsoft Intermediate Language (MSIL), a CPU-independent instruction set built into .NET assemblies, along with metadata that allows the reconstruction of the original source code. The Babel Obfuscator is able to transform assemblies to hide the code, so that reversal is extremely difficult.

Renaming symbols

Babel Obfuscator can rename types, methods, properties, events, fields, namespaces, and method parameters. The name of the original symbol is changed, so it is no longer possible to retrieve the meaning of the obfuscated member. This makes it extremely difficult to understand code and reverse engineering. You can choose two different renaming conventions: alphabet characters and unprintable Unicode symbols. Both minimize the number of character symbols used by reducing the overall metadata size and load time.

Overloaded rename

With overloaded renaming, the same name is used to rename methods with different signatures, as long as allowed by .NET Framework design rules. This makes it even more difficult for a hacker to reverse engineer the code. Babel also renames overloads when only the return type of the method is different, making it impossible to completely decompile code for high-level languages such as C# and VB.NET, where return type overload is not allowed.

Custom Unicode Characters

Babel accepts a custom Unicode character set used to generate obfuscated member names. The user can customize their character set, increasing the illegibility of the disassembled code.

Renomeação de XAML e BAML

Babel Obfuscator can analyze XAML and BAML features and rename all members mentioned in the XAML/BAML code to produce better obfuscation by increasing the percentage of obfuscated symbols. This also makes it difficult to read your XAML code. Babel can also merge into a single assembly file with multiple assemblies that contain XAML/BAML resources.

Cross-mount renaming

The Babel Obfuscator can obfuscate public members across multiple assemblies and then align the names of the obfuscated symbols referenced in each assembly. This maximizes the overall number of renamed symbols, further improving obfuscation.

Built-in value and matrix encryption

Constant values and arrays can contain sensitive information, such as encryption keys, that the user wants to hide for the disassemblers. Babel Obfuscator can encrypt constant values and arrays, providing an extra layer of protection.

Resource encryption

Managed resources can be compressed and encrypted to protect your assets and also to reduce the overall size of the assembly. Encrypted resources are loaded at runtime when they are eventually needed.

Obfuscation of the control flow

Obfuscation of the control flow consists of changing the execution path of a method. Babel can make the statements more complex to read, insert multiple irrelevant branches, add multiple swap statements without changing the behavior of the method, so that it is very difficult to analyze after decompiling.

Code encryption and virtualization

Babel Obfuscator can encrypt and virtualize the byte code of a method to make it totally unrecognizable to any decompiler. The method runs at run time on a virtual machine. This process is done entirely in managed code: there is no use of unmanaged stubs, native CPU instructions, or external platform invocation calls. The encrypted method is not available to decompilers and is extremely difficult to debug.

Dynamic proxy call

With dynamic proxy calls, you can hide all calls to external and internal methods, within the types of delegates dynamically created at runtime.

Violation detection

The .NET Framework can detect that an application was tampered with when the assembly was signed. Babel Obfuscator can add an extra layer that will allow custom logic to run if the application has been tampered with.

System Requirements

  • Any 32/64-bit version of Windows that supports at least Microsoft .NET Framework 4.7.2. It can be Windows 10, Windows Server 2012 and later, Windows Vista, Windows 7, and Windows 8.x
  • O Microsoft .NET Framework 4.7.2
  • The Windows Software Development Kit (SDK), specifically the .NET tools it includes.
  • Visual Studio 2008 or later, which can be a free Express edition
  • Adobe PDF Reader

You don't know what software you need or you haven't found what you were looking for?

You don't know what software you need or you haven't found what you were looking for? We have a team ready to help you choose the right software for your company.