Brevet FR2773426A1 — publié le 19990709

PROCÉDÉ D'AUTO-CONTRÔLE D'UNE CLÉ ÉLECTRONIQUE DANS UN SYSTÈME DE CONTRÔLE D'ACCÈS À UNE RESSOURCE ET CLÉ ÉLECTRONIQUE METTANT EN & UVRE UN TEL PROCÉDÉ La présente invention concerne un procédé d'autocontrôle d'une clé électronique dans un système de contrôle d'accès à une ressource, ainsi qu'une clé électronique mettant en oeuvre un tel procédé. Elle s'applique au contrôle d'accès à une ressource quelconque, ressource accédée, dont on souhaite contrôler l'utilisation, que la ressource considérée soit un bâtiment, un système informatique, ou tout autre objet, tel qu'une boîte aux lettres ou un coffre de banque. L'invention s'applique plus particulièrement aux systèmes de contrôle d' accès utilisant un moyen portable d'accès aux ressources, appelé clé électronique, disposant d'un potentiel de calcul important et autonome en énergie, de façon à pouvoir maintenir une horloge temps réel, tandis que la ressource accédée ne dispose que d'un potentiel limité de vérification des droits d'accès. Par droit d'accès , on entend la signature électronique d'une plage de validité. Une signature électronique peut être obtenue à l'aide de mécanismes cryptographiques divers, tels que des mécanismes de chiffrement, ou d'authentification. Elle peut par exemple être obtenue à l'aide d'un algorithme de signature à clé secrète ou d'un algorithme de signature à clé publique. Lorsqu'une ressource accédante , ou clé électronique , présente un droit d'accès à une ressource accédée , ou serrure électronique , un protocole de vérification du droit d'accès est mis en oeuvre. Ce protocole comporte généralement au moins la vérification de la signature électronique de la plage de validité. La plage de validité peut être, soit la période proprement dite pendant laquelle il est possible d'accéder à la ressource, soit la période de validité d'une clé de signature de la ressource accédante lui permettant de s'authentifier vis-à-vis de la ressource accédée, soit tout autre paramètre permettant de limiter dans le temps une attaque par utilisation frauduleuse de la ressource accédante. Le principal avantage d'un moyen d'accès logique à une ressource par rapport à un moyen d'accès physique réside généralement dans la possibilité de ne permettre l'accès à la ressource qu'à l'intérieur d'une plage horaire relativement courte prédéterminée, dite aussi plage de validité prédéterminée. Dans ces conditions, si la clé électronique est perdue, volée, cédée ou dupliquée, elle ne permettra pas à son détenteur illégitime d'accéder à la ressource en dehors de la plage horaire prédéterminée. Cela suppose cependant que la ressource accédée soit en mesure de vérifier que cette plage horaire est respectée. Cela implique généralement que la ressource accédée dispose d'un potentiel minimal de vérification des droits d'accès. Le document FR-A-2 722 596 décrit un système de contrôle d'accès limités à des plages horaires autorisées et renouvelables au moyen d'un support de mémorisation portable. Ce système, fondé sur des mécanismes cryptographiques, permet de limiter la période de validité des droits d'accès à une courte durée, afin d'éviter une utilisation illégitime en cas de perte, vol, cession ou duplication illicite. Toutefois, la solution décrite présente l'inconvénient de reposer uniquement sur le potentiel de contrôle de la ressource accédée. Cela laisse une latitude non négligeable à un fraudeur, ayant en sa possession une clé électronique, pour tenter d'inhiber le potentiel de contrôle de la ressource à laquelle il cherche à avoir accès, par exemple en désactivant l'horloge temps réel de la serrure électronique. En outre, cela permet au fraudeur de s'attaquer à la clé elle-même, sans être limité dans le temps, pour tenter d'en extraire des éléments significatifs qui lui permettront éventuellement d'attaquer ultérieurement l'ensemble du système. Si la portée d'une telle attaque est relativement limitée lorsque la clé contient un simple droit d'accès, elle est en revanche beaucoup plus lourde de conséquences lorsque la clé électronique contient une clé secrète lui permettant de produire des signatures électroniques. La présente invention a pour but de remédier aux inconvénients précités en dotant la clé électronique d'un dispositif interne d'auto-contrôle et d'auto-invalidation, fondé sur l'horloge temps réel de la clé, sur certaines données internes mémorisées dans la clé, ainsi que sur son potentiel cryptographique, lui permettant d'effectuer un certain nombre de vérifications. Dans ce but, la présente invention propose un protocole d'auto-contrôle d'une clé électronique munie d'une horloge temps réel délivrant une variable temporelle et d'un droit d'accès, auquel est associée une valeur de signature de la plage de validité relative à ce droit d'accès, remarquable en ce que ce protocole d'auto-contrôle par cette clé électronique consiste au moins en (a) une vérification de la valeur de signature de la plage de validité relative à ce droit d'accès, cette étape de vérification étant conduite à partir d'une clé de vérification spécifique (b) une comparaison d'appartenance de la variable temporelle à la plage de validité (c) une étape d'auto-invalidation de la clé électronique sur réponse négative à l'une des étapes de vérification, respectivement de comparaison. En variante, l'ordre d'exécution des étapes (a) et (b) peut être interverti. La clé de vérification spécifique peut être une clé publique ou secrète. La plage de validité précitée peut comprendre plusieurs plages de validité disjointes. Dans un mode particulier de réalisation, la plage de validité est un intervalle comportant deux bornes exprimées chacune comme une date en jour, mois, année et un horaire en heures, minutes, secondes. Dans un mode particulier de réalisation où la clé électronique est munie de registres de mémorisation à accès protégé et d'une alimentation en énergie électrique autonome, l'étape d'auto-invalidation consiste, vis-à-vis de données mémorisées dans les registres de mémorisation à accès protégé, soit à attribuer un ensemble de données d'état internes à une valeur arbitraire entraînant le verrouillage de la clé électronique en position hors service, soit à déclencher l'effacement complet d'une pluralité de ces données d'état, ou encore à provoquer la mise en court-circuit de l'alimentation en énergie électrique autonome. La présente invention propose également une clé électronique comportant, agencés sur un support portable, une unité de calcul, des registres de mémorisation, à accès protégé, d'un ensemble de données d'état internes et une horloge temps réel délivrant une variable temporelle, la clé électronique étant munie d'un droit d'accès, auquel est associée une valeur de signature de la plage de validité relative à ce droit d'accès, la clé électronique étant remarquable en ce qu'elle comporte en outre - un module de vérification de la valeur de signature de la plage de validité relative à ce droit d'accès, ce module de vérification comportant au moins une clé de vérification spécifique, ainsi qu'un algorithme de vérification - un module de comparaison d'appartenance de la variable temporelle à la plage de validité, et, commandés par le module de vérification et le module de comparaison, - un module d'auto-invalidation de la clé électronique sur réponse négative, soit du module de vérification, soit du module de comparaison. D'autres caractéristiques et avantages de la présente invention apparaîtront à la lecture de la description détaillée qui suit d'un mode particulier de réalisation, donné à titre d'exemple non limitatif. La présente invention se réfère aux dessins annexés, dans lesquels - la figure 1 est un organigramme du protocole d'auto-contrôle de la présente Invention, dans un mode particulier de réalisation - la figure 2 représente de façon schématique un mode particulier de réalisation de la mise en court-circuit de ;'alimentation en énergie électrique dans le système de contrôle d'accès de la présente invention ; et - la figure 3 représente de façon schématique une clé électronique conforme à la présente invention, dans un mode particulier de réalisation. Dans toute la suite, on considère une clé électronique utilisée pour une tentative d'accès à une serrure électronique. La clé et la serrure électroniques disposent d'une unité de calcul. La clé électronique est réalisée dans un support portable pouvant avoir la forme d'un pistolet, d'une tige, d'une carte, ou toute autre forme jugée appropriée. La clé est munie d'une alimentation en énergie électrique autonome, qui maintient dans la clé une horloge temps réel. Cette horloge temps réel délivre une variable temporelle, par exemple sous forme d'une valeur horaire courante VH, exprimée en jour, mois, année, heures, minutes, secondes. On souhaite limiter l'accès de la clé à la serrure à une plage horaire donnée PH, définie comme l'intervalle de temps compris entre deux valeurs horaires VH1 et VH2 déterminées : PH = [VH1,VH2], ou de manière plus large comme une réunion de tels intervalles PH = [VHl,VH2]u[VH3,VH4]u..u[VHn-l,VHn]. Comme l'indique la figure 1, une première étape 1001 du procédé consiste à lire ou à établir, dans la clé, une signature électronique S(PH) de la plage horaire prédéterminée PH. Cette signature électronique S(PH) peut avoir été calculée au préalable, par exemple par une entité extérieure de calcul de signatures, indépendante de la clé. Dans ce cas, lors d'une étape de chargement, par exemple au moyen d'une borne de validation, une entité de validation transfère et mémorise la signature S(PH) dans la clé avant que cette clé soit mise en service. En variante, la clé peut établir elle-même la signature, si on a mémorisé dans la clé électronique la clé privée nécessaire à cette opération, ainsi que l'algorithme cryptographique de signature, et si cette clé électronique dispose des ressources calculatoires nécessaires. La signature électronique S(PH) peut être calculée à l'aide d'un algorithme à clé publique, du type RSA (Rivest Shamir Adleman) par exemple, ou à l'aide d'un algorithme à clé secrète, du type DES (Data Encryption Standard) par exemple. On considère une situation où la clé électronique est utilisée pour tenter d'accéder à la serrure électronique. Cette situation peut se traduire de diverses façons, selon la forme et la nature des supports contenant la clé et la serrure. A titre d'exemple non limitatif, si la clé comporte une partie tubulaire ou en forme de languette plate, la tentative d'accès se fait par introduction de la partie tubulaire dans une cavité tubulaire complémentaire de la serrure, ou dans une fente complémentaire, respectivement. Il est également prévu un système d'émission et de réception de messages ou données entre la clé et la serrure, pour réaliser un dialogue de contrôle d'accès logique. Un processus d'auto-contrôle du droit d'accès de cette clé à cette serrure est tout d'abord mis en oeuvre dans la clé. Comme indiqué en 1002, lors de la tentative d'accès, on mémorise dans la clé la valeur horaire courante VH délivrée par l'horloge temps réel de la clé. Puis on transmet, en 1003, la signature électronique S(PH) de la plage de validité PH ainsi que la valeur horaire courante VH à des modules d'auto-contrôle internes de la clé. En 1004, on vérifie la signature S(PH) mémorisée dans la clé. Si l'algorithme de calcul de signatures est un algorithme à clé publique, l'étape 1004 consiste, pour la clé électronique, à appliquer la clé publique Kp, préalablement mémorisée dans la clé, à l'algorithme de vérification. La vérification positive de la signature permet d'assurer l'authenticité de la plage de validité, soit VHl,VH2] dans le cas particulier non limitatif d'une plage de validité limitée à un intervalle, ladite plage étant obtenue, soit par rétablissement du message au cours de l'étape de vérification de signature, soit par simple lecture si elle a été transmise en clair avec la signature. En 1005, on vérifie la cohérence entre la valeur horaire courante transmise VH et la plage horaire prédéterminée PH. Par exemple, dans le cas d'une plage horaire réduite à un intervalle [VH1,VH2], on vérifie que VH est postérieure à VH1 et antérieure à VH2. Si les vérifications effectuées aux étapes 1004 et 1005 sont satisfaites, la clé étant par défaut dans un état validé, l'accès à la serrure électronique reste possible, l'état validé permettant le déroulement d'un dialogue clé serrure, c'est-à-dire l'échange de messages ou données permettant d'effectuer un contrôle d'accès logique. Si l'une des vérifications effectuées aux étapes 1004 et 1005 donne lieu à une réponse négative, la clé s'autoinvalide, s'interdisant ainsi l'accès à la serrure. L'étape d'auto-invalidation, représentée en 1006 sur la figure 1, peut être réalisée de diverses façons. Par exemple, la clé peut être munie de registres de mémorisation à accès protégé, contenant une variable d'état HS de type binaire. Les registres de mémorisation à accès protégé bénéficient d'un niveau de protection correspondant à celui des zones de mémoire protégées d'une carte à microprocesseur. Une première valeur de la variable HS correspond à un état en service , dans lequel la clé est validée et peut avoir accès à la serrure. Une seconde valeur de la variable HS correspond à un état hors service . L'autoinvalidation de la clé consiste à attribuer cette seconde valeur à la variable d'état HS et à la mémoriser dans les registres de mémorisation à accès protégé. Cela a pour effet de verrouiller la clé et d'interdire son accès à la serrure. L'état en service ne pourra être restauré que par une autorité légitime de validation, lors d'une séance de rechargement de la clé, au moyen d'une borne de validation par exemple. En variante, ou en plus de l'opération précédente, l'étape d'auto-invalidation peut consister à effacer, dans les registres de mémorisation de la clé, des données utilisées par la clé pour accéder à la serrure, telles que la clé publique ou la clé privée de signature, par exemple. Ces données pourront être réintroduites ultérieurement dans la clé au moyen d'une borne de validation, de même que précédemment. Les opérations précédentes d'auto-invalidation peuvent être remplacées ou accompagnées par une mise en courtcircuit de l'alimentation en énergie électrique de la clé. Pour cela, comme l'illustre la figure 2, l'alimentation en énergie électrique 1, du type pile électrique ou batterie par exemple, peut être reliée à un module de mise en courtcircuit 2 pouvant avoir toute structure connue jugée appropriée, telle qu'un interrupteur constitué par un transistor TB et une résistance de limitation de courant Rd, selon un montage classique, le transistor étant commandé par une commande d'invalidation. Dans un mode de réalisation simplifié du protocole d'auto-contrôle objet de l'invention, au lieu d'utiliser une valeur de signature de la plage horaire de validité, on peut utiliser une variable choisie de façon arbitraire, appliquer à cette variable un algorithme de codage ou de compression déterminé à partir d'un mot de passe et mémoriser la variable ainsi codée ou compressée dans la clé électronique. L'étape de vérification 1004 consiste, dans ce cas, à appliquer un algorithme de décodage ou de décompression préalablement mémorisé dans la clé électronique à partir du même mot de passe et correspondant à des opérations inverses de celles effectuées par l'algorithme de codage ou de compression. De tels algorithmes de codage/décodage ou compression/décompression sont disponibles dans le commerce. En variante, l'étape de vérification, qu'il s'agisse de la vérification d'une valeur de signature ou de toute autre variable, peut être intégralement supprimée. Dans ce cas, l'étape i001 décrite précédemment est supprimée ; à l'étape 1003, on transmet uniquement la valeur horaire courante VH aux modules d'auto-contrôle internes de la clé électronique ; l'étape 1004 est supprimée ; l'étape 1005 est maintenue ; à l'étape 1006, la clé s'auto-invalide uniquement si la comparaison de la valeur horaire courante VH à la plage horaire PH indique que VH est en dehors de PH. Les deux variantes de réalisation précédentes, bien que présentant un degré de sécurité bien moindre, permettent de réduire le potentiel de calcul nécessaire de la clé, et donc, de réduire les coûts. Un mode particulier de réalisation d'une clé électronique conforme à la présente invention va maintenant être décrit à l'aide de la figure 3. La clé électronique 3 comprend un module 30 d'alimentation en énergie autonome, comprenant l'alimentation 1 mentionnée précédemment, éventuellement munie d'un module de mise en court-circuit tel que le module 2 décrit ci-dessus. Le module 30 alimente une horloge temps réel interne 31 qui délivre une valeur horaire courante VH telle que définie précédemment. La clé 3 comprend également des registres de mémorisation à accès protégé 32, dans lesquels sont notamment mémorisées la valeur horaire courante VH, la signature électronique S(PH) de la plage de validité PH, et la variable d'état binaire HS indiquant l'état en service ou hors service de la clé électronique. Les registres de mémorisation 32 sont accessibles en lecture et en écriture. Ils peuvent par exemple être réalisés sous la forme d'une ou plusieurs mémoires vives du type RAM. Les registres 32 sont reliés à une unité de calcul 34, qui commande le protocole d'auto-contrôle de la clé, par l'intermédiaire d'une commande de validation CDV envoyée à un module de vérification 330, qui vérifie la signature électronique S(PH) mémorisée dans les registres 32. Le module de vérification 330 dispose pour cela de la clé de vérification spécifique associée à l'algorithme qui a permis de calculer la signature S(PH). Le module de vérification 330 reçoit la signature S(PH) de la plage de validité et, dans le cas où l'algorithme de calcul de signatures utilisé est un algorithme à clé publique, applique la clé publique Kp à la signature S(PH) reçue. L'unité de calcul 34 est également reliée aux circuits d'émission et de réception de messages ou données de la clé électronique 3. La clé 3 comprend en outre un module 331 de comparaison, qui reçoit la valeur horaire courante VH et la compare à la plage horaire prédéfinie, soit PH = [VHl,VH2] dans le cas particulier où la plage de validité est réduite à un intervalle. Le module 331 de comparaison teste si VH > VHî et VH Le module de vérification 330 et le module de comparaison 331 sont reliés à un module d'auto-invalidation 332 et commandent le fonctionnement de celui-ci. En effet, en cas de réponse négative, soit à l'issue de l'étape 1004, soit à l'issue de l'étape 1005 décrites plus haut, le module d'auto-invalidation 332 est commandé de façon à interdire l'utilisation de la clé électronique, en agissant, de la façon décrite précédemment, soit sur une variable d'état binaire en service / hors service HS et/ou d'autres données de fonctionnement mémorisées dans les registres 32, soit sur le module 30 d'alimentation en énergie. Le module de vérification 330, le module de comparaison 331 et le module d'auto-invalidation 332 peuvent être compris dans une mémoire reprogrammable électriquement du type EPROM ou EEPROM 33, dans laquelle sont mémorisés des modules de programme correspondant à l'exécution des opérations illustrées par l'organigramme de la figure 1 décrite précédemment. La présente invention trouve une application particulièrement adaptée à l'accès, par les préposés au courrier, à des boîtes aux lettres, qui ne sont pas autonomes en énergie. REVENDICATIONS 1. Protocole d'auto-contrôle d'une clé électronique (3) munie d'une horloge temps réel (31) délivrant une variable temporelle (VH) et d'un droit d'accès, auquel est associée une valeur de signature (S(PH)) de la plage de validité (PH) relative à ce droit d'accès, caractérisé en ce que ledit protocole d'auto-contrôle par cette clé électronique (3) consiste au moins en (a) une vérification de ladite valeur de signature (S(PH)) de la plage de validité (PH) relative à ce droit d'accès, ladite étape de vérification étant conduite à partir d'une clé de vérification spécifique (b) une comparaison d'appartenance de ladite variable temporelle (VH) à ladite plage de validité (PH) (c) une étape d'auto-invalidation de ladite clé électronique (3) sur réponse négative à l'une des étapes de vérification, respectivement de comparaison. 2. Protocole selon la revendication 1, caractérisé en ce que l'ordre d'exécution des étapes (a) et (b) est interverti. 3. Protocole selon la revendIcation 1 ou 2, caractérisé en ce que ladite clé de vérification spécifique est une clé publique ou secrète. 4. Protocole selon la revendication 1, 2 ou 3, caractérisé en ce que ladite plage de validité (PH) comprend plusieurs plages de validité disjointes. 5. Protocole selon l'une quelconque des revendications 1 à 4, caractérisé en ce que chaque plage de validité est un intervalle comportant deux bornes exprimées chacune comme une date en jour, mois, année et un horaire en heures, minutes, secondes. 6. Protocole selon l'une quelconque des revendications 1 à 5, caractérisé en ce, ladite clé électronique (3) étant munie de registres de mémorisation à accès protégé (32) et d'une alimentation en énergie électrique autonome (30), ladite étape d'auto-invalidation consiste, vis-à-vis de données mémorisées dans lesdits registres (32), soit à attribuer un ensemble de données d'état internes à une valeur arbitraire entraînant le verrouillage de la clé électronique (3) en position hors service, soit à déclencher l'effacement complet d'une pluralité de ces données d'état, ou encore à provoquer la mise en court-circuit de ladite alimentation en énergie électrique autonome (30). 7. Clé électronique (3) comportant, agencés sur un support portable, des moyens de calcul (34), des moyens de mémorisation à accès protégé (32) d'un ensemble de données d'état internes et une horloge temps réel (31) délivrant une variable temporelle (VH), ladite clé électronique (3) étant munie d'un droit d'accès, auquel est associée une valeur de signature (S(PH)) de la plage de validité (PH) relative à ce droit d'accès, caractérisée en ce que ladite clé (3) comporte en outre - des moyens (330) de vérification de ladite valeur de signature (S(PH)) de la plage de validité (PH) relative à ce droit d'accès, lesdits moyens (330) de vérification comportant au moins une clé de vérification spécifique, ainsi qu'un algorithme de vérification - des moyens (331) de comparaison d'appartenance de ladite variable temporelle (VH) à ladite plage de validité (PH), et, commandés par lesdits moyens (330) de vérification et lesdits moyens (331) de comparaison, - des moyens (332) d'auto-invalidation de ladite clé électronique (3) sur réponse négative, soit des moyens (330) de vérification, soit des moyens (331) de comparaison.