|
Feature
|
Description
|
|
Own metadata access engine
|
Spices.Obfuscator
uses own metadata access engine that allows to work with all
known .Net assemblies and modules (.Net 1.0, 1.1, 2.0, CF.Net)
generated by C#, managed C++, Vb.Net, J#, C# Builder, Delphi.Net
compilers and doesn't crashes on incorrect assemblies.
|
|
Own assembly builder
|
Spices.Obfuscator
uses own assembly builder that provides compatibility of generated
assemblies with original format of assembly.
No ilasm-ildasm
round trip - our assembly builder provides all services for
complete assembly generation.
|
|
Assembly verification
|
Spices.Obfuscator
verifies generated assembly on PE, Metadata and IL validity.
|
|
Spices.Obfuscator protects itself
|
All
Spices.Net (including Spices.Obfuscator) assemblies protected
by Spices.Obfuscator, we trust our product!
|
|
All
.Net Framework implementations supported
|
Spices.Obfuscator
supports all known .Net Framework implementations (1.0, 1.1,
2.0, Compact Framework, Mono, Portable.Net)
|
|
All
types of assemblies and all languages supported
|
Spices.Obfuscator
supports all types of assemblies - managed (C#, VB.Net, Delphi.Net,
Asp.Net), CompactFramework and mixed code(managed C++) assemblies.
|
|
Mixed assemblies support
|
All
features provided by Spices.Obfuscator supported on mixed
(that contain both managed and unmanaged code) assemblies.
|
|
Strong incremental obfuscation
|
Spices.Obfuscator
supports strong incremental obfuscation - even if structure
of assembly has changed, names of members will have same names.
|
|
antiILDASM
|
antiILDASM feature crashes ILDASM and most
of the decompilers on protected assembly loading. Spices.Obfuscator
embeds NotDecompile attribute to prevent protected
assembly from decompilation by Spices.Decompiler
|
|
String encryption
|
Spices.Obfuscator
hides and encrypt strings and embeds this hidden information
into IL-code as mini-heap, that extraction of this info is
extremely hard to extract and disassemble.
|
|
Cross-obfuscation
|
Spices.Obfuscator
supports cross-obfuscation (all members obfuscated in the
some assembly will obfuscated in the assemblies referenced
to this assembly)- this is a better way than linking all assemblies
into one, but protection level is the same.
|
|
Obfuscation options
|
Each
assembly included into Spices.Project (.iloprj) has individual
obfuscation options what provide control to wide range of
obfuscation features.
|
|
Obfuscation rules
|
Obfuscation
options provides set of rules (ObfuscationOptions.Members)
that provides control to exclude/include some types of assembly
members, Obfuscation.Members has some predefined rules configurations
also.
|
|
Attribute-based (declarative) obfuscation
|
Spices.Obfuscator
supports attribute based obfuscation and provides source code
(C#, VB.Net and Delphi) of control obfuscation attributes,
such as Obfuscate, NotObfuscate, DontEncryptStrings, SpecialNamespace,
SpecialName, NotObfuscateMembers(for batch exclusion from
obfuscation, wildcards allowed)
|
|
Strong name support
|
Spices.Obfuscator
supports strong name assemblies and re-signs assembly after
obfuscation if strong name key file is defined.
|
|
Naming conventions
|
Each
assembly included into Spices.Project (.iloprj) has individual
obfuscation options and user can define one of the 4 allowed
naming conventions: Numeric, Alphabetical, Alphanumeric or
NonDisplayable (in this case ILDASM or another assembly browsers
will not correctly display assembly member names)
|
|
Overloaded renaming
|
Spices.Obfuscator
uses our own ShrinkNames technology that provides more
shorter names generation, this techology improved by DoublePackString
technology that significantly decreases size of string stream
in the metadata and allows to generate more smaller assemblies.
|
|
Exclusion/Substituion control
|
Spices.Obfuscator
allows to manually exclude or include some assembly member
into/from obfuscation.
|
|
Assembly compression/optimization
|
Spices.Obfuscator
decrease size of metadata (~45%) and optimizes size of assembly
that increases performance of assembly.
|
|
Debugging
|
Spices.Obfuscator
creates of debuggable assemblies.
|
|
Strip debug info
|
Spices.Obfuscator
allows debug information exclusion from obfuscated assembly.
|
|
Stack trace deobfuscation
|
Spices.Obfuscator
provides stack trace deobfuscation tool.
|
|
Software watemarking
|
Spices.Obfuscator
provides software watermarking feature and embeds software
watermark into obfuscated assembly in NineRays.Obfuscator.SoftwareWatermark
attribute. Your software can easily recognize this attribute
existance and extract software watermark from this attribute's
Watermark property.
|
|
IDE's integration
|
Spices.Obfuscator
fully integrated into Spices.Net and Visual Studio
as part of Spices.VSIP.Net (Visual Studio Integration Package).
|
|
Console implementation
|
Spices.Obfuscator
has standalon console implementation what can be used in the
batch/automated builds such as NAnt or Visual Studio Build
Events. Console implementation of Spices.Obfuscator provides
all features of Spices.Obfuscator.
|
|
and
more...
|