Bonjour
J'aimerai creer un système qui permet d'activer des licences d'applications depuis un serveur et ceci en passant par un web service mais je ne sais pas par ou commencer.
Pouvez vous m'aiguillez ?
Merci
Bonjour
J'aimerai creer un système qui permet d'activer des licences d'applications depuis un serveur et ceci en passant par un web service mais je ne sais pas par ou commencer.
Pouvez vous m'aiguillez ?
Merci
hello,
Tu sais créer un web service ? Dans l'idée tu veux faire un Service Web qui va valider la licence des applications clientes qui vont s'y connecter ?
en gros ce n'est pas forcement necessaire de passer par un serveur?
l'idee ça serait de generer les cles de licence depuis un serveur à quel moment le web service intervient il?
Oui mais comment tu fais pour dire que tes clients ont bien le droit de demander un nouveau numéro de licence ?
le but serait de generer une cle depuis une appli située sur un serveur comment faire?
Bon ok je ne vais pas essayer de comprendre... Y a un truc que je ne comprends mais bon.
En gros tu crées un service WCF, a l'intérieur de ce service WCF tu crées une méthode qui va retourner un GUID a tous les utilisateurs qui vont se connecter. Après a la limite histoire de pas distribuer les GUID pour rien coté serveur tu peux demande au WCF de stocker les GUID qu'il a distribuer dans une base de donnée. Et encore mieux la méthode tu peux peut être lui coller un argument comme ca quand le client se connecte au WCF il envoie un argument en plus genre numéro de série du processeur... Pour que ta clé soit associée a quelque chose d'unique dans ta base...
Qu'en penses tu ?
pour valider une clé il y a au moins 2 moyens simples, dans ces 2 cas tu dois fournir une clé à l'acheteur
l'un ne nécessitant pas internet, la clé est passé par un algorithme pour vérifier si elle est bonne
la génération se fait pas l'algorithme inverse, une clé peut être réutilisée d'un pc à un autre, un générateur peut être créé par un pirate
l'autre nécessite forcément internet, et permet d'éviter à la fois d'éviter qu'une clé soit réutilisable, et qu'un générateur de soit créé
lors de l'install ou du 1er démarrage, tu récupère un id (genre le numéro de série du processeur, voir wmi et wmi code creator pour obtenir des numéros de séries du pc)
ensuite l'utilisateur entre sa clé, tu te connectes au serveur pour faire une demande d'activation pour (id matériel, clé utilisateur)
si la clé n'est pas marquée comme vendu ou si la clé est déjà marqué comme utilisée pour un autre pc tu le précises à l'utilisateur
sinon tu inscris dans ta base que cette clé est liée à ce pc
pour la connexion au server il y a une multitude de moyens aussi, quelques exemples ici avec un niveau de difficulté croissant
soit tu peux faire une connexion directement sur une base de données (limiter les droits d'accès à une fonction sql par exemple)
soit tu fais du socket, dans system.net.sockets il y a des classes qui permettent d'envoyer des octets par tcp/ip sur un port donné, il faut alors un exe sur le serveur qui écoute sur le port spécifié
soit utiliser .net remoting ou wcf qui encapsule un socket pour partager des membres de classes/interfaces de code .net, et là aussi il faut un exe qui écoute (ou un bout de code hébergé par IIS, qui gère aussi wcf et .net remoting)
nb : ici les clés doivent être générées aléatoirement au fur et à mesure des ventes ce qui évite les keygen
à noter que pour retirer un sécurité sur un programme .net ca prend 3 clics pour quelqu'un qui connait le .net et reflector ...
si c'est réellement une question, la réponse est en partie dans ma signature
et accessoirement c'est un outil à mon sens indispensable pour développer en .net
Pour que ce genre de chose doit efficace, il faut s'y connaitre un minimum en encryption et très bien en .NET sinon, comme dit, le système est jacké en 5 min.
Le plus facile c'est d'utiliser des composants existants. Style .NET Reactor ou Intellilock, c'est pas trop cher : http://www.eziriz.com/
Il y a aussi une librairie en open source il me semble, mais le nom m'echappe
très intéressant
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager