CryptoLicensing For .Net supports all versions of the .Net framework from v1.0 to v4.0 and Visual Studio 2002 to Visual Studio 2010. It also supports the .Net Compact Framework, .Net Micro Framework, Silverlight and XNA. It can protect assemblies created with any .Net language including C#, VB.Net, Managed C++, J#, etc.The new version features new protections like external and internal method call hiding, improvements and optimizations to existing protections like string encryption, Anti-Reflector and Anti-Reflection, .Net Micro Framework, improved support for x64 assemblies, LINQ, XNA and WCF projects, support for satellite assemblies. The new version also fixes miscellaneous bugs in obfuscation logic and has improved obfuscation speed.
Here are its features at a glance:
* Symbol Renaming
* Advanced Overload Renaming
* Method Call Hiding
* String Encryption
* Control Flow Obfuscation
* ILDASM Protection
* Anti-Reflection Protection
* Anti-Decompiler Protection
* Advanced Tamper Detection
* Advanced Anti-Debug & Anti-Tracer Protection
* Resource Encryption & Compression
* Assembly Embedding, Encryption & Compression
* Digital Watermarking For License Tracking
* Metadata Reduction
* Runtime Performance Optimizations
What's New In v2015
The following is the list of changes accumulated over the builds made since the previous version:
NEW: Inclusion Exclusion Rules Tab allows you to exclude or include symbols from any obfuscation setting, visually via a easy-to-use UI based hierarchical view. Advanced matching criteria are supported.
NEW: Produces new names each time assemblies are obfuscated even if they are not changed.
NEW: Ability for the Exception Reporting service to store reports in a database instead of the file system.
NEW: Support for new cultures (when processing satellite assemblies) introduced in latest .Net framework.
NEW: Exclusion/Inclusion rule patterns can now be applied to the attributes on the enclosing type as well as its entire hierarchy.
NEW: Ability to save full parameter type names in mapping file.
NEW: Support for RFC 3161 timestamp servers when Authenticode signing.
NEW: Ability to pass Exclusion/Inclusion Rules via the command line.
NEW: Exclusion/Inclusion rules can now be applied at the namespace level.
NEW: Added support for key files which only specify public keys (for delay signing).
NEW: Ability to specify the mainassembly (in which dependant or additional assemblies are embedded) via the command-line.
NEW: Ability to specify additional assemblies via command-line.
NEW: Ability to turn OFF encryption and compression on a project basis (applies to String Encryption, Resource Protection, Method Encryption etc).
NEW: Ability to add the DebuggerNonUserCode attribute to methods via Obfuscation attributes.
NEW: Support for obfuscating .Net Micro Framework 4.2 assemblies.
NEW: Visual Studio Integration Wizard now presents a list of all available configurations which you can select.
NEW: Visual Studio Integration Wizard now supports incremental integration - that is, you can run the wizard on your Visual Studio projects multiple times with different configurations or first/last projects.
NEW: Ability to access the Report ID in the exception reporting service, when a new report is sent.
NEW: Ability to select a specific report automatically in the Exception Viewer Dialog by passing the report ID via the command-line.
NEW: Ability to add the DebuggerStepThrough attribute to methods via Obfuscation attributes.
NEW: Assemblies to obfuscate can now be specified via the command-line.
NEW: Ability to specify the Signtool.exe path centrally for all obfuscator projects.
NEW: Ability to add assemblies to the obfuscation project via drag-drop.
NEW: Ability to suppress warnings via Obfuscation attributes or Exclusion/Inclusion Rules, both of which can be applied to methods, types or assemblies.
NEW: Improved auto-exclusion of API from renaming for WPF & Silverlight projects.
NEW: The CryptoLicensing DLL merge setting can now be specified via the command-line using the "mergelicensingdll=true|false" option.
NEW: The CryptoLicensing merge dll path now accepts environment variables.
NEW: The CryptoLicensing merge dll path can now be specified via the command-line via the "licensingdllpath=" option.
NEW: Dependant Assembly Embedding is now supported for .Net 1.0/1.1 assemblies also.
IMPROVED: Improved processing for certain assemblies with bad .Net metadata.
IMPROVED: Default exception reporting takes over if the custom exception handling code fails.
IMPROVED: Better diagnostic error messages when merging the CryptoLicensing dll in obfuscated assemblies.
IMPROVED: You are first prompted to save an unsaved modified project if a MRU project is opened.
IMPROVED: Assemblies added to the obfuscation project are now shown in a listbox instead of a dropdown list box, so they can be viewed all at once. Further, you can now select multiple assemblies from the listbox and easily change obfuscation settings for all of the selected assemblies at once.
IMPROVED: Visual Studio Integration Wizard now checks any error conditions before starting the modification of project files - this gives you a chance to remedy the errors before proceeding in the wizard, instead of having to restart the wizard from start.
IMPROVED: Various optimizations to improve speed of obfuscation a bit.
IMPROVED: Improved support for some Visual Studio project files when running the Visual Studio Project Integration Wizard.
CHANGE: Features specified via obfuscation attribute must have exact spelling; earlier, suffix mistakes like "renamingg" or "renaming1" were accepted.
CHANGE: Visual Studio Addin to enable/disable VS integrated obfuscation is removed. Instead now, Crypto Obfuscator allows you to enable or disable automatic obfuscation of your assemblies via the Crypto Obfuscator UI using the Project menu --> Enable Visual Studio Integration menuitem.
CHANGE: Updated exception reporting service code to use OnUploadReportEx instead of OnUploadReport.
FIX: Warning suppression via obfuscation attributes did not work the first time obfuscation is done.
FIX: Improved support for WinRT / Metro assemblies.
FIX: Improved exception reporting support for some Visual Basic projects.
FIX: Dependency assembly embedding failed to load assemblies at run-time in some circumstances.
FIX: Error occurred in rare circumstances on some machines on which environment variables are not properly defined.
FIX: UI layout of Exclusion/Inclusion tab got messed up under some siutations.
FIX: Regression bug: deleting assemblies from obfuscation project files did not work.
FIX: Inclusion/Exclusion Rules "Pattern Applies To" setting was not being saved to project file correctly.
FIX: If multiple properties of the same type are present in a class hierarchy and one of them is ReadOnly/WriteOnly, then "Advanced Overload Renaming" caused incorrect renaming in some circumstances.