Hi J'ai mis en place un mécanisme de protection contre la copie avec le modèle LicenseProvider de Microsoft et une paire de clés publique/privée pour empêcher la copie d'un programme d'un PC à un autre. Très simple. Au démarrage, un fichier de licence doit contenir des informations chiffrées sur l'ordinateur, la date d'expiration et le nom de l'assembly pour lequel ce fichier de licence est destiné. Mais que se passe-t-il si quelqu'un renomme le fichier de licence de MyProgramA.exe.lic en MyProgramB.exe.lic? Si les deux programmes sont protégés contre la copie en utilisant la même méthode, il suffit de renommer le fichier .lic pour avoir une licence ProgramB valide. C'est pourquoi j'ai stocké le nom de l'assembly dans le fichier .lic. Les noms d'assembly doivent correspondre.Vérifier si un fichier de licence est créé pour l'assemblage protégé contre la copie
Maintenant, que se passe-t-il si quelqu'un remplace à la place ProgramB par ProgramA? Les noms d'assembly correspondraient et encore la licence serait valide. Avez-vous des idées pour rendre ce système plus résistant aux balles?
Encore une fois, il s'agit d'une solution propriétaire simple, donc pas d'obfuscation, et pas d'outils de tiers que je connais existent.
Merci!