Obligement - L'Amiga au maximum

Samedi 20 avril 2024 - 14:32  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

Actualité (récente)
Actualité (archive)
Comparatifs
Dossiers
Entrevues
Matériel (tests)
Matériel (bidouilles)
Points de vue
En pratique
Programmation
Reportages
Quizz
Tests de jeux
Tests de logiciels
Tests de compilations
Trucs et astuces
Articles divers

Articles in english


Réseaux sociaux

Suivez-nous sur X




Liste des jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z,
ALL


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


Contact

David Brunet

Courriel

 


Dossier : La protection des logiciels
(Article écrit par Jean-Philippe Delalandre et extrait de Tilt - juillet 1990)


Si le code d'un programme en hexadécimal ressemble à s'y méprendre à la succession des coups d'une bataille navale, ce n'est sans doute pas par hasard : c'est dans cet amas de données, d'instructions et d'adresses qu'il faut chercher les traces de la guerre que se livrent pirates et éditeurs, à coups de protections plus ou moins inviolables. L'ennui, c'est que, sans être visée, la frêle embarcation du joueur honnête attire plus souvent qu'à son tour les boulets perdus...

La protection des logiciels

La protection des logiciels est porteuse d'une injustice fondamentale : c'est en effet l'utilisateur honnête, celui qui achète ses programmes au prix fort par l'intermédiaire des circuits commerciaux traditionnels, qui se trouve pris au piège d'une guerre opposant éditeurs et pirates. Alors qu'il est le moins concerné par ce combat plutôt stérile, c'est lui qui en supporte tous les désagréments. Pour un peu, l'usager ignorant de la loi pourrait finir par croire que c'est le commerce des originaux protégés qui est réprimé !

Tous les joueurs qui achètent leurs jeux en boutiques connaissent, bien malgré eux, la lourdeur des opérations de chargement de logiciels exigeant des codes d'accès, les multiples phénomènes d'incompatibilité dus aux protections, la longue attente (parfois de plusieurs mois !) qui suit le renvoi à l'éditeur d'une disquette hors d'usage dont ils n'ont pas pu réaliser de copie de sauvegarde... A chaque fois, ce sont eux qui subissent les effets indirects de dispositifs auxquels ils devraient, seuls, échapper.

Nous-mêmes, à Tilt, nous ne sommes nullement épargnés par les facétieux caprices de systèmes de protection qui choisissent généralement le plus mauvais moment (lorsqu'il faut prendre des photos d'écran, par exemple) pour se rappeler à notre attention.

Nul doute que des pirates cherchant à se donner bonne conscience trouveront dans cette situation un argument de choix pour justifier la poursuite de leur activité illicite. Mais il serait plus facile de les contredire si les faits ne leur donnaient pas en partie raison nous avons pu constater, par exemple, qu'une grande partie des problèmes d'incompatibilité rencontrés lors du passage de l'Atari ST à l'Atari STE étant dus aux protections des logiciels, les logiciels déprotégés avaient plus de chances de fonctionner sur les deux machines. Encore une fois, c'est le client "honnête" qui se trouve pénalisé face au joueur moins scrupuleux.

Dans ces conditions, peut-on encore considérer la protection comme un mal nécessaire, un tribut à payer par l'utilisateur pour que l'industrie du logiciel puisse vivre et prospérer ? Ou n'est-elle plus, au contraire, qu'une ligne Maginot allégrement franchie par les pirates de tout poil ? A entendre les éditeurs eux-mêmes, on peut sérieusement douter de l'efficacité des systèmes de protection et, par conséquent, s'interroger sur l'impact réel du piratage sur le marché du logiciel de jeu.

Certains, comme Daniel Duthil, président de l'Agence pour la Protection des Programmes, préfèrent faire appel aux rigueurs de la loi pour suppléer des procédés techniques impuissants à empêcher la copie des logiciels. Tous semblent en tout cas se tourner avec espoir vers de nouveaux supports inviolables qui pourront, à terme, supplanter la disquette magnétique en réglant (définitivement ?) le problème du piratage.

Les protections livrent leurs secrets

Loin de nous l'idée de trahir des secrets qui sont d'ailleurs déjà parfaitement connus des pirates. Il s'agit plutôt de satisfaire la légitime curiosité de l'utilisateur honnête qui contemple d'un air dépité l'écran noir de son micro, la boîte d'un logiciel au bout de son bras ballant, et de lui expliquer les causes du manque de fiabilité des systèmes de protections actuels.

A l'origine, l'ambition des systèmes de protection se bornait à empêcher qu'un utilisateur quelconque puisse dupliquer un logiciel à l'aide des commandes de copie du DOS, aussi simplement que l'on peut enregistrer un disque original sur une cassette audio. Le développement du piratage a poussé l'industrie du logiciel à s'engager dans une véritable course à la protection, équivalent informatique de la course aux armements. Pourtant, aucun éditeur n'a pu mettre au point l'arme absolue, les déplombeurs (NDLR : alias "crackers", pirates qui se chargent de déprotéger les logiciels) finissant toujours par trouver une parade. Voici un inventaire des protections les plus usitées.

Protection par codes d'accès

