J'ai utilisé .NET Reactor. C'est bien, pas trop cher, mais support proche de zéro.
Pour le hardware ID, il y a moyen de lui dire sur quel critère il doit se baser (CPU, carte-mère, disque dur,...). Si tu te bases sur le CPU et/ou la carte-mère, c'est assez pour 95% des cas je pense.
Maintenant je ne me rappelle plus du nom, mais il y a un projet open source qui cracke quasiment tous les outils d'obfuscation, .NET Reactor inclus (j'ai fait un test il y a un ou deux ans).
Tout ça pour dire qu'il n'y pas de protection ultime. Faut voir ce que ça te coûte question sécurité (temps développement, licences, etc...) par rapport à ce que tu perdrais si c'était moins sécurisé. A mon avis, ne te casse pas trop la tête, et si tu peux déjà résoudre 80-90% des cas de manière automatique, c'est déjà bien. J'ai peur que pour gagner 1 ou 2% supplémentaire ça va demander une grande masse de travail, ou alors complexifier ton code et ton workflow.
J'ai retrouvé le projet open source :
https://bitbucket.org/0xd4d/de4dot/
Partager