Opaquer Basic gives you professional-grade .NET code protection at no cost - name obfuscation, string encryption, control flow, WPF/BAML shielding, and digital watermarking included. No trial. No expiry. No credit card.
Opaquer Basic is a free .NET obfuscator for developers who want to protect .NET assemblies from decompilation and make reverse engineering more difficult. It provides a practical alternative to open-source .NET obfuscators and can be used with compiled C#, VB.NET, and other .NET applications without requiring the original source code.
The Basic edition is not a crippled demo. Every obfuscation algorithm ships free. Here's what you get from day one.
Replace every meaningful identifier - class names, method names, fields, properties, events - with randomized tokens. Optionally use non-printable characters that prevent recompilation of the deobfuscated IL entirely.
Private · Public · Internal - all freeEvery string literal in your assembly - connection strings, license keys, SQL queries, URLs - is encrypted at build time and decrypted only at runtime. Static analysis tools see only opaque byte arrays.
AES-256 · 3DES · SHA-256 - all freeIL method bodies are decomposed, reordered, and reassembled with opaque predicates and fake branches. The application behaves identically at runtime, but decompilers output unreadable or incorrect code.
Per-method granularity - freeXAML compiles to BAML which is embedded in your assembly and trivially extractable. Opaquer encrypts these BAML resources so WPF inspection tools throw exceptions instead of revealing your UI layout and bindings.
Requires .NET 6+ and C# - freeInject a persistent, tamper-resistant ownership signature into every protected assembly. If someone repackages or redistributes your software, the watermark stays embedded and detectable through Opaquer's interface.
Tamper-resistant - freeWorks with .NET Framework 1.0–4.8, .NET Core, and all modern versions: .NET 5, 6, 7, 8, 9, and 10. Opaquer protects any DLL or EXE published in a framework-dependent deployment.
.NET 8 · .NET 9 · .NET 10 - freeBrowse your assembly's complete structure in a tree view. Select exactly which classes, methods, fields, and strings to protect. Save named settings profiles for fast re-use. No command-line knowledge required.
GUI + saved profiles - freeAfter obfuscation, Opaquer outputs an XML file mapping every original name to its obfuscated token. Use it to decode stack traces and debug obfuscated builds without revealing the map to end users.
Debug-friendly - freeIf your assembly is strong-name signed, Opaquer automatically re-signs the obfuscated output with your original key. You can also delay-sign or remove the signature for development scenarios.
Strong-name key support - freeNo hidden restrictions on protection quality. The only three things that require a paid upgrade are about how and where you run the tool - not what it does to your code.
The Basic edition is GUI-only. You open Opaquer, load your assembly, configure settings, and obfuscate manually. Automating obfuscation as a post-build step in Visual Studio or running it unattended in a CI/CD pipeline (Azure DevOps, GitHub Actions, etc.) requires the CLI - available in Pro and Enterprise.
A Basic license installs on a single PC. It's ideal for individual developers working alone. If multiple developers on a team need to run Opaquer - or if you want to share obfuscation profiles and settings across machines - you'll need an Enterprise license, which covers team deployment.
Basic requires an internet connection for license validation. If your build infrastructure is air-gapped or operates behind strict network policies that prevent outbound connections, the offline build server mode is available in Enterprise.
The same free algorithms that ship in Basic transform your assembly's internals completely - without changing a line of source code.
Name Obfuscation replaces every visible identifier in your .NET assembly-types, methods, fields, properties, events, and nested members-with unreadable, meaningless tokens. Even though the names disappear, your application continues to run normally because the .NET runtime resolves members by metadata tokens rather than by their textual names.
Opaquer provides two independent naming modes: Non‑Standard Characters (default) and Non‑Displayable Characters (maximum protection). Both modes break the readability of decompiled output, but each serves a different purpose depending on your security requirements.
All obfuscation algorithms are identical across editions. Paid tiers add operational features for teams and automated pipelines - not stronger protection.
| Feature | Basic - Free | Pro - $189.99 | Enterprise - $489.99 |
|---|---|---|---|
| Obfuscation Algorithms | |||
| Private name obfuscation | ✔ Free | ✔ | ✔ |
| Public name obfuscation | ✔ Free | ✔ | ✔ |
| Internal name obfuscation | ✔ Free | ✔ | ✔ |
| String value encryption | ✔ Free | ✔ | ✔ |
| Lightweight control flow obfuscation | ✔ Free | ✔ | ✔ |
| WPF / BAML obfuscation | ✔ Free | ✔ | ✔ |
| Digital watermarking | ✔ Free | ✔ | ✔ |
| XML rename map (for debugging) | ✔ Free | ✔ | ✔ |
| Assembly signing support | ✔ Free | ✔ | ✔ |
| High-intensity control flow | ✘ | ✘ | ✔ Enterprise |
| Cloud code virtualization | ✘ | ✘ | ✔ Enterprise |
| Operational / Deployment | |||
| Graphical User Interface (GUI) | ✔ Free | ✔ | ✔ |
| Command-line interface (CLI / CI-CD) | ✘ Not included | ✔ | ✔ |
| Team deployment (multiple PCs) | ✘ Single PC only | ✘ | ✔ |
| Internet-free build server support | ✘ Not included | ✘ | ✔ |
| Private Keys Depot (cloud KMS) | ✘ | ✔ | ✔ |
| Price | $0 - Forever | $189.99 lifetime | $489.99 lifetime |
No installer wizard, no registration required for the Basic edition. Download, open, protect.
Grab the free Basic release directly - no account required. If your antivirus flags it, temporarily disable it during download; this is common for obfuscation tools that manipulate IL. Mirror links available at opaquer.net.
Launch Opaquer and click Open Local EXE or DLL for Analysis. The GUI loads your assembly's full structure - namespaces, classes, methods, fields, and string values - in a browsable tree.
Choose name obfuscation scope, enable string encryption, select control flow intensity, and pick your naming mode (Non-Displayable for maximum hardening). Use the checkboxes to include or exclude individual members. Save as a named profile with F4.
Press F5 (or click Obfuscate). Opaquer outputs the hardened assembly and an XML rename map. Open the result in ILSpy or dotPeek - class names, method names, and strings should be completely unreadable.
Run your full test suite against the obfuscated build. Pay attention to reflection-heavy code, serialization, and WPF data bindings. The XML rename map lets you trace any obfuscated identifiers back to originals for debugging.
Type.GetMethod("MyMethod")), those names must be excluded from obfuscation, because the runtime will look for the original name. Opaquer's GUI lets you exclude individual members with a checkbox.Every major obfuscation algorithm. No time limit. No credit card.
Need CLI or team deployment? See Pro & Enterprise →