Cette protection, originale mais particulièrement fastidieuse, vérifie que vous êtes bien en possession du manuel (ou d'une liste de codes) en vous demandant, par exemple, de taper sur votre clavier un mot d'un paragraphe et d'une page choisis aléatoirement. Elle n'interdit pas la copie du logiciel, mais utilise souvent un procédé empêchant la photocopie de la liste des codes (emploi de couleurs qui ne passent pas à la photocopieuse, par exemple). Eh oui, c'est le papier qui est protégé, pas la disquette... Il s'est déjà produit que le distributeur français d'un logiciel anglais pousse involontairement à son comble la dérision de ce type de protection en livrant le programme avec un manuel traduit alors que les mots demandés étaient ceux du manuel anglais !

Mais si ces protections ennuient beaucoup l'utilisateur du logiciel, elles n'amusent pas non plus les pirates. L'un d'eux n'hésite pas à le reconnaître. "Ce sont des protections qui peuvent parfois être très difficiles à enlever ! Il y a de nombreuses façons de faire appel au clavier, ce qui rend difficile la localisation de la partie du programme qui demande une entrée. Les tables de mots n'apparaissent jamais en clair, elles sont codées. Le programme code l'entrée au clavier et compare cette entrée à ce qui est déjà codé."

Protection par "clé" électronique

Nous citons pour mémoire un type de protection qui connut son heure de gloire mais qui tend heureusement à être abandonnée. La clé électronique, "dongle" en anglais, est un petit élément qui vient se brancher sur un des ports de l'ordinateur et dont le programme vérifie la présence. De taille réduite, il semble idéalement Conçu pour se perdre sous un tapis lorsque le chat se met à jouer avec. L'inconvénient majeur de cette protection est alors de vous obliger à faire patienter le chat quelques semaines avant que l'éditeur daigne lui renvoyer un autre joujou.

Cette clé électronique, généralement constitué d'une unique résistance, est en outre facilement reproductible ce qui évitera au pirate paresseux d'entrer dans le programme pour faire sauter le test. Il n'empêche pas l'établissement de copies de sauvegarde mais grève le coût du logiciel d'une cinquantaine de francs.

Protection par changement de format

La répartition des données sur le disque (voir chapitre "Structure des données sur disquette"), ainsi que la manière dont s'effectuent les copies de fichiers d'un support à un autre, sont gérées par le DOS (Disc Operating System), c'est-à-dire le système d'exploitation. Afin d'empêcher les copies pirates, certains programmeurs ont eu l'idée de mettre au point des formats de répartition des données sur le disque différents de celui du DOS, en modifiant, par exemple, le nombre et la taille des secteurs, ou en changeant les données de contrôle. Le programme stocké sur une disquette protégée de cette manière doit obligatoirement être chargé en auto-démarrage, car lui seul est capable de gérer ce format particulier.

Le DOS de l'ordinateur ne voit dans la disquette qu'un support non-formaté, y décèle des erreurs d'écriture ou n'y trouve aucun fichier, selon la nature du format utilisé. Lors d'un essai de copie de la disquette protégée, un message apparaît, indiquant que le DOS y perd son latin.

Les méthodes de cryptage les plus simples consistent, par exemple, à fausser les sommes de contrôle qui servent à la détection des erreurs. Le DOS décèlera une erreur de lecture à chaque somme et refusera d'exécuter l'ordre de la copie, tandis que le système d'exploitation du programme négligera ces sommes ou les utilisera de manière appropriée. Plus souvent, ce sont les données de synchronisation qui sont modifiées. La palme de la sophistication dans le domaine du changement de format revient sans contestation possible au logiciel la Bête Du Gevaudan sur Apple II, qui n'utilisait qu'une seule piste écrite en spirale, à la manière du sillon d'un disque en vinyle !

Un système d'exploitation conçu pour accéder à des pistes concentriques et distinctes est bien entendu incapable de retrouver la moindre information écrite selon ce format tordu. Cette protection efficace n'a d'ailleurs été craquée qu'au bout de trois mois, mais il faut signaler que la copie tenait sur trois faces, la disquette originale disposant d'une plus grande capacité de stockage en raison de l'absence des données de contrôle.

Les pirates redoutent particulièrement les protections utilisant des changements de format : "Dès que l'on rencontre un changement de format, il faut se servir des routines de lecture du programme original pour le réécrire au format normal. Mais le jeu lit encore la disquette selon le format pourri ! Il faut donc ensuite changer les routines de lecture du programme. Cela demande du temps."

Malheureusement, ce mode de protection, en prenant quelques libertés avec les dispositifs de contrôle des données, pose parfois des problèmes de fiabilité à l'utilisateur, en particulier lorsque le lecteur est usé ou provient d'une série peu performante. Un changement de format poussé peut même mettre en difficulté les machines de duplication de disquettes, comme l'indique Jean-Luc Langlois de la société Lankhor : "On a eu des problèmes de duplication de la première protection qu'on avait faite pour Maupiti Island. L'idée était intéressante mais, à la duplication, la protection n'a pas pu passer, pour un problème de fiabilité de l'écriture. Ils étaient obligés de sauter les contrôles d'erreur sans lesquels les pistes ne passaient pas."

"A la base, on avait un système que l'on ne pouvait pas écrire sur Atari ST. Nous l'avons créé sur Amiga. On avait donc déjà une garantie intéressante puisque, finalement, chaque piste était protégée. Les données elles-mêmes n'étaient pas recopiables. Sur Atari ST, il y a deux façons de lire les fichiers une façon classique par secteur et une autre qui consiste à lire une piste intégrale. C'est le "Readtrack", qui marche très bien sur l'Amiga mais qui n'est pas fait, en théorie, pour gérer de la donnée sur Atari ST. On a pu dévier le système pour l'utiliser comme tel. Les pirates n'ont pas pu refaire la même chose en créant un système qui puisse relire comme cela, piste à piste. Ils ont mis leurs propres routines, ils ont mis un format à eux dans lequel ils ont recréé des secteurs plus grands, chose qu'ils n'auraient pas pu faire si nous avions gardé la densité d'informations qu'on avait au départ, parce qu'ils n'auraient pas eu la place."

"On n'avait pas mis en place une grosse batterie de routines et lorsqu'on a dû revenir à quelque chose de plus standard, on n'avait pas de routines de contrôle suffisantes. On pensait qu'ils allaient être obligés d'extraire complètement le logiciel, de le comprendre complètement et de recréer des fichiers classiques. On sait qu'ils ont essayé et qu'ils n'ont pas réussi. Mais ils ont pu biaiser."

Les changements de formats très puissants peuvent également poser de sérieux problèmes aux pirates qui tentent d'expédier à l'étranger, par modem, un logiciel non-déplombé. L'acheminement de l'original par courrier donnera dans ce cas à l'éditeur un court répit supplémentaire.

Protection par test d'une piste non-recopiable

Diverses protections reposent sur un marquage non-reproductible de l'original. Nous évoquerons à peine l'existence - en voie de raréfaction - de logiciels stockés sur disquettes 5,25" et protégés par un "trou laser" qui empêche, à un endroit précis, toute inscription de données. Le principe d'action de cette protection est simple : le programme tente d'écrire à l'endroit du trou ; s'il y parvient, il en conclut qu'il n'est pas en présence de la disquette originale. Ces protections ne sont pas seulement facilement contournables elles présentent aussi l'inconvénient d'abîmer, à la longue, la tête de lecture du lecteur de disquette !

Un autre type de protection, qui utilise certaines incompatibilités entre les lecteurs de disquette des ordinateurs courants et les machines de duplication, procède au marquage de l'original par un tout autre moyen. Certaines pistes de la disquette, nous l'avons vu, restent inutilisées en raison du manque de fiabilité du lecteur (sur Atari ST, il s'agit des pistes 81 et 82). Ces pistes peuvent néanmoins être lues et écrites, avec une probabilité d'erreurs certes supérieure à la moyenne. Ce sont ces pistes qui vont servir à protéger le logiciel, comme l'explique Laurent Kutil de la société Esat Software :

"Aujourd'hui, on utilise beaucoup cette protection qui repose sur une compatibilité de lecture avec les ordinateurs, sans qu'ils puissent réécrire les informations. On fait varier la vitesse de rotation des lecteurs des machines de duplication. Si, par exemple, on augmente leur vitesse, on écrira moins d'informations sur la piste. Une piste sur Atari fait en moyenne 6256 octets. A la duplication, par ce moyen, on n'écrira plus que 5000 octets. C'est ce qu'on appelle des "short tracks". On peut aussi ralentir la vitesse pour obtenir des pistes plus longues. L'ordinateur peut lire ces informations puisqu'il y a sur la disquette des repères qu'on appelle des "index pulse" (informations de synchronisation). Il lit une piste en prenant le premier index pulse et transfère tous les octets sans se soucier de la forme de la piste jusqu'à l'index pulse suivant. Lorsque ce transfert est fini, on calcule le nombre d'octets transférés, ce qui donne la densité d'informations de la piste. Le programme teste le nombre d'octets transférés."

"Par dernière, si un copieur arrive sur cette piste, il peut très bien dire que tout est normal parce qu'il a trouvé 9 secteurs normaux mais, s'il ne regarde pas la longueur de la piste, il ne pourra jamais qu'il y a une erreur. Et même s'il décèle qu'il y a une erreur ou une anormalité dans la longueur de la piste, il ne saura pas de manière logicielle ralentir ou accélérer la vitesse de rotation du lecteur."

Ce que confirme M. Pozniak, gérant de la société Sitis, spécialisée dans la duplication de logiciels : "On écrit généralement sur cette piste avec une densité plus grande qu'un lecteur normal pour simuler une lecture à une vitesse plus rapide. Un lecteur courant tourne à 300 rotations par minute. Il peut lire, grâce aux informations de synchronisation, des pistes qui seraient écrites à une vitesse de rotation plus faible. Mais il ne peut les réécrire car, en écrivant avec une densité normale, il ne pourrait mettre tous les caractères sur la piste les derniers caractères écraseraient les premiers."

Cette protection très efficace qui met en échec tous les programmes de copie tend à se généraliser. Le seul moyen de la contourner est de modifier le logiciel afin d'enlever le test qui vérifie que les données inscrites sur la piste sont bien conformes à celles de l'original, opération dont la difficulté dépend de l'ingéniosité dont a fait preuve le programmeur chargé de dissimuler dans le code du programme la routine de test fournie par le duplicateur.

Pourtant, cette méthode de protection n'interdit pas systématiquement toute copie de sauvegarde. Si la protection elle-même n'est pas copiable, les fichiers, eux, le demeurent. Il faut donc les transférer sur une disquette de sauvegarde (qui ne fonctionnera pas), puis les réimplanter sur la disquette originale, sans la reformater, le jour où celle-ci devient hors d'usage. Si la disquette n'est pas excessivement endommagée, cela doit fonctionner.

Pour efficace qu'elle soit, cette protection présente tout de même un inconvénient de taille : c'est elle, en effet, qui est à l'origine de nombreux phénomènes d'incompatibilité, comme le souligne Hervé Caen de la société Titus : "Les problèmes de compatibilité ne se sont pas seulement manifestés pour les Atari ST, mais aussi pour les Amiga. C'est une catastrophe ! Les lecteurs ont des tolérances de lecture plus ou moins fiables selon leur prix. Il arrive que les constructeurs, pour faire des économies, mettent des lecteurs de moins bonne qualité. Certaines protections poussent les vitesses de moteur ou les déplacements de tête en dehors des normes (NDLR : ce qui peut parfois abîmer les lecteurs !). Si ce n'est pas précis, les protections ne passent plus. On a eu des problèmes avec des séries entières d'Amiga sur lesquels certaines protections ne passent pas parce que Commodore a des approvisionnements de lecteurs de disquette de qualité variable. L'Amiga croit donc qu'il est en présence une copie pirate !".

Comme l'indique M. Pozniak, de Sitis, les problèmes peuvent aussi provenir du mode de gestion de la synchronisation du disque : "Nous nous sommes heureusement aperçus à temps que, lorsque Commodore a sorti son dernier disque dur qui court-circuitait la ROM de l'Amiga pour utiliser la sienne propre, il y avait des délais à ajouter à chaque fois qu'on faisait une sortie sur un port pour que la routine se fasse correctement."

Selon Emmanuel Forsans, directeur du développement chez Microïds, des problèmes similaires pourraient surgir lors de la sortie de l'Amiga 3000 : "De nombreuses protections se servent du 68000 pour faire la synchronisation. Si on fait une boucle en assembleur, il va mettre un temps donné à exécuter 10 000 fois la boucle. Ce temps va servir de synchronisation pour le disque. Si on exécute la même boucle sur un Amiga 3000, le processeur va mettre moins de temps. Le problème va être le même qu'avec les cartes accélératrices. En fait, il ne faut pas faire des synchronisation à partir du microprocesseur, il faut faire des synchronisation trame qui fonctionnent avec l'écran. A chaque balayage, on a un top."

Il va sans dire que lorsqu'un problème de compatibilité découle de l'emploi de ce type de protection, et cela s'est encore vérifié à la sortie de l'Atari STE, les logiciels déplombés sont les seuls à fonctionner. Un de nos lecteurs, nouveau possesseur d'un Atari STE et acquéreur malheureux de Falcon, a reçu de son vendeur une copie pirate du logiciel ! Ça fait désordre...

Protection internationale

Il existe des protections dont l'objet n'est pas d'interdire la copie des programmes (ceux-ci étant déjà protégés par d'autres moyens) mais d'empêcher leur utilisation sur des machines au standard d'autres pays. Moins connues des utilisateurs, ces protections tentent d'endiguer le développement de réseaux parallèles de distribution en testant la configuration matérielle de la machine et en produisant volontairement des phénomènes d'incompatibilité, comme l'explique Bruno Bonnell, directeur d'Infogrames : "C'est indispensable pour exporter sur le marché américain. Nous faisons environ 30 à 40% de notre chiffre aux États-Unis. Nous vendons nos produits sous licence à des Américains à condition que le produit européen ne puisse pas fonctionner chez eux. Les Américains sont très rigoureux sur cette clause. Le vrai problème, c'est qu'il y a eu en France des importations parallèles d'Amiga, notamment NTSC américains, et que des gens qui achètent des jeux ne peuvent pas les utiliser. Nous leur disons de se retourner contre la personne qui leur a vendu un Amiga qui n'est pas au standard européen."

Jean-Luc Langlois, de Lankhor, a également été confronté à ce type de problème : "Nous avons utilisé une fois, pour GNius, une telle protection, mais nous avons eu des pépins. Nous testions des configurations de clavier, des choses comme cela, sur un logiciel qui ne présentait pas de différences d'un pays à l'autre. Il y a des distributeurs qui essaient d'acheter en Angleterre pour revendre en France. Ce sont ensuite des produits qui reviennent comme ne fonctionnant pas alors qu'en fait ils ne sont pas adaptés au marché. Cela fait une gestion des retours plus lourde. Donc, finalement, nous n'avons pas maintenu ce type de protection. Nous utilisons beaucoup la synthèse vocale et les textes, c'est déjà une protection en soi. Un Anglais qui a une version française de Maupiti Island risque de ne pas comprendre grand-chose."

Les tests de protection

La plupart des protections ne seraient rien sans les tests. Un grand nombre de protections en utilisent pour vérifier la présence de données sur une piste non-copiable, ou celle d'un "trou laser", d'une clé électronique, ou encore pour comparer une entrée clavier à une donnée en mémoire... Le "déplombage" d'un programme consiste donc à enlever ces tests. Bien sûr, quelle que soit la nature de la protection, son efficacité finale dépendra de leur discrétion : ils doivent se dérober à l'oeil vigilant du pirate. Et dans ce domaine où l'imagination est sans limite, on atteint des niveaux de complexité et de sophistication extrêmes.

Les routines de protection les plus faciles à identifier et à enlever sont celles qui sont implantées alors que le programme est déjà terminé, avant la phase de duplication (NDLR : une routine est une portion de programme ayant un rôle spécifique). Les plus coriaces se fondent intimement avec le code. Souvent, les routines de test sont cryptées, ce qui veut dire que les octets correspondant aux instructions de test sont transformés par des opérations de calcul qui empêchent leur identification lors du désassemblage (c'est-à-dire lors de l'opération qui consiste à reconstituer, à l'aide d'un logiciel appelé "désassembleur", le programme source à partir du code binaire du programme objet). C'est seulement au moment de l'exécution du programme que la routine est décodée pour pouvoir s'exécuter.

Voici un exemple simple pour comprendre, par analogie, le principe du cryptage. Prenons le mot "Tilt". Si nous ne voulons pas, pour quelque obscure raison, qu'il apparaisse en clair dans le texte de cet article, nous pouvons par exemple décider de remplacer chacune des lettres qui le composent par la suivante de l'alphabet. Miracle, Tilt devient Ujmu. Nous effectuons l'opération inverse (moins une lettre) et, re-miracle, Ujmu redevient Tilt (avouez que c'est tout de même mieux comme cela). Un pirate explique le fonctionnement d'une protection utilisant un procédé de cryptage encore plus complexe : "La protection Rob Northen se sert du mode "trace" du microprocesseur 68000, un mode de débogage qui permet au processeur de se brancher à chaque instruction sur un autre programme. Une fois exécutée, chaque instruction est recodée et sert au décodage de l'instruction suivante. La "Rob 2" utilise la même technique mais est surcodée deux fois par elle-même (sic)."

Laurent Kutil met en avant d'autres méthodes de dissimulation des tests : "Le test de protection n'est pas forcément inclus dans le programme principal. Il peut être placé dans les programmes annexes, noyé au milieu de fichiers de graphisme ou de sons. Il peut également être séparé en plusieurs parties, dans un module de son et un module de graphisme par exemple. Une fois que les modules sont chargés en mémoire, le programme fait un calcul pour les remettre bout à bout et l'exécute, ce qui fait que la personne a énormément de mal à savoir quand le test va être réellement fait."

"Un autre moyen est de faire le test, d'en mémoriser le résultat et de continuer l'exécution du programme comme si tout allait bien. A un moment, on vient comparer le résultat du test avec ce qui aurait dû être trouvé, et on fait planter ou on ne fait pas planter le logiciel. Ces ruses intellectuelles, je dirais, permettent de repousser un peu l'échéance du déplombage du logiciel."

Parfois, c'est le programme qui se vérifie lui-même à l'aide de sommes de contrôle afin de voir si rien n'a été touché. L'utilisation du langage C, dans la mesure où il génère un code plus complexe, rend aussi le déplombage plus difficile. Le jeu du chat et de la souris auquel se livrent programmeurs et déplombeurs n'exclut pas non plus les facéties, comme le souligne ce pirate : "Un programme comportait une routine de protection en clair. chaque fois qu'on tentait de l'enlever, une routine cryptée se décodait et venait se recopier en mémoire à la même place !"

