Brevet FR2649813A1 — publié le 19910118

On connait les mémoires de différents types, à écriture unique ou multiple, naturellement permanentes ou entretenues, purement électroniques ou à bulles, et l'on peut prévoir la réalisation industrielle prochaine de mémoires électro optiques et probablement d'autres types de mémoires toutes caractérisés également en ce qu'elles sont foranées d'un ou plusieurs ensembles monolithiques uniquement accessibles par des connecteurs fixes . La puissance de ces mémoires en font des supports de mémoire de masse au même titre que ies supports magnétiques ou optiques se présentant sous forme de bandes ou de disques; nous ies appelerons mémoires principales 1. On connait également ies protections d'accès aux données des mémoires sur support magnétique ou optique réalisées par l'association à ces mémoires de circuits intégrés électroniques complexes ayant des fonctionnalités de codage et d'interdiction d'accès . La présente invention a pour but d'étendre spécifiquement ce type de protection aux mémoires 1 ,( figure 1), en leur associant, ou en intégrant à leur structure, d'une part un ensemble 2 constitué d'un microprocesseur, de mémoires mortes ou vives particulières, et de circuits annexes de selection et de liaison et que nous appelerons module 2 et d'autre part un circuit spécialisé 3 dit contrôleur d'entrées sorties E/S . Les éléments de ce controleur E/S 3, ou seulement certains de ces éléments, pewent être regroupés à l'extérieur du module 2 ou intégrés dans ce module . Le contrôleur E/S 3 a autant d'éléments de contrôle qu'il a de voies à contrôler . Le module 2 pourra posséder dans des mémoires spécialisées, à écriture unique ou multiple, des algorythmes de codage décodage de comparaison , des empreintes de clés, des programmes de gestion et pourra contrôler ,suivant l'invention, l'accés à la mémoire principale 1 par le biais du contrôleur E/S 3 au quel il est relié par le bus 13 . On peut en particulier ,(figure 3 et 41, disposer, dans le module 2 , de une ou deux mémoires à écriture unique ou multiple de 2**n (2 puissance n) groupes de n bits, en particulier 256 octets, ou une mémoire de 2x2**n groupes de n bits contenant deux blocs de 2**n groupes de n bits, groupes ou biocs de 2**n groupes de n bits que nous appelerons blocs de codage B1 et B2 . Ces-mémoires pourront être indépendantes ou former un ou deux Brocs de 2**n adresses dans une mémoire plus importante . Ces blocs contiendront les 2**n nombres représentables par n bits dans un ordre aléatoire ou déterminé par un algorythme, l'une des deux mémoires, pouvant ne pas contenir tous les nombres de 1 à 2**n, mais plusieurs fois certains d'entre eux . Ces blocs de codage B1 et B2 serviront à coder et à décoder ie contenu de la mémoire principale 1, par ensembles de 2**n groupes de n bits, soit en combinant groupe à groupe les groupes de n bits à coder avec les groupes de n bits du bloc codeur, soit en affectant à chaque groupe de n bits à coder l'adresse, dans ce blocs de 2**n groupes de n bits, constituée par la valeur contenue dans le groupe de n bits correspondant du bloc codeur, soit en associant les deux méthodes Le contrôleur E/S 3 peut contrôler la totalité des bus d'adresses 6 et de données 7 desservant ia mémoire principale 1, ou seulement un ou plusieurs éléments de ces bus .Une fois l'acces autorisé, les connecteurs extérieurs 5 reliés aux bus de l'ordinateur sont électriquement ou optiquement reliés aux circuits appropriés de la mémoire principale 1 . En contrôlant un bit du bus des adresses 6, on contrôle la moitié des adresses; en contrôlant deux bits, les trois quarts, et ainsi de suite . On peut contrôler également par le biais du contrôleur E/S 3, i'alimentation 8, les signaux de sélection 9, de lecture 10 et d'écriture 11 . Le module 2 peut être branché en dérivation sur tout ou partie du bus 5 de ltordinateur qui arrive en totalité ou en partie seulement sur le contrôleur E/S 3 (figures 1 et 2) . Une partie des bus d'adresses 6, de données 7 et de commande 12 peut arriver directement sur la mémoire principale 1, figure 2, suivant les éléments de ces bus sélectionnbs pour le contrôle de la dite mémoire principale, en considérant que si le seul contrôle de l'alimentation 8 ou du signal de sélection 9 suffit pour contrôler la mémoire principale 1, la resistance au piratage sera d'autant pius grande qu'un plus grand nombre d'éléments sera conUôlé . Apres la mise sous tension de l'ordinateur, le contrôleur EIS est assimilable à@ un interupteur en position ouvert. Le contrôleur US 3 est constitué en partie par un ensemble de transistors ou de composants intégrés assimilables à des interrupteurs placés sur les voies à contrôler des bus, et dont les conductions sont cont ôlées globalement ou individuellement par le module 2, l'état à l'initialisation étant l'état non conducteur . II est constitué également par des circuits de gestion de ces interrupteurs et des circuits anti- forçage suivant l'art antérieur . Ces élements une fois activés peuvent présenter une conduction bidirectionnelle ou monodirectionnelle suivant ies signaux reçus du module 2 . Les signaux issus de l'ordinateur sont recus par le module 2, placé en dérivation sur les bus d'adresses et de données . Ce module 2 est vu comme une partie de la mémoire principale . Ce dit module 2 établit un dialogue avec I'utilisateur . Si ce dialogue est favorable, par exemple la fourniture d'une clé valide, @module active le contrôleur E/S et étabilit ainsi les liaisons permanentes demandées des éléments appropriés des bus 5 de ltordinateur avec la mémoire principale 1 . L'état activé du contrôleur E/S 3 subsiste Jusqu'à l'extinction de l'ordinateur ou l'arrivée d'un signal spécifique sur le module 2 par un fil 14 du bus de commande, ou l'adressage d'adresses particulières réservées à cet usage et amenant une ou plusieurs todifications du contrôleur E/S 3 . En effet le module branché en derivatiwn sur le bus d'adresses peut se voir affecter des adresses prises à la mémoire principale 1, ou encore peut ciuter en permanence ce bus et, lorsqu'il reconnait des adresses particulières et/ou des données particullères placets à ces adresses, modifier e comportement du contrôleur E/S 3,éventuellement apres un dialogue avec l'utilisateur. Cette disposition, suivant l'invention, permet le contrôle de l'acces global ou seulement de la@ lecture ou de l'écriture séparément. . Ce contrôle de la lecture ou de l'écriture, suivant l'invention, présente une grande sécurité car il fait Intervenir l'état passif du contrôleur E/S 3 qui dès la mise sous tension interdit la lecture ou ltécriture dans la mémoire principale @; cette lecture ou écriture ne peut donc être autorisée que par un ordre explicite de l'utilisateur, eventueliement apres la fourniture d'une clé . Pour augmenter la confidentialite de la mémoire principale 1, il est possible d'utiliser le module 2 pour coder le contenu de la dite mémoire suivant l'art antérieur . Des dispositifs de l'art anlérieur, intégrés au contrôleur E/S; 3 et au module 2,interdisent le forçage du contrôleur E/S ou du module. En intégrant le contrôleur E/S et le module dans le circuit intégré de la mémoire principale 1, on Interdit pratiquement toute possibilité de la fraude consistant à effecluer une liaison directe du bus de ltordinateur avec les connecteurs de la dite mémoire principale 1 . Dans le cas où l'on vout protéger l'accès d'une mémoire @réexistante ou d'une mémoire constituées d'élements séparés, ou enferme, suivant l'invention, cette mémoire principale 1, ou les éléments séparés constituant cette mémoire principale 1, dans une enceinte inviolable contenant également le module et le contrôleur EIS 3, et communiquant avec l'exterieur par des connecteurs enficher ou à souder Revendications ...Dispositif caractérisé en ce que à une mémoire principale 1 caractérisée en ce qu'elle est formée d'un ou plusieurs ensembles monolithiques uniquement accessible par des connecteurs fixes, sont associés ou intégrés, d'une part un ensemble constitué d'un microprocesseur, de mémoires rriortes ou vives à écriture unique ou multiple et de circuits annexes de sélection et de liaison, que nous apellerons module 2, et d'autre part un circuit spécialisé 3, dit contrôleur d'entrées -sorlies E/S 3 . 2...Dispositif selon t caractérisé en ce que le module 2 posséde en ses mémoires spécialisés des algorylhmes de codage et de décodage, de comparaison, des empreintes de clés, des programmes de gestion et de contrôle de i'acces à la mémoire par le biais du controleur E/S 3 . 3...Dispositif selon 1 caraclérisé en ce que le contrôleur E/S 3 est constitué d'éléments de type transistor, ou de composant intégrés assimilables à des interrupteurs mono ou bi directionnels, qui, lors de la mise sous tension sont en position " ouvert", et qui peuvent être mis en position "fermé" par un signal issu du module 2 . 4...Dispositif selon 1 caractérisé en ce que le contrôleur E/S 3 a autant d'éléments de contrôle qu'il a de voies à contrôler, 5...Dispositif selon 1 et 3 caractérisé en ce que le contrôleur E/S 3 a ses éléments regroupés à ltextérieur du module 2 . 6...DisposiUi selon-1 et 3 caractérisé en ce que le contrôleur E/S 3 a ses éléments ou certairis de ses éléments intégrés dans les circuits du module 2, 7..Dispositif selon 1 et 3 caractérisé en ce que les interrupteurs éiémentaires du contrôleur E/S 3 peuvent être, en position "fermé", conducteur à double sens ou à sens unique suivant les specifications du module 2 . 8...Dispositif selon 1 caractérisé en ce que le module 2 est placé en dérivation sur la totalité du bus (5) de l'ordinateur ou sur une partie seulement de ce bus, et en ce que le dit module 2 est relié par un bus 33 au controleur EIS 3, 9...Dispositif selon 1 et 3 caractérisé en ce que l'état activé, c'est à dire conducteur, est maintenu jusqu'à rextinction de ltordinateur, ou l'anivée d'un signai spécifique sur une voie du bus de commande, ou l'adressage d'une ou plusieurs adresses particulières réssrvées à cet usage et induisant des configurations particulieres du contrôleur US 3 sous le contrôle du module 2, O...Dispositif selon 1 caractérisé en ce que éxiste dans le module une ou deux mémoires indépendantes, ou parties de mémoires plus vastes, à écriture unique ou multiple de 2**n groupes ds n bits que nous appellerons blocs de codage B1 et B2, et qui contiendront les 2**n nombres représentables par n bits dans un ordre aléatoire ou déterminé par un algorithme l'une des deux mémoires pouvant ne pas contenir la totalité des nombres possibles mais plusieurs fois certains d'entre eux. 11...Dispositif selon i caractérisé en ce que une mémoire principale 1 préexsistante ou une mémoire principale 1 constituée d'éléments physiquement séparés est enfermée dans une enceinte Inviolable contenant également le module 2 et le contrôleur ElS 3 et communiquant avec l'extérieur par des connecteurs à enficher ou à souder constituant l'extrémité du bus 5.