FR2528196A1 - Appareil de protection de programmes d'ordinateur - Google Patents

Appareil de protection de programmes d'ordinateur Download PDF

Info

Publication number
FR2528196A1
FR2528196A1 FR8309372A FR8309372A FR2528196A1 FR 2528196 A1 FR2528196 A1 FR 2528196A1 FR 8309372 A FR8309372 A FR 8309372A FR 8309372 A FR8309372 A FR 8309372A FR 2528196 A1 FR2528196 A1 FR 2528196A1
Authority
FR
France
Prior art keywords
disk
signal
program
authorization
identifier
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
FR8309372A
Other languages
English (en)
Other versions
FR2528196B1 (fr
Inventor
Huba Louis Toth
Arpad Paul Toth
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.)
Fortune Systems Corp
Original Assignee
Fortune Systems Corp
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 Fortune Systems Corp filed Critical Fortune Systems Corp
Publication of FR2528196A1 publication Critical patent/FR2528196A1/fr
Application granted granted Critical
Publication of FR2528196B1 publication Critical patent/FR2528196B1/fr
Expired legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Storage Device Security (AREA)

Abstract

L'INVENTION CONCERNE DES APPAREILS DE PROTECTION DE PROGRAMMES. ELLE SE RAPPORTE A UN APPAREIL DESTINE A UN ORDINATEUR ET DANS LEQUEL UNE MEMOIRE 90 CONSERVE DES IDENTIFICATEURS D'AUTORISATION DE PROGRAMME. LE PROCESSEUR 2 RECOIT LE NOM DU PROGRAMME PORTE PAR UN DISQUE ET DETERMINE SI L'IDENTIFICATEUR D'AUTORISATION DE CE PROGRAMME EST CONTENU DANS LA MEMOIRE 90. LE DISQUE COMPORTE UN INDICATEUR DE SYNCHRONISATION ET UN INDICATEUR DE DISQUE EMETTEUR PERMETTANT LA DETERMINATION DE LA QUANTITE DU DISQUE. APPLICATION A LA PROTECTION DES PROGRAMMES DES ORDINATEURS.

Description