L'activité du pirate est pleine de rebondissements, et il arrive aussi que les programmeurs dissimulent des leurres dans leurs programmes afin de brouiller les pistes, ou qu'ils y placent de messages du genre "celui qui déplombe est un âne". Mais il suffit parfois d'une simple étourderie pour ruiner tant d'efforts. On nous a affirmé, par exemple, que les programmes-source commentés de la protection de Xenon II figuraient sur la disquette originale et que ceux de Falcon supprimés à l'aide de l'instruction d'effacement du DOS, restaient intacts sur le support, lisibles par un quelconque utilitaire de récupération de données.

Jeux difficiles à déplomber

Au hit-parade des protections, de l'aveu même des pirates, ce sont les deux versions de Dungeon Master qui méritent la première place. Dungeon Master n'a jamais pu être totalement déplombé, tant il est truffé de tests habillement dissimulés, parfaitement intégrés au jeu. Certains ont été oubliés et se manifestent de temps à autre. La version piratée est jouable mais demande de fréquentes sauvegardes en cours de partie. Dragon's Lair e également donné du fil à retordre aux pirates : "Il s'agissait d'un changement de format horrible qui jouait sur la synchronisation du lecteur. Les données étaient très compressées." Au bout de six mois, il a fini par être déplombé mais la version pirate tient sur huit ou neuf disquettes, au lieu de six pour l'original (ce qui est déjà bien trop à notre goût !).

Les logiciels Sierra ont également acquis une solide réputation. En France, Ubi Soft paraît être en bonne position. Mais, en dépit d'une débauche d'astuces, il faut avouer que la plupart des logiciels ne restent pas inviolés très longtemps. Rainbow Islands, qui combinait pourtant, aux dires des pirates, une protection "Rob 2" à un changement de format, n'aurait pas résisté plus d'une journée ! Les logiciels Psygnosis, pourtant bien protégés, ne dureraient guère plus longtemps. D'ailleurs, les éditeurs de jeux ont fini par renoncer à chercher la protection idéale. Le but, modeste mais plus réaliste, est aujourd'hui de la faire durer quelques semaines, le temps que les ventes puissent démarrer.

M. Pozniak, de Sitis, ne le cache pas : "Si une protection dure quinze jours, c'est bien ! Mais elle peut aussi être craquée en dix minutes. Ce qui compte, c'est le premier mois de vente du produit. Mais, surtout, je pense que l'éditeur, avant de se soucier de protéger ses logiciels, ferait mieux de mettre au point sa distribution avant le démarrage du produit pour qu'il s'en vende 6000 ou 7000 pièces dans la première semaine. Après, il peut toujours faire des retirages. Si c'est piraté, ce n'est plus très grave. En général, ils commencent à le vendre trop tard. Ils vendent 500 ou 1000 pièces d'un côté, et avant même qu'ils en aient vendu à l'étranger, le produit y est déjà ! Il faut avoir une politique globale."

La rapidité avec laquelle les logiciels sont craqués et diffusés dans les réseaux pose la question de l'incidence du piratage sur les ventes. L'acheteur honnête d'un jeu qui se plante à cause d'une protection souffre-t-il au moins pour quelque chose ? Sur cette question, les avis divergent. Emmanuel Forsans, directeur du développement chez Microïds considère plutôt la protection comme une perte de temps : "Il est dommage d'être obligé de protéger les jeux. On a sorti Chicago 90 sur Amiga sans le protéger parce qu'il fallait faire le master et que le temps pressait. Je ne pense pas que cela ait eu une grande incidence sur les ventes, qui ont été, toutes proportions gardées, équivalentes sur Atari ST et Amiga. Superski sur Amiga n'a pas été protégé, ce qui ne l'a pas empêché de se vendre normalement. Mais il s'agit là d'un avis personnel !"

D'autres éditeurs font un constat exactement inverse. Comme Titus qui a porté plainte contre un de ses anciens programmeurs accusé d'avoir diffusé Knight Force (version Amiga) sur les réseaux pirates avant même sa sortie : "Nous nous en sommes aperçus pratiquement au moment de sa diffusion. Apparemment le jeu n'était sur les BBS (NDLR : Bulletin Board Service, sortes de boîtes aux lettres informatiques utilisées par les pirates pour stocker et diffuser les programmes) que depuis deux jours. Mais le préjudice, quand on compare les ventes à celles de nos autres produits, est assez important. Les ventes de Knight Force sur Amiga ont été tuées."

Nous ne pourrons encore aujourd'hui trancher ce débat : est-il vraiment rentable, en termes de ventes supplémentaires, d'investir dans des protections ? Ce qui est certain, en revanche, c'est qu'elles représentent des frais importants si l'on tient compte, outre du temps de développement nécessaire, des coûts indirects dus aux phénomènes d'incompatibilité qu'elles provoquent (reprise des stocks chez les revendeurs, réalisation de nouveaux masters, duplication, distribution, etc.). Bruno Bonnell, d'Infogrames, évalue à près de 15% la part de la protection dans le prix du logiciel, tous frais indirects inclus. Face à cette réalité, certains éditeurs pensent que la solution au problème du piratage ne passe pas par la recherche d'une chimérique protection miracle, mais par l'information du public. "Ça me fait parfois peur d'entendre ce que certains jeunes disent du piratage, ou de voir leurs parents les considérer comme des petits génies. Si on leur disait que leur enfant fabrique des faux billets et les redistribue, ils se sentiraient sans doute plus concernés et ça leur ferait très peur. La solution tient peut-être à cela faire prendre conscience aux gens que déplomber un logiciel est aussi grave que faire un faux billet", affirme Laurent Kutil.

Vers un monde sans piratage ?

