混淆器和保護 Obfuscation and Protection
Babel Obfuscator是一款針對Microsoft .NET Framework程式碼加密和混淆的強大代碼保護工具。採用.NET語言編寫,如C#和Visual Basic .NET語言撰寫的軟體,其原始程式碼本身通常易於反向工程,編譯器會將您的原始程式碼轉譯成中間碼MSIL(Microsoft Intermediate Language),可以有效率的轉換為機器碼而與CPU無關的指令集。Babel Obfuscator混淆器能夠轉換指令集,以利隱藏程式語法,好讓反向工程變為一項十分艱鉅的任務。
Compatible with all .NET Framework technologies
- .NET 8.0, .NET 7.0, .NET 6.0, .NET 5.0
- .NET Core 2.x, 3.x
- .NET Standard 1.x, 2.x
- .NET Framework from v2.0 to v4.x
- .NET MAUI
- ASP.NET
- Blazor
- Xamarin for Android and iOS
- Universal Windows Platform
- Mono
- nanoFramework
- Silverlight
- Unity
General Features
- Protects your code and intellectual property against Reverse Engineering
- Compatible with all .NET Framework technologies
- .NET 8.0, .NET 7.0, .NET 6.0, .NET 5.0
- .NET Core 2.x, 3.x
- .NET Standard 1.x, 2.x
- .NET Framework from v2.0 to v4.x
- .NET MAUI
- ASP.NET
- Blazor
- Xamarin for Android and iOS
- Universal Windows Platform
- Mono
- nanoFramework
- Silverlight
- Unity
- Runs on Windows, MAC OSX and Linux operating systems
- Fully managed code encryption and virtualization
- Simplify the deploy of your application merging or embedding all dependencies into a single file
- Performs code optimization by reducing the overall metadata size and removing unused code
- Integrated with Visual Studio tools family, Azure DevOps, AppCenter, MSBuild and command line
- Available also as dotnet CLI global tool
Obfuscation and Protection
Babel Obfuscator provides an incredible number of features which can be easily accessed from the command line and also from a stunning graphical interface. Please take a look at the following list of available features
Symbols Renaming
Babel Obfuscator can rename types, methods, properties, events, fields, namespaces and method parameters. The original symbol name are changed, so it is no more possible to recover the meaning of the obfuscated member. This makes code understanding and reverse engineering extremely difficult. You can choose two different renaming convections: alphabet characters and unprintable Unicode symbols. They both minimize the number of character symbol used, reducing the overall metadata size and load time.
Overloaded Renaming
With overloaded renaming, the same name is used to rename methods with different signatures as long as it is 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 method return type differs, making it impossible to entirely decompile the code to high-level languages like C# and VB.NET, in which overloading the return type is not permitted.
Custom Unicode Characters
Babel accepts custom Unicode character set used to generate obfuscated member names. The user can customize its character set increasing the unreadability of the disassembled code.
XAML and BAML Renaming
Babel Obfuscator can parse XAML and BAML resources and rename all the members referenced into the XAML/BAML code to produce a better obfuscation increasing the percentage of obfuscated symbols. This also makes your XAML code more difficult to read. Babel is also able to merge into a single assembly file multiple assemblies containing XAML/BAML resources.
Code Encryption and Virtualization
Babel Obfuscator brings cutting-edge encryption and virtualization to the forefront of .NET development. This powerful tool encrypts and virtualizes the byte code of methods, rendering them completely indecipherable to any decompiler. It’s designed to work seamlessly with the latest versions of .NET, ensuring code security and compatibility.
Control Flow Obfuscation
Control flow obfuscation consists of changing the execution path of a method. Babel can make if statements more complex to read, insert a number of irrelevant branches, add multiple switch instructions without changing the behavior of the method so that it is very difficult to analyze after the decompilation.
Inline Value and Array Encryption
Constant values and arrays can contain sensitive information such as encryption keys that the user wants to hide to disassemblers. Babel Obfuscator can to encrypt constant values and arrays, providing an extra protection layer.
Resource Encryption
Managed resources can be compressed and encrypted to protect your assets and also to reduce the overall assembly size. The encrypted resources are loaded at runtime when they are eventually needed.
Code Optimizations
Babel Obfuscator can perform a series of optimizations during the obfuscation process. Automatic class sealing and removal of unnecessary attributes can increase the application performance and reduce the overall size on disk. Other optimizations like the removal of System.Enum types, besides reducing the metadata information helps to increase the degree of obfuscation.
Dead Code Removal
Babel can automatically remove unused code and metadata, reducing the assembly size on disk and improving the load time during execution.
Optimizations
Babel can perform a series of optimizations during the obfuscation process. Automatic class sealing and removal of unnecessary attributes can increase the application performance and reduce the overall size on disk.
Automatic class Sealing
Classes that are not used as base classes in an inheritance chain can be sealed. When the JIT compiler sees a call to a virtual method using a sealed type, it can produce more efficient code by calling the method non-virtually.
Cleanup of Unnecessary Attributes
Most of the times, the compiler-generated code it is full of attributes that can be removed without affecting the behavior of the application during execution. Babel can remove any unnecessary attributes applied to a defined type or member reducing the overall disk size of the deployed application.
Const Fields and System.Enum Type Removal
Babel Obfuscator can remove, whenever possible, System.Enum types and const fields defined into the target assembly by replacing their metadata information with the relative constant values. This optimization saves disk space and also makes the disassembled code more difficult to understand due to the use of constants instead of field names.
Disgregate Properties and Events
This optimization performs the removal of properties and events information from the respective metadata tables. Properties and events removal combined with renaming produce a better obfuscation making more difficult to reconstruct the original code.
Inline Expansion
Inline expansion will allow to substitute the call to a method with the instructions in its body inline thereby saving the overhead of function invocation.
Tampering Detection
The .NET Framework can detect an application has been tampered with, when the assembly has been signed. Babel Obfuscator can add an extra layer that will allow you to execute custom logic in case the application has been tampered with.
Deployment
Babel Obfuscator provides a set of tools that make easy to deploy your application and help to debug the obfuscated code.
Merge Assemblies
Babel can merge dependency assemblies into your application assembly, providing an effective solution to single-assembly deployment. Our merge algorithm is NOT based on ILMerge or other third-party tools and is able to merge all kind of assemblies included WPF and Silverlight containing BAML and XAML resources. Babel can also change the visibility of public types when merging referenced assemblies. This change increases the number of symbols that Babel can rename, thus improving the effectiveness of the obfuscation.
Embed Assemblies
Referenced assemblies can be embedded into the main application assembly. Babel can embed multiple assemblies into the main application reducing the overall size of the deployed application.
Handling of Debug Symbols
Babel Obfuscator can handle PDB debug symbol files merging and fixing debug information during the obfuscation process. So it is possible to use debug symbols files with obfuscated assemblies to decode exception stack trace information or even perform step through debugging in Visual Studio.
Decoding of Obfuscated Stack Trace
Babel can decode the obfuscated stack trace in exception reports
Enterprise | Ultimate |
Single User License | Site License |
• Symbol Renaming • Control Flow • String Encryption • Code Encryption • Optimizations • Windows • One PC and Laptop |
• Symbol Renaming • Control Flow • String Encryption • Code Encryption • Optimizations • Windows Linux and MAC • Unlimited PCs and Laptops • Babel Encrypt Plugin • NuGet Packages • Build Servers |
System Requirements
- Any 32/64-bit version of Windows that supports at least the .NET Framework 4.7.2. This can be Windows 11, Windows 10/7, Windows Server 2012 and later
- The .NET Framework 4.7.2 and any later version
- Visual Studio 2008 or later, which can be a free Express edition
- Adobe PDF Reader
Babel Licensing
Licensing for .NET Application and Components
Babel Licensing is a comprehensive and robust licensing solution designed to empower software developers and companies with flexible and secure license management capabilities. Whether you’re an independent developer or part of a large enterprise, Babel Licensing provides the tools and infrastructure you need to effectively protect and monetize your software products.
特色
General Features
Completely managed solution to build licenses for .NET applications and components
Babel Licensing offers a fully managed solution designed specifically for .NET applications and components, providing a comprehensive framework for the creation, deployment, and management of software licenses. This solution is tailored to meet the needs of developers working across all .NET environments, from traditional .NET Framework applications to latest solutions built with .NET.
Works with any .NET technology from .NET Framework to latest .NET 8.0
- Microsoft .NET and .NET Core
- Microsoft .NET Framework (v2.0 to v4.8)
- NET Standard
- ASP.NET
- .NET MAUI
- Xamarin
- UWP
- Mono
Flexible licensing model
Choose from a range of licensing models to suit your business needs. Whether you require floating licenses for concurrent usage, activation-based licenses for offline environments, or file licenses for easy distribution, Babel Licensing has you covered. Customize license parameters and restrictions to align with your licensing strategy.
- Trial licenses
- Hardware-locked licenses
- Feature-based licenses
- Custom license restrictions
- Customizable license fields
Centralized License Management
Manage your licenses efficiently through the Babel Licensing Services. Gain centralized control over license generation, activation, revocation, and deactivation. Monitor license usage, track activations, and ensure compliance across your customer base.
Enhanced Security Measures
Security is paramount when it comes to licensing. Babel Licensing implements industry-standard security measures to safeguard your licenses and intellectual property. Utilize RSA-based signature algorithms, encryption, secure communication protocols, and access controls to protect against tampering and unauthorized usage.
Can run on Windows, Linux and OSX
Whether your software is intended for Windows-based systems, Linux servers, or macOS devices, Babel Licensing offers the flexibility to protect and license your applications on these diverse platforms. This multi-platform compatibility allows you to reach a wider audience and cater to users using different operating systems without compromising on licensing functionality.
It perfectly matches with Babel Obfuscator to provide best in class security for any application running on .NET
By combining the power of Babel Licensing with Babel Obfuscator, you can ensure the utmost protection for your software. Babel Obfuscator helps safeguard your code against reverse engineering and intellectual property theft by applying advanced obfuscation techniques. It transforms your code into a highly secure and unreadable form, making it extremely difficult for hackers to understand and tamper with. The obfuscated code, combined with robust licensing mechanisms, creates a formidable barrier against unauthorized usage and piracy attempts.
NEW! WordPress Integration
Seamless WordPress Compatibility
Babel Licensing now integrates directly with WordPress, allowing you to manage software licenses within your WordPress environment seamlessly. This integration facilitates easy deployment of licensing operations directly from your WordPress dashboard, enhancing accessibility and convenience.
WooCommerce Support
Automatically create and manage licenses when orders are processed through WooCommerce. This integration ensures a streamlined workflow from sales to software delivery and licensing.
Automated Email Notifications
Configure and send customized email notifications through WordPress for events like new orders, license expirations, or updates. Utilize predefined templates or create custom ones to keep your customers informed throughout the licensing lifecycle.
版本介紹
Server Edition | Data Center |
1000 License Tokens | Unlimited License Tokens |
• Babel Obfuscator Ultimate edition • Babel Encrypt Plugin • Babel Licensing Service • Licensing Tools • Licensing Database • NuGet Packages • Windows Linux and MAC • Build Server (DevOps, GitHub) • 1000 License Tokens |
• Babel Obfuscator Ultimate edition • Babel Encrypt Plugin • Babel Licensing Service • Licensing Tools • Licensing Database • NuGet Packages • Windows Linux and MAC • Build Server (DevOps, GitHub) • UNLIMITED License Tokens |