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

Algorithmes et structures de données Discussion :

Protection de logiciel par code


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 246
    Points : 67
    Points
    67
    Par défaut Protection de logiciel par code
    Bonjour à tous,
    Développant de petits logiciels que je ne donne qu'à des connaissances je voulais tout de même les protéger pour éviter qu'ils ne s'éparpillent trop.
    Je voulais pour les plus simples d'entre eux ne pas adjoindre de base de données où les codes seraient mémorisés.
    Je voyais donc les choses comme ça:
    L'utilisateur lance le programme, il lui est demandé d'introduire son adresse mail, un message m'est envoyé.
    Je renvoie par mail un code. L'utilisateur l'introduit dans une case dédiée.
    La clef reçue est comparée à un code mémorisé dans le programme.
    Si les deux coïncident le programme tournera à chaque lancement.
    Si par exemple je ne joins pas de base de données mais un simple fichier texte, le code sera lisible et n'importe qui pourrait l'utiliser.
    Si je joins une base de données (SQL) je ne sais même pas si en fait les données sont protégées ou peuvent être protégées.
    Peut-être peut-on aussi jouer sur la date. Si l'utilisateur introduit trop tard le bon code, le programme ne sera pas exécutable.
    Je voulais vous demander comment vous procéderiez ou ce qui se fait le plus couramment?
    En espérant que c'est assez clair et en vous remerciant.

  2. #2
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 271
    Points : 13 536
    Points
    13 536
    Par défaut
    Bonjour

    Développant de petits logiciels que je ne donne qu'à des connaissances je voulais tout de même les protéger pour éviter qu'ils ne s'éparpillent trop.
    Je ne comprends pas cette phrase. Si une personne à qui tu as donné ton logiciel le donne à tout le monde, que fais-tu ?

    D'expérience, tes histoires de codes ne marchent pas.

    Tu développes quoi ? Des exécutables 64 bits sous Windows ?

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 246
    Points : 67
    Points
    67
    Par défaut
    La personne qui a reçu le programme d'une de mes connaissances ne pourra le faire fonctionner que si elle m'envoie un mail enfin c'est ce que j'espère pouvoir faire.
    Je développe des exécutables 32 bits sous Windows.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 246
    Points : 67
    Points
    67
    Par défaut
    J'ai oublié d'ajouter que je cherche à récupérer l'ID du PC de l'utilisateur et le code final que je renverrais contiendrait cet ID plus un code.
    Donc le programme ne marcherait pas sur un autre PC.
    Je rame pour trouver une fonction API ou une autre méthode pour récupérer cet ID.

  5. #5
    Expert éminent sénior Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 271
    Points : 13 536
    Points
    13 536
    Par défaut
    Je le répète. Quelqu'un qui veut contourner ta protection changera juste un JZ en JNZ dans le code assembleur et ta protection va sauter.

    Je développe des exécutables 32 bits sous Windows.
    Merci . C'était plus pour connaître la méthode. Delphi ? Visual C++ ? Java.jar ? Autre ? (préciser)

    Je rame pour trouver une fonction API ou une autre méthode pour récupérer cet ID.
    L'ID du pc, cela n'existe pas.

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    246
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 246
    Points : 67
    Points
    67
    Par défaut
    J'utilise depuis quelques temps Xojo (ex RealBasic) et de temps en temps encore Delphi.
    Quand tu regardes les informations système tu trouves quand même le nom du PC, l'ID de périphérique et l'ID de produit, non?
    Et ces 3 éléments sont propres à chaque PC.
    Donc si le code contient ses informations le "pirate" ne pourra pas l'utiliser sur son PC comme ses caractéristiques système ne seront pas les bonnes.
    Il devrait comprendre le codage du code pour introduire le bon.
    Enfin c'est ce que je pense sinon as-tu une solution fiable ou comment font les pros?

  7. #7
    Membre à l'essai
    Homme Profil pro
    Webmaster
    Inscrit en
    Février 2021
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : Février 2021
    Messages : 9
    Points : 13
    Points
    13
    Par défaut script shear ip de connection
    Citation Envoyé par BBouille Voir le message
    J'ai oublié d'ajouter que je cherche à récupérer l'ID du PC de l'utilisateur et le code final que je renverrais contiendrait cet ID plus un code.
    Donc le programme ne marcherait pas sur un autre PC.
    Je rame pour trouver une fonction API ou une autre méthode pour récupérer cet ID.
    peut etre une piste pour toi la maniere de recupere l'adresse ip relle meme si vpn brancher

    <?php
    function getIp(){
    if(!empty($_SERVER['HTTP_CLIENT_IP'])){
    $ip = $_SERVER['HTTP_CLIENT_IP'];
    }elseif(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
    $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
    }else{
    $ip = $_SERVER['REMOTE_ADDR'];
    }
    return $ip;
    }
    echo 'L adresse IP de l utilisateur est : '.getIp();
    ?>

    pour la mac adresse
    echo GetMAC();

    function GetMAC(){
    ob_start();
    system('getmac');
    $Content = ob_get_contents();
    ob_clean();
    return substr($Content, strpos($Content,'\\')-20, 17);
    }

    apres tu sais ce qui te reste à faire dans ton codage

    en javast

    InetAddress ip;
    ip = InetAddress.getLocalHost();
    System.out.println("Current IP address : " + ip.getHostAddress());

    NetworkInterface network = NetworkInterface.getByInetAddress(ip);

    byte[] mac = network.getHardwareAddress();

    System.out.print("Current MAC address : ");

    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < mac.length; i++) {
    sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
    }
    System.out.println(sb.toString());

    pour une machine local adresse physyque

    <?php
    //Buffering the output
    ob_start();

    //Getting configuration details
    system('ipconfig /all');

    //Storing output in a variable
    $configdata=ob_get_contents();

    // Clear the buffer
    ob_clean();

    //Extract only the physical address or Mac address from the output
    $mac = "Physical";
    $pmac = strpos($configdata, $mac);

    // Get Physical Address
    $macaddr=substr($configdata,($pmac+36),17);

    //Display Mac Address
    echo $macaddr;

    ?>

Discussions similaires

  1. Protection de logiciel par clé
    Par jurassic pork dans le forum Contribuez
    Réponses: 9
    Dernier message: 25/02/2020, 10h41
  2. Protection logiciel par license
    Par theunknownman001 dans le forum Installation, Déploiement et Sécurité
    Réponses: 0
    Dernier message: 02/04/2012, 11h51
  3. Protection des logiciels par serial et validation
    Par megamario dans le forum Installation, Déploiement et Sécurité
    Réponses: 14
    Dernier message: 23/02/2011, 07h34
  4. [WD11] : Protection des logiciels par dongle
    Par PimSaVie dans le forum WinDev
    Réponses: 4
    Dernier message: 04/08/2008, 15h45
  5. Protection d'un logiciel par enregistrement sur serveur
    Par sbadecoder dans le forum Web & réseau
    Réponses: 3
    Dernier message: 12/10/2007, 23h58

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