FR 2689264 A1 19931001 FR 9302604 A 19930305 La présente invention se rapporte à une méthode d'authentification accomplie entre une carte à circuit intégré et une unité terminale ainsi qu'un système prévu à cet effet. Des méthodes conventionnelles d'authentification entre une carte à circuit intégré et une unité terminale ont été révélées, par exemple, dans la divulgation de brevet au Japon No 59-77575 (publication brevet japonais No 3- 40879) Dans cette méthode d'authentification, un nombre statistique est d'abord produit dans l'unité terminale puis le nombre statistique produit est envoyé à la carte en même temps qu'une adresse pour spécifier le code souhaité d'authentification stocké dans la carte Dans la carte à circuit intégré, le code d'authentification correspondant à l'adresse donnée est obtenu Ensuite, un traitement prédéterminé est accompli en utilisant le nombre statistique donné et le code obtenu d'authentification par un crypteur que possède la carte à circuit intégré elle-même et le résultat obtenu du traitement est transmis à l'unité terminale L'unité terminale est également pourvue de données concernant le code d'authentification et le crypteur, comme la carte à circuit intégré Par conséquent, l'unité terminale accomplit un traitement similaire à celui accompli dans la carte à circuit intégré sur le nombre statistique et le code dauthentification en utilisant le crypteur Si le résultat du traitement accompli par l'unité terminale coïncide avec le résultat du traitement envoyé par la carte à circuit intégré, l'identification de la carte est établie à l'unité terminale. Dans la méthode conventionnelle d'authentification entre la carte à circuit intégré et l'unité terminale qui est accomplie à la manière décrite ci- dessus, une adresse indiquant l'emplacement o est stocké le code d'authentification est directement donnée à la carte à circuit intégré par l'unité terminale afin d'obtenir un code souhaité dauthentification Ainsi, il y a possibilité que l'emplacement o est stocké le code d'authentification et ses contenus fuient vers un utilisateur frauduleux. En conséquence, la présente invention a pour objet de procurer une méthode d'authentification ne permettant pas à un utilisateur frauduleux de connaître l'adresse o est stocké un code d'authentification dans une carte à circuit intégré, ainsi qu'un système prévu à cet effet. Afin d'atteindre les objectifs ci-dessus, selon un aspect de la présente invention, on prévoit une méthode d'authentification pour accomplir l'authentification entre deux dispositifs, une carte à circuit intégré et une unité terminale, o la carte à circuit intégré et runité terminale comprennent toutes deux un certain nombre de codes d'authentification chacun ayant des données I correspondantes de temps, un moyen de cryptage pour le cryptage de données selon un algorithme prédéterminé et un moyen temporisateur, l'un des deux dispositifs, la carte à circuit imprimé ou l'unité terminale comprenant de plus un moyen pour la production de nombres statistiques ainsi qu'un moyen de comparaison, la méthode d'authentification comprenant: l'étape de produire un nombre statistique dans l'un des dispositifs, la carte à circuit intégré ou l'unité terminale et de transmettre le nombre statistique produit à l'autre dispositif; la première étape de cryptage du nombre statistique reçu, dans l'autre dispositif selon l'algorithme en utilisant l'un des divers codes d'authentification comme clé pour la production des données d'authentification; l'étape de transmettre les données cryptées d'authentification au premier dispositif par l'autre dispositif lorsqu'un temps représenté par les donnés de temps correspondant au code utilisé d'authentification s'est écoulé après transmission d'un signal prédéterminé; la seconde étape de cryptage consistant à compter, dans le premier dispositif, un intervalle de temps à partir du moment o le signal prédéterminé a été transmis jusqu'au moment o les données d'authentification ont été reçues par l'autre dispositif et à crypter le nombre statistique selon l'algorithme en utilisant, comme clé le code d'authentification correspondant aux données de temps qui coïncident avec l'intervalle compté de temps de la même manière que dans l'autre dispositif afin de produire des données d'authentification; et l'étape de comparer, dans le premier dispositif, les données d'authentification produites dans la seconde étape de cryptage avec les données dauthentification qui ont été transmises par l'autre dispositif et de transmettre un signal de résultat indiquant la coïncidence ou la non coïncidence à l'autre dispositif. Dans un mode de réalisation préféré de la présente invention, un identificateur est alloué à chacun des codes d'authentification à la place des données de temps et cet identificateur est crypté et transmis Du côté réception, le code choisi d'authentification est obtenu de l'identificateur obtenu en combinant l'identificateur crypté et le nombre statistique est crypté en utilisant le code obtenu d'authentification en tant que clé pour produire les données d'authentification Les données produites dauthentification sont comparées avec les données d'authentification qui ont été transmises pour l'authentification. Selon un autre aspect de la présente invention, on prévoit un système qui comporte une carte à circuit intégré et une unité terminale et qui effectue la méthode d'authentification. Dans la méthode dauthentification selon la présente invention, la carte à circuit intégré et l'unité terminale ont toutes deux un certain nombre de codes d'authentification, chacun ayant des données correspondantes de temps Quand le code d'authentification choisi par la carte à circuit intégré ou l'unité terminale est transmis à l'autre, les données de temps correspondant aux données d'authentification sont transmises à l'autre dispositif en tant qu'intervalle de temps entre des ordres Du côté réception, le code choisi d'authentification est obtenu à partir de l'intervalle de temps entre les ordres Dans la carte à circuit intégré et l'unité terminale, un nombre statistique est crypté selon l'algorithme de cryptage en utilisant le code d'authentification comme clé afin de produire les données d'authentification Les données produites d'authentification sont comparées Quand elles coïncident, l'identité est mutuellement établie. Dans le mode de réalisation préféré, un identificateur est alloué à chacun des codes d'authentification Lorsque le code d'authentification choisi par la carte à circuit imprimé ou l'unité terminale est transmis à l'autre, l'identificateur correspondant aux données d'authentification est crypté selon l'algorithme de cryptage de l'identificateur et l'identificateur crypté est transmis à l'autre dispositif Du côté réception, l'identificateur crypté est combiné pour obtenir l'identificateur et le code d'authentification est obtenu en utilisant l'identificateur Dans la carte à circuit intégré et l'unité terminale, un nombre statistique est crypté selon l'algorithme de cryptage en utilisant le code dauthentification comme clé pour produire les données d'authentification Les données produites d'authentification sont comparées Lorsqu'elles coïncident, l'identité est mutuellement établie. Dans chacune de ces méthodes d'authentification, le code d'authentification et son adresse ne sont pas transmis directement entre les deux dispositifs Par conséquent, l'opération d'authentification peut être accomplie sans que le code d'authentification ne fuit vers l'utilisateur frauduleux. L'invention sera mieux comprise et d'autres buts, caractéristiques, détails et avantages de celle-ci apparaîtront plus clairement au cours de la description explicative qui va suivre faite en référence aux dessins schématiques annexés donnés uniquement à titre d'exemple illustrant plusieurs modes de réalisation de l'invention et dans lesquels: la figure 1 donne un schéma bloc montrant la structure fonctionnelle d'une carte à circuit intégré utilisée dans la présente invention; la figure 2 donne un schéma bloc montrant la structure fonctionnelle d'un système comportant une carte à circuit intégré et une unité terminale selon un premier mode de réalisation de la présente invention; la figure 3 illustre les codes d'authentification ainsi que les données correspondantes de temps qui sont stockés à la fois dans une mémoire de données de la carte à circuit intégré et dans une mémoire de données de l'unité terminale; la figure 4 est un organigramme montrant l'opération de la carte à circuit intégré dans la méthode d'authentification selon le premier mode de réalisation de la présente invention: la figure 5 est un organigramme montrant l'opération de l'unité terminale dans la méthode d'authentification selon le premier mode de réalisation de la présente invention; la figure 6 montre un exemple d'un circuit temporisateur la figure 7 donne un schéma bloc montrant la structure fonctionnelle d'un système comportant une carte à circuit intégré et une unité terminale selon un deuxième mode de réalisation de la présente invention; la figure 8 est un organigramme montrant l'opération de la carte à circuit intégré dans la méthode d'authentification selon le deuxième mode de réalisation de la présente invention; la figure 9 est un organigramme montrant l'opération de l'unité terminale dans la méthode d'authentification selon le deuxième mode de réalisation de la présente invention; la figure 10 donne un schéma bloc montrant la structure fonctionnelle d'un système comportant une carte à circuit intégré et une unité terminale selon un troisième mode de réalisation de la présente invention; la figure Il illustre les codes dauthentification et les données correspondantes de temps qui sont stockés dans une mémoire de données de la carte à circuit intégré et dans une mémoire de données de l'unité terminale; la figure 12 est un organigramme montrant l'opération de la carte à circuit intégré dans la méthode dauthentification selon le troisième mode de réalisation de la présente invention; la figure 13 est un organigramme montrant l'opération de l'unité terminale dans la méthode d'authentification selon le troisième mode de réalisation de la présente invention; la figure 14 donne un schéma bloc montrant la structure fonctionnelle d'un système comportant une carte à circuit intégré et une unité terminale selon un quatrième mode de réalisation de la présente invention; la figure 15 est un organigramme montrant l'opération de la carte à circuit intégré dans la méthode d'authentification selon le quatrième mode de réalisation de la présente invention; la figure 16 est un organigramme montrant l'opération de l'unité terminale dans la méthode d'authentification selon le quatrième mode de réalisation de la présente invention; la figure 17 est un organigramme montrant le procédé de transmission de la figure 16 en plus de détail; la figure 18 est un organigramme montrant le procédé de réception de la figure 16 en plus de détail; et la figure 19 est un organigramme montrant l'opération de la méthode d'authentification selon un sixième mode de réalisation de la présente invention. Des modes de réalisation de la présente invention seront décrits ci- dessous en se référant aux dessins joints. La figure 1 montre la structure fonctionnelle d'une carte à circuit intégré utilisée dans la présente invention Sur la figure 1, une carte à circuit intégré 13 comporte une unité centrale de traitement ou CPU 1, un circuit de commande d'entrée/sortie (que l'on appellera ci-après UART) 2, une mémoire à accès aléatoire ou RAM 3, une mémoire morte ou ROM 4, une mémoire de données 5 et un bus interne 6 Le UART 2 commande l'entrée et la sortie de données par une borne 7 d'entrée/sortie ou E/S La RAM 3 est une mémoire qui stocke temporairement les données utilisées pour les calculs dans la CPU 1 La ROM 4 est une mémoire morte qui stocke les programmes pour attaquer la CPU 1 La mémoire de données 5 est, une mémoire qui stocke les codes d'identification (codes ID), les tables de codes d'identification, un algorithme de cryptage et des données générales La mémoire 5 est, en général, une mémoire morte effaçable électriquement programmable ou EEPROM Le bus interne 6 relie les blocs fonctionnels individuels ci-dessus mentionnés les uns aux autres La carte 13 comporte de plus une borne de source de courant 8 (Vcc), une borne d'horloge 9 (CLK), une borne 10 de remise à l'état initial (RST) et une borne 11 de mise à la masse (GND) Un circuit temporisateur 12 est utilisé exclusivement pour le comptage du temps Ce circuit temporisateur 12 peut être ou ne pas être incorporé dans la carte à circuit intégré de cette invention. La structure matérielle de la carte 13 est la même que celle d'une carte à circuit intégré conventionnelle La carte 13 peut avoir soit une structure à une pastille o la mémoire de données 5 est formée intégralement avec les autres composants ou bien une structure à plusieurs pastilles o la mémoire de données 5 est formée séparément des autres composants La carte 13 fonctionne à la manière décrite ci- dessous Lorsqu'une instruction est donnée de l'extérieur de la carte via la borne d'entrée/sortie 7, le UART 2 et le bus 6, la CPU 1 exécute un traitement selon le programme mémorisé dans la ROM 4 Les résultats du traitement sont émis vers l'extérieur de la carte via un trajet inverse L'opération d'authentification (opération dassemblage) selon la présente invention est exécutée de manière identique. La figure 2 donne un schéma bloc montrant la structure fonctionnelle d'un système comprenant la carte à circuit intégré et une unité terminale que l'on utilise dans le premier mode de réalisation de la présente invention Sur la figure 2, la carte à circuit intégré est celle montrée à la figure 1 Divers articles de données sont mémorisés dans la mémoire 5 de la carte 13 Dans une zone 5-a de la mémoire 5, est stocké un algorithme générateur de nombres statistiques (Rm). Dans une zone 5-b est stocké un algorithme de cryptage (fi) Dans une zone 5-c sont stockés des nombres statistiques (R) produits par l'algorithme générateur de nombres statistiques (Rm) Dans une zone 5- d est stockée une clé (S) du système utilisée par l'algorithme de cryptage (fi) Dans une zone 5-e, est stockée une table montrant la relation entre un certain nombre de codes dauthentification (A, B, C,) pour l'authentification et les données de temps (TA, TB, TC,) qui sont respectivement allouées à ces codes d'authentification. Une zone 5-f est une zone de données utilisée pour des programmes dapplication générale La structure de la zone 5-e o sont stockés les codes dauthentification (A, B, C) est montrée sur la figure 3 La table se compose de TEMPS 72 et CLE 73 Les données de temps (TA, TB, TC) de TEMPS 72 sont respectivement allouées aux codes individuels dauthentification (A, B, C,) de la CLE 73 Les données correspondant aux codes didentification sont obtenues selon le code d'authentification en tant que CLE. Sur la figure 2, une unité terminale 27 exécute l'authentification avec la carte 13 L'unité terminale 27 peut être une seule unité terminale ou elle peut être connectée à une LAN 28 qui, à son tour, est connectée aux ordinateurs hôtes 29 et 30 La structure de lunité terminale 27 est sensiblement la même que celle de la carte 13 En effet, une CPU 21, une ROM 22, une mémoire de données 24 pour stocker les données et agissant comme zone de travail, un circuit de commande d'entrée/sortie 23 pour contrôler l'entrée et la sortie 26 sont connectés les uns aux autres à la manière montrée à la figure 2, via un bus 25. La mémoire de données 24 stocke diverses données, comme la mémoire 5 de la carte 13 Dans une zone 24-a, est stocké un algorithme de cryptage (f '1) Dans une zone 24-b, est stockée une clé du système (S) utilisée par l'algorithme de cryptage (f '1) Dans une zone 24-b sont stockés les codes d'authentification A, B, C) pour l'authentification Une zone 24-d est une zone de travail utilisée comme mémoire temporaire de la CPU 21 ou zone de données pour stocker des programmes d'application générale La zone 24-c dans laquelle sont stockés les codes d'authentification (A, B, C) est assez identique à la zone 5-e dans laquelle sont stockés les codes dauthentification dans la mémoire de données 5 de la carte 13 que l'on peut voir à la figure 3. Les figures 4 et 5 sont des organigrammes montrant l'opération d'authentification exécutée entre la carte à circuit intégré et l'unité terminale dans le système montré à la figure 2 selon le premier mode de réalisation de la présente invention La figure 4 est un organigramme montrant l'opération de la carte à circuit intégré 13, tandis que la figure 5 est un organigramme montrant l'opération de runité terminale 27 Ces opérations sont accomplies respectivement par la CPU 21 de l'unité terminale 27 et la CPU 1 de la carte 13 selon un programme d'authentification 22 P stocké dans la ROM 22 et un programme d'authentification 1 P stocké dans la ROM 4. Le fonctionnement du premier mode de réalisation selon la présente invention sera maintenant décrit en se référant aux figures 2 à 5. D'abord, le procédé d'authentification du premier mode de réalisation sera décrit D'abord, la carte à circuit intégré 13 produit un nombre statistique (R) et l'envoie à l'unité terminale 27 L'unité terminale 27 crée des données cryptées d'authentification f '1 (R, S, CLE) sur la base de l'algorithme de cryptage, c'est-à-dire la fonction de l'algorithme de cryptage (f '1), en utilisant un code souhaité d'authentification (CLE) et la clé (S) du système pour le cryptage et renvoie les données créées d'authentification à la carte à circuit intégré 13 Il n'est pas nécessaire dutiliser un code réel d'authentification (CLE). Sur les figures, les codes d'authentification sont indiqués par A, B, C, La carte 13 crée de même les données cryptées fi (R, S, CLE) sur la base de la fonction de l'algorithme de cryptage (fi) qui est similaire à l'algorithme de cryptage (f '1) de l'unité terminale 27, du code d'authentification (CLE) stocké dans la zone 5-e de la mémoire de données 5 de la carte 13 elle- même et de la clé S du système stockée dans la zone 5-d et les assemble avec les données cryptées qui ont été envoyées de l'unité terminale 27, c'est-à-dire les données d'identification f '1 (R, S, CLE). Le premier mode de réalisation est destiné à informer un correspondant éloigné d'un code souhaité d'authentification d'une manière spéciale, c'est-à-dire ne pas l'informer directement en utilisant une adresse ou analogue mais l'informer en utilisant l'intervalle de temps entre des ordres. Le fonctionnement du premier mode de réalisation sera décrit en plus de détail en se référant aux figures 4 et 5 Comme le montre la figure 4, la carte 13 produit un nombre statistique (R) selon l'algorithme (Rm) générateur de nombres statistique qui est stocké dans la zone 5-a de la mémoire de données 5 (étape 42) puis l'envoie à l'unité terminale 27 (étape 43) A la réception du nombre statistique R (étape 62), l'unité terminale 27 choisit un code dauthentification (CLE) et crée des données d'authentification f '1 (R, S, CLE) en utilisant le code choisi d'authentification (étape 63) Ensuite, l'unité terminale 27 choisit les données de temps (soit TA, TB ou TC,) correspondant au code choisi d'authentification (CLE) (A, B, C) à partir de la table de temps (voir figure 3) qui est stockée dans la zone 24-c de la mémoire de données 24 Par exemple, quand le code d'authentification B est choisi, les données correspondantes de temps TB sont choisies (étape 64). Ensuite, l'unité terminale 27 envoie un signal de début de compte (CSS) à la carte à circuit intégré 13 afin d'établir une synchronisation avec la carte 13 (étape 65) puis remet le compteur à zéro (établit la valeur de compte à zéro) (étape 66) L'unité terminale 27 et la carte 13 peuvent toutes deux contenir un circuit temporisateur exclusivement utilisé 12 (voir figure 1) en tant que matériel ou bien peuvent employer un compteur (non représenté) qui marche sur un logiciel de la CPU Dans le premier mode de réalisation, on utilise le compteur qui marche sur le logiciel de la CPU. De même, la carte 13 remet le compteur à zéro (met la valeur de compte à zéro) (étape 45) lors de la réception du signal de début de compte (CSS) (étape 44) pour ainsi établir la synchronisation entre l'unité terminale 27 et la carte 13. Quand l'unité terminale 27 a transmis le signal de début de compte (CSS), elle attend pendant le temps indiqué par les données de temps établies dans la table de temps (étapes 67, 68 et 69) puis transmet les données dauthentification f '1 (R, S, CLE) à la carte 13 (étape 70) La carte 13 compte le temps à partir du moment o elle a reçu le signal de début de compte (CSS) jusqu'au moment o elle reçoit les données d'authentification f '1 (R, S, CLE) (étapes 46, 47, 48) et obtient le code d'authentification choisi sur la base de la table de temps stockée dans la zone 5-e de la mémoire de données 5, c'est-à-dire le code d'authentification, pour l'authentification à partir de la valeur comptée (étapes 49, 50, 51, 52,53, 54). La carte 13 calcule les données cryptées dauthentification fi (R, S, CLE) à partir du code choisi d'authentification (CLE) (étape 55) et les assemble avec les données d'authentification f '1 (R, S, CLE) qui ont été reçues du terminal 27 (étapes 56, 57, 58) Subséquemment, la carte à circuit intégré envoie un signal de résultat d'assemblage (RTN), indiquant si oui ou non les données d'authentification coïncident, à l'unité terminale 27 (étape 59). Par conséquent, l'opération d'authentification peut être accomplie sans que l'adresse à laquelle est stocké le code d'authentification ne soit transmise directement entre l'unité terminale 27 et la carte 13 Par suite, l'adresse à laquelle est stocké le code d'authentification ne fuit pas et une opération d'authentification assurant une plus haute sécurité peut ainsi être accomplie. Dans le premier mode de réalisation, le comptage du temps est accompli par le logiciel de la CPU Cependant, la carte à circuit intégré et l'unité terminale peuvent avoir toutes deux un circuit temporisateur exclusivement utilisé (voir chiffre de référence 12 sur la figure 1) Dans ce cas, un compteur de temporisateur tel que celui montré à la figure 6, o des bascules ou flip-flops sont connectées en série, peut être utilisé. La figure 7 donne un schéma bloc montrant la structure fonctionnelle d'un système consistant en une carte à circuit intégré et une unité terminale, que l'on utilise dans un deuxième mode de réalisation de la présente invention Le deuxième mode de réalisation diffère du premier montré à la figure 2 par le fait qu'un circuit temporisateur 12, qui est un équipement matériel, est prévu dans la carte 13 tandis qu"un circuit temporisateur 36 qui est un équipement matériel est prévu à l'unité terminale 27 et par le fait que le signal de début de compte CSS n'est pas employé, lequel est envoyé de l'unité 27 à la carte 13 Les figures 8 et 9 sont des organigrammes montrant l'opération d'authentification qui est exécutée dans le deuxième mode de réalisation de la présente invention entre la carte à circuit intégré et l'unité terminale dans le système. Le fonctionnement du deuxième mode de réalisation sera décrit ci- dessous en se référant aux figures 7 à 9 Ce fonctionnement diffère de celui du premier mode de réalisation par la méthode d'obtention des données de temps requises pour déterminer le code souhaité d'authentification (CLE) Dans ce mode de réalisation, la synchronisation entre la carte 13 et l'unité terminale 27 est établie lorsqu'un nombre statistique est transmis Comme le montrent les figures 8 et 9, le nombre statistique est transmis de la carte 13 (étape 83) et le comptage début dans le circuit temporisateur 12 de la carte 13 et le circuit temporisateur 36 de l'unité terminale 27 Là, on peut considérer que la transmission du nombre statistique de la carte 13 et sa réception par l'unité terminale 27 se produisent concurremment Cela s'applique également à la transmission et la réception d'autres signaux ou données Cela est également vrai dans le premier mode de réalisation La carte à circuit intégré compte l'intervalle de temps à partir de la transmission du nombre statistique jusqu'à la réception de données cryptées d'authentification f '1 (R, S, CLE) qui sont créées dans l'unité terminale 27 et cela permet d'obtenir le code souhaité d'authentification (CLE) à partir du temps compté (étapes 87, 88, 89, 90, 91, 92) Comme le restant du traitement est identique à celui du premier mode de réalisation, sa description sera omise. Dans les premier et deuxième modes de réalisation, les données de temps (TEMPS) sont allouées à chacun des codes d'authentification (CLE) et ces données de temps sont envoyées en tant qu'intervalle de temps entre les ordres ou signaux Une méthode d'authentification qui utilise un certain nombre dalgorithmes de cryptage sera décrite ci-dessous. La figure 10 donne un schéma bloc montrant la structure fonctionnelle d'un système comprenant une carte à circuit intégré et une unité terminale que l'on utilise dans un troisième mode de réalisation de la présente invention La figure 11 montre le contenu de la zone 5-e dans la mémoire de données de la carte 13 et de la zone 24-c dans la mémoire 24 de l'unité terminale 27 Les figures 12 et 13 sont des organigrammes montrant l'opération d'authentification exécutée dans le troisième mode de réalisation selon la présente invention, entre la carte à circuit intégré et l'unité terminale du système montré à la figure 10. Le système montré à la figure 10 diffère des premier et deuxième modes de réalisation par le fait que deux algorithmes de cryptage fi, gl et deux clés du système 51, 52 sont stockés dans la mémoire de données 5 de la carte 13 tandis que deux algorithmes de cryptage f '1, g '1 et deux clés du système 51, 52 sont stockées dans la mémoire de données 24 de l'unité terminale 27 et par le fait qu'une table montrée à la figure 11 est stockée dans les zones 5-e, 24-c des mémoires de données 5 et 24 La table de la figure 11 montre les identificateurs (KID) qui sont alloués aux codes individuels d'authentification (CLE) respectivement. Le fonctionnement du troisième mode de réalisation sera décrit ci- dessous en se référant aux figures 10 à 13. il La carte 13 transmet un nombre statistique (R) (étape 122) A la réception du nombre statistique (R) (étape 132), l'unité terminale 27 crée les données cryptées d'authentification f '1 (R, Si, CLE) de la même manière que dans les modes de réalisation qui précèdent en utilisant le code souhaité d'authentification (CLE) (étape 133) et en même temps, crée les données g '1 (KID, 52) en cryptant l'identificateur (KID) du code d'authentification (CLE) que l'on a obtenu de la table montrée à la figure 11 (étape 134) La carte 13 transmet les deux données créées d'authentification f '1 (R, Si, CLE) et g'l (KID, 52) à la carte 13. Quand la carte 13 reçoit les données d'authentification (étape 123), ellecombine g '1 (KID, 52) pour obtenir KID (étape 124) puis obtient le code souhaité d'authentification (CLE) de la valeur obtenue de KID sur la base de la table stockée dans la mémoire de données 5 (étape 125) Ensuite, la carte 13 calcule les données cryptées d'authentification fi (R, Si,CLE) en utilisant le code d'authentification (étape 126) et les assemble avec les données d'authentification f '1 (R, Si, CLE) qui ont été transmises par l'unité terminale 27 (étapes 127, 128, 129) La carte 13 transmet le signal de résultat (RTN), indiquant la coïncidence ou la non coïncidence, à la carte 13 (étape 130). Ainsi, l'opération d'authentification peut être accomplie sans que l'adresse à laquelle est stocké le code dauthentification ne fuie. En général, il y a une limite aux ressources concernant la capacité de la ROM, la capacité de la RAM et la mémoire de données et les programmes, comme les algorithmes de cryptage (f '1, g '1) peuvent ainsi ne pas pouvoir être stockés dans la carte à circuit intégré De plus, dans certains programmes d'application, on peut sélectivement employer un certain nombre d'algorithmes de cryptage Afin de surmonter un tel problème, un quatrième mode de réalisation de la présente invention est conçu pour charger les algorithmes de cryptage de l'unité terminale 27 à la carte 13 avant que l'opération d'authentification ne débute. La figure 14 donne un schéma bloc montrant la structure fonctionnelle d'un système comprenant une carte à circuit intégré et une unité terminale que l'on utilise dans un quatrième mode de réalisation selon la présente invention. Le quatrième mode de réalisation diffère du troisième montré à la figure 10 par le fait que les algorithmes de cryptage fi, gl ne sont pas stockés dans la mémoire de données de la carte 13 La figure 15 est un organigramme montrant le fonctionnement de la carte à circuit intégré qui est exécuté dans l'opération d'authentification entre une carte à circuit intégré et une unité terminale dans le quatrième mode de réalisation de la présente invention. Dans ce mode de réalisation, après que la carte 13 a produit un nombre statistique (R) (étape 142), l'unité de transmission 27 transmis les algorithmes de cryptage (f '1), (g '1) à la carte à circuit intégré 13 (étape 143) La carte 13 charge les algorithmes de cryptage (f '1), (g '1) dans les zones 3-a et 3-b de la RAM 3 ou bien les zones vides 5-i et 5-j de la mémoire de données 5 (étape 144) Ensuite, la même opération d'authentification que celle exécutée dans les modes de réalisation qui précèdent est accomplie (étape 145) La transmission des algorithmes de cryptage de l'unité terminale à la carte à circuit intégré avant le procédé d'authentification peut s'appliquer à chacun des modes de réalisation qui précèdent. Un mode de réalisation destiné à améliorer la sécurité concernant la transaction entre la carte à circuit intégré et l'unité terminale sera décrit ci- dessous Dans ce mode de réalisation, le nombre de fois o la transaction est accomplie est compté et lorsque cette valeur comptée atteint une certaine valeur établie telle que 100, l'authentification par un autre code d'authentification est accomplie. Les figures 16 à 18 sont des organigrammes montrant la méthode d'authentification entre une carte à circuit intégré et une unité terminale selon un cinquième mode de réalisation de la présente invention Les figures 17 et 18 montrent respectivement les procédés de transmission et de réception de la figure 16 en plus de détail Le fonctionnement du cinquième mode de réalisation sera décrit en se référant aux figures 16 à 18. Dans ce mode de réalisation, le nombre de fois o la transaction est accomplie entre la carte à circuit intégré et l'unité terminale est compté, par exemple, en augmentant le nombre de fois o cette transaction est accomplie soit dans la CPU 1 de la carte 13 ou dans la CPU 21 de l'unité terminale 27 que l'on peut voir à la figure 2 Avant le premier procédé d'authentification (étape 153 sur la figure 16), le compteur de transactions dans la CPU est remis à zéro (étape 152) Ensuite, la transmission et la réception des données entre la carte 13 et l'unité terminale 27 se produisent dans les divers traitements subséquents. Dans un procédé subséquent d'authentification, le nombre de fois o ces transmissions et réceptions sont accomplies est compté. La figure 17 montre l'opération du procédé de transmission de la figure 16 (étape 154) en plus de détail Avant la transmission, le compteur de transactions est augmenté de + 1 (étape 162) puis on détermine alors si oui ou non le nombre de transactions a atteint 100 (étape 163) Si le nombre de transactions a atteint 100, le procédé d'authentification par un autre code d'authentification est accompli (étape 164) Si une authentification correcte est accomplie, les données sont transmises et ensuite le compteur de transactions est remis à zéro (étapes 167, 168, 169) Si le nombre de transactions n'a pas atteint , les données sont transmises sans changement (étape 165). Dans le procédé de réception (étape 155), après que les données ont été reçues (étape 172), le compteur de transactions est augmenté de + 1 (à l'étape 173) puis on détermine si oui ou non le nombre de transactions a atteint 100 (étape 174) comme le montre la figure 18 Si le nombre de transactions a atteint , le procédé d'authentification est accompli en utilisant un autre code d'authentification (étape 175) et ensuite le compteur de transactions est remis à zéro (étape 176) Si le nombre de transactions n'a pas encore atteint 100, on passe à un procédé suivant. Dans le cas o un certain nombre de codes d'authentification (CLE) sont utilisés, la sécurité est encore mieux assurée en ajoutant une méthode de sélection statistique du code d'authentification utilisé pour l'authentification La figure 19 est un organigramme montrant l'opération de la méthode d'authentification selon un sixième mode de réalisation de la présente invention o une fonction sélectionnant au hasard le code d'authentification en utilisant un nombre statistique est ajoutée L'opération du sixième mode de réalisation sera décrite ci-dessous. Si le nombre de codes d'authentification (CLE) (A, B, C) est par exemple de N, les nombres statistiques (R) sont divisés par le nombre de codes d'authentification (CLE), N, pour obtenir un reste m (étape 183) Un code d'authentification peut être choisi au hasard en choisissant le m + lème code d'authentification (CLE) (étapes 184 à 189) Si l'on a m = O, on choisit le deuxième code d'authentification (A) Si l'on a m = 1, on choisit le second code d'authentification (B). Dans tous les modes de réalisation ci-dessus mentionnés, la description a été faite avec certaines opérations limitées soit à la carte à circuit intégré ou à l'unité terminale Cependant, la même opération d'authentification peut être accomplie même en inversant la limite Par exemple, la production d'un nombre statistique est accomplie dans la carte à circuit intégré Cependant, on peut l'accomplir dans l'unité terminale. Par ailleurs, la méthode d'authentification entre la carte à circuit intégré et runité terminale a été décrite ci-dessus Cependant, on peut l'appliquer à deux 14 2689264 dispositifs quelconques s'ils nécessitent une authentification (par exemple deux unités terminales ou bien deux systèmes). Comme on peut le comprendre de ce qui précède, dans la présente invention, comme l'opération d'authentification peut être accomplie entre une carte à circuit intégré et une unité terminale sans que le code d'authentification ou l'adresse o est stocké le code d'authentification ne soit directement transmis, on peut obtenir une méthode d'authentification et un système dans ce but, assurant une grande sécurité sans que les contenus du code d'authentification et de son adresse ne soient connus d'un utilisateur frauduleux. REVENDICATIONS 1 Procédé d'authentification pour accomplir l'authentification entre deux dispositifs, une carte à circuit intégré et une unité terminale, o ladite carte et ladite unité terminale contiennent toutes les deux un certain nombre de codes d'authentification dont chacun a des données correspondantes de temps, un moyen de cryptage pour crypter les données selon un algorithme prédéterminé et un moyen temporisateur, l'un desdits dispositifs, ladite carte ou ladite unité terminale, comportant de plus un moyen de production de nombres statistiques et un moyen de comparaison, caractérisé en ce qu'il comprend: l'étape de produire un nombre statistique dans le premier dispositif, ladite carte ou ladite unité terminale, et de transmettre le nombre statistique produit à l'autre dispositif; la première étape de cryptage du nombre statistique reçu dans l'autre dispositif selon ledit algorithme en utilisant l'un desdits codes d'authentification en tant que clé pour produire des données d'authentification; l'étape de transmettre des données cryptées d'authentification au premier dispositif par l'autre dispositif lorsqu'un temps représenté par les données de temps correspondant au code utilisé d'authentification s'est écoulé après transmission d'un signal prédéterminé; la seconde étape de cryptage consistant à compter, dans le premier dispositif, un intervalle de temps à partir du moment o le signal prédéterminé a été transmis jusqu'au moment o les données d'authentification sont reçues de l'autre dispositif et à crypter le nombre statistique selon ledit algorithme en utilisant, comme clé, le code d'authentification correspondant aux données de temps qui coïncident avec l'intervalle compté de temps de la même manière que dans l'autre dispositif, afin de produire les données d'authentification; et l'étape de comparer, dans le premier dispositif, les données d'authentification produites dans la seconde étape de cryptage avec les données d'authentification qui ont été transmises par l'autre dispositif et de transmettre un signal de résultat, indiquant la coïncidence ou la non coïncidence, à l'autre dispositif. 2 Procédé d'authentification selon la revendication 1, caractérisé en ce qu'il comprend de plus l'étape de transmettre un signal de début de compte au premier dispositif par l'autre dispositif quand l'autre dispositif a reçu le nombre statistique, o dans l'étape de transmission des données d'authentification, les données d'authentification sont transmises au premier dispositif quand le temps représenté par les données de temps correspondant au code utilisé d'authentification s'est écoulé après transmission du signal de début de compte, et o, dans ladite seconde étape de cryptage, l'intervalle de temps à partir du moment o le signal de début de compte a été reçu jusqu'au moment o les données d'authentification sont reçues est compté dans le premier dispositif et le nombre statistique est crypté selon ledit algorithme en utilisant, comme clé, le code d'authentification correspondant aux données de temps qui coïncident avec l'intervalle compté de temps de la même manière que dans l'autre dispositif. 3 Procédé selon la revendication 1, caractérisé en ce que, dans l'étape de transmission des données d'authentification, les données d'authentification sont transmises au premier dispositif quand le temps représenté par les données de temps correspondant au code utilisé d'authentification s'est écoulé après réception du nombre statistique par l'autre dispositif et o dans ladite seconde étape de cryptage, l'intervalle de temps à partir du moment o le nombre statistique a été transmis jusqu'au moment o les données d'authentification sont reçues est compté dans le premier dispositif et le nombre statistique est crypté selon ledit algorithme en utilisant, comme clé, le code d'authentification correspondant aux données de temps qui coïncident avec l'intervalle compté de temps de la même manière que dans l'autre dispositif. 4 Procédé selon la revendication 1, caractérisé en ce qu'il comprend de plus l'étape de charger l'algorithme de cryptage de l'unité terminale à la carte à circuit intégré avant l'étape de transmission du nombre statistique, dans le cas o l'algorithme n'est pas stocké dans ladite carte au préalable. Procédé selon la revendication 1, caractérisé en ce que dans l'étape de cryptage, un nombre de fois est compté o une transaction est accomplie entre ladite carte et ladite unité terminale et le code d'authentification à choisir est changé quand ledit nombre de fois a atteint une valeur prédéterminée. 6 Procédé selon la revendication 1, caractérisé en ce que la carte et l'unité terminale ont toutes deux N codes d'authentification et en ce que dans ladite première étape de cryptage, si un reste obtenu en divisant le nombre statistique par N est m, on choisit le m+lème code d'authentification. 7 Procédé d'authentification pour accomplir l'authentification entre deux dispositifs, une carte à circuit intégré et une unité terminale, o ladite carte et ladite unité comprennent toutes deux un certain nombre de codes dauthentification, chacune ayant un identificateur, un certain nombre d'algorithmes et un moyen de cryptage pour crypter les données selon lesdits algorithmes, l'un desdits deux dispositifs, ladite carte ou ladite unité terminale, comprenant de plus, pour produire des nombres statistiques, un moyen de combinaison et un moyen de comparaison, caractérisé en ce qu'il comprend: l'étape de produire un nombre statistique dans le premier dispositif et de transmettre le nombre statistique produit à l'autre dispositif, la première étape de cryptage du nombre statistique reçu dans l'autre dispositif selon le premier algorithme, en utilisant l'un des divers codes d'authentification comme clé, pour produire des données d'authentification et de cryptage de l'identificateur dudit code d'authentification en utilisant le second algorithme, l'étape de transmettre les données cryptées qui ont été produites dans la première étape de cryptage au premier dispositif, l'étape de combinaison des données cryptées dudit identificateur dans le premier dispositif pour obtenir le code correspondant d'authentification, la seconde étape de cryptage du nombre statistique selon le premier algorithme en utilisant comme clé le code d'authentification obtenu dans l'étape de combinaison de la même manière que dans l'autre dispositif afin de produire des données d'authentification; et l'étape de comparer les données dauthentification produites dans ladite seconde étape de cryptage avec les données d'authentification qui ont été transmises sur l'autre dispositif et de transmettre un signal résultant indiquant une coïncidence ou une non coïncidence à l'autre dispositif. 8 Système comprenant une carte à circuit intégré et une unité terminale, ledit système accomplissant une opération d'authentification entre ladite carte et ladite unité terminale, caractérisé en ce que ladite carte et ladite unité terminale comprennent: un moyen de stockage ( 5, 24) d'au moins un seul algorithme de cryptage, d'au moins une seule clé du système, d'un certain nombre de codes d'authentification (A,B,C), chacun ayant des données correspondantes de temps et des programmes comprenant un programme d'authentification ( 1 P, 22 P) pour entreprendre une opération d'authentification, un moyen de commande d'entrée/sortie ( 25,26) pour accomplir la commande d'entrée/sortie des données, un moyen de traitement et de commande de données ( 1,21) pour accomplir le traitement et la commande des données selon les programmes mémorisés dans le moyen de stockage et pour accomplir l'opération d'authentification selon le programme d'authentification, un moyen temporisateur ( 12) pour compter un temps, et un moyen formant bus ( 6, 25) pour relier les moyens individuels les uns aux autres, l'un desdits deux dispositifs, ladite carte ( 13) ou ladite unité terminale ( 27) comprenant de plus: un moyen pour produire un nombre statistique (R) et transmettre le nombre statistique produit à l'autre dispositif, un moyen de cryptage pour compter un intervalle de temps à partir du moment o un signal prédéterminé a été transmis jusqu'au moment o des données cryptées d'authentification sont reçues de l'autre dispositif par ledit moyen temporisateur et pour crypter le nombre statistique selon l'algorithme en utilisant, comme clé, le code d'authentification correspondant aux données de temps qui coïncident avec l'intervalle compté de temps de la même manière que dans l'autre dispositif afin de produire des données d'authentification; et un moyen pour comparer les données d'authentification produites par ledit moyen de cryptage aux données d'authentification qui ont été transmises sur l'autre dispositif et pour transmettre un signal résultant indiquant la coïncidence ou la non coïncidence, à l'autre dispositif, ledit moyen individuel fonctionnant selon le programme d'authentification sous la commande dudit moyen de commande/traitement de données, l'autre dispositif comprenant de plus: un moyen de cryptage du nombre statistique (R) qui a été reçu par le premier dispositif selon l'algorithme en utilisant comme clé l'un des codes d'authentification pour produire les données d'authentification; et un moyen pour transmettre les données d'authentification produites par ledit moyen de cryptage lorsqu'un temps représenté par les données de temps correspondant au code utilisé d'authentification s'est écoulé après transmission du signal prédéterminé, ledit moyen individuel fonctionnant sous la commande du moyen de commnande/traitement de données selon le programme d'authentification. 9 Système selon la revendication 8, o le signal prédéterminé qui sert de référence de l'opération de comptage est le nombre statistique (R) qui est transmis d'un dispositif à l'autre. Système selon la revendication 8, caractérisé en ce que l'autre dispositif comprend de plus un moyen pour transmettre un signal de début de compte au premier dispositif et en ce que le signal prédéterminé qui sert de référence de l'opération de comptage est le signal de début de compte (CSS). 11 Système selon la revendication 8, caractérisé en ce que l'unité terminale ( 27) comprend de plus un moyen de chargement de l'algorithme pour charger l'algorithme à la carte ( 13) quand l'algorithme n'a pas été stocké au préalable dans ladite carte. 12 Système selon la revendication 8, caractérisé en ce que l'autre dispositif comprend de plus un moyen de sélection du code d'authentification pour compter un nombre de fois o une transaction est accomplie entre la carte à circuit imprimé ( 13) et l'unité terminale ( 27) et pour changer le code d'authentification quand le nombre de fois a atteint une valeur prédéterminée. 13 Système selon la revendication 8, caractérisé en ce que la carte ( 13) et l'unité terminale ( 27) ont N codes dauthentification et en ce que l'autre dispositif ( 27 ou 13) comprend de plus un moyen de sélection du code d'authentification pour choisir le m +lème code d'authentification lorsqu'un reste obtenu en divisant le nombre statistique par N est m. 14 Système comprenant une carte à circuit intégré et une unité terminale, accomplissant une opération d'authentification entre lesdits deux dispositifs, ladite carte à circuit imprimé et ladite unité terminale, caractérisé en ce que ladite carte ( 13) et ladite unité terminale ( 27) comprennent toutes deux: un moyen de stockage pour stocker un certain nombre dalgorithmes de cryptage, un certain nombre de clés du système, un certain nombre de codes d'authentification, chacun ayant un identificateur (KID) correspondant et des programmes comprenant un programme d'authentification pour entreprendre une opération d'authentification, un moyen de commande d'entrée/sortie pour accomplir la commande d'entrée/sortie des données, un moyen de commande/traitement de données pour accomplir le traitement et la commande des données selon les programmes stockés dans ledit moyen de stockage et pour accomplir l'opération d'authentification selon le programme d'authentification; un moyen formant bus pour relier les moyens individuels les uns aux autres, l'un desdits deux dispositifs, ladite carte ( 13) ou ladite unité terminale ( 27) comprenant de plus: un moyen pour produire un nombre statistique et pour transmettre le nombre statistique produit à l'autre dispositif, un moyen de combinaison d'identificateur pour combiner les données cryptées par l'identificateur et transmises par l'autre dispositif afin d'obtenir un code d'authentification correspondant auxdites données, un moyen de cryptage du nombre statistique selon le premier algorithme en utilisant comme clé le code d'authentification obtenu par ledit moyen de combinaison d'identificateur de la même manière que dans l'autre dispositif afin de produire les données d'authentification; et un moyen pour comparer les données d'authentification produites par ledit moyen de cryptage avec les données d'authentification cryptées sur la base du premier algorithme qui ont été transmises par l'autre dispositif et pour transmettre un signal de résultat indiquant la coïncidence ou la non coïncidence à l'autre dispositif, ledit moyen individuel fonctionnant selon le programme d'authentification sous la commande dudit moyen de commande/traitement de données, l'autre dispositif comprenant de plus: un moyen de cryptage du nombre statistique qui a été reçu par le premier dispositif selon le premier algorithme en utilisant comme clé l'un desdits codes d'authentification afin de produire les données d'authentification et de crypter l'identificateur correspondant audit code d'authentification selon le second algorithme, un moyen pour transmettre les données cryptées produites par le moyen de cryptage au premier dispositif, les moyens individuels fonctionnant sous la commande du moyen de commande/traitement de données selon le programme d'authentification. 15 Procédé d'authentification consistant à accomplir l'authentification entre deux dispositifs électriques, lesdits deux dispositifs électriques comportant un certain nombre de codes d'authentification, chacun ayant des données correspondantes de temps, un moyen de cryptage des données selon un algorithme déterminé et un moyen temporisateur, run desdits deux dispositifs électriques comprenant de plus un moyen pour produire des nombres statistiques et un moyen de comparaison, caractérisé en ce qu 'il comprend: l'étape de produire un nombre statistique dans le premier dispositif et de transmettre le nombre statistique produit à l'autre dispositif, la première étape de cryptage du nombre statistique reçu dans l'autre dispositif selon l'algorithme en utilisant l'un des codes d'authentification comme clé pour produire les données d'authentification, l'étape de transmettre les données d'authentification au premier dispositif par l'autre dispositif lorsqu'un temps représenté par les données de temps correspondant au code utilisé d'authentification s'est écoulé après transmission d'un signal prédéterminé, la seconde étape de cryptage consistant à compter dans le premier dispositif un intervalle de temps à partir du moment o le signal prédéterminé a été transmis jusqu'au moment les données d'authentification ont été reçues par l'autre dispositif et de crypter le nombre statistique selon l'algorithme en utilisant, comme clé, le code dauthentification correspondant aux données de temps qui coïncident avec l'intervalle de temps compté de la même manière que dans l'autre dispositif afin de produire les données d'authentification, et l'étape de comparer dans le premier dispositif les données d'authentification produites dans la seconde étape de cryptage avec les données d'authentification qui ont été transmises par l'autre dispositif et de transmettre un signal de résultat indiquant la coïncidence ou la non coïncidence avec l'autre dispositif.