begin process at 2012 02 11 14:56:21
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Sécurité

 > PROTECTION COPIE CD, OU PROGRAMME SUR DONGLE USB

PROTECTION COPIE CD, OU PROGRAMME SUR DONGLE USB


 Information sur la source

Note :
6,75 / 10 - par 4 personnes
6,75 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Sécurité Classé sous :protection, cd, usb, dongle, copie Niveau :Débutant Date de création :30/01/2008 Date de mise à jour :30/01/2008 14:45:33 Vu / téléchargé :20 260 / 1 516

Auteur : Huugooo

Ecrire un message privé
Site perso
Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note

 Description

Programme servant à protéger vos programmes de la copie.
Vous pouvez graver votre projet sur un CD ou une clé USB et n'autoriser son exécution uniquement sur ce support
Pour cela, changez la valeur de NumeroSerieLecteur par le numéro de série de votre média
Cela nécessite d'interroger à l'avance le numéro de lecteur puis compiler et graver pour chaque
distribution, mais cela en vaut la chandelle.
Pour toute demande d'information : hugo.bulthe@free.fr

Source

  • procedure TForm1.VerifNumSerie;
  • var
  • VolumeName : array[0..MAX_PATH] of char;
  • VolumeSerialNr : dword;
  • FileSystemName : array[0..MAX_PATH] of char;
  • fml : dword;
  • flags : dword;
  • Lecteur : string;
  • const NumeroSerieLecteur = 3560779912;
  • begin
  • Lecteur:= Copy(Application.ExeName, 1, 3);
  • if (not GetVolumeInformation(Pchar(Lecteur), VolumeName, MAX_PATH, @VolumeSerialNr, fml, flags, FileSystemName, MAX_PATH)) or
  • (VolumeSerialNr <> NumeroSerieLecteur) then
  • begin
  • MessageDlg('Copie pirate', mtWarning, [mbOK], 0);
  • Application.Terminate;
  • end
  • else ShowMessage('Copie autorisée');
  • end;
procedure TForm1.VerifNumSerie;
var
  VolumeName      : array[0..MAX_PATH] of char;
  VolumeSerialNr  : dword;
  FileSystemName  : array[0..MAX_PATH] of char;
  fml             : dword;
  flags           : dword;
  Lecteur         : string;

const NumeroSerieLecteur = 3560779912;

begin
  Lecteur:= Copy(Application.ExeName, 1, 3);
  if (not GetVolumeInformation(Pchar(Lecteur), VolumeName, MAX_PATH, @VolumeSerialNr, fml, flags, FileSystemName, MAX_PATH)) or
  (VolumeSerialNr <> NumeroSerieLecteur) then
  begin
    MessageDlg('Copie pirate', mtWarning, [mbOK], 0);
    Application.Terminate;
  end
  else ShowMessage('Copie autorisée');

end;


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

30 janvier 2008 14:45:33 :
Oubli

 Sources du même auteur

Source avec Zip Source avec une capture FERMER GROUPE DE PROGRAMME AVEC UNE TOUCHE

 Sources de la même categorie

Source avec Zip Source avec une capture EXE PROTECTOR V1 par MrClock
Source avec Zip Source avec une capture LYNX : CHIFFREMENT À BLOC/FLUX, EXEMPLE INCLUS par Bacterius
Source avec Zip FBCREATEUSER par fbalien
Source avec Zip Source avec une capture SCANNER DE MALWARES ( ßE SCANNER ) par MrClock
Source avec Zip Source avec une capture GOLDEN PASSWORDS - STOCKEZ VOS MOTS DE PASSE ! par Bacterius

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture EXE PROTECTOR V1 par MrClock
Source avec Zip Source avec une capture LOGICIEL INTERRUPTEUR MONDIAL USB par ced55957
Source avec Zip CHARGER ET ENVOYER DES DONNÉES VIA L'USB par ldesmartin
Source avec Zip DIALOGUE AVEC AGILENT DSO3000 USB par gts2
Source avec Zip DONGLE USB, UTILISATION D'UNE MEMFLASH POUR PROTÉGER UN PROG... par rylryl

Commentaires et avis

Commentaire de f0xi le 30/01/2008 17:43:34 administrateur CS 3/10



desasm ->
chercher string ref 'copie pirate' / 'copie autorisée'
chercher call ref -> GetVolumeInformation etc...

