Obfuscation techniques are a reasonably good way to make it harder for parties to copy algorithms from your code, but certainly not impossible.
But just like flu vaccines, even when they're just 30-40% effective, still better than no protection.
Anyway, I found out that for .NET projects where late binding is used (and in VB.NET, when Option Strict is Off), obfuscation protection can be much reduced with some (or most/all?) obfuscators?
For example this amazing obfuscator: https://help.gapotchenko.com/eazfuscator.net/36/troubleshooting/option-strict-off-compatibility-for-vb-net
from what I understand uses reflection extensively when analyzing the code for obfuscation, and when Option Strict is Off will not rename most if not all of the class members thus losing a critical part of obfuscation protection. (renaming with nonsensical names/character can make it significantly harder to figure out a complex underlying algorithm).
Are there .NET obfuscators that are (a lot more) tolerant of late binding and Option Strict being Off? (c# and other .net languages will cause the same issues when late binding is used)
Eazfuscator is very good at NOT breaking your code after extensive obfuscation, an excellent product in my opinion, but unfortunately it has this limitation.
Hopefully there is another good obfuscator (that isn't idiotically expensive, looking at you ...;) that works well with late binding / Option Strict Off (and Option Explicit On).
Aucun commentaire:
Enregistrer un commentaire