2010-08-18 7 views
2

J'ai essayé le DotNetObfuscator standard fourni avec Visual Studio 2010 sur mon code.Juste essayé Obfuscation

Je n'ai pas modifié les paramètres standard du code. Je suis un peu perplexe par le comportement de cet outil. J'ai essayé de comparer les valeurs en chargeant les deux assemblages dans le réflecteur.

Quelque chose a définitivement changé, mais je suis toujours capable de lire la méthode telle qu'elle est dans l'assemblage d'origine. Y a-t-il un réglage que je dois changer avant d'utiliser cet outil?

Répondre

2

Vous ne savez pas exactement ce que vous avez vu, mais les noms de méthodes publiques ne doivent pas être obscurcis - du fait qu'ils sont publics, ils doivent rester appelables par les appelants en dehors de l'assemblage. Les méthodes privées (et éventuellement internes) peuvent être obscurcies, tout comme les détails d'implémentation dans les méthodes, mais peuvent toujours être lisibles avec Reflector même si les noms sont impairs. Divers outils d'obfuscation peuvent fournir d'autres fonctionnalités qui aident à empêcher l'utilisation d'outils tels que Reflector, mais peuvent varier dans leur capacité à générer de l'IL vérifiable ou d'autres façons que je ne comprends pas particulièrement.

L'obscurcissement n'est pas un moyen de cryptage - il ne fait que ralentir le lecteur.