PROCEDEE DE PROTECTION CONTRE LA REPRODUCTION DE CD-ROM ET DE LOGICIELS SUR CD-ROM PROTECTION AGAINST REPRODUCTION OF CD-ROMS AND CD-ROM SOFTWARE
DESCRIPTIONDESCRIPTION
I. La protection matérielleI. Material protection
Avant d'entamer la procédure de mise en place de la protection matérielle, il est nécessaire d'effectuer un rappel sur les étapes de création d'un disque cd-rom en plusieurs exemplaires destinés à la commercialisation.Before starting the procedure for setting up physical protection, it is necessary to make a reminder on the stages of creation of a CD-ROM disc in several copies intended for marketing.
A. Rappel sur les étapes de création d'un cd :A. Reminder on the steps to create a CD:
1. Description du média :1. Description of the media:
Le CD est composé de plusieurs couches :The CD is made up of several layers:
• une couche de polycarbonate (un polymère organique qui est par exemple utilisé pour les verres de lunettes de vue) épaisse de 1,2 mm, c'est dans cette couche que les informations sont stockées par pressage.• a layer of polycarbonate (an organic polymer which is used, for example, for eyeglasses) 1.2 mm thick, it is in this layer that information is stored by pressing.
• un dépôt très fin (0,1 μm) d'aluminium• a very fine deposit (0.1 μm) of aluminum
• une laque protectrice (laque acrylique d'épaisseur de 20μm)• a protective lacquer (acrylic lacquer with a thickness of 20μm)
• l'encre de sérigraphie.• screen printing ink.
Les couches primordiales pour le bon fonctionnement théorique du CD sont la polycarbonate dans laquelle les informations sont moulées et la couche d'aluminium qui sert de miroir. La laque ne sert qu'à protéger la couche d'aluminium de la corrosion et la sérigraphie permet d'étiqueter (Figure 1).The essential layers for the correct functioning of the CD are the polycarbonate in which the information is molded and the aluminum layer which serves as a mirror. The lacquer only serves to protect the aluminum layer from corrosion and the screen printing allows labeling (Figure 1).
2. Etapes de création :2. Creation steps:
Pour la fabrication du disque compact, on commence par la création de la matrice (ou glass master). En effet, c'est elle qui servira de modèle pour presser toute une série d'environ 100.000 Cd ou plus.For the manufacturing of the compact disc, we start with the creation of the matrix (or glass master). Indeed, it is she who will serve as a model for pressing a whole series of around 100,000 Cd or more.
Lorsque les données sont correctement encodées, elles sont renvoyées directement au système d'enregistrement laser. Le rayon laser est modulé suivant le codage des données. Il impressionne un disque de verre recouvert d'une couche photosensible. A la fin de l'exposition au rayonnement, le disque subit un développement comme en photo blanc/ noir. Des microcuvettes plus ou moins longues apparaissent selon l'intensité et la durée de chaque modulation : l'image physique du disque avec ses pits et ses lands est donc créée.When the data is correctly encoded, it is sent directly to the laser recording system. The laser beam is modulated according to the coding of the data. It impresses a glass disc covered with a photosensitive layer. At the end of exposure to radiation, the disc undergoes development as in white / black photo. Microcuvettes of varying length appear depending on the intensity and duration of each modulation: the physical image of the disc with its pits and its lands is therefore created.
La figure 2 est constituée de deux étapes :Figure 2 consists of two stages:
• la première consiste en la fabrication du moule principale (père) qui donne naissance à une empreinte (mère) qui permet de créer d'autres moules (fils)
• la deuxième consiste à presser les CD en grand volume sur des supports en plastique qui deviendront les CD à commercialiser et donc CDs finaux.• the first consists in the manufacture of the main mold (father) which gives birth to an imprint (mother) which makes it possible to create other molds (son) • the second consists in pressing the CDs in large volumes on plastic supports which will become the CDs to be marketed and therefore final CDs.
BM La protection matérielle ;BM Material protection;
Dans ce chapitre, on relatera les étapes qui ont permis l'application de la protection physique avec des moyens simples pour la réalisation du prototype. Le procédé industriel est décrit plus loin dans ce rapport.In this chapter, we will relate the stages which allowed the application of physical protection with simple means for the realization of the prototype. The industrial process is described later in this report.
On a procédé à la création d'un fichier (M) de taille : IMo.We proceeded to create a file (M) of size: IMo.
Ce fichier contient des données entre l'octet 700.000 et l'octet 900.000 qui serviront de composantes de protection.This file contains data between byte 700,000 and byte 900,000 which will serve as protection components.
La zone de ces dites données est appelée (DV) dans cette présentation technique.The area of these so-called data is called (DV) in this technical presentation.
On a procédé au gravage du fichier (M) en mode multisession sur un CD-R (sans verrouiller le CD-R).We burned the file (M) in multisession mode on a CD-R (without locking the CD-R).
Ensuite, on a localisé l'emplacement de ce fichier physiquement sur le support, puis on a procédé à l'insertion de la signature physique sur le support.Then, we located the location of this file physically on the support, then we proceeded to insert the physical signature on the support.
Pour donner plus de clarté à notre procédé, on exploitera quelques chiffres standard, et on en créera d'autres :To give more clarity to our process, we will use some standard figures, and we will create others:
- Diamètre du trou de stabilisation du CD sur le lecteur (TS) = 16mm- Diameter of the CD stabilization hole on the drive (TS) = 16mm
- Distance entre le pôle de (TS) et le premier pôle de début d'écriture sur le CD-R : (DPPD) = 16 mm- Distance between the pole of (TS) and the first pole to start writing on the CD-R: (DPPD) = 16 mm
- On supposera que la zone qu'occupe le fichier (M) physiquement sur le CD-R est de : (DT) = 3 mm (en terme d'épaisseur de la spirale de données)- We will assume that the area occupied by the file (M) physically on the CD-R is: (DT) = 3 mm (in terms of thickness of the data spiral)
On sait que :We know that :
- 1 Mo soit prêt de 1.024.000 octets correspond à 3 mm- 1 MB is ready of 1,024,000 bytes corresponds to 3 mm
- (ZC)[xl,x2] correspond approximativement à la distance entre le début du 2ème mm sur la surface du disque et la fin du 2ème mm sur cette même surface physique du CD-R.- (ZC) [xl, x2] corresponds approximately to the distance between the beginning of the 2nd mm on the surface of the disc and the end of the 2nd mm on this same physical surface of the CD-R.
Une fois l'emplacement de la signature localisé, on procède à son application. xl < (emplacement de la signature) < x2Once the location of the signature is located, it is applied. xl <(location of signature) <x2
1. Vérification de la signature physique :1. Verification of the physical signature:
Le rôle de cette étape est de permettre de s'assurer que notre signature physique, appliquée comme signalé plus haut, est bien présente et qu'elle est située dans le segment [xl,x2].The role of this step is to make sure that our physical signature, applied as indicated above, is present and that it is located in the segment [xl, x2].
On utilise un programme informatique pour lire le fichier sur le CD, le programme se charge d'effectuer une trace sur les opérations de lecture.
Au moment où le lecteur CD pointe sur la signature, le programme nous signale sa position.We use a computer program to read the file on the CD, the program is responsible for making a trace on the read operations. When the CD player points to the signature, the program informs us of its position.
A ce stade, la protection matérielle du prototype est finalisée. 2. Insertion des données :At this stage, the physical protection of the prototype is finalized. 2. Data insertion:
Cette phase consiste à graver le logiciel/progiciel de l'éditeur sur la yeme session du CD-R. Elle est précédée par l'intégration d'un programme informatique (la protection logicielle) au sein de l'application de l'éditeur.This phase consists of burning the editor's software / software on the yeme session of the CD-R. It is preceded by the integration of a computer program (software protection) within the editor's application.
Les étapes de création et mise en place de ce programme informatique sont décrites en détail dans le chapitre suivant.The stages of creation and implementation of this computer program are described in detail in the following chapter.
II. La protection logicielleII. Software protection
Après l'intégration du fichier (M) sur le support CD-R et l'application de la signature physique, on a besoin d'intégrer le logiciel/progiciel sur le même CD-R. Avant cela, nous mettons en place un programme informatique qui se chargera de :After the integration of the file (M) on the CD-R support and the application of the physical signature, we need to integrate the software / software on the same CD-R. Before that, we set up a computer program which will take care of:
- Détecter la présence de la signature physique- Detect the presence of the physical signature
- Valider la signature physique- Validate the physical signature
- Valider les propriétés du fichier (M)- Validate the properties of the file (M)
A. L'interaction entre la protection logicielle et la signature physique :A. Interaction between software protection and physical signature:
Une fonction du programme effectue le test de détection du fichier (M), une fois ce test validé, elle fait appel à une autre fonction qui se charge de vérifier la présence du segment (ZC)[xl,x2] et sa validation.A program function performs the file detection test (M), once this test is validated, it calls up another function which is responsible for checking the presence of the segment (ZC) [xl, x2] and its validation.
Une fois réalisé, elle fait appel à une autre fonction qui compare la taille du fichier (M) à celle contenue dans une constante, de même elle procède à la vérification de la date de création avec une autre constante du programme.Once realized, it calls on another function which compares the size of the file (M) with that contained in a constant, in the same way it proceeds to the verification of the creation date with another constant of the program.
B. Le programme de protection en détail ;B. The protection program in detail;
Pour mieux comprendre le fonctionnement du programme de protection, nous allons procéder à un « traçage » des événements qui ont lieu à partir du moment où un utilisateur X veut installer le logiciel/progiciel, qui est sur un CD protégé par la technologie CD-Anpir.To better understand the operation of the protection program, we will proceed to a "tracing" of the events which take place from the moment when a user X wants to install the software / software package, which is on a CD protected by CD-Anpir technology .
Lorsque l'utilisateur X insère le CD original, contenant le logiciel/progiciel, dans son lecteur et lance le programme d'installation, une fenêtre s'affiche lui demandant d'insérer quatre codes (pour ce qui suit on les nommera code A, code B, code C et code D). Ces codes sont fournis dés l'acquisition du logiciel/progiciel par l'utilisateur X.When user X inserts the original CD, containing the software / software package, into his drive and launches the installation program, a window appears asking him to insert four codes (for what follows they will be called code A, code B, code C and code D). These codes are provided upon acquisition of the software / package by user X.
Une fois les codes saisis, une phase de test est déclenchée.
1. Définitions des codes A, B, C et D :Once the codes have been entered, a test phase is triggered. 1. Definitions of codes A, B, C and D:
Tous les codes A, B, C et D sont cryptés selon un algorithme de cryptage que l'on a développé. Les codes A7 B et C utilisent le même algorithme de cryptage tandis que le code D utilise un algorithme différent.All codes A, B, C and D are encrypted according to an encryption algorithm that we have developed. Codes A 7 B and C use the same encryption algorithm while code D uses a different algorithm.
L'algorithme de cryptage est un programme informatique qui reçoit en entrée une donnée spécifique sous forme de chaîne de caractères. Il procède ensuite aux remplacements nécessaires caractère par caractère.The encryption algorithm is a computer program that receives specific data as a character string as input. He then proceeds to the necessary replacements character by character.
2. Définitions des fichiers (FV) :2. File definitions (FV):
Les fichiers (FV) sont créés lors de l'installation du logiciel/progiciel dans le répertoire d'installation de ce dernier.The files (FV) are created during the installation of the software / software in the installation directory of the latter.
Après la saisie des codes et leur validation, chaque code est stocké dans un des fichiers. On dispose de 4 codes, donc on utilise 4 fichiers seulement, le 5eme contient les informations relatives aux 4 autres. Toutes les données stockées dans ces fichiers sont cryptées par le biais d'un autre algorithme conçu par nos soins.After entering the codes and validating them, each code is stored in one of the files. We have 4 codes, so we only use 4 files, the 5 th contains information relating to the other 4. All data stored in these files is encrypted using another algorithm designed by us.
Ce dernier algorithme de cryptage est un programme informatique qui reçoit en entrée une donnée spécifique sous forme de chaîne de caractères, il procède ensuite aux remplacements nécessaires caractère par caractère.This last encryption algorithm is a computer program which receives as input a specific data in the form of a character string, it then proceeds to the necessary replacements character by character.
ConclusionConclusion
La technologie CD-ANPIR permet de lutter contre le piratage de logiciel/progiciel de par le monde, et veiller à réduire les pertes annuelles (qui se chiffrent à des milliards de dollars) qu'enregistrent les éditeurs de logiciel/progiciel.CD-ANPIR technology helps fight software / software piracy around the world, and helps reduce annual losses (billions of dollars) from software / software companies.
L'avantage de cette technologie est qu'elle est basée sur un procédé logiciel / matériel très robuste et irréversible, la rendant ainsi inviolable.
The advantage of this technology is that it is based on a very robust and irreversible software / hardware process, thus making it inviolable.
DESCRIPTION DES FIGURES ET LEGENDES Fiαure 1 : Présentation des composantes d'un disque cd-romDESCRIPTION OF FIGURES AND LEGENDS Fiαure 1: Presentation of the components of a CD-ROM disc
(Sérigraphie)(Etching)
(côté(side
Figure 2 : Les différentes étapes de la fabrication de la matrice et du cd finalFigure 2: The different stages of the matrix and final cd manufacturing
(1) -> Couche photorésistante (7) -» Master en métal(1) -> Photoresist layer (7) - »Master in metal
(2) Verre (8) -> Electroformage(2) Glass (8) -> Electroforming
(3) Enregistrement laser (9) -» Graveur(3) Laser recording (9) - »Burner
(4) Développement (10) -_> Plastique(4) Development (10) -_> Plastic
(5) Métal (11) -> Etape du pressage sur(5) Metal (11) -> Pressing step on
(6) -> Electroformage disque en plastique
(6) -> Electroforming plastic disc
Figure 3 : Le fichier (M) sur le CD-R après son gravage en 1 èreFigure 3: The file (M) on the CD-R after burning it in 1 st
(1) -> 3 mm(1) -> 3 mm
(2) -> Première piste fichier (M)(2) -> First file track (M)
(3) -> Surface non gravé, (vierge)(3) -> Surface not engraved, (blank)
(4) ^ TS = 16 mm(4) ^ TS = 16 mm
(5) -» DPPD = 16 mm(5) - »DPPD = 16 mm
Figure 4 : Le CD-R prototype après gravage du reste des donnéesFigure 4: The prototype CD-R after burning the rest of the data
(1) -» Première piste : fichier (M)(1) - »First track: file (M)
(2) -» 2ème piste, données logiciel
(2) - » 2nd track, software data