Qui aurait dit qu'un jour sur ce forum serein,
Un trublion passerait et le doute sèmerait,
Dans l'esprit de l'Admin, pourtant équilibré,
En lui parlant de poules et en alexandrins.
Avant de rentrer dans le vif sujet, laissez-moi vous narrer une anecdote tout droit sortie de mon enfance (
Kinder signifiant
des enfants, je reste dans le sujet). À cette époque (mais non, il n’y avait plus de dinosaures), j'étais fasciné par les tours de magie qui défiaient les lois de la physique. J'étais éberlué lorsque le prestidigitateur faisait disparaître son assistante habillée en bleu pour la faire réapparaître à l'autre bout de la scène, habillée en rouge. J'avais beau réfléchir, tourner la question dans tous les sens, je n'avais pas la moindre idée pour expliquer ce phénomène irrationnel. Jusqu'au jour où voulant partager ma passion avec un copain d'école, celui-ci m'annonça : "mais c'est très simple, il n'y a pas une assistante, mais deux, et elles sont sœurs jumelles". J'en ai voulu à mon copain d'avoir détruit mon monde magique, alors que, paradoxalement, c'était moi qui demandais à connaître le stratagème. Ensuite, j'ai arrêté de lui en vouloir pour m'en vouloir à moi-même de n'avoir pas deviné un subterfuge aussi simple. Mais voilà, le charme était rompu et le tour ne présentait plus aucun intérêt à mes yeux.
Les plus perspicaces d'entre vous m'ont vu arriver avec mes ballerines rose taille 47 : le tour de magie, c’est l'exécutable (le Kinder) et les explications de mon copain, le script (l’œuf d’honnête poule). Avant de continuer, je tiens à préciser que je comprends parfaitement le point de vue de Tlem et aurais tenu la même position si j'avais été administrateur de ce forum (Dieu m’en préserve).
Ceci étant dit, l'heure des révélations a sonné : je développe
un programme anticopie, aussi, si je vous dévoile la source en amont, il ne vous sera plus possible de tester objectivement la protection. Voici donc le cruel dilemme qui a justifié tant de mystère autour de ce projet. J'ai même songé à fournir la source par MP à un GM (gentil modérateur) de confiance pour que ce soit lui qui la compile et poste ensuite l'exécutable sur le forum pour les tests, levant ainsi toute suspicion quant à la couleur de mon chapeau ; mais comme je me suis récemment inscrit sur ce forum (moins de deux mois), il me semble malvenu de demander une dérogation à son fonctionnement habituel. Quand j'ai la possibilité de transformer une contrainte en avantage, je n'hésite pas… pour ce faire, je vais vous (membres de ce forum) déléguer cette tâche en postant les sources, car si vous êtes intéressés par l'utilisation du programme, vous voudrez, à votre tour, tester le degré de protection qu'il offre.
Pour en revenir à la
protection anticopie, il n'est pas contradictoire d'être à la fois partisan de l'open source et avoir besoin, ponctuellement, de protéger un programme contre la copie. Lors des consultations des différents forums traitant d'AutoIt, j'ai remarqué une forte demande et une offre assez rare. En fait, je n'ai trouvé que
CodeScannerCrypter. Mon approche est différente : un
drag & drop avec le programme à protéger et apparaît à côté
le même programme (à peine plus lourd)
avec son icône et ses propriétés, sauf qu'il ne peut plus être copié, et ce,
indifféremment avec un script
au3 ou un exécutable
exe (quelconque) ou un
msi. Évidement que l’empreinte de hashage ne correspondra plus, mais ce n’est pas tous les jours que l’on protège un programme écrit par quelqu’un d’autre. Tlem, cela devrait répondre à tes trois points d'interrogation ; es-tu rassuré sur mes intentions maintenant ???
En ce qui concerne la protection contre la copie, elle n'est jamais absolue et la mienne, pas plus qu’une autre, ne saurait résister à un
reverse engineering forcené. Par contre pour décompiler, c'est une autre paire de manches. Il y aura toujours des fabricants de coffres-forts qui renforceront l’inviolabilité (qui a dit comme Mireille Mathieu ?) de leur produit et des perceurs qui inventeront un chalumeau qui chauffe plus. Mon postulat est le suivant :
si le piratage prend plus de temps que de réécrire le programme protégé lui-même, la protection est efficace. J'ai commencé ce programme peu de temps avant mon inscription sur le forum et c'est la troisième ou quatrième fois (quand on aime, on ne compte pas) que je le réécris parce que des idées de protection supplémentaires et de simplification du script ont germé depuis. Il est composé de quelques fonctions que je n’ai vu nulle part ailleurs ; j’espère que les innovations seront aussi efficaces dans la pratique qu’en théorie. Peut-être que je me leurre et qu’un membre de ce forum va me démontrer à vitesse SQL qu’il y a une faille majeure dans mon script ; dans ce cas, j’afficherai un portrait à la place de l’avatar et me rebaptiserai amphore. Voyez là une tentative de motivation.
Enfin, parmi les fonctions essentielles qui composent le script, il y en a qui peuvent être utilisées de façon autonome. L’une d’elles est la dissimulation du script de protection et du programme à protéger. Je vous propose de commencer par là, car elle est essentielle pour tout le reste du script. Certains boutonneux sous Biactol y verront une opportunité pour camoufler leurs antisèches et/ou leurs films pornos, d’autres leur correspondance intime adultèrine… Mais d’autres encore, s’en serviront pour laisser leurs outils de développement chez le client sans s’entendre dire à leur retour : "j’ai juste changé la couleur du titre et depuis l’écran est noir et l'on entend comme un cœur qui bat". L’outil en lui-même n’est jamais malsain, tout dépend de l’usage que l’on en fait. C’est l’électricité issue du nucléaire qui fait tourner les ordinateurs, ce même nucléaire qui a été utilisé à Hiroshima.
Alors maintenant que je vous ai épuisé, je vous propose de marquer ce sujet résolu et d’ouvrir un exemple de script intitulé "Création et utilisation d’un dossier invisible". Comme ceux qui ont des contentieux sont nettement plus nombreux que ceux qui ont des comptes en Suisse, j’ai bien pensé à baptiser le programme "Cahuzap", mais finalement j’ai préféré zapper Cahu et l’appeler "HiddenDir_HotKeyCall".
Avant la clôture du sujet, j’aimerais bien
avoir un petit retour de la part de ceux qui ont eu le courage de me lire jusqu’ici.
J’ai toujours le poignet en vrac,

mais j’ai compris pourquoi j’ai été atteint du
symptôme de l’infographiste : quelques jours auparavant, j’ai baissé le siège pour me contraindre à tenir le dos droit, sans prendre en compte le changement d’angle de l’avant-bras. Exemple à ne pas suivre…
J’arriverai tout de même à finir les trois lignes de code qui restent en attendant que le chameau coureur me livre la souris verticale.
Vos commentaires seront les bienvenus.
À bientôt.
