FR2538927A1 - Systeme de protection des logiciels et notamment des logiciels standards - Google Patents

Systeme de protection des logiciels et notamment des logiciels standards Download PDF

Info

Publication number
FR2538927A1
FR2538927A1 FR8221993A FR8221993A FR2538927A1 FR 2538927 A1 FR2538927 A1 FR 2538927A1 FR 8221993 A FR8221993 A FR 8221993A FR 8221993 A FR8221993 A FR 8221993A FR 2538927 A1 FR2538927 A1 FR 2538927A1
Authority
FR
France
Prior art keywords
software
information
data
user
random
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR8221993A
Other languages
English (en)
Other versions
FR2538927B1 (fr
Inventor
Jean Hoffenberg
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
MARKETING MICROELECTRONIQUE
Original Assignee
MARKETING MICROELECTRONIQUE
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MARKETING MICROELECTRONIQUE filed Critical MARKETING MICROELECTRONIQUE
Priority to FR8221993A priority Critical patent/FR2538927A1/fr
Publication of FR2538927A1 publication Critical patent/FR2538927A1/fr
Application granted granted Critical
Publication of FR2538927B1 publication Critical patent/FR2538927B1/fr
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1025Identification of user by a PIN code
    • G07F7/1058PIN is checked locally
    • G07F7/1066PIN data being compared to data on card
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/12Card verification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2137Time limited access, e.g. to a computer or data

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

SYSTEME DE PROTECTION DES LOGICIELS ET NOTAMMENT DES LOGICIELS STANDARDS. IL CONSISTE A MELANGER AUX DONNEES D'UN UTILISATEUR ACCREDITE DUDIT LOGICIEL UN CERTAIN NOMBRE D'INFORMATIONS, NOTAMMENT AU MOINS UNE INFORMATION DE PERENNITE RELATIVE A LA DATATION DES DONNEES, AU MOINS UNE INFORMATION ALEATOIRE ET AU MOINS UNE INFORMATION CONFIDENTIELLE DE DEVERROUILLAGE. APPLICATION PLUS PARTICULIEREMENT AUX PROGICIELS.

Description

Système de protection des logiciels et notamment des logiciels standards.
La présente invention concerne un système de protection des logiciels et notamment des logiciels standards.
Au début de l'ère informatique, les constructeurs d'ordinateurs réalisaient des systèmes d'exploitation particuliers à chaque type de machine. Dans la mémoire centrale d'un ordinateur réside principalement un système d'exploitatioh et un programme objet qui est réalisé à partir d'un texte écrit en un langage appelé de haut niveau, tel que Cobol, Basic ou Fortran.
Le texte est traduit en une suite de O et 1 par un compilateur. La suite de O et 1 constitue en fait ledit programme objet qui, lorsqu'il est exécuté par l'ordinateur, traite la plupart du temps des données.
Ces dernières constituent en fait ce qu'on appelle communément une application de traitement tel qu'un programme de comptabilité, de paye, de gestion de stock, etc.
Les différentes branches d'activité économique utilisent de plus en plus des équipements informatiques de toutes tailles. Devant la répétition de certaines données applicables à de nombreux utilisateurs distincts, les fabricants d'ordinateurs et de logiciels ont mis au point des systèmes d'exploitation qui, par leur grande diffusion, ont constitue des standards, tels que le CP/M de Digital Research. A partir de ces systèmes d'exploitation standards, des logiciels d'application standards ou progiciels, non particuliers pour un utilisateur donné, sont apparus sur le marché et leur prix s'est trouvé, en conséquence, fortement diminué grâce à leur large diffusion. Bien évidemment, chacun de ces progiciels pourrait être particularisé en fonction de telle ou telle demande d'un utilisateur.Toutefois, les modifications souhaitées et apportées sont faites sur le progiciel et ne doivent pas entraîner une refonte complète du logiciel, faute de quoi on serait ramené à créer un logiciel unique et particulier.
Les progiciels présentant par définition un caractère répétitif et étant en fait exploités par différents types d'ordinateurs, les fabricants de logiciels tentent d'empêcher une prolifération non ré munérabrice pour l'auteur desdits progiciels.
Plusieurs systèmes de protection contre une telle prolifération frauduleuse sont proposés.
Un premier système consiste à associer à un programme objet donné en général matérialisé par une ou deux disquettes, ou autre support en général magnétique, une clef électronique qui se présente sous la forme d'un boîtier se branchant sur l'ordinateur ou le terminal à partir duquel l'ordinateur est interrogé. L'ensemble boîtier-disquettes est unique pour chaque application et l'absence du boîtier interdit le fonctionnement du programme. Même si la copie dela clef électronique est difficile à réaliser1 bien que possible, il n'en demeure pas moins vrai qu'un tel système présente des inconvénients. En effet, dès qu'un utilisateur possède plusieurs programmes de traitement, et cela est courant même dans des petites et moyennes industries, le système devient extrêmement lourd car à chaque programme correspond une clef, onéreux pour des raisons évidentes.
D'autres moyens de protection existent également et concernent non plus la machine mais le système d'exploitation de l'ordinateur, c'est-à-dire en fait le logiciel de base. Un de ces moyens consiste par exemple à modifier le système d'exploitation de l'ordinateur, avant d'exécuter le programme objet, de façon à rendre impossible la copie dudit programme objet. Une telle protection contre la fraude s'accompagne malheureusement d'inconvénients graves. C'est ainsi que les copies de sauvegarde du programme objet ne peuvent être exécutées. Le fabricant du logiciel est donc amené à fournir à l'utilisateur au moins deux disquettes par logiciel utilisé. De plus, en cas de modification importante du système d'exploitation et lorsqu'elle modifie sensiblement les programmes objets, alors il est nécessaire de refaire ces derniers.
Tous les systèmes de protection sont basés sur le fait qu'il faut empêcher la fraude dès le dé- part même si cela doit entraîner des inconvénients graves pour l'utilisateur.
La présente invention a pour objet un système de protection des logiciels et plus particulièrement des progiciels qui ne pénalise en aucune façon les utilisateurs honnêtes mais qui, par contre, permet de prendre en défaut un fraudeur et ce, de façon irrémédiable.
Le système selon l'invention consiste à mélanger aux données d'un utilisateur accrédité dudit logiciel un certain nombre d'informations, notamment au moins une information de pérennité relative à la datation des données, au moins une information aléatoire et au moins une information confidentielle de déverrouillage.
Selon une autre caractéristique, au moins une information non significative ou leurre est mélangée aux données de l'utilisateur.
D'autres caractéristiques apparaîtront à la lecture de la description d'un mode préféré de l'invention, donné à titre d'exemple non limitatif.
Le système de protection selon la présente invention consiste à mélanger aux données de l'utilisateur un certain nombre d'informations qui permettront au fournisseur du progiciel de vérifier si l'utilisateur est de bonne ou de mauvaise foi.
Une premiere information présente le caractère dit de pérennité qui, en fait, fixe la durée moyenne d'utilisation du progiciel par l'utilisateur. En effet, en fonction de la nature même du progiciel, le fournisseur peut déterminer approximativement la durée d'utilisation. C'est ainsi qu'unkrogiciel établi pour la paye du personnel est utilisé une ou deux fois par mois, soit entre 12 et 24 fois dans l'année. Un progiciel affecté à la comptabilité est utilisé, en moyenne, 2 fois par semaine, soit 100 fois environ dans l'année.
En conséquence, il s'agit pour un progiciel spécifique de déterminer approximativement la période de temps qui s'est écoulée depuis le début de la mise en oeuvre du traitement de données, et ranger ce nombre, bien caché, dans lesdites données de l'utilisateur. On peut, pour des raisons de sécurité, ranger ce nombre en plusieurs endroits différents et vérin fier par la suite leur conformite. Il va de soi que ce nombre se présente de la même façon que lesdites données, c'est-à-dire par exemple représenté par des
O et des 1.
La deuxième information consiste en un nombre aléatoire qui est la base de la clef du progiciel et qui permet de déverrouiller le système à l'utilisateur légitime. A chaque utilisateur correspond évidemment un nombre aléatoire qui change à chaque contrôle de légitimité. Il est, de la même façon~ que l'information de pérennité, rangé et caché parmi les données de l'utilisateur. Une manière de choisir ce nombre aléatoire consiste par exemple à compter le nombre de passages par un sous-menu et au cours d'une période de temps prédéterminée. D'autres critères de choix du nombre aléatoire peuvent être retenus, à la condition que le caractère aléatoire et donc non répétitif-soit respecté et qu'il ne puisse y avoir une confusion possible avec certains des éléments du fichier de l'utilisateur.
Enfin, la troisième information est relative à la fonction de validation du système. En fait, ladite troisième information constitue ce qu'on pourrait appeler un verrouillage électronique qui empêche un progiciel d'être utilisé indéfiniment. Une façon simple de choisir cette information est par exemple de diviser le nombre aléatoire affecté à l'utilisateur par un nombre premier. Le reste de la division, à 6 chiffres significatifs, constitue la clef qui déverrouille le système. Là encore, d'autres critères de choix peuvent conduire à d'autres moyens de validation.
Le système de protection suivant l'invention et décrit ci-dessus est applicable lorsque les progiciels, mis å la disposition des utilisateurs par l'auteur, doivent être validés au bout de période#s de temps prédéterminées par l'auteur du progiciel.
A supposer par exemple qu'une desdites périodes soit fixée à 8 mois, après la mise en route du progiciel, le traitement de données ne peut être poursuivi par blocage desdites données, ledit blocage étant provoqué par l'information de pérennité qui empêche le programme de fonctionner. Dans ces conditions, l'utilisateur prend contact avec le fournisseur du progiciel et indique le nombre aléatoire qui lui avait été affecté. Si l'utilisateur est légitime, le fournisseur lui indique le nombre de 6 chiffres, si c'est la clef choisie pour déverrouiller le progiciel.
Dans l'hypothèse où l'utilisateur serait un fraudeur, alors la preuve sera faite irrémédiablement qu'il n-'est pas un auteur légitime. Même s'il bénéficie de la complicité d'un utilisateur légitime, la fraude sera dévoilée, l'information de pérennité permettant de déceler une fraude de ce genre.
En effet, un utilisateur légitime ne doit pas, sauf cas rarissime, avoir besoin de déverrouiller son progiciel plusieurs fois dans les périodes d'utilisation qui lui ont été imparties. Par conséquent, chaque fois qu'une copie du progiciel aura été faite sans le consentement de l'auteur et/ou du fournisseur, le fraudeur sera dévoilé au bout d'un temps variable et limité entre la date de la copie et celle à laquelle le progiciel doit normalement s'arrêter de fonctionner.
Chacun peut constater qu'au contraire des sys tèmes rappelés en préambule, la présente invention permet la copie d'un progiciel mais peut induire un grave préjudice à l'utilisateur frauduleux, préjudice cependant totalement et immédiatement réparable au gré de l'auteur du progiciel.
D'autre part, on peut également compliquer le système de protection selon l'invention, en introduisant dans les données de l'utilisateur plusieurs informations de même type.
Il en est notamment ainsi pour l'information de pérennité qui peut être déduite de la comparaison entre plusieurs moyens de datation. De même, on peut générer plusieurs nombres aléatoires cachés parmi les données en des endroits différents suivant le degré d'invulnérabilité souhaité. Quant à la fonction de validation, elle peut résulter de plusieurs clefs de verrouillage qui se déduisent par un algorithme plus ou moins complexe à partir desdits nombres aléatoires.
Dans tout ce qui précède, on fait appel à des informations utiles pour le système de protection.
Mais rien n'empêche d'introduire également des leurres parmi les données, lesdits leurres n'ayant d'autre fonction que de rendre plus invulnérable la protection. Ces leurres, comme les autres informations, seront dispersés et bien cachés pour qu'ils soient très difficiles à retrouver.
Il est à noter que l'introduction de toutes ces informations ne limitent pas pour autant la capacité des données car, en réalité, un système de protection très complexe n'utilise qu-'une infime partie de la mémoire dévolue aux données de l'utilisateur, ce qui est parfaitement acceptable même pour des progiciels simples.
Bien entendu, l'invention n'est nullement limitée au mode de réalisation de l'exemple décrit
elle elle est susceptible de nombreuses variantes accessibles à l'homme de l'art, suivant les applications envisagées et sans s'écarter pour cela du cadre de l'invention.

Claims (6)

REVENDICATIONS
1. Système de protection des logiciels et notamment des logiciels -standards de traitement de données, caractérisé en ce qu'il consiste à mélanger aux données d'un utilisateur accrédité dudit logiciel un certain nombre d'informations, notamment au moins une information de pérennité relative à la datation des données, au moins une information aléatoire et au moins une information confidentielle de déverrouillage.
2. Système selon-la revendicatioh I, caractérisé en ce qu'au moins une information non significative ou leurre est mélangée aux données de l'utilisateur.
3. Système selon la revendication 1, caractérisé en ce qu'après chaque validation du logiciel au moins les informations aléatoire et de validation sont changées.
4. Système selon la revendication 1, caractérisé en ce que l'information de pérennité est la durée d'utilisation du logiciel.
5. Système selon la revendication 1, caractérisé en ce que l'information de déverrouillage est constituée par exemple par le reste à 6 chiffres près, de la division d'un nombre aléatoire par un nombre premier.
6. Système selon les revendications précédentes, caractérisé en ce qu'au moins une desdites informations est introduite plusieurs fois dans les données de l'utilisateur et en des emplacements différents.
FR8221993A 1982-12-29 1982-12-29 Systeme de protection des logiciels et notamment des logiciels standards Granted FR2538927A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR8221993A FR2538927A1 (fr) 1982-12-29 1982-12-29 Systeme de protection des logiciels et notamment des logiciels standards

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR8221993A FR2538927A1 (fr) 1982-12-29 1982-12-29 Systeme de protection des logiciels et notamment des logiciels standards

Publications (2)

Publication Number Publication Date
FR2538927A1 true FR2538927A1 (fr) 1984-07-06
FR2538927B1 FR2538927B1 (fr) 1985-03-29

Family

ID=9280629

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8221993A Granted FR2538927A1 (fr) 1982-12-29 1982-12-29 Systeme de protection des logiciels et notamment des logiciels standards

Country Status (1)

Country Link
FR (1) FR2538927A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0964397A3 (fr) * 1993-06-07 2007-12-19 Hitachi, Ltd. Appareil d'enregistrement/de reproduction d'information numérique

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3862716A (en) * 1971-10-13 1975-01-28 Burroughs Corp Automatic cash dispenser and system and method therefor
US3869700A (en) * 1972-12-26 1975-03-04 Ibm Stored value system
US4105156A (en) * 1976-09-06 1978-08-08 Dethloff Juergen Identification system safeguarded against misuse

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3862716A (en) * 1971-10-13 1975-01-28 Burroughs Corp Automatic cash dispenser and system and method therefor
US3869700A (en) * 1972-12-26 1975-03-04 Ibm Stored value system
US4105156A (en) * 1976-09-06 1978-08-08 Dethloff Juergen Identification system safeguarded against misuse

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0964397A3 (fr) * 1993-06-07 2007-12-19 Hitachi, Ltd. Appareil d'enregistrement/de reproduction d'information numérique
EP2385527A3 (fr) * 1993-06-07 2012-12-19 Samsung Electronics Co., Ltd. Appareil d'enregistrement/de reproduction d'information numérique
US8472785B2 (en) 1993-06-07 2013-06-25 Samsung Electronics Co., Ltd. Digital information recording-reproducing apparatus

Also Published As

Publication number Publication date
FR2538927B1 (fr) 1985-03-29

Similar Documents

Publication Publication Date Title
EP0089876B1 (fr) Procédé et dispositif de protection d'un logiciel livré par un fournisseur à un utilisateur
FR2613856A1 (fr) Systeme d'enregistrement d'informations
EP1605333B1 (fr) Contrôle de l'exécution d'un programme
FR2675602A1 (fr) Procede et dispositif de protection d'un systeme informatique.
AU2005257685A1 (en) Security for computer software
WO2001088705A1 (fr) Procede de securisation d'un langage du type a donnees typees, notamment dans un systeme embarque et systeme embarque de mise en oeuvre du procede
EP1960934B1 (fr) Procede pour securiser l'execution d'un code logiciel en langage intermediaire dans un appareil portatif
FR2762417A1 (fr) Procede de controle de l'execution d'un produit logiciel
EP0720098B1 (fr) Dispositif de sécurisation de systèmes d'information organisés autour de microprocesseurs
EP1086415B1 (fr) Systeme de protection d'un logiciel
EP1649363B1 (fr) Procede de gestion des composants logiciels integres dans un systeme embarque
EP1983436B1 (fr) Contrôle d'intégrité d'une mémoire externe à un processeur
EP1761835A1 (fr) Module de sécurité et méthode de personnalisation d'un tel module de sécurité
FR2643475A1 (fr) Procede de controle de l'utilisation d'un support d'informations, notamment magnetique ou magneto-optique et systemes pour sa mise en oeuvre
EP1316874A1 (fr) Blocage du fonctionnement d'un circuit intégré
FR2538927A1 (fr) Systeme de protection des logiciels et notamment des logiciels standards
EP1507185A1 (fr) Méthode et dispositif de protection contre l'accès non-autorisé à une routine sensible
WO2019175482A1 (fr) Traitement sécurisé de données
EP0119886B1 (fr) Procédé de protection d'un logiciel enregistré par un fournisseur sur un support magnétique portatif
EP1585071A1 (fr) Partage de fichiers non divisibles
WO2008125479A1 (fr) Procédé d'exécution sécurisée d'une application
FR3112411A1 (fr) Procédé de labellisation d’objets dans un environnement de traitement de grands volumes de données en utilisant des codes binaires et système de labellisation associé
WO2006092504A1 (fr) Procede de transfert securise par carte securisee
FR2765362A1 (fr) Module de securite comportant des moyens de creation de liens entre des fichiers principaux et des fichiers auxiliaires
FR2747813A1 (fr) Systeme securise de controle d'acces permettant l'invalidation automatique de cles electroniques volees ou perdues et/ou le transfert d'habilitation a produire des cles

Legal Events

Date Code Title Description
TP Transmission of property
ST Notification of lapse