Mais en attendant une hypothétique prise de conscience, et d'encore plus d'hypothétiques actions préventives, les éditeurs unanimes tournent leurs regards vers de nouveaux supports qui régleront, au moins pour un temps, le problème du piratage. Les cartouches recueillent tous les suffrages mais il faut reconnaître que, pour l'instant, les fabricants de consoles tiennent leur marché et contrôlent l'édition de jeux au point qu'il est aujourd'hui pratiquement impossible à un éditeur français de se lancer dans ce genre d'aventure. Les supports optiques, CD-ROM et CDI font miroiter au loin l'espoir d'un monde sans pirate la commercialisation d'un lecteur/enregistreur de CD grand public n'est pas encore pour demain et le prix des disques optiques réinscriptibles rendrait la copie plus chère que l'original.

En attendant, il faudra donc se contenter des disquettes et accepter leurs imperfections. Bruno Bonnell résume cette situation : "On vit une période de transition. Investir aujourd'hui en protection, c'est intelligent pour éviter que cela soit vraiment le délire, mais parler d'un futur de la protection, c'est comme parler d'un futur des tubes en cire d'Edison... Les jeux, à l'avenir, seront soit sur CD, soit sur cartouche. La protection de demain ne pourra être contournée que par des professionnels, par des organisations identifiables que l'on pourra attaquer légalement. Pour moi, la protection de l'avenir ne sera pas logique mais mécanique."

De la loi Lang à la loi Godfrain

La loi du 3 juillet 1985 a mis en place une protection juridique des logiciels en les assimilant aux autres oeuvres de l'esprit. La loi Godfrain du 5 janvier 1988 va encore plus loin, en instituant une véritable protection... des protections !

En assimilant le logiciel informatique aux autres oeuvres de l'esprit, la loi du 3 juillet 1985 a tenté de mettre la protection des droits d'auteur au diapason des évolutions scientifiques et techniques. L'article 47 de la loi définit le cadre dans lequel peuvent s'exercer les droits de reproduction et d'utilisation d'un logiciel : "Toute reproduction autre que l'établissement d'une copie de sauvegarde par l'utilisateur, ainsi que toute utilisation d'un logiciel non expressément autorisée par l'auteur ou ses ayants droit, est passible des sanctions prévues par ladite loi."

Quelques jugements, prononcés sur le fondement de cet article, sont venus confirmer le droit de l'utilisateur à réaliser une copie de sauvegarde, tout en donnant de celui-ci une interprétation très restrictive. Dans un jugement en appel opposant, d'une part, les sociétés Artware et PC-Mart qui vendaient des logiciels de copie et, d'autre part, la société La Commande Électronique, distributeur en France des logiciels Ashton-Tate, le tribunal a considéré que le droit à la copie de sauvegarde se limitait à une seule unité, et que la faculté de réaliser cette copie était réservée au seul utilisateur du logiciel original. Mais il a parallèlement réaffirmé le caractère licite des protections en indiquant "qu'en exonérant de sanction la copie de sauvegarde faite par l'utilisateur, [l'article 47] vise seulement à marquer qu'établie par toute autre personne que ce dernier, elle est une atteinte aux droits de l'auteur ; (...) qu'au reste, c'est en vain qu'on y rechercherait, ne serait-ce qu'esquissée, une quelconque organisation d'un droit de l'acquéreur d'un logiciel à le reproduire ; qu'il suit de là que le texte de l'article 47 ne permet pas d'en tirer une quelconque prohibition d'un dispositif placé en obstacle contre la duplication ; qu'une telle pratique n'est pas juridiquement condamnable et n'est exposée qu'à la sanction du marché (...)".

En outre, le tribunal a estimé qu'une copie de sauvegarde étant déjà fournie avec les logiciels de La Commande Électronique, l'usager qui utiliserait un copieur pour en établir une autre se rendrait coupable de reproduction interdite. Il ressort - en creux - de ce jugement que si un éditeur vous vend un logiciel sans copie de sauvegarde, vous êtes en droit d'établir cette copie au moyen d'un logiciel de déplombage !

Sans abroger l'article 47 de la loi du 3 juillet 1985, la loi Godfrain de 1988 qui réprime tous les aspects de la fraude informatique risque tout de même de restreindre encore davantage l'exercice du droit à la copie de sauvegarde. Pirates et déplombeurs sont en ligne de mire une simple intrusion frauduleuse d'un pirate dans un "système de traitement automatisé de données" (programme, banque de données, etc.) est désormais sanctionnée d'un emprisonnement d'un mois à un an et d'une amende de 2000 à 50 000 FF ; s'il en résulte la suppression ou la modification de données contenues par le système, ou si son fonctionnement est altéré, la peine peut varier de deux mois à deux ans et l'amende de 10 000 à 100 000 FF ; celui qui fausse ou entrave "intentionnellement et au mépris des droits d'autrui" le fonctionnement d'un système encourt une peine de prison de trois mois à trois ans et de 10 000 à 100 000 FF d'amende ; celui qui aura, "intentionnellement" et au mépris du droit d'autrui", directement ou indirectement, introduit des données dans un système de traitement automatisé ou supprimé ou modifié les données qu'il contient ou leurs modes de traitement ou de transmission, sera puni d'un emprisonnement de trois mois à trois ans et d'une amende de 2000 à 500 000 FF ou de l'une de ces deux peines".

La participation aux copies-parties et l'appartenance aux groupes pirates sont également réprimées. Mais seule la jurisprudence déterminera si l'établissement d'une copie de sauvegarde dans les conditions définies par l'article 47 de la loi de 1985, à l'aide d'un logiciel de déplombage, s'effectue "au mépris des droits d'autrui" et tombe donc sous le coup de la loi Godfrain, ce qui est encore loin d'être certain.

Pour Laurent Kutil d'Esat Software, société qui compte nombre de copieurs à son catalogue, la réponse ne fait pourtant guère de doute : "Pour déplomber un logiciel, il faut entrer dans le programme, le tracer en pas à pas et faire sauter la protection. C'est là que la difficulté intervient car si le législateur a prévu, en 1985, que l'utilisateur avait droit à une copie de sauvegarde, il n'a pas pu entrevoir tous les problèmes. Depuis janvier 1988 s'applique la loi Godfrain qui est assez virulente dans la répression de la copie et du piratage puisqu'elle interdit à un utilisateur qui vient d'acquérir un droit d'usage d'un logiciel d'entrer dans le programme et d'en modifier le code."

