IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

protèger application avec clé d'activation


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 37
    Points : 23
    Points
    23
    Par défaut protèger application avec clé d'activation
    bonjour, je cherche un moyen de protéger mon application.
    J'ai 2 applications ( A et B). L'app B est commercial. l'app A est le "serveur" je dirais. Du coup :
    je voudrais que mon app A crée un serial à partir d'un nom ou tous autres renseignements. Puis, quand l'app B est installé(1ere exécution ou lors de l'installation elle-même), on demande à l'utilisateur d'entrer son nom (ses renseignements) et la clé d'activation. L'app B essaye de vérifier l'authenticité de cette clé.
    Après quelques recherches, j'ai pu lire qu'il fallait utiliser un algorithme mathématique. Mais lequel ?? (je travail sous VB10)

    merci

  2. #2
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    ( je n'ai jamais fait mais je fait travailler mon imagination )

    tu pourrait avoir un fichier crypté ( genre en rsa ) dans ton projet qui contiendrait la clé et une variable booléenne "activer "

    aprés tu enregistre chaque clé d'activation généré et a chaque foit que ton appli client se connect au serveur tu vérifié si la clé n'es pas arriver a expiration et tu change la variable activer a False et donc l'application ne demare pas


    voila je tien a repréciser que c'est juste un truc que je n'ai jamais fait


    codialement

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    je cherche justement un moyen de générer une clé d'activation

  4. #4
    Membre averti
    Avatar de alex61
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Mai 2010
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mai 2010
    Messages : 378
    Points : 392
    Points
    392
    Par défaut
    ba tu la génère aléatoirement ^^ mais si elle existe dans la base tu recommence et ainsi de suite

    pas très propre mais simple et efficace

    si tu es perdu clique ici
    langage connus : xhtml/css , ASP.NET/VB.NET , JS, JQuery , PHP , SQL, PL/SQL, JAVA,
    BI : DataStage ,Essbase , BO , Microsoft BI , SAS, Talend, Cognos, Qliqview

  5. #5
    Membre chevronné
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2009
    Messages
    1 048
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2009
    Messages : 1 048
    Points : 2 201
    Points
    2 201
    Par défaut
    En gros ton application A est un serveur de license. Ca peut t'aider pour tes recherches.

    Dans ce cas la génération de tes numéros de série peut s'effectuer avec n'importe quel algo aléatoire (genre un GUID) que tu enregistres dans une base de donnée lors de la vente d'une license.

    L'histoire de l'algo mathématique, c'est plutôt dans le cas de vérification de la clé par l'application elle-même car elle n'a pas une liste de clé online.

    Les histoires de licenses c'est quand même une vaste problèmatique avec beaucoup de solution...

  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2010
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 37
    Points : 23
    Points
    23
    Par défaut
    oui j'avoue cette notion est complexe. Mais il faut savoir que je n'est pas de service web. Mon application serveur de licence est mon application commercial seront en faite sur un réseaux VPN en liaison avec une base de donnée SQL Server.
    dans ce cas, la génération aléatoire est-elle plus efficace que la génération par algo mathématique ?
    En plus, de ces manières-ci, une fois que l'utilisateur aura eut sa licence, il pourra la réutiliser le nombre de fois qu'il le veut ?
    je suis totalement perdu dans toutes cette histoire...

  7. #7
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Citation Envoyé par alex61 Voir le message
    .......

    tu pourrait avoir un fichier crypté ( genre en rsa ) dans ton projet qui contiendrait la clé et une variable booléenne "activer "
    C'est une très très mauvaise idée cette historie de variable booléenne... il serait assez simple de reverse pour passer le flag en True !

    Il faut rester sur le principe de la génération et l'authentification client/serveur sinon l'appli serait trop facilement crackée.

    ++

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Pour information le hacheur md5 est natifs dans Vb.net:https://msdn.microsoft.com/fr-fr/lib...v=vs.110).aspx

    Personnellement pour ma bases de données, moi j'autorise seulement un port sur le serveur.

    Vue que tu passes par Vpn, le fait de devoir utiliser un port plutôt qu'un autre réduit la fenêtre.

    Si tu envoi une requête en réduisant le nombres information et que le serveur soit capable de regénérer la clé d'activation!

    En d'autre terme j'en envois au serveur le nom de ma société, un username, un code de hachage, bien sur je n'envoie pas la clé de licence que mon application et ma base de données sont les seuls à connaitre.

    Le serveur est capable de recalculer le hachage et si celui envoyé dans la requête est le même que celui calculé par le serveur alors la requête retourne une valeur haché également que seule mon application est capable de recalculer!

    C'est ce genre de traitement qui est utilisé dans le traitement de payement en ligne entre les sites marchands et les boutique (PayPal)

    Ce que je faisais en vb6 mais je ne l'ai jamais fait en .Net c'est exécute côté client un code qui demande au server d'exécuter du code et de retourner au client le résultat!

    Édite: Un exemple concret!

    Tu peux utiliser le variables d'environnement pour gérer un clé d'environnement(adresse mac; numéro de série du disque dur; le user Name; le domaine,etc).
    C'est donnés ne sont pas enregistrer sur ton disk elle existe c'est tout.

    L'hors de la première utilisation une interface te demande de t'enregistrer. A la fin du processus elle te donne un numéro de licence quelle sauvegarde dans la base de registre

    La base de données connais la clé d'environnement et la licence.

    La validation d la licence est. Constitués de (la licence, le login, la date et l'heure , pourquoi pas un numéro auto incrément) et le md5 de tout ça sans oublier la clé d'environnement qui elle n'est pas transmise dans ma requête.

    La requête retourne le résultat sous la même forme et mon application recalcule le code de la réponse.

    Code Exemple : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    code1=md5(macAdress + disckSerie)
    Code2=md5(md5(macAdress) + md5(disckSerie))
    code3=md5(Code1+Code2)
    Ici les informations sont connus mais l'algorithme le rend impossible à gérer!
    Dernière modification par Invité ; 20/05/2016 à 08h38.

  9. #9
    Candidat au Club
    Homme Profil pro
    windev
    Inscrit en
    Avril 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Algérie

    Informations professionnelles :
    Activité : windev
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2016
    Messages : 1
    Points : 3
    Points
    3
    Par défaut protection
    Citation Envoyé par dlgdev Voir le message
    bonjour, je cherche un moyen de protéger mon application.
    J'ai 2 applications ( A et B). L'app B est commercial. l'app A est le "serveur" je dirais. Du coup :
    je voudrais que mon app A crée un serial à partir d'un nom ou tous autres renseignements. Puis, quand l'app B est installé(1ere exécution ou lors de l'installation elle-même), on demande à l'utilisateur d'entrer son nom (ses renseignements) et la clé d'activation. L'app B essaye de vérifier l'authenticité de cette clé.
    Après quelques recherches, j'ai pu lire qu'il fallait utiliser un algorithme mathématique. Mais lequel ?? (je travail sous VB10)

    merci

  10. #10
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Protéger une application avec un fichier Key
    Par DelphiCool dans le forum Codes sources à télécharger
    Réponses: 0
    Dernier message: 03/02/2013, 17h55
  2. Réponses: 2
    Dernier message: 07/10/2008, 08h02
  3. Protéger l'application avec fenetre d'authentification
    Par abbd dans le forum Windows Forms
    Réponses: 2
    Dernier message: 18/05/2008, 18h34
  4. Activation des macros sur application avec Runtime
    Par nicolas2603 dans le forum Runtime
    Réponses: 5
    Dernier message: 29/02/2008, 16h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo