Brevet FR2599164A1 — publié le 19871127

PROCEDE POUR EMPECHER UN ACCES NON AUTORISE A UNE INFORMATION -La présente invention concerne un procédé pour empêcher un accès non autorisé à une information entrée dans un appareil en appuyant sur les touches d'un clavier et transférée à partir du clavier sous la forme de signaux électriques sur des lignes électriques vers une unité de traitement. Actuellement, on utilise dans de nombreux contextes une carte magnétique comme "clef" pour donner accès à de l'argent liquide ou à des services. Des exemples de cette 10 technique sont les terminaux extérieurs pour cartes dans les postes d'essence et les machines de retrait d'argent liquide à guichets automatiques pour cartes du type "Bankomat" et "Minuten" (marques déposées). Dans le dernier cas mentionné, il est évidemment très important que seul le 15 propriétaire légitime puisse utiliser la carte pour retirer de l'argent liquide, et que, de plus, personne ne puisse retirer de l'argent au moyen d'une carte falsifiée. Pour empêcher des personnes malhonnêtes qui ont falsifié, trouvé, volé, ou qui se sont approprié d'une manière ou 20 d'une autre une carte magnétique appartenant à quelqu'un d'autre de retirer de l'argent, les cartes sont combinées avec un code personnel (ou numéro d'identification personnel), qui doit être entré dans le distributeur avant qu'un retrait ne puisse être fait. Par conséquent, le code d'iden25 tification personnel présente une relation spécifique avec l'information sur la carte magnétique, qui est vérifiée et qui doit être corrigée avant que le retrait ne soit autorisé. La vérification est effectuée soit par l'ordinateur dans le distributeur, soit par un ordinateur central. Dans ce 30 dernier cas, le code d'identification personnel est codé par l'ordinateur du distributeur avant d'être transmis à l'ordinateur central. US-A-4 234 932 expose un système qui vise à rendre plus difficile à un voleur le retrait d'argent dans un distributeur d'argent liquide s'il n'a pas accès conjointement à la carte magnétique et au code d'identification personnel. Le système comporte un terminal satellite avec un lecteur de cartes, un générateur de nombres aléatoires, un générateur de signaux de numéros d'identification personnels, un dispo5 sitif de sécurité, et un mécanisme distributeur de billets. Le système comporte également un ordinateur central recevant les données de la carte, un signal (f) connectant le code d'identification personnel avec le fichier du client (X) dans la mémoire, et un nombre aléatoire (w). L'ordinateur 10 délivre un signal d'autorisation-qui est constitué par la somme (Z) des trois signaux mentionnés ci-dessus. Le signal d'autorisation est comparé dans le dispositif de sécurité avec le code d'identification personnel entré par le client et avec le nombre aléatoire (w), et si une relation spéci15 fique est respectée entre ceux- ci, un signal de distribution est délivré au mécanisme de distribution de billets. Toutefois, même un tel système utilisant conjointement une carte et un code d'identification personnel n'est pas à l'épreuve du vol. Un voleur peut épier une 20 victime éventuelle qui entre son code pour s'approprier ensuite la carte de la victime par un moyen ou un autre. Dans le but de rendre plus difficile la découverte d'un code par l'observation,-EP 84 116154.0 propose un dispositif qui est conçu pour empêcher des personnes non autorisées de découvrir le code d'identification personnel d'un utilisateur par simple observation du déplacement du doigt de l'utilisateur lorsqu'il entre le code. Le dispositif comporte un clavier et une fenêtre de visualisation montrant quel chiffre correspond à quelle touche sur le clavier. La 30 signification de chaque touche peut donc être changée à intervalles réguliers, ce qui signifie que le code qui est entré ne peut pas être déterminé par la simple observation des déplacements du doigt. De plus, les chances qu'a le voleur de retirer 35 de grosses sommes d'argent liquide sont limitées par les restrictions qui sont imposées sur la quantité d'argent liquide qui peut être retiréependant une certaine période de temps dans un distributeur d'argent, et par les possibilités qu'a la victime de bloquer son compte. Un plus grand risque pour la sécurité des banques est constitué par la possibilité qu'a une personne malhonnête de se brancher sur les lignes du distributeur sur lesquelles est transmise l'information, obtenant ainsi un accès au code d'identification personnel ainsi qu'à l'information de la carte magnétique pour un grand nombre de cartes. 10 En faisant un certain nombre de cartes falsifiées et en utilisant les codes d'identification personnels découverts, la personne malhonnête pourrait retirer de l'argent liquide sur un grand nombre de comptes, s'appropriant ainsi de grosses sommes d'argent. En principe, une personne malhonnête a trois possibilités pour acquérir des informations importantes dans le distributeur. La première possibilité-est que la personne malhonnête se branche sur les lignes entre l'ordinateur local du distributeur et l'ordinateur central et 20 capte les signaux transmis entre ceux-ci. Pour rendre plus difficile l'accès aux informations importantes, toutes les informations critiques transmises entre l'ordinateur local et l'ordinateur central sont codées. Une autre possibilité est que la personne malhonnête se branche et lise le 25 code de programme pour l'ordinateur local, obtenant ainsi un accès aux algorithmes de codage et/ou de vérification. Cela peut toutefois être évité en utilisant un circuit intégré de sécurité qui a récemment été développé aux Etats-Unis et qui rend la lecture du code de programme impossible. La 30 troisième possibilité, finalement, est que la personne malhonnête capte les signaux sur les lignes entre le clavier et l'ordinateur local, et entre le lecteur de cartes magnétiques et l'ordinateur local. De ce point de vue, la seule façon de protéger cette partie du distributeur consiste à 35 le protéger physiquement, mais cela n'est pas satisfaisant du point de vue de la sécurité. Les personnes ayant accès à l'intérieur du distributeur ont toujours la possibilité, sans grandes difficultés, d'installer un équipement de captage. La protection physique de cette partie implique également que l'on ne peut pas utiliser un clavier avec un type de touches quelconque, et que les touches doivent- être 5 conçues d'une façon spéciale, ce qui rend le clavier moins pratique et plus coûteux. L'objet de la présente invention est par conséquent de procurer un nouveau procédé pour empêcher l'accès à une information entrée dans des appareils du type distributeurs d'argent liquide. Le procédé sera applicable aux distributeurs d'argent existants et ne devra pas nécessiter des installations importantes ou coûteuses. Cet objet est atteint au moyen du procédé qui est décrit dans l'introduction et qui est caractérisé en ce que 15 l'unité de traitement reçoit des signaux des lignes durant des périodes de réception espacées les unes des -autres, et en ce que l'unité de traitement transmet, entre les périodes de réception sur lesdites lignes, des signaux simulant des actionnements de touches. L'intervalle maximal entre deux périodes de réception successives doit évidemment être substantiellement plus court que la durée la plus courte d'actionnement d'une touche, de telle sorte qu'il n'y ait aucun risque qu'un actionnement de touche ne soit pas perçu. Une personne non autorisée se branchant sur les lignes entre le clavier et l'ordinateur local dans le distributeur d'argent n'est donc pas capable de deviner quand se produisent les pressions réelles sur les touches, et n'est donc pas capable de déterminer quel code d'identi30 fication personnel correspond à l'information sur la carte utilisée dans le distributeur. Pour améliorer encore la sécurité, la durée des intervalles entre les périodes de réception a la possibilité de varier de façon aléatoire, tout comme la durée des actionnements de touches simulés 35 et la fréquence de ceux-ci. Les avantages du procédé selon la présente invention telle qu'elle est décrite ici sont qu'il peut être appliqué aux distributeurs d'argent liquide existants, que des installations importantes ou coûteuses ne sont pas nécessaires, et que les exigences de protection physique de cette partie particulière du distributeur d'argent sont réduites, ce qui rend possible l'utilisation d'autres claviers que ceux qui sont utilisés actuellement. Une réalisation de la présente invention va être décrite ci-dessous, référence étant faite aux dessins joints. La Fig. 1 est une vue schématique des parties d'un distributeur d'argent liquide. La Fig. 2 est un diagramme des temps d'un exemple de l'apparition des signaux entre le clavier et l'ordinateur d'un distributeur d'argent, ainsi 15 que des actionnements de touches réels et simulés lorsque le procédé selon la présente invention est utilisé. Le distributeur d'argent illustré de façon schématique en Fig. 1 comporte essentiellement un clavier 21, un lecteur de cartes 22, et un ordinateur 23. Le clavier 21 est du type à matrice et comporte quatre lignes horizontales aO à a3 et quatre lignes verticales do à d3 formant une matrice dans laquelle chaque point d'intersection entre une ligne horizontale et une ligne verticale correspond à une touche. Dans la réalisation représentée, le clavier 21 25 a donc seize touches 1 à 16. Les lignes aO à a3, d0 à d3 sont connectées à l'ordinateur 23, qui, de façon conventionnelle, comporte une unité centrale, une mémoire morte, une mémoire vive, des bus de données, des bus d'adresses et des unités d'entrée/sortie, et qui peut être, par exemple, le 30 circuit 8751 fabriqué par Intel. L'ordinateur 23 a une entrée 24 connectée au lecteur de cartes 22, une sortie 25 connectée à un ordinateur central (non représenté), et des sorties d'adresses A0 à A3 et des entrées/sorties de données DO à D3, respectivement, connectées aux lignes d'adresses a0 à a3 et aux lignes de données do à d3. Les entrées/sorties de données DO à D3, tout au moins, sont donc bidirectionnelles, c'est-à-dire qu'elles peuvent fonctionner comme des entrées ou comme des sorties, selon leur programmation. Une personne qui désire retirer de l'argent dans un distributeur d'argent du type illustré insère, d'une façon bien connue, sa carte magnétique dans le lecteur de cartes 22 et entre son code d'identification personnel au moyen des touches sur le clavier 21. L'ordinateur 23 reçoit l'information codée de façon magnétique sur la carte sur l'entrée 24 connectée au lecteur de cartes et enregistre les actionnements de touches en plaçant séquentiellement un "1" sur les sorties d'adresses AO à A3 et en lisant, pour chacune de ces sorties, les "0" et les "1" obtenus sur les entrées de données DO à D3. Pour empêcher n'importe qui de s'approprier les codes d'identification personnels des utilisateurs en captant les lignes a à aà et dO à d3, l'ordinateur 23 lit les infor15 mations sur les entrées de données DO à D3 uniquement durant des périodes de réception spécifiques. Ces périodes de réception doivent avoir une fréquence qui est suffisament élevée pour qu'il n'y ait aucun risque que l'ordinateur ne détecte pas un actionnement de touche. Le plus long intervalle entre 20 deux périodes de réception doit donc être substantiellement plus court que l'actionnement de touche le plus court qui soit concevable. La durée des intervalles entre deux périodes de réception varie de façon aléatoire, et, durant ces intervalles, DO à D3 sont reprogrammés en sorties. Les signaux 25 simulant des actionnements de touches sont placés par l'ordinateur 23 sur les lignes do à d3. La durée et la fréquence des actionnements de touches simulés varient de façon aléatoire de façon à rendre encore plus difficile à une personne qui capte une ligne la détermination des action30 nements qui sont réels. Ces durées et ces fréquences qui varient de façon aléatoire sont commandées par un programme mémorisé dans la mémoire de l'ordinateur, ledit programme utilisant une fonction générant un nombre aléatoire. Pour empêcher une personne captant une ligne de différencier les véritables actionnements de touches en étudiant la direction de courant des signaux sur les lignes de données d0 à d3, les signaux détectant et simulant, respectivement, des actionnements de touches sont rendus aussi courts que possible et ont un contenu énergétique minimal. Cela signifie que l'on doit avoir un équipement hautement sophistiqué et très coûteux pour être capable de détecter la direction de courant de ces signaux. Pour mieux expliquer la fonction du procédé selon l'invention, la Fig. 2 représente un exemple schématique de ce à quoi peuvent ressembler les signaux sur les lignes 10 d'adresses et de données aO à a et do à d3 dans la disposition montrée en Fig. 1 et les actionnements de touches véritables et simulés correspondant à ceux-ci. La figure, qui représente dix cycles I à 10 de balayages du clavier, a un axe des temps pour chacune des lignes d'adresses a à 15 a3 et des lignes de données d0 à d3. En dessous se trouve un autre axe des temps sur lequel sont montrés les actionnements de touches réels, et à la base de la figure se trouve un autre axe des temps sur lequel sont montrés les actionnements de touches simulés. Les axes des temps des lignes 20 d'adresses ao à a3 illustrent la façon dont l'ordinateur balaie le clavier en plaçant séquentiellement un signal haut, un "1"l, sur les lignes d'adresses a0 à a3. Pour chaque signal haut placé sur une ligne d'adresse par l'ordinateur, l'ordinateur, durant les périodes de réception, qui, dans 25 la réalisation représentée, sont les cycles entourés 1, 2, 7 et 10, lit les signaux d'entrée sur les lignes de données, les entrées/sorties de données DO à D3 étant programmées en entrées. Durant les cycles 1 et 2, on obtient donc un "1" sur la ligne de données d2, lorsqu'un signal haut est 30 transmis sur la ligne d'adresse a2, car la touche 7 est enfoncée. Durant les cycles 3 à 6, les entrées/sorties de données DO à D3 sont reprogrammées en sorties, et, dans la réalisation illustrée, l'ordinateur simule un actionnement de la touche 9 en plaçant, durant les cycles 4 et 5, un 35 signal haut sur la ligne de données do, lorsque la ligne d'adresse a1 est à un niveau haut. Durant le cycle 7, les entrées/sorties de données DO à D3 sont à nouveau repro- grammées en entrées. Aucune touche n'étant enfoncée durant cette période, on n'obtient que des "0" sur les entrées DO à D3. Durant les cycles 8 et 9,un actionnement de la touche 3 est simulé par le fait que l'ordinateur place un "1" sur la ligne de données d2 durant la période pendant laquelle la ligne d'adresse a5 est à un niveau haut. Même si un véritable actionnement de touche, comme représenté dans l'exemple, est déclenché durant le cycle 9, celui-ci ne se verra pas sur les lignes de données do à d3. Durant le 10 cycle 10, qui est une période de réception, par contre, cet actionnement de touche se verra sous la forme d'un "1" sur la ligne de données d2 lorsque la ligne d'adresse a1 sera à un niveau haut. Pour une personne qui capte les signaux sur les lignes d'adresses et de données, cela sera donc comme si la touche 7 était enfoncée durant les cycles 1 et 2, la touche 9 durant les cycles 4 et 5, la touche 3 durant les cycles 8 et 9, et la touche 11 durant le cycle 10. Une personne captant les lignes n'a pas la possibilité de déterminer quels sont les signaux qui proviennent de véritables 20 actionnements de touches. Pour mieux contrecarrer une personne captant des lignes, il est évidemment possible de rendre également les sorties d'adresses AO à A3 reprogrammables en entrées et de leur faire balayer le clavier durant des périodes de réception spécifiques en utilisant les sorties DO à D3 comme sorties d'adresses. Naturellement, le balayage n'a pas besoin d'être effectué en faisant placer un "1" par l'ordinateur sur les lignes d'adresses a à a dans l'ordre montré dans l'exemple, 30 et cet ordre peut être optionnel et peut même changer d'un cycle à un autre. Une personne du métier réalisera également que l'on peut aussi bien utiliser une logique négative, c'est-à-dire que les "0" indiqueront un actionnement de 35 touche véritable ou simulé. 9 2599164 Bien que la présente invention ait été décrite ci-dessus par référence à un distributeur d'argent, elle peut évidemment être utilisée également pour tout équipement dans lequel une information secrète est entrée par l'inter5 médiaire d'un clavier et transmise à un type quelconque d'unité de traitement. De plus, l'invention n'est pas restreinte à un clavier à matrice 4 x 4, mais elle peut être appliquée à des claviers de types et de tailles différents. Revendications 1. Procédé pour éviter un accès non autorisé à une information entrée dans un appareil en appuyant sur les touches d'un clavier (21) et transférée à partir du clavier sous la forme de signaux électriques sur des lignes élec5 triques (ao-a3, do-d3) vers une unité de traitement (23), caractérisé en ce que l'unité de traitement (23) reçoit des signaux à partir des lignes pendant des périodes de réception espacées les unes des autres, et en ce que l'unité de traitement (23) transmet, entre les périodes de réception sur 10 lesdites lignes, des signaux simulant des actionnements de touches. 2. Procédé selon la revendication 1, caractérisé en ce que l'intervalle maximal entre deux périodes de réception successives est substantiellement plus court que la durée 15 la plus courte d'actionnement d'une touche. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que la durée des intervalles entre les périodes de réception varie de façon aléatoire. 4. Procédé selon la revendication 1, 2 ou 3, carac20 térisé en ce que la durée des actionnements de touches simulés varie de façon aléatoire. 5. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que la fréquence des actionnements de touches simulés varie de façon aléatoire.