chercher start proc 0xN
chercher end proc 0xM

patch proc 0xN -> jmp 0xM

Save

a plus de protection, a la portée de n'importe qui.

Commentaire de HAFTARIFOUAD le 30/01/2008 18:42:09 5/10

Salut Monsieur HUUGOO ;-)

Bon idée et trés bon le code... c'est ce que j'ai pensé à faire depuis qlq jours.

Je vs souhaite; Bonne continuation et bonne programmation.

@+

Commentaire de matrix1 le 31/01/2008 10:13:23

Désolé, ça marche pas sur les CD rom, car a chaque gravure le N° de serie change, mais pour les Clé USB temps que c pas formater le N° de serie reste lui même, mais ...et je suis navré de te le dire, même un newbie peut cracker cet application, alors..
si t'as des notion on crack, tu seras que il ne faut jamais mètre ce type de message dans ton application car c exactement la 1er chose a chercher apré la pacage bien sure,
MessageDlg('Copie pirate', mtWarning, [mbOK], 0); il faut crypté (Copie Pirate) pour que ça ne soit pas un string visible, et même si tu le fais ça sera pas aussi difficile de faire un BP sur l'offset qui fais le teste avant d'appeler L'API pour afficher ce message, il faut etre un bon crackeur pour faire une application qui ne se fais pas cracké aussi vite ;), par ce que quoi que te face c'est crackable croi moi, je te conseille de faire un script de cette procedure et la faire compiler on runtime avec Remobject, bien sure il y a d'autre choses a faire mais temps que tu ne travail pas sure un projet top secret alors ont reste la pour le moment c suffisant ;)

Commentaire de Huugooo le 31/01/2008 15:34:13

Alors pour te répondre, sache que j'utilisais une variante de ce programme il y a longtemps avec un vieux logiciel de gravure. Je gravais un fichier, puis j'obtenais le numéro de série. Puis je recompilais mon prog et terminais le CD. Le numéro de série ne changeait pas. Est-ce le logiciel ? Est-ce comme ça avec tous les logiciels, je ne sais pas je n'ai pas essayé.

Sinon pour le crack. J'ai fais du cracking il y a quelques années et j'ai encore des notions. il est bien évident qu'il ne faut pas mettre le message comme ça en toutes lettres, cela va de soit. De plus, encore moins le numéro de série du lecteur en toutes lettres dans le code. Généralement, je ne mets pas de messages, et le code est crypté à la va vite et découpé dans plusieurs variables. Ce n'est pas infaïble mais ça a l'intéret de faire cogiter pas mal d'heure le ptit malin en assembleur...

Et puis il faut l'avouer, je ne vends pas mes prog au monde entier, juste à quelques entreprises et administrations qui n'y connaissent rien :-)

Commentaire de nethacker le 01/02/2008 21:13:13 9/10

Shareware Power XD

Commentaire de nethacker le 01/02/2008 21:18:07

F0xi tu crois que n'importe qui désassemble ?

Commentaire de matrix1 le 02/02/2008 11:04:18

j'ai pas dit qu'il faut etre un crackeur pour faire de la bonne sécurité mais j'ai dit qu'il faut etre un bon crackeur, et je doute tj que c fesable avec le CD, même si tu ne ferme pas la session à la prochaine gravure le NS changera, et je doute qu'un logiciel qu'il soit vieux ou nouveau qu'il peut te calculer le prochain NS par ce que il a une relation avec la date et l'heur de gravure.
et si tu me laisse te répondre NETHACKER , c pas tous le monde désassemblent mais presque tous informaticiens peut l'apprendre en quel ques minutes,à part les informaticiens non informaticiens, vous voyez ce que je veux dire :p,et moi personnelement je ne suis pas trés expert en cracking c pas mon truc déja, mais j'avous que par fois j'utilise par ce que j'aime pas Microsoft, j'aime pas les Soft payant en général, et Vive le Open source.  

Commentaire de barbichette le 04/02/2008 10:20:10

Hello, everybody,

Pour ceux et celles qui veulent faire une bonne protection, j'ai un logiciel très cher et très spécialisé qui utilise un dongle usb pour stocker des clefs de licences.

