Please enter the text to find and press Search.
Sorry

An error occurred during search results load.

Eazfuscator.NET Documentation


Table of Contents

What Is Eazfuscator.NET?
1. Introduction
1.1. Definition of Obfuscation
1.2. Why .NET Applications Need Obfuscation
1.2.1. In Theory
1.2.2. In Practice
1.3. When to Use Obfuscation
1.4. Drawbacks of The Obfuscation
2. Quick Start
3. How Does Eazfuscator.NET Work?
3.1. Obfuscation Techniques
3.1.1. Symbol Renaming
3.1.2. String Encryption
3.1.3. Constant Literals Pruning
3.1.4. Overload Induction
3.1.5. Class Hierarchy Linerization
3.1.6. XML Documentation Filter
3.1.7. XAML Renaming
3.2. Optimization Techniques
3.2.1. Merging of String Literal Duplicates
3.2.2. Sealing of Terminal Classes
3.2.3. String Compression
3.2.4. Code Optimizations
4. Advanced Features
4.1. About Advanced Features
4.2. Declarative Obfuscation Using Custom Attributes
4.2.1. System.Reflection.ObfuscateAssemblyAttribute
4.2.2. System.Reflection.ObfuscationAttribute
4.2.3. .NET Compact Framework, Silverlight, Windows Store and .NET Core Projects
4.2.4. Indirect Declarative Obfuscation
4.2.5. Obfuscation Attribute Priorities
4.3. Conditional Obfuscation
4.3.1. Type Members
4.3.2. Options are Combinable
4.3.3. Diagnostics
4.4. Symbol Encryption
4.5. Advanced Symbol Renaming Options
4.5.1. Symbol Renaming with Printable Characters
4.5.2. Type Renaming Patterns
4.6. Advanced String Encryption Options
4.7. Code Control Flow Obfuscation
4.8. Assemblies Merging
4.8.1. Introduction
4.8.2. Instructions
4.8.3. Tuning
4.8.4. Internalization
4.8.5. Custom Parameters for Merging
4.9. Assemblies Embedding
4.9.1. Introduction
4.9.2. Embedding vs. Merging
4.9.3. Instructions
4.9.4. Tuning
4.9.5. Troubleshooting
4.10. Resource Encryption
4.10.1. Introduction
4.10.2. Instructions
4.10.3. Compression
4.10.4. Selective Resource Encryption
4.10.5. Options are Combinable
4.11. Serialization Tuning
4.11.1. Overview
4.11.2. Binary Serialization and Obfuscation
4.11.3. Self-Interoperability
4.11.4. Non-stable Self-Interoperable Serialization
4.11.5. Stable Self-Interoperable Serialization
4.12. Debugging
4.12.1. Introduction to Debugging After Obfuscation
4.12.2. How It Works
4.12.3. Possible Security Risks
4.12.4. Tuning
4.12.5. Debug Renaming
4.13. PEVerify Integration
5. Sensei Features
5.1. About Sensei Features
5.2. Code Inlining
5.3. Module Initializers
5.3.1. Introduction
5.3.2. Instructions
5.3.3. Execution Order
5.4. Private Protected Visibility
5.5. Custom Attributes Removal
5.6. Design-Time Usage Protection
5.6.1. Overview
5.6.2. How It Works
5.6.3. Default Behavior
5.6.4. Instructions
5.6.5. Tuning
5.7. Resource Sanitization
5.7.1. Introduction
5.7.2. Instructions
5.7.3. Minification
5.7.4. Selective Resource Sanitization
5.7.5. Options are Combinable
5.8. Method Parameters Obfuscation
5.8.1. Renaming
5.8.2. Optional Parameters Pruning
5.9. Deterministic Obfuscation
6. Virtualization
6.1. Introduction
6.2. How to Use Code Virtualization
6.3. How to Use Data Virtualization
6.4. Homomorphic Encryption
7. Concepts
7.1. Introduction
7.2. Probing Paths
7.2.1. About Probing Paths
7.2.2. How to Define Probing Paths?
7.3. Script Variables
7.4. Log
7.5. Glob Mask
7.5.1. Syntax
7.5.2. Behavior
7.5.3. Examples
7.6. Assembly Mask
7.6.1. Syntax
7.6.2. Behavior
7.6.3. Examples
7.7. Regex Mask
7.7.1. Syntax
7.7.2. Behavior
7.7.3. Examples
7.8. Warnings and Errors
7.8.1. Warning Suppression
7.8.2. Treat Warnings as Errors
7.9. Compatibility
7.9.1. Compatibility Version
7.9.2. Demanding the Specific Version of Eazfuscator.NET
8. Deployment
8.1. About Eazfuscator.NET Deployment
8.2. Microsoft Installer (MSI)
8.3. NuGet Package Manager
8.4. Command-Line Interface
9. Best Practices
9.1. Introduction
9.2. General Best Practices
9.3. Keeping the Balance
9.3.1. Human Factors
9.4. Keeping It Simple
9.4.1. The Paralysis of Simplicity
10. Troubleshooting
10.1. My application is not working properly after obfuscation. Why does it happen?
10.2. Troubleshooting Features
10.2.1. Stack Trace Decoding
10.3. Inspection-Friendly Obfuscation
10.3.1. Preserving the Original Names
10.3.2. Disabling ILDASM Suppression
10.4. About InternalsVisibleToAttribute
10.4.1. Solution #1. Do not use InternalsVisibleToAttribute at all
10.4.2. Solution #2. Swap with EditorBrowsable attribute
10.4.3. Solution #3. Hide the warning
10.4.4. Solution #4. Ignore the attribute
10.5. "Option Strict Off" Compatibility for VB.NET
10.5.1. Introduction
10.5.2. Compatibility Mode
10.5.3. Instructions
10.6. Nonintrusive Debugging
10.6.1. Introduction
10.6.2. Sample Scenario
10.7. Error Codes Knowledge Base
10.7.1. EF-1099: Unable to load input assembly, reflection load failed
10.7.2. EF-3035: Assembly or part of it is already obfuscated
Glossary
Bibliography

Sorry

An error occurred during page load.
You can try again or go back.