What is String Protection?
Strings are a very important part of MSIL assemblies. Everytime your source code sports any kind of string, let’s say “SELECT * FROM Customers” or maybe “txt.Text = ‘Hello World'” these very strings are compiled into MSIL in the following, very spottable way: … IL_0002: stloc.2 // Previous IL instructions IL_0003: ldstr “SELECT * FROM Customers” IL_0008: stloc.1 // Following IL instructions … … IL_0273: ldfld class [System.Windows.Forms]System.Windows.Forms.TextBox Interface.Form::txt IL_0278: ldstr “Hello World ” IL_028d: callvirt void [System.Windows.Forms]System.Windows.Forms.Control::set_Text(string) … It is very easy to use ildasm to get the MSIL text, modify some SQL Sentences and then compile it again using ilasm.exe. BitHelmet Obfuscator provides the strongest string protection around. Not only does BitHelmet encrypt your strings, but also moves them away to a special section of the assembly. In case you could get the IL files, the places where your string should be wil