La présente invention concerne le domaine des ordinateurs et plus
précisément les procédés et appareils
de protection de programmes incorporés à de tels ordina-
teurs. La protection des programmes est destinée à assurer l'autorisation de l'utilisation d'un logiciel dans un système particulier d'ordinateur Avant qu'un système accepte un programme d'ordinateur, il est souhaitable que le système assure une vérification par mise en oeuvre de
procédésde protection de programmes, afin que l'autorisa-
tion du programme soit déterminée Dans le présent mémoire, l'expression "protection de programmes" est destinée à désigner les procédés et appareils qui donnent l'assurance que le système d'ordinateur accepte et utilise uniquement
le logiciel convenablement autorisé pour cet ordinateur.
La protection des programmes est nécessaire pour diverses raisons Une des raisorsest due au fait qu'un
système d'ordinateur nécessite un logiciel ayant des carac-
téristiques particulières qui sont notamment adaptées au
système Lorsqu'un programme d'ordinateur n'a pas été spé-
cialement adapté à un passage dans le système d'ordinateur,
le passage du logiciel peut introduire des erreurs indési-
rables La protection du programme est aussi souhaitable afin que seuls des programmes convenablement testés puissent
être utilisés dans un système d'ordinateur.
Seuls les programmes d'ordinateur possédant les caractéristiques nécessaires et ayant subi des essais
de vérification sont autorisés.
Une autre raison de la protection du logiciel
est de faciliter sa commercialisation Les programmes d'or-
dinateur sont souvent donnés sous licence pour un système matériel particulier uniquement Dans ces conditions, il est nécessaire d'identifier si le programme d'ordinateur
est autorisé pour un système particulier ou non Une ten-
tative de chargement d'un programme non autorisé doit provo-
quer le rejet du programme par le système d'ordinateur.
Une autre raison de la protection est la dis-
tinction entre différentes versions de programmes Par exemple, un programme original peut différer beaucoup des nouvelles éditions d'un programme contenant des remises à jour et des perfectionnements Ces nouvelles éditions peuvent nécessiter des caractéristiques matérielles spéciales ou le paiement d'une redevance spéciale avant autorisation convenable. En outre, les spécialistes en ordinateur savent qu'il existe d'autres raisons pour lesquelles la protection
des programmes est souhaitable dans les systèmes de trai-
tement de données.
Dans de nombreux systèmes d'ordinateur, les programmes sont mémorisés et fournis aux utilisateurs des systèmes sur des supports magnétiques Ces derniers sont souvent des disques souples car ceux-ci sont petits, légers et facilement transportables Des disques souples sont utilisés de façon très importante pour la commercialisation des programmes d'ordinateur Comme les disques magnétiques
peuvent être facilement reproduits en copies et sont faci-
lement modifiables, ils ont posé des problèmes importants
de protection des progreinmes.
On a proposé divers procédés de protection du logiciel, surtout mémorisé sur disques magnétiques Ces
procédés de protection n'ont pas donné la souplesse conve-
nant aux utilisations autorisées ni une protection suffi-
sante contre les utilisations non autorisées.
Compte tenu des considérations qui précèdent, l'invention concerne des procédés et appareils perfectionnés de protection de programmes destinés à des systèmes de
traitement de données.
L'invention concerne les procédés et appareils
de protection de programmes dans les systèmes d'ordinateur.
L'appareil de protection comprend un dispositif de détec-
tion de disque destiné à engendrer un signal de protection de programmes chaque fois qu'un disque magnétique vient d'être chargé pour être utilisé dans le système Chaque fois qu'un disque vient d'être chargé dans le système, il est interrogé afin que son autorisation dans le système
d'ordinateur soit déterminée Si le disque n'est pas auto-
risé, le système ne l'accepte pas S'il est autorisé, il
est accepté pour utilisation normale.
Selon l'une des caractéristiques de l'invention, un détecteur de disque émetteur est destiné à déterminer si un disque nouvellement introduit est un disque émetteur ou non Les disques émetteurs sont de deux types, vierge ou non Un disque émetteur vierge n'a pas d'identificateur d'autorisation destiné à un système autorisé quelconque d'utilisateur Un disque émetteur vierge peut être autorisé pour être utilisé sur un système quelconque convenablement autorisé Lorsqu'un disque émetteur est nouvellement chargé
dans le système, le fait qu'il est vierge ou non est véri-
fié S'il est vierge, le système fonctionne afin qu'il
charge un identificateur de système autorisé sur le disque.
Lorsque l'identificateur a été conservé sur le disque,
celui-ci n'est plus vierge et devient un émetteur non vierge.
Ensuite, chaque fois que le disque est chargé dans le système d'autorisation, celui-ci vérifie si le disque est autorisé
au passage dans le système ou non.
Lorsqu'un disque n'est pas un émetteur, il peut être une copie autorisée d'un émetteur dont le passage est autorisé Chaque fois qu'un disque est nouvellement
chargé dans le système et que le détecteur principal déter-
mine que le disque n'est pas un émetteur, le système vérifie que le disque est une copie autorisée S'il s'agit d'une copie autorisée, le système peut avoir accès au disque
afin qu'il lise ou écrive normalement des informations.
Chaque fois qu'un programme particulier doit être atteint sur un disque qui est autorisé, le programme est vérifié afin que son autorisation sur le système soit vérifié Si le programme est autorisé et le disque aussi, le système peut avoir accès au disque et au programme qui
y est conservé.
Comme indiqué précédemment, l'invention concerne un procédé et un appareil de protection de programmesqui facilitent la répartition de programmes autorisés sur des
disques autorisés, tout en empêchant l'utilisation de dis-
ques et de programmes non autorisés.
D'autres caractéristiques et avantages de l'in-
vention ressortiront mieux de la description qui va suivre,
faite'en référence aux dessins annexés sur lesquels: la figure 1 est un diagramme synoptique d'un système global de traitement de données selon l'invention; la figure 2 est une perspective schématique d'un ensemble à disque destiné à entraîner un disque souple
afin que des données soient lues et écrites lors du fonc-
tionnement du système de la figure 1; la figure 3 représente un disque souple ayant
un indicateur de synchronisation et un indicateur d'autori-
sation d'un disque émetteur;
la figure 4 est un diagramme des temps représen-
tant le signal de sortie d'un détecteur d'indicateur d'un disque émetteur de la figure 3 utilisé dans l'ensemble de la figure 2; la figure 5 est un diagramme synoptique d'un détecteur de disque émetteur utilisé dans le système de la figure 1; et la figure 6 est un diagramme synoptique d'un
circuit d'autorisation destiné à détecter des disques magné-
tiques autorisés, dans le système de la figure 1.
Système dans son ensemble figure 1
Comme l'indique la figure 1, l'unité 2 de traite-
ment relie une unité 6 de gestion de mémoire à une ligne commune logique centrale 22 Celle-ci comprend une ligne commune 17 d'adresse, une ligne commune 18 de données et des lignes 19 de commande Le processeur 2 reçoit aussi un signal d'interruption INIT d'un premier niveau et un signal d'interruption VIR d'un second niveau de l'unité
de ligne commune 5-0 Ces signaux d'interruption sont uti-
lisés par le mécanisme de protection de programmes.
La figure 1 indique que plusieurs unités de ligne commune 4 et 5-0,, 5-3 sont reliées à la ligne commune 22 Par exemple, l'unité 4 est une mémoire à accès direct qui joue le rôle d'une mémoire principale pour le système de traitement de données de la figure 1 Les unités -0 à 5-3 comprennent par exemple des dispositifs d'entrée- sortie tels que des claviers, des disques souples et des dispositifs de mémorisation à disque dur, des dispositifs parallèles d'entrée-sortie, des unités de traitement et
d'autres types d'unités.
L'unité 5-0 de ligne commune de la figure 1 comporte un dispositif 25 à disque souple et un circuit classique de commande assurant l'interface du dispositif
avec le système de la figure 1.
Le dispositif 25 et l'unité 5-0 sont utilisés
pour le chargement de programmes d'ordinateur dans le sys-
tème Celui-ci est destiné à n'accepter que les disques
et programmes autorisés pour le système de la figure 1.
Sur la figure 1, une unité logique à arrangements programmables 88 est incorporée à l'unité 6 L'unité 88
reçoit chaque adresse de la ligne commune 17 et, en consé-
quence et suivant un algorithme prédéterminé et/ou un codage déterminé, donne un signal codé de sortie transmis par la ligne commune 18 de données Le signal de cette ligne est un identificateur du système Cet identificateur est conservé dans un champ de données d'autorisation d'un disque souple vierge afin que le système puisse lire ensuite le
disque.
Ensemble d'entraînement de disque figure 2 La figure 2 représente schématiquement un ensemble d'entraînement de disque souple faisant partie du dispositif de la figure 1 Le disque souple 26 indiqué en traits interrompus peut se déplacer librement dans son enveloppe 27 Celle-ci et le disque 26 sont introduits ensemble dans le sens de la flèche 24 dans l'ensemble de la figure 2 La porte 30 doit être ouverte pour l'introduction de la chemise 27 et du disque 26 dans l'ensemble de la figure 2, dans le sens de la flèche 21 et autour du pivot 20 afin
qu'un espace suffisant permette cette introduction ou l'en-
lèvement du disque 26 et de l'enveloppe 27.
L'ensemble de la figure 2 comporte un appareil
de détection sous forme d'un commutateur 31 destiné à dé-
tecter si un disque souple vient d'être introduit dans le système Lorsque la porte 30 est levée, le commutateur 31 transmet un signal PP de protection de programmes par
la ligne 44 Ce signal indique que la porte 30 a été ou-
verte et donc qu'un disque non autorisé peut avoir été introduit dans le dispositif 25 Le signal de protection
de programmes déclenche une interrogation destinée à dé-
terminer si le disque introduit est autorisé ou non.
Lorsque la porte 30 est soulevée, la tringlerie 32 provoque le retrait de l'organe 39 vers le haut par commande de l'ensemble 41 Le soulèvement de l'organe 39 lorsque la porte 30 est ouverte provoque le retrait du bout 42 de l'indicateur central 16 du disque 26 Le bout 42 est introduit afin qu'il puisse tourner par rapport à l'organe 39 Lorsqu'il est en contact dans l'indicateur 16, il coopère avec un organe menant formé à l'extrémité
de l'arbre 15 d'entraînement du dispositif 29 à moteur.
Ce dernier, par l'intermédiaire de l'arbre 15 et du bout
42, serrele disque 26 et l'entraîne dans le sens horaire.
Une tête magnétique 11 lit les données sur le disque 26
et les écrit sur ce disque La tête 11 est déplacée en trans-
lation par l'ensemble 28 d'entraînement de tête La tête
11 est disposée au-dessus d'une ouverture formée dans l'en-
veloppe 27 et a donc directement accès à la surface du dis-
que 26.
Un trou 10 est formé dans l'enveloppe 27 à une
position radiale prédéterminée afin qu'une piste de synchro-
nisation du disque 26 soit exposée Comme l'indique la fi-
gure 3, l'indicateur 35 de synchronisation est représenté
dans la piste de synchronisation en position radiale ali-
gnée sur le trou 10 de la figure 2 L'indicateur 35 est avantageusement un trou mais il peut être tout autre type
d'indicateur.
L'enveloppe a deux parties, une au-dessus et l'autre au-dessous du disque 26 de la figure 2 Le trou 10 passe à travers les parties supérieure et inférieure de
l'enveloppe si bien que, lorsque l'indicateur 35 est ali-
gné sur le trou 10, un faisceau lumineux passe totalement
à travers l'enveloppe 27 et l'indicateur 35 sans être inter-
rompu. Sur la figure 2, un détecteur optique comprenant une source lumineuse 34 et un détecteur 33 de lumière, est placé dans l'alignement du trou 10 Le détecteur 33 détecte un indicateur tel que l'indicateur 35 de synchronisation formé dans le disque 26 lorsque l'indicateur se trouve en face de l'axe 8 de la lumière du détecteur 33 Le repère de synchronisation vient une fois par tour en face de la fenêtre 10 et de l'axe 8 et est détecté une fois par
tour par le détecteur 33 Le repère 35 est utilisé de ma-
nière classique pour la synchronisation de la lecture et
de l'écriture des données du disque magnétique 26.
Comme les deux indicateurs 35 et 36 n' apparaissent pas simultanément dans l'ouverture 10, le disque émetteur peut être facilement détecté En conséquence, dans un mode
de réalisation, l'enveloppe 27 a des encoches 94 et 95 des-
tinéesà indiquer que le disque est un émetteur Les encoches 94 sont d'un type normalisé destiné à indiquer un disque
de mémoire passive uniquement.
Disque émetteur figure 3 Selon l'invention et comme indiqué sur la figure
3, un second indicateur 36 est placé dans la piste de syn-
chronisation à la même distance radiale que l'indicateur
L'indicateur 36 est un trou dans l'exemple considéré.
Cependant, tout type d'indicateur convient Ainsi, lorsque le disque 26 de la figure 3 est chargé dans l'ensemble de la figure 2, les deux indicateurs 35 et 36 viennent une
fois par tour en face de l'ouverture 10 et de l'axe 8.
Le'détecteur 33 détecte la présence des indicateurs et 36 et crée en conséquence une impulsion de sortie pour
chaque indicateur, une fois par tour.
Comme l'indique la figure 3, l'écart angulaire
D de l'indicateur 36 par rapport à l'indicateur 35 déter-
mine le décalage dans le temps du signal détecté pour l'in-
dicateur 35 et du signal détecté pour l'indicateur 36 Cet écart "D" est choisi afin qu'il ait une valeur déterminée
indiquant que le disque 26 est un émetteur Lorsque l'indi-
cateur 36 est à un emplacement autre que celui qui corres- pond à un écart D ou n'est pas du tout présent, le disque
26 n'est pas reconnu comme émetteur.
Signal du détecteur figure 4 La figure 4 représente une forme d'onde du signal de sortie du détecteur 33 Ainsi, les impulsions atutemps tl, t 3, t 5 et t 7 sont représentatives des impulsions dues à la détection de l'indicateur 35 par le détecteur 33 Les impulsions t 2, t 4, t 6 et t 8 sont représentatives d'impulsions dues à la détection de l'indicateur 36 par le détecteur 33 Le temps t(D) compris entre les impulsions tl et t 2 est proportionnel à l'espacement angulaire D des indicateurs et 36 Dans l'exemple décrit, l'indicateur 36 se trouve
dans un quart de tour c'est-à-dire que D est inférieur à 90 .
Détecteur principal figure 5 La figure 5 représente un détecteur principal comprenant le détecteur optique 33 La forme d'onde de la figure 4 est représentative du signal de la ligne 59 Cette
dernière, reliée au détecteur 33, rejoint une première en-
trée d'une porte NON-ET 51 dont l'autre entrée est le signal de la sortie Q d,'un basculeur 50 Le signal de la porte 51 est le signal RESET qui parvient à l'entrée de remise à zéro du compteur Ce dernier est commandé par un signal CLK/X afin qu'il compte de façon continue à partir d'un
nombre préréglé, jusqu'au nombre maximal avant retour auto-
matique afin qu'il continue à compter.
Le signal parallèle de sortie du compteur 45
parvient à une première entrée d'un comparateur 47 Celui-
ci a son autre entrée qui reçoit une valeur d'un registre 46 Le comparateur 47 compare le contenu du registre 46
à celui d'un compteur 45 Le nombre du registre 46 est choi-
si afin qu'il représente l'écart D entre les indicateurs 36 et 35 Le signal de l'indicateur 35 remet le compteur 45 à zéro et la commande d'horloge du compteur 45 est telle
que, dans le cas d'un disque émetteur, le nombre du comp-
teur 45 est égal au nombre dans le registre 46 lorsque l'in-
dicateur 36 est détecté par le détecteur 33.
Le basculeur 50 est commandé par le signal d'hor- loge 'CLK et mémorise le signal du comparateur 47 Le signal d'horloge transmis au compteur 45 est divisé par 4 dans un circuit classique convenable 53 afin qu'un défaut de repérage entre les nombres du registre 46 et du compteur 45 ne puisse pas apparaître Ainsi, il est certain que,
lorsque le comparateur 47 transmet un signal de niveau lo-
gique un indiquant une comparaison entre les nombres du compteur et du registre 45 et 46, ce signal est conservé
dans le basculeur 50.
Lorsque la comparaison est détectée et trans-
mise au basculeur 50, la porte 51 n'est plus préparée si bien qu'une impulsion détectée par la ligne 59 et provenant du détecteur 33 ne remet pas le compteur 45 à zéro Lorsque le basculeur 50 n'a pas été déclenché pour la mémorisation
d'un signal de niveau logique un à sa sortie Q et d'un si-
gnal de niveau logique zéro à sa sortie Q le signal de la sortie Q est à l'état 1 et prépare ainsi l'ouverture
de la porte 51 Lorsque celle-ci est préparée, toute impul-
sion de la ligne 59 remet le compteur 45 à zéro.
La présence d'un signal de comparaison positif du comparateur 47, conservé dans le basculeur 50, et d'une
d'impulsion dans la ligne 59 est détectée par la porte NON-
ET 54 et commande le basculeur 55 par l'entrée d'horloge.
Celui-ci reçoit un signal 1 à son entrée D et le conserve à sa sortie Q sous la commande du signal d'horloge Le 1 conservé dans le basculeur 55 est transmis au basculeur
56 par une transition du signal de sortie d'une porte ET 49.
Celle-ci reçoit des signaux du détecteur 33 et d'un décodeur 48. Le décodeur 48 est réglé afin qu'il reconnaisse un nombre représentant un tour complet du disque 26, dans le compteur 45 Lorsque ce dernier est remis à zéro par l'impulsion 35 transmise par la porte 51, le décodeur 48, s'il n'a pas été rétabli, atteint un nombre représenté par un tour complet du disque 26 et transmet un signal 1 à la porte ET 49 L'apparition simultanée du nombre du décodeur 48 et d'une impulsion transmise par le décodeur 33 par la ligne,59 transmet le contenu du basculeur 55 au basculeur 56 afin que le signal EMETTEUR apparaisse dans la ligne 58 sous forme d'un signal logique 1 Lorsque ce signal est transmis dans le basculeur 56, le basculeur 55 est rétabli
par le signal de la porte 49.
Le basculeur 56 est rétabli par le signal de la porte 57 Cette dernière transmet un signal à sa sortie lorsque, au moment o la porte NON-ET 51 transmet un signal 0 de remise à zéro du compteur 45, la porte 49 n'indique
pas que le décodeur 48 a transmis un signal de sortie.
Le fonctionnement du circuit de détection prin-
cipale de la figure 5 est le suivant lorsque le disque 26 de la figure 3 est un disque émetteur Lorsque l'impulsion tl de la figure 4 provenant de l'indicateur 3-5, provoque la transmission d'un signal par la ligne 59, le signal du basculeur 50, transmis à la porte 51, est à l'état Ainsi,
le signal de la porte 51 est détecté comme étant un O remet-
tant à zéro le compteur 45 Ce dernier continue ensuite à compter les impulsions d'horloge Un nombre représentant la position de l'indicateur 36 est chargé dans le registre 46 Lorsque l'indicateur 36 est en position de détection par le détecteur 33 et donne l'impulsion t 2 de la figure 4, le comparateur 47 transmet un signal 1 au basculeur 50 dont la sortie Q est à zéro Ce O transmis à la porte 51 empêche la prise en considération des signaux de la porte 41 sous la commande de l'impulsion t 2 de la ligne 59 si
bien que le compteur 45 n'est pas remis à zéro par l'impul-
sion t 2.
Cependant, l'impulsion t 2 est transmise à la porte NON-ET 54 avec un 1 du basculeur 50 et montre que
le signal de la porte 54 est un O provoquant la transmis-
sion d'un signal 1 au basculeur 55 -Ce signal 1 est conservé dans ce basculeur jusqu'à ce que le compteur 45 ait avancé jusqu'au nombre d'un cycle complet indiqué par le détecteur
48 Ce nombre du cycle complet du détecteur 48 et l'impul-
sion t 3 du second tour du disque 26 en même temps que l'ali-
gnement de l'indicateur 35 sur le détecteur 33 provoquent
la transmission du signal 1 du basculeur 55 dans le bascu-
leur 56 A ce moment, le signal EMETTEUR de la ligne 58 indique que le disque 26 est un émetteur Le basculeur 56 n'est pas rétabli par la porte 57 tant qu'un disque émetteur
26 se trouve dans l'ensemble de la figure 2.
On considère le fonctionnement du circuit de
la figure 5 lorsque le disque 26 n'est pas un disque émet-
teur Au moment o l'impulsion tl de l'indicateur 35 appa-
rait, le basculeur 50 est à nouveau commandé afin que sa sortie Q soit à 1 si bien que le signal de la porte 51 est
considéré comme remettant le compteur 45 à zéro Si l'indi-
cateur 36 n'est pas présent ou est présent à un endroit autre que l'écart D, le comparateur 47 transmet au maximum un signal au basculeur 50 à un moment qui ne correspond pas à une impulsion de la ligne 59 La porte 54 ne peut
donc jamais transmettre un signal 1 de la sortie Q du bascu-
leur 55.
Si un second indicateur 36 est placé par exemple avec un écart autre que D, le fonctionnement du circuit de la figure 5 est le suivant Chacune des impulsions ti, t 2, t 3, t 8 de la ligne 59 provoque l'ouverture de la porte 51 et le passage du signal RESET qui assure la remise à zéro du compteur 45 Ainsi, le compteur 45 n'atteint pas le nombre du cycle complet et le décodeur 48 ne permet pas la transmission d'un signal à la porte 49 Ainsi, la ligne ne transmet pas de signal de synchronisation de cycle Le signal de cette ligne reste à zéro si bien que, avec le
signal de la porte 51, il assure le rétablissement du bas-
culeur 56 si bien que le signal EMETTEUR de la ligne 58
ne peut pas être transmis L'absence du signal de synchroni-
sation de cycle une fois par tour indique qu'un disque émet-
teur non autorisé est présent dans le système.
Lorsque le disque 26 a un seul indicateur 35
de synchronisation, le fonctionnement du circuit de la fi-
gure 5 est le suivant Chaque fois qu'un signal tl, t 3,
t 5 et t 7 apparaît dans la ligne 59, la porte 51 est ou-
verte et transmet le signal RESET qui met le compteur 45
à zéro Les impulsions t 2, t 4, t 6 et tg ne sont pas pré-
sentes puisque le compteur 45 n'est remis à zéro qu'une fois par tour, et le décodeur 48 transmet un signal en même temps que les signaux peuvent provenir de la ligne 59 du détecteur 33 En conséquence, la porte 49 ne s'ouvre qu'une fois par cycle et transmet le signal de synchronisation
de cycle par la ligne 60.
Au moment o le nombre du compteur 45 correspond au nombre principal du registre 46, le basculeur 50 est commandé afin qu'il conserve un signal 1 Cependant, comme il n'existe aucune impulsion correspondante dans la ligne 59 lorsque le basculeur 50 est commandé, la porte 51 n'est pas ouverte et la porte 54 non plus En conséquence, en l'absence d'une impulsion de synchronisation de la ligne 59 correspondant à l'indicateur principal 36, le signal du comparateur 47 empêche la remise à zéro du compteur 45 et empêche la commande du basculeur 55 afin qu'il conserve un signal 1 Le signal de synchronisation de cycle de la ligne 60 rétablit constamment les basculeurs 55 et 56 dans ces conditions La transmission du signal de synchronisation de cycle de la ligne 60 lorsqu'aucun signal EMETTEUR n'est transmis par la ligne 58, indique que le disque 26 peut
être une copie autorisée d'un disque émetteur.
Le décodeur 48 est réglé de manière qu'il con-
tienne un nombre représentant le nombre d'emplacements élémentaires existants lorsque le disque 26 fait un tour complet Dans un exemple, le décodeur 48 est réglé à 252
et le compteur 45 est un compteur binaire à 8 bits Le cir-
cuit 53 de division par X permet la sélection de la quantité
X de manière que 252 signaux d'horlcge parviennent au comp-
teur 45 pour chaque tour du disque 26 Dans l'exemple o le déplacement D est d'environ 600 et le décodeur 48 est
réglé à 252, le registre 46 conserve un nombre égal à 42.
De manière générale, les dimensions des indica-
teurs 35 et 36 sont choisies à une valeur supérieure à la
dimension représentée par un nombre unique du compteur 45.
Ainsi, le diamètre réel de l'indicateur 36 est choisi afin que son emplacement se trouve dans une position représentée
par les nombres 41, 42 et 43 du compteur 45 Comme la fré-
quence d'horloge du basculeur 50 est X fois supérieure à celle du compteur 45, le basculeur 50 ne peut pas rater lâ détection de l'indicateur 36 Evidemment, la dimension des
indicateurs 35 et 36, le nombre représentant un cycle com-
plet (représenté par le nombre décodé dans le décodeur 48) et l'emplacement de l'indicateur principal 36 par rapport à l'indicateur 35 de synchronisation (contenu du registre 46) sont des paramètres qui peuvent être déterminésd'après la fréquence du signal d'horloge CLK et la vitesse angulaire
du disque 26.
Circuit d'autorisation figure 6 La figure 6 représente d'autres détails d'un
circuit d'autorisation Ce circuit de la figure 6 fait par-
tie de l'ensemble 5-0 de la figure 1 Ce dernier comporte
un dispositif 25 à disque souple et tout le circuit de com-
mande nécessaire au couplage de ce dispositif 25 à la ligne commune 22 Un tel circuit de commande est classique et
comprend un certain nombre d'éléments connus Comme l'indi-
que la figure 6, l'unité 5-0 comporte un registre 72 de données qui échange les données avec le dispositif 73 à disque Ce dernier comporte l'ensemble d'entraînement de la figure 2 Le registre 73 reçoit les données du disque
26 par l'intermédiaire du circuit tampon 87 et des multi-
plexeurs 70 et 71 Les données sont conservées dans le regis-
tre 72 lorsque celui-ci est préparé par le signal de charge-
ment de registre de données provenant d'un circuit 65 de
commande et de séquence.
L'emplacement de lecture et d'écriture des don-
nées sur le disque 26 est déterminé par le registre 69 d'adresse de la figure 6 Il peut conserver une adresse sous la commande du signal de chargement de registre d'adresse provenant du circuit 65 L'adresse conservéedans le registre 69 peut aussi être tirée de la ligne commune
* 17 qui fait partie de la ligne commune 22 de la figure 1.
Les bits d'adresse d'ordre élevé de la ligne 17 parviennent au décodeur 66 afin qu'ils indiquent lorsqu'un espace d'adressage de l'unité 5-0 a étéadressé Les bits d'ordre inférieur de la ligne commune 17 parviennent à une entrée
du multiplexeur 68 afin qu'ils soient chargés dans le reg-is-
tre 69 L'autre entrée du multiplexeur 68 reçoit le signal du générateur 67 d'adresse de code Ce dernier conserve les adresses des emplacements du champ d'identificateurs du système et du champ des noms de programmes sur le disque 26. Le générateur d'adresse est une mémoire passive, un compteur ou un autre dispositif qui transmet des adresses successivement Il est remis à zéro par l'adresse de départ lorsque le signal de remise à zéro de la porte OU 86 est présent Le générateur 87 progresse à une nouvelle adresse
sous la commande du signal AS du circuit 65.
Le multiplexeur 68 sélectionne l'adresse du géné-
rateur 67 lorsque le signal d'initialisation INIT est transmis par le basculeur 82 La ligne commune 18 assure l'échange des données avec l'unité 5-0 Sur la figure 6, la ligne commune transmet un signal d'entrée au multiplexeur 70 qui transmet alors un signal d'entrée au multiplexeur 71 qui
transmet lui-même un signal d'entrée au registre 72 de don-
nées. Les données transmises par la ligne commune 18 proviennent du circuit tampon 87 qui reçoit les données du registre 72 Le multiplexeur 70 reçoit un second signal tiré des données provenant du disque 26 dans un dispositif 73 à disque Les données sont tirées de la ligne commune 18 afin qu'elles soient transmises au multiplexeur 71 et au registre 72 de données lorsque le signal d'écriture W du circuit 65 est présent Lorsque le signal W n'est pas
présent, le multiplexeur 70 sélectionne les données du dis-
positif 73, transmises par la ligne commune 61.
Les données de la ligne commune 18 sont aussi transmises au registre 74 d'identificateurs du système et au registre 92 d'autorisation de programme Le registre 74 conserve les données provenant de la ligne 18 lorsqu'il est préparé par le signal de la porte ET 89 qui reçoit les signaux INIT et VIR Un identificateur du système, conservé dans le registre 74, est choisi par le multiplexeur 71 afin qu'il soit conservé dans le registre 72 et écrit sur le
disque 26 La sélection pour le multiplexeur 71 a lieu lors-
que le signal indiquant un disque vierge VIR, provenant du basculeur 78, est présent En l'absence du signal VIR,
le multiplexeur 71 sélectionne le signal de sortie du multi-
plexeur 70 afin qu'il soit conservé dans le registre 72.
L'identificateur du système provenant du registre 74 est aussi sélectionné par le multiplexeur 76 et parvient à une entrée du comparateur 64 lorsque le signal de test vierge
TEST VIR n'est pas présent à la sortie Q du basculeur 80.
Lorsque ce signal est présent, l'identificateur vierge est choisi dans le registre 75 par le multiplexeur 76 et forme un signal d'entrée du comparateur 84 L'autre signal de
ce dernier est transmis par le registre 72 de données.
Le comparateur 64 a pour fonction de comparer
le contenu du registre 72 à un identificateur vierge pro-
venant du registre 75 à un moment o le signal TEST VIR a été déterminé comme présent, et aux autres moments, il compare le contenu du registre 72 à l'identificateur du registre 74 Lorsque les contenus sont identiques, le signal
du comparateur 64 peut préparer les portes ET 84 et 85.
La porte OU 86 de la figure 6 reçoit le signal PP de la ligne 44 provenant du capteur 31 de la figure 2, et on l'a représentée schématiquement comme faisant partie du dispositif 73 de la figure 6 Cette porte 86 reçoit aussi un signal d'effacement de système SYCLR qui est présent par exemple chaque fois que le système de la figure 1 est mis sous tension Ce signal parvient aussi aux autres moments lorsque les états des registres et d'autres dispositifs de mémoire posent des questions Chaque fois que la porte 86 est ouverte et que son signal de sortie est présent, le basculeur 81 est rétabli afin que sa sortie Q soit à zéro
et sa sortie Q à un.
Après le fonctionnement du circuit de la figure 6, lorsque le disque présent dans l'ensemble de la figure 2 est déterminé comme étant un disque autorisé, le signal d'autorisation de disque permet l'ouverture de la porte 91 Lorsque le programme du disque 26 est autorisé pour le système,le signal du registre 92 ouvre la porte 91 Le
signal de cette porte permet alors au basculeur 81 de con-
server un signal 1 à sa sortie Q et un signal O à sortie Q. Chaque fois que le basculeur 81 a été rétabli, par exemple lorsque la porte 30 de la figure 2 a été ouverte afin que le signal PP de la figure 44 soit transmis, la porte 62 est préparée par un signal 1 de la sortie Q du
basculeur 81 Chaque fois que le décodeur 66 détecte l'adres-
sage de l'unité 5-0 (voir figure 1) après que la porte 62 a été préparée, le basculeur 82 est commandé afin qu'il conserve un signal 1 à sa sorite Q, si bien qu'il valide
la présence du signal INIT Cette présence-provoque la déter-
mination par le circuit de la figure 6 du fait que le disque 26 est autorisé ou non Le signal INIT est transmis sous forme d'un signal d'interruption au processeur de la figure
1 par 'La ligne 38.
En outre, lorsque le signal INIT est présent, le multiplexeur 68 sélectionne l'adresse de code provenant du générateur 67 pour la conserver dans le registre 69 d'adresse Le signal INIT est aussi transmis au circuit
65 afin qu'il commande la transmission des signaux de sor-
tie de ce circuit, provoquant l'exécution des fonctions de vérification d'autorisation par l'appareil de la figure 6 Le signal INIT parvient aussi à la porte 83 qui reçoit aussi, à une autre entrée, le signal EMETTEUR provenant
du détecteur 43 de la figure '5 Lorsque la séquence d'auto-
risation est déclenchée par le basculeur 82 en présence du signal INIT, le disque 26 est un disque émetteur comme indiqué par la présence du signal EMETTEUR, la porte 83 étant alors ouverte afin qu'elle transmette le signal 1 à la sortie Q du basculeur 80 Cette sortie Q, lorsqu'elle
transmet un tel signal, forme le signal TEST VIR qui pro-
voque la vérification du fait que le disque 26 est un dis-
que émetteur vierge. Le signal présent TEST VIR prépare la porte 84 dont l'autre entrée est reliée à la sortie du comparateur 64 Le signal présent TEST VIR provoque la transmission par le multiplexeur 76 du signal identificateur vierge du registre 75 à une entrée du comparateur 64 Si le contenu du registre 72 correspond à l'identificateur vierge, le signal du comparateur 64 prépare la porte 84 si bien que le signal VIR est déterminé comme présent à la sortie Q
du basculeur 78 Lorsque ce signal VIR est présent indi-
quant que le disque émetteur de l'ensemble de la figure 2 est vierge, le multiplexeur 71 permet la conservation de l'identificateur du registre 74 dans le registre 72 afin
que l'identificateur soit écrit sur le disque 26.
L'identificateur du sytème a déjà été chargé
dans le registre 74 à la suite de l'interruption du pro-
cesseur 2 provoquée lors de la présence du signal INIT dans la ligne 38 Au moment o l'identificateur du système est
conservé dans le registre 72 par commande du signal de vali-
dation LDDR provenant du circuit 65, le basculeur 77 est
commandé afin qu'il conserve le signal TEST VIR Simultané-
ment, la présence du signal LDDR rétablit le basculeur vierge 78. Lorsque l'identificateur vierge est conservé dans le registre 72, un signal d'écriture est commandé par
la présence du signal W provenant du circuit 65 L'identifi-
cateur vierge est écrit sur le disque 26 à l'adresse spé-
cifiée par le registre 69 d'adresse.
Ensuite, comme le signal VIR n'est pas présent,
le multiplexeur 71 sélectionne le signal de sortie du multi-
plexeur 70 pour le transmettre au registre 72 de données.
Le circuit 65 provoque alors un cycle de lecture par appa-
rition du signal de la ligne R qui provoque la lecture de l'identificateur du système du dispositif 73 à disque et
sa conservation dans le registre 72 de données.
Lorsque le basculeur 77 est commandé par le si-
gnal LDDR, il présenteun signal à sa sortie Q permettant le rétablissement du basculeur 80 et supprimant ainsi le
signal TEST VIR Le multiplexeur 76 transmet donc l'iden-
tificateur du système du registre 74 à une entrée du compa-
rateur 64 avec l'identificateur du registre 72 déjà lu sur le disque 26 Lorsque le comparateur 64 valide son signal
de sortie, la porte 85 a été préparée au moment du rétablis-
sement du basculeur 80 si bien que le basculeur 79 est com-
mandé et transmet le signal d'autorisation de disque Ce signal commande le basculeur 81 et permet la présence du signal d'autorisation Ce signal rétablit le basculeur 82
et annule le signal INIT tout en rétablissant les bascu-
leurs 77 et 79 Lorsque le signal INIT est annulé, le si-
gnal d'interruption de la ligne 38 est supprimé et le cir-
cuit de la figure 6 indique ainsi que le disque 26 est d'ac-
cès autorisé par la ligne commune 22 Lorsque le signal INIT est annulé, le multiplexeur 68 relie directement la ligne commune 17 au registre 69 et la ligne commune 18 au
registre 72.
Le circuit 65 de commande et de séquence de la figure 6 est un dispositif logique séquentiel classique qui fonctionne de manière connue et transmet un certain nombre de signaux séquentiels Ceux-ci comprennent un signal
LDAR de valisation du registre 69, un signal LDDR de vali-
dation de registre 72, le signal W de commande de l'écri-
ture du-contenu du registre 72 sur le disque 26, le signal R commandant une opération de lecture du contenu du disque 26 dans le registre 72, et un signal AS destiné à faire progresser le générateur 67 d'adresse Ces signaux sont créés de manière classique pour la lecture et l'écriture de données lorsque le signal INIT n'a pas été déterminé comme présent Cependant, en présence du signal INIT, le
circuit 65 transmet une séquence de signaux de sortie per-
mettant la mise en oeuvre du mécanisme de protection de pro-
grammes, comme décrit en détail par le tableau suivant:
LDAR = (INIT * T 1)
+ lcharger AD normal * INIT
R = (TEST VIR * INIT * T 2)
+ (TEST VIR * VIR * INIT * T 5)
+ (VIR * T 6 * INIT)
+ llire normall * INIT
W = (VIR * INIT * LDDR * T 4)
+ lécrire normall * INIT
LDDR = (VIR * INIT * T 3)
+ (R * IN It J* (T 2 + T 5 + T 6) + lcharger DA normall * INIT
AS = T 1 + T 2 + T 3 + T 4 + T 5 + T 6
Dans le tableau, l'astérisque "*" représente
une opération logique intersection et le symbole "+" repré-
sente une opération logique réunion Sur le tableau, la dernière ligne de chacune des équations, sauf le signal
AS, représente l'opération normale lorsque le signal d'ini-
tialisation INIT n'a pas été déterminé comme présent Toutes les autres lignes représentent le fonctionnement du circuit de séquence lorsque le signal INIT a été déterminé comme présent. Opération d'autorisation de disque
On décrit maintenant le fonctionnement du cir-
cuit de la figure 6 lorsque la porte 30 a été ouverte et lorsqu'un disque émetteur 26 a été placé dans l'ensemble de la figure 2 Lorsque la porte 30 est ouverte, le signal
PP est reçu par la porte 86 et rétablit le basculeur 81.
Celui-ci prépare la porte 62 lorsque le système de la fi-
gure 1 adresse l'unité 5-0, et le décodeur 66 provoque l'ou-
verture de la porte 62 si bien que le basculeur 82 est réta-
bli et le signal INIT est présent A ce moment, le signal LDAR, comme indiqué par le tableau, est transmis à Tl et charge le registre d'adresse du contenu du générateur 67 d'adresse codée L'adresse du générateur est l'adresse du champ conservant l'identificateur sur le disque 26 Le signal INIT provoque une interrumption du processeur 2 qui pro- voque à son tour le chargement de l'identificateur dans le générateur 74 de la figure 6 qui est préparé à recevoir
l'identificateur étant donné la présence du signal INIT.
Les signaux INIT et EMETTEUR sont présents et
ouvrent la porte 83 si bien que le signal TEST VIR est pré-
sent Ce dernier, en présence du signal INIT comme indiqué par le tableau, provoque l'apparition du signal R au temps T 2 si bien que le contenu du disque 26 à l'adresse spécifiée par le registre 69 est lu L'information du disque 26 est
conservée dans le registre 72 par l'intermédiaire des multi-
plexeurs 70 et 71 La présence du signal R au temps T 2 en présence du signal INIT comme l'indique le tableau provoque la présence du signal LDDR au temps T 2 et permet au registre 72 de conserver les données du disque 26 En présence du
signal TEST VIR, le multiplexeur 76 sélectionne l'identifica-
teur vierge dans le registre 75 et le compare aux données du registre 72 Si les deux éléments de la comparaison sont identiques, le comparateur 64 transmet un signal qui provoque
l'apparition du signal VIR à la sortie du basculeur 78.
Lorsque les registres 72 et 75 n'ont pas le même contenu, le comparateur 64 n'a pas de signal présent à sa sortie
et le signal VIR n'apparaît pas.
Dans l'exemple dans lequel le disque 26 est un émetteur vierge, l'identificateur du système provenant du registre 74 est chargé dans le registre 72 Ce dernier est chargé par le signal LDDR qui, comme indiqué sur le tableau, est présent au temps T 3 lorsque les deux signaux VIR et INIT sont présents Lorsque le signal LDDR à T 3 provoque la conservation de l'identificateur dans le registre 72,
le signal W est présent au temps T 4 comme l'indique le ta-
bleau et assure l'écriture du contenu du registre 72 sur
le disque 26 Le chargement du registre 72 par l'dentifica-
teur en présence du signal LDDR à T 3 annule le signal VIR.
Dans ces conditions, le signal R est présent au temps T 5 et provoque la conservation de l'identificateur lu sur le disque 26 dans le registre 72 Le signal LDDR est présent au temps T 6 et provoque la conservation des données lues
sur lèe disque dans le registre 72.
A ce moment, le contenu du registre 74 est com-
paré au contenu de l'identificateur du registre 72 tiré du disque et, en l'absence d'une erreur, le résultat est
positif La porte 85 est ouverte et transmet le signal d'au-
torisation de disque qui prépare alors la porte 91 Lorsque le registre d'autorisation de programme est aussi établi, la porte 91 s'ouvre et permet la transmission du signal d'autorisation par le basculeur 81 Ce signal annule le signal INIT et le disque 26 est prêt à un accès normal par
le système de la figure 1.
Dans l'exemple décrit dans lequel le disque n'est pas un disque vierge et le signal VIR n'est jamais transmis par le basculeur 78, l'identificateur du registre 74 n'est jamais chargé dans le registre 72 et n'est pas écrit sur
le disque 26.
On considère maintenant le fonctionnement du circuit de la figure 6 lorsque le disque émetteur n'est pas un disque vierge Lorsque le comparateur 64 détermine que le contenu du registre 72 diffère de celui du registre , le signal VIR n'est pas présent La lecture au temps T 2, plaçant les données dans le registre 72, rétablit le basculeur 77 et annule le signal TEST VIR après l'impulsion d'horloge CLK suivante Lorsque les deux signaux VIR et TEST VIR sont annulés, le multiplexeur 76 est commuté afin qu'il sélectionne le signal de sortie du registre 74 si bien que celui-ci est alors comparé au contenu du registre 72 Si le résultat est positif, la porte 85 est préparée
et le basculeur 79 progresse afin que le signal d'autorisa-
tion de disque soit présent Si le programme est aussi auto-
risé, ce dernier signal prépare la porte 91 et commande
le basculeur 81 qui assure la transmission du signal d'auto-
risation et l'annulation du signal INIT Dans ce dernier cas, l'interruption 38 est supprimée et l'unité 5-0 de la
figure 1 ne peut pas être utilisée d'une manière générale.
Cette opération a lieu dans le cas d'un disque émetteur non vierge Un tel disque est d'un type qui a déjà été auto-
ris&'pour son utilisation dans le système de la figure 1.
Le fonctionnement du circuit de la figure 6, lorsque le disque 26 n'est pas un disque émetteur, est le suivant Lorsque le disque n'est pas un émetteur, le signal EMETTEUR est annulé et en conséquence, le signal de la porte 83 n'est pas présent Ainsi, les signaux TEST VIR et VIR ne sont pas présents Une opération de lecture pendant le temps T 5 assure donc la lecture des données de l'adresse spécifiée par le registre 69 Les données de l'emplacement adressées sur le disque 26 sont conservées dans le registre 72 Si le contenu de ce dernier, tiré du disque 26, est identique à celui du registre 74, le comparateur 64 transmet
son signal de sortie et prépare la porte 85 qui est com-
mandée par l'intermédiaire du basculeur afin que le signal d'autorisation de disque soit présent, ce signal permettant la transmission du signal d'autorisation et l'annulation du signal INIT dans le cas d'un programme autorisé Dans ces conditions,le comparateur 64 transmettant un signal
1, le disque 26 est une copie autorisée d'un émetteur auto-
risé Lorsque les contenus des registres 72 et 74 diffèrent, le signal de sortie du comparateur n'est pas présent si
bien qu'aucun des signaux d'autorisation de disque et d'au-
torisation n'est présent Le signal INIT reste donc présent et l'interruption de la ligne 38 n'est pas supprimée Le processeur 2 reconnaît le moment o l'interruption de la ligne 38 n'est pas supprimée pendant une période suffisante
et il transmet alors une exception de protection de pro-
gramme identifiant le disque introduit dans l'ensemble 5-
0 comme non autorisé.
Dans le système de la figure 1, le processeur
2 détecte l'interruption de la ligne 38 de manière clas-
sique L'adresse de l'unité 5-0 de ligne commune qui pro-
voque l'interruption de la ligne 38 a été transmise par le processeur 2 par l'intermédiaire de la ligne commune 17 Lorsque l'unité logique 88 d'arrangements programmables
de la figure 1 est validée par le signal VIR, elle trans-
met un signal de sortie dans la ligne commune 18 Les si- gnaux de données de cette ligne sont transmis à l'unité -0 et conservés dans le registre 74 d'identificateur du système sous la commande du signal de la porte 89, de la
manière indiquée précédemment.
Dans l'exemple décrit, l'unité logique 88 est
adressée par une seule séquence d'adresse Cependant, plu-
sieurs adresses séquentielles d'adressage de l'unité 88
peuvent être nécessaires avant l'apparition du signal con-
venable de sortie de cette unité 88 L'utilisation de plu-
sieurs adresses séquentielles augmente notablement la pro-
tection assurée contre les tentatives de rupture du mécanis-
me de protection.
L'unité logique programmable 88 transmet 1 ' identi-
ficateur de système qui est utilisé pour la détermination du fait que le disque est autorisé ou non Dans le cas d'un disque émetteur vierge, l'unité 88 transmet l'identificateur du système qui est conservé sur le disque afin qu'il forme
un disque émetteur non vierge et autorise ainsi l'utilisa-
tion dans le système de la figure 1 de ce disque et de ses copies L'unité logique 88 peut exécuter toute fonction voulue sur l'adresse transmise par la ligne commune 17 afin que l'identificateur du système soit transmis par la ligne commune 18 Dans un exemple, le système de la ligne 18 peut
être identique à l'adresse de la ligne 17 si bien que l'iden-
tificateur est simplement l'adresse de l'unité logique 88.
Mise en oeuvre autorisée du programme Sur la figure 1, la mémoire permanente 90 est connectée afin qu'elle soit adressée par la ligne commune
17 et transmette des signaux de sortie par la ligne com-
mune 18 La mémoire 90 est un dispositif qui peut être adres-
sé par des bits transmis par la ligne commune 17 afin que
l'information de la ligne 18 soit conservée ou que l'informa-
tion destinée à la ligne 18 soit lue, selon l'état du signal
VIR En présence de ce signal, la mémoire reçoit des informa-
tions de la ligne 18 et les conserve à l'emplacement adressé.
Lorsque le signal VIR n'est pas présent, la mémoire 90 ne peut fonctionner qu'en mode de lecture et transmet les don- nées-à la ligne 18 La mémoire permanente 90 conserve ces informations même lorsque le système de la figure 1 n'est
plus alimenté, et est ensuite remis sous tension.
La mémoire 90 est adressée pour la lecture afin que l'autorisation du programme contenu sur le disque pour le système de la figure 1 soit déterminée Dans un exemple, la mémoire 90 a un champ de noms de programmes à 8 bits permettant l'autorisation de l'utilisation dans le système de la figure 1 d'un nombre de programmes différents pouvant atteindre 256 Les bits d'adresse d'ordre élevé de la ligne
17 sont décodés pour la sélection de la mémoire 90 de ma-
nière classique et les 8 bits d'ordre inférieur de l'adresse
correspondent aux noms possibles des programmes du disque.
La mémoire 90 est donc une mémoire de programmes autorisés qui conservent une indication pour chaque programme qui
est autorisé, jusqu'à un maximum.
Lorsque le signal INIT est détecté par le processeur 2 et pourvu que le signal VIR soit présent, le processeur 2 adresse d'abord l'unité 88 de la figure 1 afin qu'il ait accès à l'identificateur du système Ce dernier est conservé
dans le registre 74 de la figure 6 comme indiqué précédemment.
Le processeur 2 contrôle alors le signal VIR et, lorsque celui-ci est présent, il remet à jour la mémoire permanente au moment convenable Ce moment convenable apparaît après le signal T 6 Si le signal VIR est présent, le processeur 2 exécute l'opération d'écriture dans la mémoire 90 Les bits d'adresse d'ordre inférieur forment le nom de programme tiré du disque 26 Un bit à l'état 1 est conservé dans la
mémoire permanente à l'adresse du programme déterminé lors-
que le nom du programme est tiré du registre 72 pour être
transmis au disque émetteur vierge.
Après l'opération d'écriture sur un disque émetteur vierge (en présence du signal VIR) ou directement dans le cas d'un disque non vierge quelconque (absence du signal VIR), la mémoire 90 est lue à l'aide du nom de programme correspondant à l'adresse d'ordre inférieur Le bit unique de données 1 ou O est transmis par le bit 9 de la ligne 18 et est conservé dans le registre 92 d'autorisation de programme afin qu'il transmette le signal d'autorisation de programme Si le programme est convenablement autorisé dans le système, le registre 92 conserve un signal 1 et prépare ainsi la porte 91, lorsque le signal d'autorisation
de disque est formé par le basculeur 79 de la figure 6.
Si le disque n'est pas autorisé, c'est-à-dire en l'absence du signal d'autorisation de disque, ou si le programme n'est pas autorisé, c'est-àdire si le signal d'autorisation de programme du registre 92 n'est pas présent, la porte 91 n'est pas ouverte et le signal d'autorisation de disque
de programme n'est pas présent.
Si le disque n'est pas autorisé ou si le programme
ne l'est pas, le basculeur 81 n'est pas mis à 1 et ne trans-
met pas le signal d'autorisation En l'absence de ce signal, le basculeur 82 n'est pas rétabli et le signal INIT reste présent comme signal d'interruption du processeur 2 dans la ligne 38 Si le signal INIT n'est pas supprimé au bout d'un temps prédéterminé, le processeur reconnaît qu'une exception à la protection des programmes existe et continue le traitement sans permettre l'accès au disque 16 par des
opérations normales de lecture et d'écriture.
Il est bien entendu que l'invention n'a été dé-
crite et représentée qu'à titre d'exemple préférentiel et qu'on pourra apporter toute équivalence technique dans ses
éléments constitutifs sans pour autant sortir de son cadre.

Claims (7)

REVENDICATIONS
1 Appareil de protection de programmes, destiné à un système d'ordinateur, lui-même destiné à recevoir des programmes d'un disque placé dans un dispositif à disque, ledit appareil étant caractérisé en ce qu'il comprend:
un appareil de détection ( 31) destiné à trans-
mettre un signal (PP) de protection de programmesindiquant quand un disque doit être interrogé afin que l'autorisation de l'utilisation de ce disque dans ce système soit déterminée,
un dispositif d'autorisation commandé par le.
signal (PP) de protection de programmeset destiné à interro-
ger le disque, ce dispositif d'autorisation comprenant:
un registre ( 74) destiné à conserver un iden-
tificateur du système, un dispositif ( 33) de lecture de données d'un champ prédéterminé du disque, et un comparateur < 64) destiné à comparer les
données du disque à l'identificateur du système et à trans-
mettre un signal d'autorisation lorsque les données-d'auto-
risation du disque et l'identificateur du système sont iden-
tiques. 2 Appareil selon la revendication 1, caractérisé en ce que le dispositif d'autorisation comporte en outre un détecteur principal ( 43) destiné à transmettre un signal principal lorsque le disque est un émetteur,
un dispositif ( 75) destiné à transmettre un iden-
tificateur vierge, un dispositif destiné à provoquer la lecture, des données du disque dans le champ prédéterminé du disque à la suite du signal principal, et un comparateur ( 64) des données du disque avec l'identificateur vierge afin qu'il transmette un signal vierge lorsque les données du disque et l'identificateur
vierge sont identiques.
3 Appareil selon la revendication 2, caractérisé en ce qu'il comprend: un dispositif ( 73) commandé par le signal vierge et destiné à écrire l'identificateur du système dans le
champ prédéterminé du disque de manière que celui-ci de-
vienne un émetteur non vierge.
4 Appareil selon la revendication 3, caractérisé en ce qu'il comprend en outre un générateur ( 6) destiné à former l'identificateur du système à la suite du signal
vierge, et un dispositif de conservation de l'identifica-
teur du système dans le registre d'identificateur du sys-
tème. 5 Appareil selon la revendication 4, caractérisé en ce que le générateur ( 6) comporte un circuit logique
( 88) à arrangements programmables destiné à créer l'identi-
ficateur du système en fonction de l'adresse utilisée pour
l'adressage de l'unité de disque par le système.
6 Appareil selon la revendication 5, caractérisé
en ce que le disque émetteur < 26)a une piste de synchroni-
sation comportant un indicateur ( 35) de synchronisation et un indicateur principal ( 36) décalé angulairement par rapport à l'indicateur de synchronisation, et le détecteur principal ( 33) comporte un dispositif de détection de l'écart
angulaire de l'indicateur principal par rapport à l'indica-
teur de synchronisation et un dispositif de détermination de la correspondance de cet écart avec l'écart d'un disque émetteur. 7 Appareil selon la revendication 1, caractérisé en ce qu'il comporte en outre un dispositif ( 5-0) destiné à transmettre un signal d'initialisation à la suite du signal (PP) de protection de programme et destiné à empêcher le fonctionnement du dispositif à disque pour la lecture et l'écriture normale d'information jusqu'à la création du
signal d'autorisation.
8 Appareil selon la revendication 1, caractérisé en ce qu'il comprend:
une mémoire ( 90) destinée à conserver des identi-
ficateurs d'autorisation de programmes identifiant les pro-
grammes autorisés dans le système, un dispositif de lecture du nom d'un programme porté par le disque, et un dispositif ( 2) commandé par ce nom et destiné
à déterminer si le programme porté par le disque a un iden-
tificateur d'autorisation incorporé dans la mémoire d'autori-
sation de programme. 9 Appareil selon la revendication 2, caractérisé en ce qu'il comprend:
une mémoire ( 90) destinée à conserver des identi-
ficateurs d'autorisation de programmes identifiant les pro-
grammes autorisés dans le système, un dispositif de lecture du nom d'un programme porté par le disque, et un dispositif ( 2) commandé par ce nom et destiné
à déterminer si le programme porté par le disque a un iden-
tificateur d'autorisation incorporé dans la mémoire d'auto-
risation de programme.
Appareil selon la revendication 9, caractérisé en ce que la mémoire d'autorisation de programme est une
mémoire permanente ( 90) qui conserve l'état des identifica-
teurs d'autorisation de programme lorsque l'alimentation
est interrompue ou rétablie.
11 Appareil selon la revendication 9, caractérisé en ce que le dispositif de détection comporte un dispositif d'adressage de la mémoire ( 90) d'autorisation de programme
à l'aide du nom de programme afin qu'un identificateur d'au-
torisation de programme correspondant au nom du programme
soit obtenu.
12 Appareil de protection de programmes destiné à un système d'ordinateur lui-même destiné à recevoir des programmesd'ordinateur d'un disque souple, caractérisé en ce qu'il comprend: un appareil ( 31) de détection de disque destiné à détecter une introduction d'un disque dans le système,
un dispositif générateur d'un signal d'initialisa-
tion destiné à provoquer une vérification du fait que le disque mis en place est un disque autorisé ou non, un dispositif ( 33) de détection des pistes de synchronisation du disque et de détection de la présence
d'un indicateur ( 36) de disque émetteur destiné à trans-
mettre un signal principal lorsque le disque est un émetteur, un dispositif d'interrogation d'un disque émetteur ( 26) qui vient d'être placé dans le système, destiné à déter- miner si le disque est un disque vierge ou non, un dispositif de mémorisation d'un identificateur du système sur un disque émetteur vierge,,et un dispositif de vérification des identificateurs mémorisés pour le système, sur des disques quiviennent d'être
mis en place afin qu'ils transmettent un signal d'autorisa-
tion permettant l'accès normal au disque par le système
lorsque le disque conserve l'identificateur du système.
FR8309372A 1982-06-07 1983-06-06 Appareil de protection de programmes d'ordinateur Expired FR2528196B1 (fr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US38548082A 1982-06-07 1982-06-07

