2008-09-19 7 views

Répondre

5

Un couple de choses que vous pouvez envisager:

Vérifiez somme la DLL. En utilisant un cryptographic hash function, vous pouvez le stocker dans le fichier de licence ou dans la DLL. Cela fournit une méthode de vérification pour déterminer si mon fichier DLL d'origine est désactivé ou s'il s'agit du fichier de licence pour cette DLL. Quelques techniques simples d'échange d'octets peuvent rapidement prendre votre fonction de hachage hors des sentiers battus (et donc pas facile à reproduire). Ne stockez pas de hash en guise de ficelle, divisez-le en shorts non signés à différents endroits. Comme l'a dit Larry, une adresse MAC est assez commune. Il y a beaucoup d'exemples de comment obtenir cela sur The Code Project, mais sachez qu'il est facile de truquer ces jours-ci.

Ma suggestion, devrait être utiliser private/public clés pour la génération de licence. En résumé, les modes d'attaque seront binaires (modifiez les instructions de votre fichier DLL) alors protégez-vous contre cela, ou la génération de clé afin que chaque utilisateur de licence, machine, et même l'installation spécifique.

4

Vous pouvez rechercher une licence dans DllMain() et mourir si elle n'est pas trouvée.

+0

Ne lisez sur ce que vous êtes autorisé à faire dans DllMain, ce n'est pas beaucoup! – MSalters

1

Cela dépend également du fonctionnement de votre algorithme de licence. Je suggère que vous envisagiez d'utiliser quelque chose comme un Diffie–Hellman key exchange (ou même RSA) pour générer une sorte de clé publique/privée qui peut être transmise à vos utilisateurs, en fonction de certaines informations. En fonction de l'application, je connais un cas où j'ai écrit le code de licence sur contrat pour une entreprise, ils ont utilisé un MAC address, et d'autres données, l'ont haché, et ont crypté le hachage, leur donnant la clé valeur ", si le numéro d'enregistrement était correct). Cela garantit que le fichier de clé ne peut pas être déplacé, (ou donné) à une autre machine, en «volant» le logiciel.

Si vous voulez creuser plus profond et éviter les pirates, qui est un tout sujet « utre ....

Questions connexes