-
Notifications
You must be signed in to change notification settings - Fork 21
Obfuscate only a small part of the .NET assembly, not the entire assembly.
Obfuscating only a small part of your .NET assembly, rather than the entire assembly, can be a strategic approach. Here are some benefits:
Targeted Protection: By focusing on the most sensitive or proprietary parts of your code, you can protect critical sections without the overhead of obfuscating the entire assembly.
Performance Efficiency: Selective obfuscation can reduce the performance impact that might come with obfuscating the entire assembly, ensuring that your application runs smoothly.
Simplified Debugging: With only specific parts obfuscated, it can be easier to debug and maintain your code, as the majority of it remains readable and straightforward.
This approach can be particularly useful if only certain algorithms, methods, or classes contain sensitive information that you want to protect.
When considering whether to obfuscate an entire .NET assembly or only specific parts, Rustemsoft provides the following guidance to Skater Obfuscator users:
-
Obfuscation can sometimes generate code that appears suspicious, particularly in assemblies with a high number of members. To mitigate this, it is advisable not to encrypt all strings or apply Control Flow protection to every method in the assembly.
-
Protecting all members indiscriminately can lead to a substantial increase in the size of the obfuscated assembly. Instead, focus on selectively securing only the most critical strings and methods. This can be done by carefully reviewing the interface windows for each tab (e.g., 'Public Members' and 'Strings') and excluding certain methods from obfuscation.
-
Furthermore, employing cryptographic techniques for string encryption is recommended, as they produce smaller IL code. If antivirus-related issues persist, please share your non-obfuscated assembly with us for analysis, and we will offer tailored advice.
Compare the original C# source code with its obfuscated version generated by Skater .NET Obfuscator to see the transformation.
Figure 1
Figure 2