Publications (2)

Publication Number Publication Date
FR2528196A1 true FR2528196A1 (fr) 1983-12-09
FR2528196B1 FR2528196B1 (fr) 1988-05-27

Family

ID=23521544

Family Applications (1)

Application Number Title Priority Date Filing Date
FR8309372A Expired FR2528196B1 (fr) 1982-06-07 1983-06-06 Appareil de protection de programmes d'ordinateur

Country Status (7)

Country Link
JP (1) JPS5917655A (fr)
KR (1) KR840005225A (fr)
CA (1) CA1199125A (fr)
DE (1) DE3320378A1 (fr)
FR (1) FR2528196B1 (fr)
GB (1) GB2123597B (fr)
IT (1) IT1235448B (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0286437A2 (fr) * 1987-04-09 1988-10-12 Victor Company Of Japan, Limited Appareil et méthode pour enregistrer et reproduire un signal numérique

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8323283D0 (en) * 1983-08-31 1983-10-05 Univ Strathclyde Copyright protection device
WO1985003584A1 (fr) * 1984-02-03 1985-08-15 Paul Guignard Surveillance de securite et d'utilisation
JPS60196863A (ja) * 1984-03-21 1985-10-05 Mitsubishi Electric Corp 有償プログラムの保護方法
JPS60196862A (ja) * 1984-03-21 1985-10-05 Mitsubishi Electric Corp 有償プログラムの保護方法
AU556098B1 (en) * 1985-05-14 1986-10-23 Cadam Systems Company Inc. Program keyboard mechanism
EP0204154A3 (fr) * 1985-06-03 1988-11-09 Peter Ginkel Système de protection et d'identification de logiciel
JPS6220031A (ja) * 1985-07-19 1987-01-28 Nec Corp ソフトウエア保護方式
DE3704113C2 (de) * 1987-02-11 1995-02-09 Burkhard Panier Sicherheitsbehälter zum Transportieren und Aufbewahren von flachen Datenträgern
DE3806414C2 (de) * 1988-02-29 1996-05-23 Thomson Brandt Gmbh Verfahren für einen Kopierschutz bei Recordern
JPH0638226B2 (ja) * 1990-11-30 1994-05-18 東京電気株式会社 業務処理装置
DE4219695A1 (de) * 1992-06-16 1993-12-23 Compass Business Computer Gmbh Schutzvorrichtung zur berechtigungsabhängigen Benutzung eines Rechners oder eines Teils desselben
EP0640924A3 (fr) * 1993-08-17 1997-04-23 Sony Corp Appareil de reproduction de données.
JP3534646B2 (ja) 1999-04-21 2004-06-07 株式会社ソニー・コンピュータエンタテインメント ディスク状記録媒体、この媒体の再生装置及び方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3368207A (en) * 1965-05-12 1968-02-06 Ibm File protection to i/o storage
US3585606A (en) * 1969-09-12 1971-06-15 Ibm File protect circuit and method
GB1329721A (en) * 1970-05-26 1973-09-12 Plessey Co Ltd Data processing devices
US3890601A (en) * 1974-03-11 1975-06-17 Philco Ford Corp Password operated system for preventing unauthorized or accidental computer memory alteration
US3996449A (en) * 1975-08-25 1976-12-07 International Business Machines Corporation Operating system authenticator
GB1525292A (en) * 1976-04-30 1978-09-20 Emi Ltd Identification of records
JPS57111792A (en) * 1980-12-29 1982-07-12 Fanuc Ltd Program copying preventing system
GB2113432A (en) * 1981-12-15 1983-08-03 Little Genius Limited Data protection system
GB2112971B (en) * 1981-12-15 1985-10-02 Little Genius Limited Data protection system
EP0084441A3 (fr) * 1982-01-19 1984-08-22 Tabs Limited Méthode et appareil pour la protection de la propriété de programmes d'ordinateur

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
2nd USA-JAPAN COMPUTER CONFERENCE PROCEEDINGS, Tokyo, 26-28 août 1975, pages 139-142, Montvale, US; F.L. SINDELAR et al.: "A two-level disk protection system" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0286437A2 (fr) * 1987-04-09 1988-10-12 Victor Company Of Japan, Limited Appareil et méthode pour enregistrer et reproduire un signal numérique
EP0286437A3 (en) * 1987-04-09 1990-01-24 Victor Company Of Japan, Limited Apparatus and method for recording and reproducing a digital signal

Also Published As

Publication number Publication date
DE3320378A1 (de) 1983-12-15
JPS5917655A (ja) 1984-01-28
IT1235448B (it) 1992-07-29
GB2123597A (en) 1984-02-01
CA1199125A (fr) 1986-01-07
IT8348442A0 (it) 1983-06-07
FR2528196B1 (fr) 1988-05-27
KR840005225A (ko) 1984-11-05
GB8315640D0 (en) 1983-07-13
DE3320378C2 (fr) 1987-06-19
GB2123597B (en) 1986-04-23

Similar Documents

Publication Publication Date Title
FR2528196A1 (fr) Appareil de protection de programmes d&#39;ordinateur
EP0044039A1 (fr) Objet portatif individualisé du genre carte de crédit
EP0013347B1 (fr) Dispositif à mémoire intermédiaire pour le transfert des données entre un processeur et un dispositif d&#39;entrée/sortie
EP0402210B1 (fr) Procédé pour vérifier l&#39;intégrité d&#39;un logiciel ou de données, et système pour la mise en oeuvre de ce procédé
EP0626664B1 (fr) Système de communication avec cartes à puce
FR2492135A1 (fr) Appareil de distribution d&#39;objets et d&#39;acquisition de services
FR2471000A1 (fr) Procede et dispositif de controle du nombre de tentatives d&#39;acces a une memoire electronique, notamment celle d&#39;un circuit integre d&#39;un objet comme une carte de credit ou une carte d&#39;achat
EP0710386A1 (fr) Systeme pour transactions securisees par telephone
EP0540095A1 (fr) Microcircuit pour carte à puce à mémoire programmable protégée
FR2689263A1 (fr) Dispositif comportant des moyens pour valider des données inscrites dans une mémoire.
FR2654236A1 (fr) Procede de protection contre l&#39;utilisation frauduleuse de cartes a microprocesseur, et dispositif de mise en óoeuvre.
EP0168077A1 (fr) Circuit d&#39;interface du type esclave fonctionnant avec un bus série
EP0267114A1 (fr) Circuit intégré pour la mémorisation et le traitement d&#39;informations de manière confidentielle comportant un dispositif anti-fraude
EP0735489A1 (fr) Procédé de protection de zones de mémoires non volatiles
FR2795838A1 (fr) Procede de securisation du traitement d&#39;une information sensible dans un module de securite monolithique, et module de securite associe
WO1990010292A1 (fr) Procede de controle de l&#39;utilisation d&#39;un support d&#39;informations, notamment magnetique ou magneto-optique et systemes pour sa mise en ×uvre
FR2634917A1 (fr) Procede et dispositif de protection d&#39;un logiciel, en particulier contre les copies non autorisees
FR2473755A1 (fr) Procede et dispositif electronique de memorisation et de traitement confidentiel de donnees
EP0606796B1 (fr) Procédé de programmation en champ uniforme d&#39;une mémoire électriquement programmable et mémoire mettant en oeuvre le procédé
EP0075278B1 (fr) Procédé de synchronisation de deux microprocesseurs
FR2565751A1 (fr) Circuit d&#39;interface du type esclave
EP0246119B1 (fr) Système optionnel de protection de l&#39;accès à un ordinateur
FR2676320A1 (fr) Procede et dispositif de detection et de controle du gabarit de messages numeriques transmis a un dispositif de reception.
EP0241086A1 (fr) Dispositif comportant des circuits accordés sur des fréquences données
EP0685796A1 (fr) Dispositif pour l&#39;optimisation des performances d&#39;un processeur

Legal Events

Date Code Title Description
ST Notification of lapse