1 Méthodes de restriction de l'utilisation du logiciel/matériel DESWAERTE Sylvain Master 2 Génie Informatique Option SRR UFR IMA
2 Plan n Introduction n Méthodes de restriction d utilisation du logiciel n Méthodes de restriction d utilisation du matériel n Conclusion
3 Introduction n Le logiciel et la loi française u Logiciel = œuvre de l'esprit u Auteur bénéficie d'une protection juridique u Respect de l accord de licence passé entre l éditeur et l utilisateur final u Non respect des conditions => utilisation frauduleuse
4 Accord de licence n End User License Agreement (EULA) u Apparaît le plus souvent lors de l installation du logiciel u Accord légal entre l utilisateur et l éditeur du logiciel u Stipule les conditions d'utilisation du logiciel
5 Accord de licence n Extrait: u « En installant, copiant, ou utilisant de toute autre manière le logiciel XXXX, vous êtes d'accord avec les termes de cet accord. Si vous n'agréez pas les termes de cet accord, n'installez pas et n'utilisez pas XXXX »
6 Accord de licence n Exemples de conditions d utilisation décrites dans l accord de licence: u logiciel peut être installé sur une machine ou plusieurs u logiciel peut être copié(sur un disque réseau, un CDROM) u logiciel peut être utilisé par une ou plusieurs personnes u Le logiciel peut être modifié, désassemblé, loué
7 Accord de licence n Exemples de non-respect de l'accord de licence u Un logiciel avec licence mono poste est installé sur de multiples machines u Trop de personnes font appel au même moment à une copie du programme sur un serveur u Contrefaçon...
8 Utilité des méthodes de restriction n S'assurer que les conditions d'utilisation prescrites dans l'accord de licence sont respectées n Bloquer l'utilisation du logiciel n Inciter l utilisateur à acquérir d autres licences n Informer l'utilisateur qu'il est en tort avec la loi n Informations pour traîner l utilisateur en justice?
9 Quelques chiffres n Utilisation frauduleuse de logiciels dans le monde depuis 1994 Source: Business Software Alliance
10 Quelques chiffres n En chine: 92% des logiciels sont utilisés de manière frauduleuse n En France: 43% n Estimation de l argent perdu en 2002 (monde): de dollars => Enormes enjeux financiers Source: Business Software Alliance
11 Méthodes de restriction d utilisation du logiciel n Restriction par utilisation de « Clé Produit » n Restriction par « Dongle » n Restriction par Activation n Restriction par « Online Enforcement »
12 Restriction par utilisation de « Clé Produit » n Grand classique n Entrer un numéro de série(fourni avec le logiciel original) n Algorithme plus ou moins mathématique traite le numéro et vérifie sa validité n Exemples: Office, Windows 9x...
13 Restriction par utilisation de « Clé Produit » n Avantages u Facile à implémenter u Facile à utiliser u Existence de bibliothèques ou d utilitaires à appliquer un fois le logiciel compilé
14 Restriction par utilisation de « Clé Produit » n Inconvénients u Plusieurs utilisateurs différents peuvent utiliser le même numéro de série u Possibilité pour les crackers de créer des « Keygen » une fois l algorithme de vérification analysé
15 Restriction par Dongle n Dongle = petit périphérique fourni avec le logiciel n Habituellement connecté sur le Port Imprimante ou USB
16 Restriction par Dongle n Peut contenir dans sa ROM u Un numéro de série valide u Du code machine dont l exécution est nécessaire pour pouvoir utiliser le logiciel concerné(initialisation…) n Ces données données peuvent être cryptées
17 Restriction par Dongle n Avantages u Réduit fortement les utilisations frauduleuses u Très bon rapport Protection/Prix u Existence de bibliothèques ou d utilitaires à appliquer un fois le logiciel compilé
18 Restriction par Dongle n Inconvénients u Prix d achat du logiciel un peu plus élevé u Plus compliqué à utiliser u Peut être émulé (device emulation)
19 Restriction par Activation n Exemple concret avec le Windows Process Activation (WPA) pour Windows XP n sources: Microsoft Fully Licensed
20 Restriction par Activation n Lors de l achat de Windows XP, numéro de Product Key est fourni (Restriction par « Clé Produit » n Product Key = 25 caractères de la forme XXXXX-XXXXX-XXXXX- XXXXX n Après installation de Windows, nécessité « d activation » du produit
21 Restriction par Activation n Le logiciel non activé n est pas utilisable passé 30 jours n Activer Windows XP = entrer en contact avec Microsoft n 2 méthodes pour activer: u Téléphone u Internet
22 Restriction par Activation n Un numéro d Installation ID est fourni au serveur ou à l opérateur téléphonique n Installation ID = 50 caractères (!) n En retour l utilisateur obtient un Confirmation ID qui complète le processus d activation
23 Restriction par Activation n Installation ID = valeur cryptée basée sur divers éléments: u Product Id : Numéro établi à partir du Product Key fourni avec le logiciel u Certaines caractéristiques matérielles
24 Restriction par Activation n En effet…une des seules choses différenciant 2 machines sont dans le matériel n Un « Hardware Hash » est effectué sur divers composants de la machine, c est à dire qu un entier est établi à partir de la configuration matérielle
25 Restriction par Activation n Quelques éléments influençant le Hardware Hash: u Disque dur (numéro de série) u Contrôleur IDE u Lecteur CD/DVD u Carte Graphique(fabricant) u Adresse réseau MAC u Contrôleur SCSI u Numéro de série du processeur u Taille RAM
26 Restriction par Activation n Lorsque Installation ID est envoyé à l'opérateur/serveur, Microsoft obtient donc un doublet Product ID/Configuration matérielle n Si plus tard d'autres utilisateurs cherchent à activer Windows XP avec un Product ID déjà utilisé mais avec une autre configuration matérielle, l'activation sera refusée.
27 Restriction par Activation n Avantages u Logiciel est associé à une machine « unique » u Impossible d utiliser le logiciel non activé u Décourage les utilisations frauduleuses u Respect de la vie privée des utilisateurs
28 Restriction par Activation n Inconvénients u Lourd à mettre en place(serveur téléphonique dans bcp de pays, serveur Web) u Hardware Hash pas forcément unique: possibilité d avoir 2 machines distinctes avec le même Hardware Hash u Plus compliqué pour l utilisateur
29 Restriction par Activation n Inconvénients u de grosses modifications matérielles nécessitent d appeler le Service Client de Microsoft u Un générateur de Product Key permet une utilisation frauduleuse u Possibilité de shunter le mécanisme d activation
30 Restriction par « Online Enforcement » n Quand l utilisateur veut utiliser le logiciel, serveur de licences est interrogé n S il trouve une licence valide, le logiciel s exécute normalement Source:
31 Restriction par « Online Enforcement » n Avantages u Facile à implémenter u Facile à utiliser (transparent pour l utilisateur) u Pas possible d utiliser le même Product Key avec 2 machines simultanément u Connaissance des utilisateurs du logiciel u Applicable dans le cas d un logiciel utilisé en réseau
32 Restriction par « Online Enforcement » n Inconvénients u Nécessité de disposer d un connexion au serveur de licences u 2 personnes différentes peuvent utiliser le logiciel avec le même Product Key, à des instants différents
33 Méthodes de restriction d utilisation du matériel n Comment éviter la compatibilité pour tenter d avoir un monopole? u Exemple Xbox - PC u 2 architectures quasi identiques u Présence de signatures dans les jeux sur Xbox u Signatures vérifiées au travers d une puce u Nécessité d un OS spécial n Mais…linux (vu la semaine dernière)
34 Méthodes de restriction d utilisation du matériel n D une manière générale, une architecture spécifique implique des logiciels spécifiques n Exemple: copier des jeux de consoles, des CD protégés...
35 Conclusion n Pas de méthode idéale n Protections toujours contournables par un connaisseur n Besoin de réduire les utilisations frauduleuses pour un maximum de bénéfices n Décourager les fraudeurs n Beaucoup de méthodes différentes existent