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

x86 16-bits Assembleur Discussion :

Rendre une disquette illisible par d'autres que moi


Sujet :

x86 16-bits Assembleur

  1. #1
    En attente de confirmation mail
    Inscrit en
    Août 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 84
    Points : 33
    Points
    33
    Par défaut Rendre une disquette illisible par d'autres que moi
    salut a tous ;
    voila je voudrai savoir si il existe un code qui permet de d'ecrire sur une disquette et la rendre accessible que par moi(mon programme).
    dans le but de proteger mes logiciels
    Merci

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 946
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 946
    Points : 59 539
    Points
    59 539
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    S'il s'agit de rendre une disquette incopiable voire utilisable par toi seul, une bonne méthode est un formatage "exotique".
    Il est aussi possible de déplacer la FAT, de la crypter...

  3. #3
    Membre expérimenté
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Points : 1 557
    Points
    1 557
    Par défaut
    Salut !

    Tu peux en effet crypter tes fichiers et faire ton propre système de fichiers si tu le désires, mais sache que tu ne pourras jamais faire de disquette "incopiable", une copie RAW de disquette étant facile à effectuer...

    Voila @+

  4. #4
    En attente de confirmation mail
    Inscrit en
    Août 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 84
    Points : 33
    Points
    33
    Par défaut
    salut; je vous remerci pour vos propositions.
    moi je me demende comment se fait-il qu'il ya des disquetes non copyables, Windows affiche un message du genre peripherique non pret.
    j'ai vu un cd chez un copin qui se vend avec une disquette de protection , lors de l'installaation elle est demandé.

    l'idée qui m'est venu est la suivante:
    a partir du momont ou chaque disquette a un N° de serie logique aprés formatage, mon executable je le crée de telle facon qu'il marche qu'avec celle-ci et bien sur je la demmande a l'utilisateur péridiquement. le probleme reside dans clonage de disquette, car la disquette resultante aura le meme N° de serie que la mienne et cela fait tomber a l'eau toute ma strategie de defense.
    j'ai trouvé un autre moyen, c'est le suivant:
    je perse la disquette a un endroit quelconque(je l'est fait deja), ce qu'il me reste a faire si c'est faisable(je cherche le code) est de compter le nombre de secteur depuis le debut jusqu'au trou(une erreur va etre provoquée) une fois le nombre connu, je regle mon executable d'apres cette disquette et le tour est joué.
    j'attend vos commentaires....

  5. #5
    Membre expérimenté
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Points : 1 557
    Points
    1 557
    Par défaut
    Salut !

    Ta deuxième solution correspond à la protection par disquette la plus répandue, sauf que la tienne est un peu plus barbare
    En effet, il est préférable de rendre un secteur illisible d'une autre manière dans la mesure du possible (peut être avec un aimant ou je ne sais quoi d'autre). De même, si tu dois créer cette disquette à grande échelle, il ne sera pas si facile que ça de faire le trou sur le bon secteur de chaque disquette. De plus, il ne sera pas si difficile que ça de faire une copie de la disquette : on fait une disquette Clone en ignorant les erreurs de copie, puis on fait le trou au même endroit que la disquette d'origine ...

    Deuxième point, ce système de protection est loin d'être infaillible ! En effet, en désassemblant un logiciel, faire sauter une telle protection est presque un jeu d'enfant

  6. #6
    En attente de confirmation mail
    Inscrit en
    Août 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 84
    Points : 33
    Points
    33
    Par défaut
    re;
    moi ce que je veux c'est d'eviter qu'une personne piuisse clonner l'une de mes disquettes. pour ce qui est du desasseblage sa va pas ertre facile , car mon logiciel est grand de taille et par concequant(je le pense du moins) il est difficile de trouver la condition a coursércuiter ; pour ce qui est de la position du trou(l'erreure); cela n'est pas important car a chque fois je creer l'exe par rapport a la disquette en question. par exemple j'ai une nouvelle commande, j'achete une diquette qui a pour N° de serie "AAAA-BBBB" ,je la perse(apres j'expliquerai pourquoi provoquer une erreur physique et non pas logique)
    je compte le nombre de secteurs jusqu'au trou par exeple "7".au niveau de mon logiciel qui n'est pas encore compilé, dans la fonction "verification" j'ajoute dans le code qu'il faudra trouvé la disqutte dont le N° de serie est AAAA-BBBB et qui a une erreur a partir du 7éme secteur, dans le cas contraire j'informe l'utilisateur qu'il n'estpas en droit d'utiliser le Soft.
    en ce qui est de l'erreure physique, j'ai penser que si je la provoque logiquement ele serai facile a clonner.
    j'espere que je me suis fait bien comprendre.
    En attendant vos commentaires ,Posrtez vous bien
    ciao

  7. #7
    Membre expérimenté
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Points : 1 557
    Points
    1 557
    Par défaut
    re
    Pour ce qui est de l'erreur physique je suis d'accord avec toi, vu que ce n'est pas une production en quantité faramineuse.
    Pour ce qui est du désassemblage, même avec 1 Mo de code, réussir a court-circuiter sera assez simple si tu n'utilises pas de cryptage pour ton code.
    Je m'explique rapidement : la fonction pour vérifier ta disquette sera une fonction de l'INT 13h, or cette interruption n'a aucune autre raison d'être appelée dans ton logiciel théoriquement. Un appel à l'int 13h se traduit en langage machine par les 2 octets DBh 13h (si mes souvenirs sont bons). Il suffira donc de lancer un debugger genre Turbo Debugger, de faire une recherche dans le code de la séquence 'DB 13' et faire quelques essais...

    La seule technique qui peut donner beaucoup de fil à retordre que j'ai pu voir, c'est de crypter l'exécutable, et de le décrypter ou fur et à mesure que l'on avance dans le code.

  8. #8
    En attente de confirmation mail
    Inscrit en
    Août 2002
    Messages
    84
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 84
    Points : 33
    Points
    33
    Par défaut
    re;
    dabord, si tu pense que la question de disquette a une certaine fiablilité ,parle moi un peu de la question du cryptage;

    mais sinon , ya une autre méthode de protection de soft c'est de figer le soft d'apres le Pc où va etre installé(avec un des peripherique).
    pourai-tu m'aider a trouvé comment avoire le numéro de serie physique d'un peripherique par programmation bien sur.
    j'avait un code pour trouver le N° de serie de la carte mere mais comme c'est accée a la memoire ,ben ca ne marche pas pour les systeme ayant une technologie NT comme 2000 server ,car ces derniers ne laisse pas libre l'acces a la memoire.
    a+

  9. #9
    Membre expérimenté
    Avatar de Juju_41
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Février 2003
    Messages
    974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Février 2003
    Messages : 974
    Points : 1 557
    Points
    1 557
    Par défaut
    Voici un exemple très simpliste (on ne peut pas vraiment appeler ça du cryptage ...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    ...
     
    ; début du "décryptage"
      push cs
      pop ds
      push cs
      pop es
      mov si,OFFSET zonecryptee
      mov di,si
      lodsb
      sub al,80h
      stosb
      lodsb
      add al,40h
      stosb
    ; fin du "décryptage"
     
      xor al,al
    zonecryptee:
    ; CDh 13h = INT 13h en code machine
      DB CDh+80h
      DB 13h-40h
     
      ...
    Après " décryptage " le programme exécutera la séquence
    xor al,al
    int 13h

    Ce genre de technique, lorsqu'on utilise un algorithme de cryptage avancé, permet de rendre très difficile le "crackage" du logiciel.

    Pour ce qui est des numéros de série, je n'ai rien a te proposer

    @+

Discussions similaires

  1. Rendre une fenetre magnétique par rapport à une autre
    Par ldalmagr dans le forum C++Builder
    Réponses: 3
    Dernier message: 17/01/2008, 10h33
  2. Réponses: 5
    Dernier message: 21/10/2007, 13h33
  3. Réponses: 3
    Dernier message: 18/07/2006, 10h32
  4. rendre une page invisible par les mteurs de recherche
    Par Delphi-ne dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/04/2006, 19h16
  5. Une application acceptable par un autre
    Par jop76 dans le forum API, COM et SDKs
    Réponses: 4
    Dernier message: 05/09/2005, 13h41

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