2008-08-08 9 views
5

À peu près tout au long de ma carrière, j'ai travaillé avec des solutions de construction (applications personnalisées pour un seul client). Maintenant que mon entreprise développe des logiciels pour les masses, beaucoup d'emballages nous attendent.
Je veux poser des questions sur les licences de logiciels. Comment générer des numéros de série et des numéros d'activation. Quelles sont mes options pour les licences de logiciels en général.
Je me rends compte que c'est une sorte de question générale mais c'est un début de conversation. Si vous utilisez .Net pour créer vos solutions, il peut être intéressant de vérifier Xheo.
Modèles de licence

Répondre

8

Notre modèle de licence fonctionne en utilisant la cryptographie à clé publique/privée. Ils nous envoient leur nom et leurs coordonnées, que nous chiffrons en utilisant notre clé privée. Le fichier crypté est ensuite renvoyé au licencié qu'il saisit dans l'application. L'application a notre clé publique intégrée dans le binaire (ou si elle a une connexion au réseau, elle le retire de notre site) et l'utilise pour déchiffrer les informations de licence. Si la licence déchiffrée correspond aux détails qu'ils ont entrés, ils sont autorisés à utiliser le produit!

En utilisant la cryptographie à clé publique/privée que nous donnons à notre demande une fiducie que les données de la clé de licence est en fait de nous (l'authenticité de la licence)

Il y a d'autres choses intéressantes que vous pouvez faire avec cela, comme coder les niveaux d'abonnement dans la clé de licence. L'application déchiffrera la clé de licence et verra qu'elle est seulement autorisée à utiliser certains bits de fonctionnalité.

Cela peut être attaqué cependant. Par exemple, un blackhat peut supprimer la totalité de la clé de licence en vérifiant une partie du binaire, ou mettre à jour la clé publique stockée dans l'application vers une clé qu'ils ont générée. Ils pourront alors lui faire accepter leur propre licence. Cependant, puisque nos applications ne sont pas ce courant, nous ne considérons pas cela comme une menace majeure.

-1

Je les ai déjà utilisés pour implémenter des licences et ils s'intègrent parfaitement avec les solutions .net. Vous pouvez par exemple exiger des clés série de base pour activer les produits jusqu'à la configuration d'un serveur d'activation et demander aux utilisateurs d'activer et de désactiver leurs produits pour les utiliser et les transférer entre les machines.

+0

Ne le vaut pas; trop lent et se bloque beaucoup. – ileon

1

Cet article sur le piratage par un gars qui a construit et commercialisé une petite application .NET est très informatif. Sa demande a été piraté, ce qui giveshim une perspective intéressante:

http://kalzumeus.com/2006/09/06/yo-ho-me-hearties-yo-ho/

Ses points sont essentiellement que vous devez rendre le système d'activation une barrière aux utilisateurs normaux - il n'y a rien que vous pouvez faire si votre application est assez populaire être piraté par un groupe de craquage. Le plus important est de s'assurer qu'une version crackée de votre programme, si elle existe, est invisible pour 99% du public.