L'astuce principale et de formater le dongle non pas avec des clusters fixes mais avec une série de cluster de 256 octets par exemple, mais une fat a priori normale, ce qui rend toute copie par windows impossible pour cause de secteurs defectueux, et surtout des fichiers illisible dans cette zone du disque.

Par contre, le logiciel de licence, lui, lit directement sur le support en basculant momentanément les paramètres du dongle sur 256 octets pour lire et écrire dans ces zones.

Avec cette méthode, le mondre chkdsk ou scandisk bousille le dongle.

Dans un deuxième temps, lors du transfert de clef sur un disque dur, il crée un fichier un peu plus grand que la traille d'un cluster et place des infos sur la partie non utilisé du deuxième cluster. Avec le même principe, pour vérifier la présence de la licence sur le disque, il lit en dehors du fichier, sur la zone non utilisé. Ici, pas de souci avec scandisk, défrag, ou chkdsk puisqu'ils ont la bonne idée de déplacer les fichiers cluster par cluster (donc nos infos avec). Par contre, une simple copie du fichier sur un autre support rend inutilisable ce même fichier puisque dans ce cas, windows ne copie que dans la limite de la taille du fichier (et les infos de la zone inutilisée sont perdues).

Il existe bien sûr des systemes pour pirater mais toute protection à sa parade.

Je ne sais pas si mon explication à été clair, mais si un bon programmeur systeme veux se lancer dedans et faire une belle source avec ce systeme de protection, je suis preneur.

Avec ce systeme, il y a 1 clef sur le dongle, que l'on peut "installer" sur le disque dur du PC où il y a le logiciel. A tout moment, on peut la rebasculer sur le dongle En cas de formatage du disque dur par exemple. Ainsi, si vous voulez 5 licences, on plasse 5 clefs sur le dongle.

Attention, il faud désactiver l'antivirus avec toute manipulation car on modifier direct sur le disque la taille d'un fichier, ou le changement de taille des clusters et les antivirus n'aiment pas trop ce genre de chose.

Barbichette

Commentaire de exar le 13/02/2008 13:17:11

Barbichette> Pas con, ce système !  Hélas pas le temps de m'y mettre...  Entre le boulot et les enfants, même plus beaucoup de temps pour moi...

Commentaire de kadd83 le 06/06/2008 15:24:59

je cherche à réaliser un programme en DELPHI qui permettrait de protéger une application au moyen d'un dongle USB. La licence peut être alors "unlimited" ou "time limited". Avez-vous une idée de ce qu'il faut faire ? Merci

Commentaire de jackalunion le 22/06/2008 13:16:55 10/10

trés trés utile

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Proteger une cle USB contre la copie sur PC [ par will37 ] Bonjours,Je cherche un script en VB qui me permettrait de protéger une clé USB contre la copie sur PC mais je précise que je veux protéger la clé et n Protection d'un logiciel contre la copie [ par bfouad ] Bonjour,je désire connaître quels sont les méthodes existantes pour proteger un logicel contre la copie ?Merci. Copie d'un répertoire [ par Fruitella ] Salut,Je suis à la recherche d'une fonction ou un code qui permet de copier un répertoire en entier, de connaitre sa taille et si il existe de pouvoir télécharger delphi ? [ par costello ] J'ai un haut débit pas très haut... (genre 15ko/s)Donc télécharger Delphi 6 perso sans interruption, très très long (on peut pas résumer le dld avec u tps restant ds une progress bar [ par lnicos ] ba voilà le titre est clair ;-p, yep je cherche un truc afin de prévenir les utilisateurs du temps restants dans la copie de fichier. Pour le moment j Avec quelle DataBase ? [ par Fredelphi ] Bonjour,Je dois faire un catalogue sur cd-rom, et j'aurais voulu mettre mes données dans une database.Est-ce possible ? Et si oui, avec quelle base ? Une bouée svp................ [ par stampe ] Toujours sur le même sujet???. Mon DBLookupComboBoxBon j?ai réglé mon 1er problème Maintenant mon souci est l?enregistrement d?un nouvel enregistremen protection de repertoir (dossier) pas en reseau [ par skiso ] sq en peut proteger un repertoir si oui comment? Choisir la piste d'un cd audio [ par alexistoulotte ] Est-ce que qqn connait une méthode pour aller directement a la piste d'un cd audio que l'utilisateur a choisi (par un edit par exemple).Merci d'avance


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 6,864 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales