Avant toute chose la protection à 100 % n’existe pas, tout ce qui est fait par l’homme peut être démonté par l’homme.
Si vous ne voulez pas votre que votre logiciel soit cracké, et bien faîte du Free (les utilisateurs sont très peu reconnaissant) ou ne le distribuer pas…
Voici quelques astuces ou méthode que j’utilise, (je ne nommerai pas mes applications qui les utilisent !)
-Mettre la boite de dialogue de MDP dans un thread
- Utiliser le Cryptage MD5
-Vérifier plusieurs fois de suite la vérification du numéro de série
avec des Delay et threads différent
-Mélanger le code de vérification avec du code innocent
-Faire des fasses erreur (division/0)
-Crypter la password entré et le comparer en plusieurs fois, par exemple les 10 premiers caractères puis un caractère sur 2 puis 1 sur 3…
Une bonne algo de génération de serial doit faire au moins 2000 Ligne de code PB, ne pas hésiter à pourrir le code avec des instructions pour vérifier le code
Les check :
A faire au début du programme :
Modification de l’exe dans une boite de dialogue puis faire d’autre vérification suivant la date, l’heure, un événement particulier… sans afficher de boite mais soit en désactivant les fonctions ou un end
La destruction de l’exe. Très efficace et peu utilisé (une de mes protections préférées), après une comparaison au Md5, on détruit l’exe en le modifiant dans n’importe quel point de celui-ci
Au bout d’une 10 de modif l’exe plante sur des fonctions puis fini par ne plus se lancer du tout… et pour le cracker c tout à refaire.
La mise à jour régulière permet au patch d’être obsolète, mais les crackers distribue l’exe complet cracké.
Mettre au moins 10 routines qui vérifient si un fichier existe, et celui ci contient les Md5 des cracks trouvés
Ex :
If readfile(1, ‘ver1.cr ‘)
Repeat
If Readstring()=MD5$
Until eof(1)<>0
Endif
If readfile(2, ‘ver2.cr ‘)
Repeat
If Readstring()=MD5$
Until eof(1)<>0
endif
Une de mes dernière pensée que je vais mettre en ouvre est simple :
La protection se fait par numéro de série / code
L’exe ne contient pas la génération du numéro de série
Le numéro de série n’est pas construit de façon aléatoire
Par exemple :
XXXX-YYYY-MMMM-PPPP
YYYY = Calcul de XXXX +calcul de MMMM
PPP= calcul de MMM + XXXXX
Ensuite les fonctions principales du logiciel sont contenues dans un DLL
Il y’a donc 2 DLL = 1 pour la demo qui ne contient pas toutes les fonctions
Et 1 pour la version complète
Les 2 DLL sont inclus dans l’exe et sont extraites quand on a besoin d’elle
La dll demo n’est pas crypté
La dll complète est crypté selon la clef du numéro de série (par exemple tous les numéros de série renvoie la même valeur ex : PQLqd565fL@LQ545745PO.AODPD56842 »33PI)=OKL
Donc si vous avez bien compris, le cracker aura entré n’importe quoi comme numéro de série ex 12345 et il ne pourra pas décrypter la dll version complète
Les crypteurs PE
Ça ne sert à rien d’en acheter un car tous les crypteur PE on un extracteur tout fait sur le net.
Néanmoins, quelques PE sont facile à modifier leurs signatures (en partie) et la plupart des extracteurs Pe tout prêt l’ont dans le C***. Il ne reste plus les crackers confirmés.
Toutes ces méthodes n’empêchent pas la cracking mais le nombre de personne capable de détruire ces méthodes est bien moins important.
Je suis ouvert à tous vos commentaires et idées
