Obfuscar is a basic obfuscator for .NET assemblies. It uses massive overloading to rename metadata in .NET assemblies (including the names of methods, properties, events, fields, types and namespaces) to a minimal set, distinguishable in most cases only by signature.
See the version list below for details.
Install-Package Obfuscar -Version 2.1.1
dotnet add package Obfuscar --version 2.1.1
<PackageReference Include="Obfuscar" Version="2.1.1"> <PrivateAssets>all</PrivateAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets> </PackageReference>
paket add Obfuscar --version 2.1.1
* Fixed GitHub#60 Type forwarding in System.Runtime is not properly supported.
* Fixed GitHub#61 String hiding should skip resource manager creation methods.
* Fixed CodePlex#30 HideStrings setting does not work as documented.
* Fixed CodePlex#31 SkipStringHinding does not work.
* Fixed CodePlex#32 ForceStringHiding and related are added.
* Fixed GitHub#58 "protected internal" property/method is not treated as public API.
* Fixed GitHub#59 Special enumerator leads to InvalidOperationException in TypeKey class.
* Fixed GitHub#47 F# compiler can now be obfuscated.
* Fixed GitHub#55 The default value for the ObfuscatorAttribute is different.
* Fixed GitHub#56 SuppressIldasm setting is spelled as SupressIldasm in config.
* Fixed CodePlex#7 Avoid creating invalid overriding methods during obfuscation.
* Fixed CodePlex#9 Added command line options (help and version). Multiple project files can also be processed now.
* Fixed CodePlex#12 BAML reader error.
* Fixed CodePlex#13 Nested classes are obfuscated wrongly.
* Fixed CodePlex#17 PCL library wrongly refers to .NET 4 mscorlib.
* Fixed CodePlex#20 Environment variable support.
* Fixed CodePlex#24 MarkedOnly option does not always work.
The changes since last commit on Google Code include,
* Merged all patches from RemObjects' fork.
** Unicode chars can be used as obfuscated names.
** Better dependency resolution.
** Various other small fixes.
* Merged patches from @AngryAnt (Emil Johansen)'s fork
** Korean chars can be used as obfuscated names.
** New tags are introduced (I could not yet verify every one, as there is no corresponding unit test cases).
* Add an option to automatic exclude of public types and members so that public API is kept.
* Add an option to automatic include all non-public types and members so that private API is obfuscated.
* Add Force* rules to supplement Skip* rules.
* Various bug fixes.
This package has no dependencies.
This package is not used by any popular GitHub repositories.