Obfuscar
github.com
What it is
Obfuscar is a free tool for obfuscating .NET assemblies on Linux, macOS, and Windows. It renames metadata—including methods, properties, events, fields, types, and namespaces—to short names, making decompiled code harder to follow. The shorter names can also reduce executable size. An optional string-hiding feature replaces string loads with calls that retrieve values from a buffer, at a small performance cost; the project notes that this hiding is reversible. Configuration uses an XML file to specify assemblies, dependency paths, and output location. Obfuscar is available as a NuGet package and a .NET Global Tool, with command-line use. Its 3.0 beta requires absolute paths and rejects relative paths and variable placeholders. The project cautions that obfuscation does not stop a determined reverse-engineering effort and that malformed or malicious assemblies can cause unexpected behavior, including crashes or hangs. It recommends processing only trusted inputs.
Spec sheet
- Purpose
- Obfuscar obfuscates .NET assemblies by renaming metadata to make decompiled code harder to follow.Read 8 Oct 2026 · docs.lextudio.com
- Integrations
- The project documentation lists community projects for parsing Obfuscar mapping files and generating Obfuscar XML configuration for Unity, and says they are unaffiliated.Read 8 Oct 2026 · docs.lextudio.com
- Support
- Community help is available through Stack Overflow and GitHub issues, and commercial support is provided by LeXtudio Support Services.Read 8 Oct 2026 · docs.lextudio.com
- Confidential strings
- The documentation says string hiding is reversible and advises against storing confidential information as strings in assemblies.Read 8 Oct 2026 · docs.lextudio.com
- Configuration
- Obfuscar uses an XML configuration file to specify assemblies to obfuscate, dependency paths and output location.Read 8 Oct 2026 · docs.lextudio.com
- Current beta constraint
- Obfuscar 3.0 requires absolute paths in configuration and rejects relative paths and variable placeholders.Read 8 Oct 2026 · docs.lextudio.com
- Distribution
- Obfuscar is available as a NuGet package and as a .NET Global Tool.Read 8 Oct 2026 · docs.lextudio.com
- Executable size
- The shorter generated names can dramatically shrink executable size.Read 8 Oct 2026 · docs.lextudio.com
- Metadata renaming
- It renames methods, properties, events, fields, types and namespaces to a minimal set of names.Read 8 Oct 2026 · docs.lextudio.com
- Platform compatibility
- The configuration guide gives examples for macOS, Linux and Windows paths.Read 8 Oct 2026 · docs.lextudio.com
- Protection limitation
- The documentation says obfuscation makes reverse engineering difficult but does not stop someone determined to reverse engineer the assembly.Read 8 Oct 2026 · docs.lextudio.com
- Security limitation
- The project warns that malformed or malicious assemblies can cause unexpected behavior, including crashes or hangs, and says to process only trusted inputs.Read 8 Oct 2026 · github.com
- String hiding
- Obfuscar can hide string constants by replacing string loads with calls that retrieve strings from a buffer, with a small performance cost.Read 8 Oct 2026 · docs.lextudio.com
Plans and prices
Strong points and limits
Strong points
- Renames several types of .NET metadata.
- Shorter names can shrink executable size.
- Available as a NuGet package and .NET Global Tool.
- Supports optional string hiding.
Limits
- String hiding is reversible and adds a small performance cost.
- Obfuscation cannot stop determined reverse engineering.
- Version 3.0 beta rejects relative paths and placeholders.
- Malformed or malicious inputs can crash or hang.
Who it suits
Obfuscar suits developers who want to make decompiled .NET assemblies harder to follow and can configure processing through XML. It is available for Linux, macOS, and Windows.
Verdict
Obfuscar provides free assembly obfuscation with metadata renaming and optional string hiding. Its documentation makes clear that obfuscation is not a complete barrier to reverse engineering, and that string hiding is reversible.
Where Specifiction places it
- Code Obfuscation Software#23 of 347.5