What is .NET Reactor?

.NET Reactor is a powerful code protection and software licensing system for software written for the .NET Framework, and supports all languages that generate .NET assemblies. Its' main features are :

  • Intellectual property protection
    • NecroBit Protection
    • Native Code generation
    • Obfuscation
    • Control Flow Obfuscation
    • String Encryption
    • Anti Tampering
    • Resource Encryption and Compression
    • Dependency Merging
    • Protects full applications and libraries (dlls)
  • Powerful licensing system
    • Create trial versions of your software
      • Set an expiration date
      • Limit use to a fixed number of days after installation
      • Limit by number of uses
      • Limit to use for no more than a set number of minutes each invocation
      • Limit trial version functionality
    • Easily turn your trial version into a fully licensed version
    • License your software
      • Permanently (non expiring license)
      • By time period (i.e rent your software)
      • By number of uses (i.e software as a service)
  • Software development kit
    • Integrate license checking into you assembly and extend licensing fuctionality
    • Extend licensing functions with bespoke extensions.

Why you need to protect your intellectual property.

When you compile a program written for the Microsoft .NET framework, the program you provide to your users is not compiled into a native executable program, but instead is translated into something called the Common Intermediate Language instructions (CIL). CIL is half way between source code and native code, and is interpreted by the .NET framework when your program is run, rather than executed directly as machine code. Because of this, the source code of your application or library can be easily reproduced. Tools such as .NET Reflector (www.red-gate.com/products/reflector/) can reproduce source code from a compiled .NET assemblies in seconds, and in the .NET language of your choice! Clearly, commercial software distributed to end users without some form of protection is wide open to piracy and intellectual property theft.
The traditional solution to intellectual property protection in .NET is to use 'obfuscation', indeed Microsoft make an obfuscation utility available to Visual Studio users.

So why is obsfucation not enough?

Obfuscation is the process of making your source code more difficult (but not impossible) for humans to understand. Obfuscation works by replacing the meaningful names you assign to classes, methods, properties and variables with meaningless ones. For example, it may replace a variable name of "counter" with "A4DF3CV89G" - to humans these obfuscated names are confusing and difficult to remember, but have no effect on the NET Framework interpreter. Note that obfuscation does nothing to the source code within your methods, so it is not protected at all by obfuscation. .NET Reactor does everything an obfuscator does, but then wraps your intellectual property in several more layers of protection, denying access to your source code to even those who are determined to steal your hard work. .NET Reactor's protection has never been cracked, something which cannot be said about obfuscators.

Industry Leading .NET Reactor Source Protection

.NET Reactor prevents decompilation by a variety of methods which convert your .NET assemblies into processes which no existing tool can decompile ( and which are also very likely to prevent decompilation by any future tool). .NET Reactor builds a native code wall between potential hackers and your .NET assemblies by producing a file which cannot be understood directly as CIL. Because the CIL in your assembly is emitted intact only at run time or design time (in a form in which the source is completely inaccessible), no tool is capable of decompiling .NET Reactor protected assemblies.

The native code wall created by .NET Reactor between the hacker and your source includes industry leading NecroBit technology, which is exclusive to .NET Reactor. .NET Reactor's protection has never been broken since the first release in 2004. These technologies make reconstruction of your source code more difficult by so many orders of magnitude that NecroBit is by far the most effective protection you can use for .NET assemblies.

In addition to industry leading intellectual property protection, .NET Reactor provides powerful options for securing you revenue stream by enforcing licensing terms with a rich variety of trialversion and full version locks.

.NET Reactor offers you an easy and reliable way to:
arrow rightSecure your .NET applications and .NET libraries
arrow rightReplace CIL code with native code
arrow rightPerform additional layers of protection, including obfuscation
arrow rightMerge assemblies, and
arrow rightProtect your revenue by enforcing trial version restrictions and full version licensing terms.

Key Features Description
Application, Library and Windows Service
Whatever your .NET product, .NET Reactor protects it.

Windows Windows Forms Applications, Console Applications, Windows Services, Control & Class Libraries, WPF Applications & Libraries, WinRT/Metro Applications & Libraries
Web ASP.NET Applications & Libraries, ASP.NET Services, WCF Services, Sharepoint WebParts
Silverlight Silverlight Applications & Libraries
Smart Device Windows Phone and Compact Framework Applications & Libraries
Others SQL Server CLR Assemblies, Mono Applications & Libraries
.NET Reactor offers full protection support for your ASP.NET Applications and Libraries.
.NET Reactor supports all .NET Framework implementations, including Compact Framework, Silverlight and Mono:
NET Framework 1.1/2.0/3.0/3.5/4.0/4.5/4.6
.NET CF 1.1/2.0/3.5
Windows Phone 7/8/10
Silverlight 2.0/3.0/4.0/5.0
Mono 1.x/2.x
64-bit Support
.NET Reactor supports 32-bit and 64-bit Assemblies.
.NET Reactor can merge or embed multiple .NET files into one executable(.exe) or library(.dll).
.NET Reactor is able to compress applications and embedded files up to 50-75%.
NecroBit IL Code Protection
NecroBit is a powerful protection technology which stops decompilation. NecroBit replaces the CIL code within methods with encrypted code. This way it is not possible to decompile/reverse engineer your method source code.
Anti ILDASM / Anti Decompiler
No tool can disassemble/decompile .NET Reactor protected code. ILDASM(the Microsoft Intermediate Language disassembler) will actually report that it cannot interpret .NET Reactor protected assemblies.
Native EXE File
.NET Reactor is able to generate a native x86 EXE file stub for your application. This way it is not possible to directly open your protected application in a decompiler. The decompiler recognizes your protected application as a native EXE file.
Pre-JIT Methods
In combination with the Native EXE File feature and NecroBit, .NET Reactor is able to convert managed methods into REAL x86 native code. Only methods which doesn't affect the runtime and platform behavior (mostly small methods like property getters/setters...) are converted into native code. By nature this feature has an built-in protection against assembly modification.
In addition to source protection, .NET Reactor provides thorough class and member obfuscation complemented by different exclusion schemes, use of non-printable characters in obfuscated names, and even incremental obfuscation, which always generates the same obfuscation strings for type and member names.
Declarative Obfuscation
Declarative Obfuscation support allows you to directly define which types and members should be excluded from obfuscation. This can be done by using the custom attribute System.Reflection.ObfuscationAttribute in your source code. .NET Reactor automatically detects the attribute and excludes the corresponding types and members from obfuscation.
Control Flow Obfuscation
Control Flow Obfuscation converts the code inside your methods into spaghetti code, which whilst retaining the function of the code makes it extremely difficult for human eyes and decompilers to follow the program logic. Decompilers are not able to decompile the spaghetti code back to your original source code.
string encryption
String Encryption
String encryption makes it difficult for a hacker to understand your code and to attempt a code patch of your assembly, as he will be unable to identify the text of messages or other useful strings, making it much more difficult to identify where to patch your code. This feature has a built-in protection against assembly manipulation.
Strong Name Removal Protection
Strong Name Removal Protection prevents your protected assembly from being tampered by hacker tools as they are not able to correctly resign the assembly with a different stong name.
Resource Encryption and Compression
.NET Reactor can improve protection and assembly size by compressing and encrypting your managed resources. At runtime, when required the resources are automatically decompressed and decrypted.
Powerful Licensing System
Powerful  and flexible, the .NET Reactor licensing features allow you to enforce your license conditions and protect your revenue stream by using hardware and software locks. The license manager can build trial or permanent licenses, in a matter of seconds. A fully documented software development kit (SDK), complete with examples, allows you to call the licensing system directly from your code, allowing you to create custom extensions to the licensing system.
Third Party Support
.NET Reactor is a mature product which has attracted third party development of add-ons.
Full Language Support
.NET Reactor supports all types of managed assemblies (C#, VB.NET, Managed C++, ASP.NET, Delphi.NET, J#...).
Intuitive GUI
An intuitive, easy-to-operate GUI provides quick, comfortable operation.
Command Line Support
All features support command line invocation, and event driven invocation by Visual Studio Build Events. .NET Reactor produces the finished product in the same way you do.
Fairly priced
Everyone needs .NET Reactor, and .NET Reactor is priced to make ownership affordable — Compare with other products and features
We trust our product. .NET Reactor is protected by itself.
Further Tools / Features
Further tools and features include a ShareIt Module Generator, Standalone License Generation Tool, Multi Assembly Protection, Strong Name Support, Digital Certificate Support, and even a Phone License Activation System.


The Protection System:

protection system

protection system 2

The Licensing System:

license system


Our products are compatible with all .NET languages and supports all Operating Systems where .NET Framework or Mono can be installed.

Supported Languages : Supported Platforms: Supported Platforms (Xamarin) : Supported Platforms (Mono) :

    and many more...

  Windows 98
  Windows ME
  Windows NT
  Windows 2000
  Windows XP
  Windows Server 2003, 2008, 2012
  Windows Vista
  Windows 7
  Windows 8/8.1
  Windows 10

  Apple iOS

  Linux - SUSE, Novell, Red Hat, Debian...
  Mac - OS X
  BSD - OpenBSD, FreeBSD, NetBSD

  some of our customers