Étonnant paradoxe, un copieur Esat ne peut venir à bout ni de sa propre protection, ni de celle des autres produits de la marque ! "Nous avons choisi cette solution tout au moins pour freiner la libre circulation des copieurs. D'une certaine manière, on montre ainsi la dérision des protections. On protège, mais c'est véritablement un coup d'épée dans l'eau", ex-plique Laurent Kutil. Une attitude qui n'est pas dénuée d'ambiguïté...

D'autres éditeurs, comme Hervé Caen de Titus, mettent plutôt l'accent sur la qualité du service après-vente comme alternative à la copie de sauvegarde : "Nous avons décidé d'instaurer la garantie à vie. Le joueur peut utiliser sans risque son original. Même si, au bout de deux ans, il plante sa disquette pour n'importe quelle raison, en 48 heures maximum, nous lui en expédions une nouvelle. Comme nous mettons des protections qui empêchent d'effectuer des copies de sauvegarde, nous changeons les disquettes autant de fois qu'il le faut. Des disquettes de Crazy Cars nous sont revenu, usées après plus de 150 parties !" Mais ce rappel de la fragilité des supports magnétiques ne fait que plaider pour le droit à la copie de sauvegarde, quels que soient lei moyens techniques nécessaires à sa mise en oeuvre.

L'expérience nous pousse à vous recommander d'effectuer préventivement une copie de sauvegarde de vos logiciels, à chaque fois que cela est possible. En cas de problème avec un original non-copiable, vous n'aurez comme unique recours que d'exiger son remplacement par votre revendeur, l'éditeur du jeu ou son importateur lorsqu'il s'agit d'un produit étranger, en priant pour qu'il soit encore en stock et que votre demande ne se perde pas dans les labyrinthes des couloirs... Malheureusement, les éditeurs sont souvent plus prompts à protéger leurs jeux qu'à remplacer les programmes défectueux... à cause des protections !

Entrevue avec Daniel Duthil

M. Daniel Duthil expose à Tilt la position de l'Agence pour la Protection des Programmes (l'APP), dont il est le président, sur les problèmes soulevés par la protection des logiciels.

- Les protections des logiciels, en rendant difficile, voire impossible, la réalisation de copies de sauvegarde, ne se retournent-elles pas avant tout contre l'utilisateur "honnête" ?

Il faut distinguer deux situations. Il y a celle du logiciel professionnel pour lequel la copie de sauvegarde est une nécessité absolue puisque, s'il y a un dysfonctionnement du système de sécurité, cela va se retourner contre l'utilisateur. Celui-ci a acquis un droit d'usage et s'en trouverait privé, ce qui serait tout à fait dommageable. Et puis, on peut constater une certaine amélioration du comportement des utilisateurs de logiciels professionnels, qui auraient tendance à copier un peu moins.

Dans le domaine ludique, en revanche, la situation est tellement catastrophique qu'il y a une obligation de mettre en place des protections techniques pour que les éditeurs aient une chance de vendre quelques dizaines, quelques centaines de logiciels. Cela veut dire, pour que ces protections soient efficaces, qu'on ne peut plus faire de copie de sauvegarde. Effectivement, cela se retourne contre l'utilisateur honnête, mais il y a une telle déperdition, une telle évaporation de la création que ça en devient insupportable.

- Mais n'est-ce pas en contradiction avec la loi de 1985 qui autorise l'utilisateur à effectuer une copie de sauvegarde ?

C'est plus compliqué que ça. La copie privée est interdite, sauf copie de sauvegarde, ainsi que toute utilisation non expressément autorisée par l'auteur. Il faut en effet se référer au texte complet !

Il faut également tenir compte de l'article précédent de la loi selon lequel l'adaptation d'un programme ne peut se faire que dans la limite des droits cédés par l'auteur, et sauf stipulation contraire. Or, quand vous, enlevez la protection, on pourrait considérer que vous faites une adaptation. Nous estimons donc que la copie de sauvegarde n'est pas un droit.

Mais s'il y a préjudice parce que l'utilisateur n'a pas pu faire de copie de sauvegarde et que le système de protection s'est déclenché de manière inopinée, il peut demander réparation du préjudice auprès de l'auteur ou de l'éditeur. C'est également vrai pour les dispositifs de protection qui ont tendance, par exemple, à effacer des fichiers. Cela n'engage pas seulement la responsabilité civile de l'éditeur la loi Godfrain en 1988, qui prévoit qu'une atteinte frauduleuse à des fichiers peut être sanctionnée pénalement, s'applique dans ce cas. Cette loi joue dans les deux sens.

- Vous condamnez donc l'utilisation de protections "vicieuses" qui endommagent des fichiers ou qui pourraient inoculer des virus lorsqu'on tente de la contourner ?

Oui, c'est illégal, c'est contraire à la loi Godfrain, et si des éditeurs font cela, il ne faut pas hésiter à les poursuivre.

- Comment voyez-vous l'avenir de la protection des logiciels ?

Notre métier n'est pas de trouver des protections techniques. Nous pensons que les protections techniques ne sont pas des solutions satisfaisantes. Elles ne le sont que pendant une très courte période. Comme vous le savez, dès qu'une nouvelle protection apparaît, des tas de gens tentent de la déjouer. Et ils y parviennent, éventuellement avec la complicité de gens appartenant à l'entreprise qui a édité le logiciel !

- Que pensez-vous, à ce propos, des éditeurs qui embauchent d'anciens déplombeurs comme programmeurs et qui tentent de dialoguer avec les pirates ?

Ce n'est pas parce qu'ils embauchent un gars que cela va réduire le nombre de contrefacteurs ! C'est en faire des héros. C'est peut-être bon sur le plan du marketing, ça l'est moins sur celui de la déontologie.

- Et des pirates qui souhaitent passer de l'autre côté de la barrière en proposant des protections aux éditeurs ?

