7
votes

Quel est le générateur de clé de licence le plus simple que je puisse me développer en 1 jour?

Ceci est juste pour garder le client honnête honnête.


0 commentaires

7 Réponses :


5
votes

Pourquoi n'en avez-vous pas simplement un de quelqu'un d'autre? Si vous ne voulez que mettre un jour, vous n'allez pas avoir un bon produit.


2 commentaires

Eh bien, j'étais toujours curieux de savoir comment le pro le fait ainsi que cela pourrait être une bonne chance d'apprendre.


Si le pro décide d'écrire une telle solution seul, il passera plus d'un jour.



2
votes

Une clé de licence n'arrête pas le client à partir de votre logiciel à plusieurs reprises, sauf si la clé est liée à un hachage du nom du serveur, etc.


1 commentaires

Mieux vaut entrer dans un argument de DRM ici, je vous pointe de vous mettre à ma compilation de raisons pour lesquelles la DRM est fausse: superutilisateur.com/questions/14224/how-to-explain-drm-cannot-work / ... Ça ne veut pas dire que tu devrais 't Protégez votre programme du tout, mais plus de DRM - plus de douleur pour les utilisateurs légitimes. Une clé de licence est généralement suffisante pour empêcher votre logiciel de faire pirater de manière flagrante.



1
votes

Si vous avez besoin de pseudo-code (ce que Lang / Platform?) Vous pouvez prendre l'adresse MAC de l'ordinateur (qui suppose être unique) et créer une fonction qui le combine d'autres paramètres de l'ordinateur - et assurez-vous de la valider chaque fois que les applications s'exécutent contre votre propre DB, en gardant le courrier électronique de l'utilisateur dans cette rangée.

Si quelque chose change - le logiciel ne fonctionnera pas, mais l'utilisateur peut demander une nouvelle clé - avec le même courrier - alors vous pouvez révoquer l'ancienne clé et lui donner une nouvelle.


3 commentaires

Que se passe-t-il si l'utilisateur modifie leur mobo ou autre paramètre pertinent, pas vraiment une bonne idée, je ne veux pas avoir à obtenir une nouvelle clé de licence lorsque je met à niveau mon ordinateur. Et que se passe-t-il si quelqu'un d'autre demande une clé de licence avec votre email? Hmm?


R. Je ne croyais pas vraiment dans les clés de licence, mais vous vous souciez de les utiliser, alors, oui, lorsque l'utilisateur met à niveau son matériel - c'est un problème (Microsoft avait ce problème avec la licence Vista - vous devrez réactiver Vista Si vous changez de MB ou parfois même d'une carte vidéo), si vous envoyez uniquement la licence au courrier électronique demandé - et révoquer l'ancienne licence lorsqu'une nouvelle demande arrive, le propriétaire de l'e-mail - qui est le propriétaire original de la licence aura des problèmes. . Mais vous avez raison qu'il y a beaucoup à considérer lors de la prise de cette route.


correction au commentaire. Le propriétaire d'origine devra réexécuter une demande de licence.



2
votes

Mettez les capacités du produit (nombre d'utilisateurs, IP hôte, date d'expiration, quoi que ce soit) dans un fichier texte brut. Signez le fichier avec une clé publique, puis vérifiez la signature au moment de l'exécution.

S'ils sont motivés, ils peuvent décompiler le code, tirer les chèques ou quoi que ce soit, mais cela dissuadera une altération, et ça va regarder tous les gentils et officiels.


1 commentaires

Hôte IP ne semble pas un bon paramètre, les ordinateurs portables le modifient deux fois par jour au moins.



1
votes

Générateur de licence le plus simple: un fichier INI avec une somme de contrôle ensemencée, qui contient le nom du client et les informations sur les modules activés. Il sera assez facile de se casser pour un pirate informatique, mais pour non-pirate informatique, c'est sûr. Le nom doit être visible dans la sortie de l'application indiquée en public, de sorte que d'autres clients potentiels ne puissent pas utiliser le fichier de licence.


0 commentaires

2
votes

Il n'y a aucun moyen que vous puissiez faire un bon travail dans une journée et il y a des chances que l'effet global sera négatif. Ça va gêner vos clients fidèles et honnêtes et cela n'arrêtera pas les malhonnêtes.

Au lieu de cela, passez cette journée à atteindre un moyen de mesurer en quelque sorte combien de piratage votre produit obtient. Une fois que vous le savez, vous pouvez estimer la quantité d'argent que vous perdez et combien d'efforts vous devriez vraiment mettre en œuvre ou d'autres approches.

Si vous voulez toujours le faire, le moyen le plus simple est de collecter certaines données uniques pour l'installation (nom d'utilisateur du système d'exploitation, adresse e-mail, cpu / numéro de série de la carte mère - tout ce que vous voulez l'attacher), demandez à l'utilisateur. Pour vous l'envoyer et générer une clé de licence en le cryptant avec votre clé privée. Votre logiciel doit collecter les mêmes données de données, déchiffrer la licence avec votre clé publique et comparer les deux blobs.


0 commentaires

10
votes

Y a-t-il des limitations de système d'exploitation? Je pense que la suite approche sera assez simple:

  1. Choisissez un moyen d'obtenir une identification de la machine. Par exemple, cela peut être MachineGuid Entrée de registre dans HKEY_LOCAL_MACHINE \ LOGICIEL \ Microsoft \ Cryptography . ( générant une identification unique de la machine )

  2. Définir les fonctionnalités que vous envisagez de licence et de la manière de les identifier. Vous pouvez simplement les nommer. Si votre produit est simple, cela peut être une fonctionnalité elle-même.

  3. Créer une paire de clés publique / privée.

  4. récupérez l'ID de la machine du client d'une manière ou d'une autre. Vous pouvez lui demander de l'envoyer manuellement ou vous pouvez créer un utilitaire simple ou peut être une commande spéciale dans votre application.

  5. Associez l'ID de fonctionnalité et l'ID de la machine d'une manière ou d'une autre. Résultat des signes avec votre clé privée. Par exemple, vous pouvez faire cette combinaison par la concaténation. Dans cette affaire, la chaîne de résultats peut ressembler à ceci: "YourApplicationName-12345678-9ABC-DEP0-1234-56789ABCDEF0"

  6. Signature sera une séquence d'octets, donc si vous voulez le transmettre sous forme de texte, vous devez en faire une certaine conversion. Par exemple, vous pouvez convertir la signature en base64 chaîne. La combinaison d'identifiant de fonctionnalité, d'identification de la machine et de sa signature de leur combinaison sera une clé de licence!

  7. Incluez la clé publique de votre distribution d'applications et ajoutez une logique pour la vérification de la licence. Si la licence est valide, vous devez vérifier qu'il est utilisé sur la machine correcte et dans une application correcte.

    plus sur les opérations de clé publique / privées ici .

    S'il vous plaît dites si quelque chose n'est pas clair et je vais essayer de fournir une réponse détaillée.

    EDIT: Je suis sûr que la mise en œuvre de tout cela peut être effectuée en 1 jour, mais je suis d'accord avec d'autres personnes qui vous suggèrent d'utiliser des solutions existantes. Il existe de nombreuses plateformes et langages de programmation différentes.


0 commentaires