Je préférerais qu'au lieu de faire cela, ils créent des logiciels sympas, des ludiciels dynamiques, avec de la musique, de l'image, un scénario, des idées, une culture... Et là, ils viendront à l'APP parce qu'ils voudront être protégés !

Annexe : la structure des données sur disquette

Le mode d'organisation des disquettes doit répondre à deux impératifs : permettre un accès direct et rapide aux données et optimiser leur répartition afin d'offrir une bonne capacité de stockage. Lors du formatage d'une disquette, des pistes concentriques sont créées sur le support. Ces pistes sont elles-mêmes divisées en secteurs délimitant des portions de pistes (un peu comme les parts d'un gâteau).

représentation d'une disquette PC 5,25
Représentation d'une disquette PC 5,25"

Une disquette, sur Atari ST, est divisée en 80 pistes et 9 secteurs mais il est possible, en poussant le lecteur aux limites de ses performances, d'utiliser deux pistes supplémentaires avec, il est vrai, une moins bonne fiabilité de lecture et d'écriture. Cette possibilité est d'ailleurs exploitée par certains systèmes de protection. Au cours de l'opération de formatage d'une disquette, des données de contrôle sont inscrites sur le support pour identifier chaque secteur et chaque piste. C'est grâce à elles que le contrôleur de disquette se repère pour aller lire ou écrire des données à l'endroit voulu.

Le codage des données

L'inscription des données sur un support magnétique (qu'on appelle aussi mémoire de masse par opposition à la mémoire vive de l'ordinateur, la RAM) obéit à des règles assez complexes. Comme chacun le sait, en informatique, c'est le système binaire qui triomphe pour l'instant toutes les données (chiffres ou caractères) mais aussi toutes les instructions donnant l'ordre au microprocesseur d'exécuter des opérations arithmétiques ou logiques, ou bien de gérer la communication des données (ce qu'on appelle les entrées-sorties) sont codées en binaire, par une succession de bits (unité élémentaire d'information) prenant la valeur logique 0 ou 1.

Un programme informatique n'est en définitive qu'une succession de bits où semblent se confondre les instructions et les données elles-mêmes, en ce que l'on appelle le "code" du programme. Là où tout se complique, mais l'informatique n'est pas faite que pour simplifier les choses, c'est que ces bits ne sont pas enregistrés tels quels sur la disquette.

Un 0 ou un 1 ne sont pas directement identifiés par une aimantation de sens opposé des particules magnétiques formant la couche sensible du support. C'est le changement de sens de la magnétisation, la transition captée par la tête de lecture du lecteur, qui traduit la présence d'un bit à l'état logique "1" ; le maintien de la magnétisation sans changement correspondant quant à lui à l'état logique. "0". Le contrôleur de disquette doit donc être en mesure de dénombrer les bits de valeur logique 0 présents entre deux changements d'état de la magnétisation, opération qui serait aisée si la régularité et la précision de la vitesse de rotation des lecteurs de disquette étaient sans faille. Il a donc été nécessaire de trouver un système de codage des données évitant de trop longs maintiens de la magnétisation et d'intercaler régulièrement entre les données des informations de synchronisation, marques fixes permettant au contrôleur de disquette de se repérer.

Afin de déceler d'éventuelles erreurs de transmission ou de lecture portant sur un ou plusieurs bits, des "sommes d'autocontrôle" dont le résultat dépend des données enregistrées sont également inscrites sur le support pour être comparées ensuite avec les données lues. Mais les données ne sont pas exploitées isolément par l'ordinateur : elles sont structurées en fichiers qui peuvent eux-mêmes être regroupés en sous-répertoires (ou dossiers). La gestion de ces fichiers impose la présence sur la disquette d'informations supplémentaires.

L'organisation des fichiers

Le secteur d'amorce qui indique à l'ordinateur, lors de l'initialisation, si la disquette contient un système d'exploitation et, éventuellement, un programme de chargement, occupe le premier secteur de la piste 0 de la face 0. Également situé en début de la disquette, le catalogue, répertoire des fichiers, contient des informations partiellement accessibles par la commande "dir" du DOS (ou visibles dans la fenêtre que l'on ouvre en cliquant sur l'icône de la disquette). Le catalogue indique le nom du fichier (ou du sous-répertoire), sa date de création, sa taille, son statut (fichier caché, protégé contre l'écriture ou normal), ainsi que le numéro de secteur où il commence.

L'effacement d'un fichier se passe exclusivement sur le répertoire : le fichier n'est pas détruit physiquement par l'écrasement des données qu'il contient, mais effacé "logiquement" par le simple remplacement de la première lettre de son nom dans le répertoire par un indicateur particulier. C'est pourquoi il est toujours possible de récupérer un fichier qui vient d'être effacé (à condition qu'aucune opération d'écriture n'ait eu lieu entre-temps), à l'aide d'un utilitaire accédant directement aux informations de la disquette.

La table d'allocation des fichiers tient, quant à elle, la cartographie des secteurs de la disquette en indiquant ceux qui peuvent être alloués à de nouveaux fichiers ou qui sont, au contraire, occupés par des fichiers non-effacés. Au fur et à mesure des écritures et des effacements de fichiers, les espaces libres ont tendance à se disperser sur la disquette. Un fichier n'occupe pas nécessairement des secteurs contigus ; il se trouve généralement réparti entre plusieurs secteurs de la disquette. Chaque bloc contient l'adresse du bloc suivant ou l'indication de fin de fichier.

Comme on le voit, les informations de contrôle et de gestion des fichiers (bits de synchronisation, sommes d'auto-contrôle, table d'allocation des fichiers, etc.) constituent une grande part des informations stockées sur disquettes.

Ce sont ces informations absolument nécessaires au fonctionnement du lecteur, ainsi que la manière de les répartir, qui déterminent ce qu'on appelle le format des données. Sans elles, l'ordinateur serait absolument incapable d'exploiter les informations utiles stockées sur la disquette et ne verrait dans son contenu qu'un mélange de 0 et de 1 sans aucune signification !


[Retour en haut] / [Retour aux articles]