Brevet FR2858085A1 — publié le 20050128

L'invention concerne des dispositifs semiconducteurs et plus particulièrement la sécurisation d'une carte à puce comportant une mémoire à semiconducteurs. Les progrès de la technologie des dispositifs 5 semiconducteurs ont conduit au développement de dispositifs semiconducteurs portables pour diverses applications. De tels dispositifs semiconducteurs portables se présentent sous diverses formes, par exemple, un dispositif à mémoire à semiconducteur miniaturisé, bien connu sous le nom de 10 "carte à mémoire" ou carte à puce. Une carte à puce peut être portée n'importe où par une personne et est habituellement utilisée pour stocker des informations individuelles qui sont utilisées dans diverses applications électroniques exigeant des données personnelles à des fins 15 d'authentification et autres. Une carte à puce ou carte à mémoire (les deux expressions sont utilisées indifféremment et ont le même sens) est habituellement formée d'une matière plastique et comporte des puces de mémoire et des circuits encastrés qui 20 peuvent être utilisés par des applications de microprocesseurs pour lire et écrire des données sur la carte à puce. Etant donné que la carte à puce est généralement utilisée pour stocker des informations personnelles, il est nécessaire de prévoir des moyens de 25 sécurité dans la carte à puce pour empêcher une falsification (les expressions "falsification" et "accès non autorisé" sont utilisées ciaprès pour désigner le même type d'essai d'intrusion pour accéder à des informations portées sur la carte à puce) des informations personnelles. 30 La figure 1A des dessins annexés et décrits ciaprès est un schéma fonctionnel simplifié montrant la construction interne d'une carte à puce. Comme représenté sur la figure 1A, la carte à puce comprend une unité centrale de traitement CPU, une mémoire morte 35 électriquement effaçable et programmable EEPROM, une mémoire morte ROM et une mémoire vive RAM, un bus d'adresses et de données, une entrée/sortie série SIO et un circuit de détection. L'unité CPU commande toutes les opérations effectuées par la carte à puce. Elle peut stocker et traiter des données dans la mémoire de la carte. 5 Le circuit de détection protège les informations stockées dans la mémoire de la carte à puce, et si une falsification a lieu, le circuit de détection remet alors à l'état initial un circuit logique dans la carte à puce. Pour protéger une carte à puce contre les 10 falsifications, on peut utiliser un blindage actif. En d'autres termes, lorsqu'une partie de blindage de la carte à puce est endommagée ou enlevée pour obtenir un accès non autorisé, un circuit logique de la carte à puce est remis à l'état initial, en sorte qu'il est possible de protéger la 15 carte à puce contre un accès non autorisé. La figure lB des dessins annexés décrit ci-après représente un circuit de détection utilisant une techique de blindage actif dans une carte à puce classique. En référence à la figure lB, un circuit de détection d'une 20 carte à puce utilisant un blindage actif classique comporte une résistance élévatrice. Une extrémité de la résistance élévatrice est connectée à une tension d'alimentation Vcc, et l'autre extrémité de la résistance élévatrice est connectée aux couches de blindage actif. Les couches de 25 blindage actif sont connectées à la masse. Par conséquent, avant que les couches de blindage actif soient enlevées ou endommagées, une extrémité de la résistance élévatrice qui est connectée aux couches de blindage actif est connectée à la masse. Il en résulte 30 qu'un circuit de détection connecté à une extrémité de la résistance élévatrice prend un état logique "bas". Cependant, si une extrémité de la résistance élévatrice est isolée électriquement avec les couches de blindage actif selon l'enlèvement ou la détérioration des couches de 35 blindage actif par un accès non autorisé, un circuit de détection passe dans un état logique "haut" pour détecter une falsification. Cependant, du fait de la simplicité de cette structure, un circuit de détection utilisant un blindage 5 actif classique présente de nombreux inconvénients. Etant donné que le point de détection est connecté à la masse, il est possible soit d'obtenir un accès non autorisé, soit de procéder à une ingéniérie inverse sur le système, après que le blindage actif a été enlevé. On a donc besoin d'un 10 système de carte à puce pourvu de moyens de sécurisation qui empêche un accès non autorisé aux informations stockées dans la mémoire de la carte. Il est proposé un circuit de détection capable d'empêcher une falsification d'une carte à puce en 15 détectant des détériorations d'une couche de blindage de la carta à puce. Conformément à au moins une forme de réalisation de l'invention, il est proposé un circuit de détection d'une carte à puce pourvu d'une fonction de blindage actif, 20 qui comprend des couches de blindage. Un compteur de couches de blindage, destiné à compter les couches de blindage, un compteur de couches de non blindage destiné à compter des couches ne constituant pas un blindage, et un comparateur destiné à déterminer si l'on a accédé à la 25 carte à puce d'une manière non autorisée en comparant une valeur de comptage du compteur des couches de blindage à une valeur de comptage du compteur des couches de non blindage sont proposés. Dans une forme appréciée de réalisation, une 30 partie de remise à l'état initial destinée à remettre à l'état initial la carte à puce est en outre incluse si une falsification est détectée d'après un signal de sortie du comparateur. Dans une forme appréciée de réalisation, chacun 35 du compteur de couche de blindage et du compteur de couche de non blindage comprend des modules logiques de comptage multiples connectés les uns aux autres en série. Les modules logiques de comptage du compteur de couche de blindage sont connectés électriquement entre eux par l'intermédiaire des couches de blindage. Les modules 5 logiques de comptage du compteur de couche de non blindage sont connectés électriquement entre eux par l'intermédiaire des couches de non blindage. Dans une forme appréciée de réalisation, les modules logiques de comptage comprennent n pièces de 10 circuits de bascule comprenant un premier circuit de bascule où un signal d'horloge est appliqué. Les circuits de bascules sont connectés électriquement pour produire un signal de sortie d'une petite kième bascule en tant que signal d'horloge appliqué en entrée à une (k + 1)ième 15 bascule (où k = 1 - n - 1). Dans au moins une forme de réalisation, les couches de blindage sont formées de lignes métalliques sur une couche de surface de la carte à puce. Un circuit de détection d'une carte à puce ayant une fonction de blindage actif comprend des couches de 20 blindage, un compteur de couches de blindage destiné à compter les couches de blindage et des couches de non blindage, un compteur de couches de non blindage destiné à compter les couches de non blindage, et un comparateur destiné à déterminer si la sécurité de la carte à puce est 25 compromise en comparant une valeur de comptage du compteur des couches de blindage à une valeur de comptage du compteur des couches de non blindage. De plus, un circuit de détection d'une carte à puce possédant une fonction de blindage actif comprend des 30 couches de blindage, un compteur de couches de blindage destiné à compter les couches de blindage, un dispositif de commande de comptage destiné à recevoir une partie d'une valeur de comptage de sortie du compteur de couche de blindage et à utiliser un signal de sortie en tant que 35 signal d'entrée du compteur de couche de blindage, un compteur de couche de non blindage destiné à compter les couches de non blindage et un comparateur destiné à comparer une valeur de comptage du compteur de couche de blindage et du dispositif de commande de comptage à une valeur de comptage du compteur de couche de non blindage. Dans une forme appréciée de réalisation, les couches de blindage sont formées de lignes métalliques sur une surface de la carte à puce, et une partie de remise à l'état initial, capable de remettre à l'état initial une carte à puce et une falsification est détectée d'après une 10 valeur de sortie du comparateur, est incluse. Dans une forme appréciée de réalisation, le compteur de couche de blindage et le compteur de couche de non blindage, qui comprend des compteurs de couche de blindage et le compteur de couche de non blindage, comprend 15 des modules logiques de comptages multiples connectés les uns aux autres en série. Les modules logiques de comptage du compteur de couche de blindage sont connectés électriquement entre eux par l'intermédiaire des couches de blindage actif. Des modules logiques de comptage du 20 compteur de couche de non blindage sont connectés électriquement entre eux par l'intermédiaire des couches de non blindage actif. Dans au moins une forme de réalisation, les modules logiques de comptage comprennent n pièces de 25 circuits de bascule comprenant un premier circuit de bascule où un signal d'horloge de sortie d'un générateur d'horloge est utilisé, et les circuits de bascules sont connectés électriquement pour produire un signal de sortie d'une kième bascule en tant que signal d'horloge d'entrée 30 d'une (k + 1) ème bascule (où, k = 1 n - 1). L'invention sera décrite plus en détail en regard des dessins annexés à titre d'exemples nullement limitatifs et sur lesquels: - la figure 1A est un schéma fonctionnel 35 simplifié représentant une carte à puce; - la figure lB est un schéma d'un circuit de détection utilisant un procédé de blindage actif d'une carte à puce classique; - la figure 2 est un schéma fonctionnel simplifié 5 du circuit de détection de la carte à puce selon une forme de réalisation de l'invention; - la figure 3A est un schéma d'un circuit d'un compteur de couches de blindage utilisé sur la figure 2; - la figure 3B est un schéma d'un circuit d'un 10 compteur de couches de non blindage utilisé dans la figure 2; - la figure 3C est un schéma d'un circuit d'un comparateur utilisé dans la figure 2; - la figure 4 est un schéma fonctionnel simplifié 15 du circuit de détection de la carte à puce; - la figure 5A est un schéma d'un circuit d'un compteur de couche de blindage utilisé dans la figure 4; - la figure 5B est un schéma d'un circuit d'un compteur de couche de non blindage utilisé dans la figure 20 4; - la figure 5C est un schéma d'un circuit d'une partie de commande de comptage de la figure 4; et - la figure 5D est un schéma d'un circuit d'un comparateur de la figure 4. On décrira les formes appréciées de réalisation de l'invention en référence aux dessins annexes. Sur les dessins, l'épaisseur des couches et les régions sont exagérées uniquement pour plus de clarté et de compréhension. On comprendra aussi que lorsqu'une couche 30 est indiquée comme étant "sur" une autre couche, elle peut se trouver directement sur l'autre couche, ou bien des couches intermédiaires peuvent être présentes. Les mêmes références numériques désignent les mêmes éléments dans toute la description. La figure 2 est un schéma fonctionnel simplifié d'un circuit de détection d'une carte à puce. La figure 3A est un schéma d'un circuit d'un compteur de couches de blindage utilisé dans la figure 2. La figure 3B est un schéma d'un circuit d'un compteur de couche de non blindage utilisé dans la figure 2. La figure 3C est un schéma d'un circuit d'un comparateur de la figure 2. En référence à la figure 2, le circuit de détection selon la première forme de réalisation de l'invention comprend un circuit 100 d'alimentation d'horloge; un compteur 200 de couches de blindage destiné 10 à effectuer un comptage et réagissant aux transitions d'une horloge et d'un compteur 300 de couche de non blindage; et un comparateur 400 destiné à comparer une valeur de comptage du compteur 200 de couche de blindage et une valeur de comptage du compteur 300 de couche de non 15 blindage et à générer un signal de détection. Dans ce cas, les couches de non blindage sont équivalentes à des couches de blindage non actif. En référence à la figure 3A, le compteur 200 de couche de blindage comporte de multiples circuits de 20 bascules FF01 - FF05. Un signal de remise à l'état initial est appliqué à chaque borne RN des circuits de bascule FF01 - FF05. Chaque borne QN est flottante. Un signal d'horloge Clock est appliqué en tant que signal d'entrée au circuit de bascule FF01. Un signal 25 de sortie Q du circuit de bascule devient un signal d'horloge d'entrée pour le circuit de bascule FF02. Une sortie Q du circuit de bascule FF02 devient un signal d'horloge d'entrée pour le circuit de bascule FF03. Une sortie Q du circuit de bascule FF03 devient un signal d'horloge d'entrée pour le circuit de bascule FF04. Une sortie Q du circuit de bascule FF04 devient un signal d'horloge d'entrée pour le circuit de bascule FF05. Des valeurs de comptage de sortie AI - A5 des circuits de bascule FF01 FF05 constituent un signal 35 d'entrée pour le comparateur 400 afin d'être comparées aux valeurs de comptage de sortie du compteur 300 de couche de non blindage. Dans ce cas, une ligne de connexion est une ligne métallique pour un blidage Si des couches de blindage 5 actif. Une sortie du circuit de bascule FF1 est connectée par la ligne de connexion à une entrée d'horloge du circuit de bascule FF2. Les autres circuits de bascule sont connectés par les lignes métalliques S2 - S5 pour le blindage des couches de blindage actif. Comme indiqué ci-dessus, les circuits de bascule sont connectés par l'intermédiaire d'une entrée et d'une sortie. Par conséquent, si la ligne métallique pour le blindage des couches de blindage actif est enlevée au cours d'une falsification portant sur une puce de la carte à 15 puce, la ligne métallique enlevée coupe une sortie du circuit de bascule et le comptage des circuits de bascule subséquent est arrêté. En référence à la figure 3B, similairement au compteur 200 de couches de blindage, un compteur 300 de 20 couches de non blindage comporte de multiples circuits de bascule FF06 - FF10. Les circuits de bascule FF06 FF10 ont une borne RN à laquelle un signal de remise à l'état initial est appliqué. Les bornes QN sont flottantes. Des valeurs de sortie de comptage B1 E B5 des 25 circuits de bascule servent de signaux d'entrée pour le comparateur 400 afin d'être comparées à des valeurs de comptage de sortie Ai - A5 des compteurs A1 - A5 des couches de blindage. Cependant, à la différence du compteur 200 de 30 couches de blindage, les parties de connexion entre les circuits de bascule ne sont pas fermées par des lignes métalliques pour les blindages des couches de blindage actif, mais par des lignes métalliques NS1 - NS5 de couches de non blindage dans le compteur 300 de couches de non 35 blindage. Le comparateur 400 reçoit un signal de sortie du compteur 200 de couche de blindage et du compteur 300 de couche de non blindage pour comparer une valeur de comptage du compteur 200 de couche de blindage à une valeur de 5 comptage du compteur 300 de couche de non blindage. De plus, le comparateur 400 détermine si des couches de blindage actif sont enlevées ou non en utilisant le résultat ci-dessus pour délivrer en sortie un signal de détection. En référence à la figure 3C, le comparateur 400 comprend de multiples circuits de bascule FFl10 - FF150 recevant l'une des valeurs de comptage du compteur 200 de couches de blindage, de multiples circuits de bascule FF160 - FF200 recevant l'une des valeurs de comptage du 15 compteur 300 de couche de non blindage, une porte OU exclusif XOR1 recevant une sortie du circuit de bascule FF160, une porte OU exclusif XOR2 recevant une sortie des circuits de bascule FF120 et FF170, une porte OU exclusif XOR3 recevant une sortie des circuits de bascule FF130 et 20 FF180, une porte OU exclusif XOR4 recevant une sortie des circuits de bascule FFl40 et FF190, une porte OU exclusif XOR5 recevant une sortie des circuits de bascule FF150 et FF200, une porte NON-OU NOR1 recevant une sortie des portes OU exclusif XOR1 et XOR2, une porte NON-OU NOR2 recevant 25 une sortie des portes OU exclusif XOR3, XOR4 et XOR5, une porte ET recevant les portes NON-OU NORl et NOR2 et un circuit de bascule FF100 recevant une sortie de la porte ET. Comme montré sur la figure 3C, le comparateur 400 compare ce qui suit: un comptage de sortie A1 du compteur 30 200 de couches de blindage et un comptage de sortie B1 du compteur 300 de couche de non blindage, un comptage de sortie A2 du compteur 200 de couche de blindage et un comptage de sortie B2 du compteur 300 de couche de non blindage, un comptage de sortie A3 du compteur 200 de 35 couche de blindage et un comptage de sortie B3 du compteur 300 de couche de non blindage, un comptage de sortie A4 du compteur 200 de couche de blindage et un comptage de sortie B4 du compteur 300 de couche de non blindage, et un comptage de sortie A5 du compteur 200 de couche de blindage et un comptage de sortie B5 du compteur 300 de couche de non blindage. Le comparateur 400 détermine si l'on a accédé à une carte à puce d'une manière non autorisée, ou non, par la comparaison ci-dessus. Avant que la sécurité d'une carte à puce soit compromise, les comptages de sortie A1 et B1, 10 A2 et B2, A3 et B3, A4 et B4 et A5 et B5 ont la même valeur. La raison en est que les comptages de sortie Al et B1, A2 et B2, A3 et B3, A4 et B4 et A5 et B5 sont réalisés par un comptage pendant la réception du même signal d'horloge. Lorsqu'une connexion quelconque des lignes métalliques Sl - S5 pour les blindages du compteur 200 de couche de blindage est coupée suivant des détériorations des couches de blindage actif d'une carte à puce à la suite d'une falsification, les circuits de bascule suivants ne 20 sont plus comptés. Lorsqu'un signal de sortie d'un circuit de bascule, où le comptage du compteur 200 de couches de blindage est arrêté, est comparé à un comptage de sortie correspondant d'un circuit de bascule d'un compteur 300 de couche de non blindage, les deux signaux ont des valeurs 25 différentes. A ce moment, le circuit de détection détermine si une falsification de la carte à puce a été tentée ou non en détectant les valeurs différentes. En d'autres termes, si les valeurs de comptage de sortie sont identiques en tant que résultat de la comparaison effectuée par le 30 comparateur 400, les couches de blindage sont considérées comme n'étant pas endommagées. Un signal informant d'un accès autorisé est donc délivré en sortie. En revanche, si les valeurs de comptage de sortie sont différentes, les couches de blindage sont considérées comme endommagées, et 35 un signal de détection informant d'une falsification de la carte à puce ou d'un accès non autorisé est délivré en sortie. La figure 4 est un schéma fonctionnel simplifié d'un circuit de détection d'une carte à puce. La figure 5A est un schéma du circuit d'un compteur de couches de blindage de la figure 4. La figure 5B est un schéma d'un circuit d'un compteur de couches de non blindage de la figure 4. La figure 5C est un schéma d'un circuit d'un dispositif de commande de compteurs de la 10 figure 4. La figure 5D est un schéma d'un circuit de la figure 4. En référence à la figure 4, un circuit de détection selon au moins une forme de réalisation comprend un circuit 100 d'alimentation en signaux d'horloge destiné à générer un signal d'horloge; un compteur 210 de couches 15 de blindage recevant un signal d'horloge pour effectuer un comptage et un compteur 310 de couches de non blindage; un dispositif 500 de commande de comptage recevant une valeur de comptage de sortie du compteur 210 de couche de blindage et appliquant un signal de sortie en entrée au compteur 210 20 de couches de blindage; et un comparateur 410 destiné à comparer une valeur de comptage du compteur 210 de couche de blindage et une valeur de comptage du compteur 310 de couche de non blindage et à générer un signal de détection. Dans le circuit de détection de la carte à puce 25 décrite ci-dessus (appelée ci-après "première carte à puce" uniquement dans un souci de clarté et de compréhension), le compteur 210 de couche de blindage ne compte que les couches de blindage. Le compteur 310 de couche de non blindage ne compte que des couches de non blindage. 30 Cependant, dans le circuit de détection de la seconde carte à puce, qui sera maintenant décrit, une partie d'un signal de compteur 210 de couche de blindage devient un signal d'entrée de la partie 500 de commande de compteurs. La partie 500 de commande de compteur est matérialisée dans 35 une couche de non blindage. Autrement dit, un signal d'un circuit d'un compteur pour un circuit de détection passe par des couches de blindage et des couches de non blindage. En référence à la figure 5A, le compteur 210 e couche de blindage comporte de multiples circuits de 5 bascules F12 - F19, une porte OU OR2 recevant des signaux extérieurs E1 et E2; et des portes OU OR3 ORll recevant des signaux de sortie des circuits de bascule FF1 - FFl9 et des bornes N10 de la porte OU OR2. Un signal bl de remise à l'état initial est appliqué par chaque borne RN aux 10 circuits de bascules FFll FF19. De plus, chaque borne QN est flottante. Dans ce cas, les signaux extérieurs E1 et E2 exécutent une fonction de génération d'une valeur anormale de comptage. Un signal d'horloge (Clck) est appliqué en entrée 15 au circuit de bascule FFll. Un signal de sortie Q du circuit de bascule FFll est appliqué en entrée à la porte OU OR3. Un signal de sortie de la porte OU OR3 devient un signal d'horloge d'entrée du circuit de bascule FF12. A la différence de la première carte à puce, dans 20 le circuit de détection de la seconde carte à puce, tous les signaux de sortie des circuits de bascule ne sont pas appliqués en tant que signal d'entrée pour le circuit de bascule suivant. Comme montré sur la figure 5A, une sortie Q du 25 circuit de bascule FF12 est appliquée à une porte OU OR4. Une sortie de la porte OU OR4 n'est pas appliquée à une horloge d'entrée du circuit de bascule FF13 et est délivrée en sortie en tant que signal b12. Une sortie Q du circuit de bascule FF14 est 30 appliquée à une porte OU OR6, et une sortie de la porte OU OR6 est appliquée à une entrée d'horloge du circuit de bascule FF15. De plus, un signal de sortie de la porte OU OR6 devient un signal d'entrée de comparaison B4 du comparateur 410. Une sortie de la porte OU OR6 est appliquée au circuit de bascule FF15. Un signal de sortie Q du circuit de bascule FF15 est appliqué à la porte OU OR7. Un signal de sortie de la porte OU OR3 devient une entrée d'horloge du circuit de bascule FF16. Une sortie Q du circuit de bascule FF16 est 5 appliquée à une porte OU OR8, et une sortie de la porte OU OR8 est appliquée en tant qu'entrée d'horloge du circuit de bascule FF17. Un signal de sortie de la porte OU OR8 devient un signal d'entrée de comparaison b6 du comparateur 410. Une sortie de la porte OU OR8 est appliquée au circuit de bascule FF17. Un signal de sortie Q du circuit de bascule FF17 est appliqué à une porte OU OR9. Un signal de sortie de la porte OU OR9 devient un signal d'entrée d'horloge du circuit de bascule FF18. Une sortie Q du circuit de bascule FF18 est appliquée à une porte OU OR10, et un signal de sortie de la porte OU OR10 est appliqué en tant que signal d'entrée d'horloge au circuit de bascule FF19. Un signal de sortie de la porte OU OR10 devient un signal d'entrée de 20 comparaison b9 du comparateur 410. Dans ce cas une ligne de connexion est formée d'une ligne métallique pour un blindage S10. Dans la ligne de connexion, un signal de sortie du circuit de bascule FF11 est appliqué à la porte OU OR3. De plus, la partie 25 restante du circuit de bascule est connectée par des lignes métalliques S20 - S90 de couches de blindage actif aux portes OU. Comme indiqué ci-dessus, les circuits de bascule et les portes OU sont connectés entre eux par une entrée et 30 une sortie. En conséquence, lorsque l'une quelconque des lignes métalliques de blindage S10 - S90 pour les blindages des couches de blindage actif est endommagée dans le cas d'une falsification de la carte à puce, le comptage par un circuit de bascule est coupé par la ligne métallique 35 enlevée et le circuit de bascule connecté à la partie suivante d'une porte OU est arrêté. En référence à la figure 5B, le dispositif 500 de commande de compteurs comprend une porte ET AND21 recevant un signal de sortie b12 du compteur 210 de couche de blindage et un signal d'entrée extérieur E4 et délivrant en 5 sortie un signal b2 d'entrée de comparaison; une porte ET AND22 recevant un signal d'entrée extérieur E4 et un signal de sortie b13 du compteur 210 de couche de blindage et délivrant en sortie un signal b3 d'entrée de comparaison; une porte ET AND23 recevant un signal d'entrée extérieur E4 10 et un signal de sortie b9 du compteur 210 de couche de blindage et délivrant en sortie un signal b9 d'entrée de comparaison; un circuit de bascule FF24 utilisant un signal de sortie de la porte AND23 en tant que signal d'entrée d'horloge; et un circuit 20 de remise à l'état 15 initial. Le circuit 20 de remise à l'état initial comprend un circuit de bascule FF21 recevant un signal de sortie du circuit de bascule FF24; un circuit de bascule FF22 recevant un signal de sortie du circuit de bascule FF21; 20 un circuit de bascule FF23 recevant un signal de sortie du circuit de bascule FF22; une porte NON-OU NOR22 recevant un signal de sortie du circuit de bascule FF23 et du circuit de bascule FF24; un tampon BU21 recevant un signal de sortie de la porte NON-OU NOR22; un inverseur I22 25 connecté à une borne de sortie du tampon BU21; une porte ET AND24 recevant un signal de sortie de l'inverseur I22 et de la porte NON-OU NOR 22; un inverseur I21 recevant un signal de remise à l'état initial E3; une porte NON-OU NOR21 recevant un signal de sortie de l'inverseur I21 et de 30 la porte ET AND24; un inverseur I24 recevant un signal de sortie de la porte NON-OU NOR21; et un inverseur I23 recevant un signal de sortie de l'inverseur I24. Dans ce cas, la sortie est connectée aux circuits de bascule FF21, FF22, FF23 et FF24. En référence aux figures 5A et 5B, le compteur 210 de couches de blindage et la commande 500 de comptage échangent un signal d'entrée et un signal de sortie entre eux. Autrement dit, la commande 500 des compteurs reçoit une partie d'un signal de sortie du compteur 210 de couche de blindage, et le compteur 210 de couche de bllindage 5 reçoit un signal de sortie du dispositif 210 de commande de compteurs. Concrètement, les signaux de sortie b9, b12 et b13 du compteur 210 de couche de blindage sont appliqués à la commande 500 de compteur. De plus, les signaux de sortie 10 b2 et b3 de la commande de compteur 500 sont appliqués à une entrée d'horloge des circuits de bascule FF13 et FF14 en tant que compteur logique du compteur 210 de couches de blindage, respectivement, et un signal de sortie bl est appliqué en tant que signal de remise à l'état initial des 15 circuits de bascule FF11 - FF19. Pour empêcher complètement la falsification, il est nécessaire de changer une entrée et une sortie de la partie 210 de comptage de couche de blindage et de la partie 500 de commande de compteur. Un signal d'horloge 20 d'entrée du compteur de couche de blindage est appliqué en entrée en passant par les couches de non blindage et non par les couches de blindage actif. Par conséquent, les couches de blindage de même que les couches denon blindage doivent être enlevées pour éviter le circuit de détection, 25 ce qui rend toute falsification très difficile. Un comparateur 410 reçoit un signal de sortie du compteur 210 de couche de blindage, et du dispositif de commande 500 des compteurs et compare leurs valeurs de comptage. En utilisant ce résultat, le comparateur 410 30 décide si des couches de blindage actif sont enlevées ou non et délivre en sortie un signal de détection. En référence à la figure 5D, le comparateur 410 comprend de multiples circuits de bascules FF51 - FF55 recevant l'une des valeurs de comptage de sortie b3, b4, 35 b6, b8 et b9 de la partie de compteur 210 de couches de blindage; de multiples circuits de bascule FF56 - FF60 recevant l'une des valeurs de comptage de sortie c3, c4, c6, c8 et c9 du compteur 310 de couches de non blindage; une porte OR exclusif XOR51; une porte OU exclusif XOR52 recevant un signal de sortie du circuit de bascule FF52 et 5 du circuit de bascule FF57; une porte OU exclusif XOR53 recevant un signal de sortie du circuit de bascule FF53 et du circuit de bascule FF58; une porte OU exclusif XOR54 recevant un signal de sortie du circuit de bascule FF54 et du circuit de bascule FF59; une porte OU exclusif XOR55 10 recevant un signal de sortie du circuit de bascule FF55 et du circuit de bascule FF60; une porte NON-OU NOR51 recevant un signal de sortie des portes OU exclusif XOR51 et XOR52; une porte NON-OU NOR52 recevant un signal de sortie des portes OU exclusif XOR3, XOR4 et XOR5; une 15 porte ET AND51 recevant un signal de sortie des portes OU OR1 et OR2; et un circuit de bascule FF61 recevant un signal de sortie de la porte ET. Le circuit de détection ci-dessus est mis en oeuvre de la manière suivante. Le compteur 210 de couches de 20 blindage et le compteur 310 de couche de non blindage effectuent un comptage en recevant un signal d'horloge généré depuis le circuit 100 d'alimentation en signal d'horloge. De plus, le compteur 210 de couche de blindage et le compteur 310 de couche de non blindage commencent un 25 comptage en même temps lorsqu'un signal E3 de remise à l'état initial est invalidé par la réception d'un signal d'horloge (Clck) en provenance du circuit d'alimentation en signal d'horloge. Si une valeur de comptage déborde, le comptage 30 est effacé automatiquement. En conséquence, l'opération de comptage est de nouveau exécutée. Si un débordement a lieu dans le compteur 210 de couche de blindage, une valeur de comptage est effacée par la réception d'un signal bl généré depuis la commande 500 de comptage, en sorte que 35 l'opération de comptage est de nouveau exécutée à la réception d'un signal d'horloge (Clck). Si un débordement a lieu dans le compteur 310 de couche de non blindage, la valeur de comptage du compteur 310 de non blindage est effacée par la réception d'un signal Rl généré par le compteur 310 de couche de non 5 blindage, à la suite de quoi une opération de comptage est de nouveau exécutée à la réception d'un signal d'horloge (Clck). Les valeurs de comptage de sortie du compteur de couche du blindage et du compteur de couche de non blindage 10 sont comparées dans le comparateur 410. Si l'on enlève des couches de blindage actif pour obtenir un accès non autorisé, les valeurs de comptage du compteur 310 de couche de non blindage et du compteur 210 de couche de blindage sont différentes. La valeur de comptage du compteur 210 de 15 couche de blindage est liée aux couches de blindage actif devant être comptées, et la valeur du compteur 310 de couche de non blindage est comptée normalement. Par conséquent, le comparateur 410 délivre en sortie un signal inverse d'un signal normal en tant que signal de détection. 20 Si le signal de détection est délivré en sortie, une unité centrale de traitement (CPU) remet à l'état initial une carte à puce pour protéger les informations qu'elle contient. Indépendamment des couches de blindage actif, des signaux El et E2 du compteur 210 de couches de 25 blindage ont pour fonction de produire une valeur de comptage anormale. Même si l'un quelconque des signaux El et E2 est appliqué, une opération de comptage est effectuée de façon anormale, d'où il résulte un signal de détection qui est le même signal que celui généré lorsqu'une 30 falsification est détéctée. Si un signal bl devient inactif, un signal d'horloge (Clck) produit une opération de comptage. Le dispositif 500 de commande de comptage génère un signal bl qui a une fonction d'effacement en utilisant 35 un signal d'horloge (Clck) et envoie le signal bl au compteur 210 de couches de blindage, si la valeur du comptage du compteur de couche de blindage déborde. Un signal E4 est produit pour générer un signal destiné à générer un état par lequel une valeur de comptage est invalidée. En d'autres termes, le signal E4 invalide le 5 circuit de détection de falsification de par la valeur de comptage en même temps qu'avec un signal d'entrée d'un circuit, s'il est présent, qui détecte la lumière et génère alors un signal de falsification. Le signal E4 envoie un signal différent suivant 10 l'opération de la carte à puce pour distinguer le compteur 210 de couche de blindage du compteur 210 de couche de non blindage. Le résultat est qu'il est possible de protéger une carte à puce contre la falsification. Dans le compteur 310 de couche de non blindage, 15 lorsque le signal E3 devient inactivé, une opération de comptage est effectuée. Si le comptage déborde, le comptage est alors effacé automatiquement. L'opération de comptage est donc de nouveau effectuée. Les comptages effectués par le compteur 310 de 20 couche de non blindage et par le compteur 210 de couche de blindage sont effacés simultanément, et une opération de comptage est ensuite de nouveau exécutée si le signal E3 devient inactive. Le compteur 310 de couche de non blindage envoie des signaux c2, c3, c4, c6, c8, c9 et clO au 25 comparateur 410. Pour éliminer un bruit de valeur de comptage de sortie de compteur 310 de couche de non blindage, du compteur 210 de couche de blindage et du dispositif 500 de commande de comptage, le comparateur 410 utilise des signaux clO et c2 en tant qu'horloge de 30 verrouillage. Le comparateur verrouille les valeurs de comptage b3, b4, b6, b8 et b9 du compteur 210 de couche de blindage et de la commande 500 de comptage et les valeurs de comptage c3, c4, c6, c8 et c9 du compteur 310 de couche de 35 non blindage. Ensuite, après que le comparateur a comparé les valeurs de comptage verrouillé, il délivre en sortie un signal de détection. Comme mentionné précédemment, conformément à l'invention, un circuit de détection utilisant des couches 5 de blindage actif peut avoir une structure plus complexe, en sorte qu'il est possible de protéger une carte à puce contre la falsification. En outre, le circuit de détection peut être formé de façon à passer par les couches de blindage actif et les 10 couches de non blindage. On peut donc protéger complètement une carte à puce contre les falsifications. Il va de soi que de nombreuses modifications peuvent être apportées au circuit et au procédé de détection décrits et représentés sans sortir du cadre de 15 l'invention. REVENDICATIONS 1. Circuit de détection d'une carte à puce ayant une fonction de blindage actif, le circuit étant caractérisé en ce qu'il comporte plusieurs couches de 5 blindage; plusieurs couches de non blindage; un compteur (200) de couches de blindage destiné à compter les couches de blindage; un compteur (300) de couche de non blindage destiné à compter les couches de non blindage; et un comparateur (400) destiné à déterminer si la carte à puce a 10 été falsifiée en comparant une valeur de comptage du compteur des couches de blindage à une valeur de comptage du compteur de couche de non blindage. 2. Circuit de détection selon la revendication 1, caractérisé en ce qu'il comporte en outre une partie de 15 remise à l'état initial pour remettre la carte à puce à l'état initial si une falsification est détectée d'après un signal de sortie du comparateur. 3. Circuit de détection selon la revendication 1, caractérisé en ce que chacun du compteur de couche de 20 blindage et du compteur de couche de non blindage comporte plusieurs modules de logique de comptage reliés les uns aux autres en série, les modules logiques de comptage du compteur de couche de blindage étant connectés électriquement entre eux en passant par les couches de 25 blindage et les modules logiques de comptage du compteur de couche de non blindage étant connectés électriquement entre eux en passant par les couches de non blindage. 4. Circuit de détection selon la revendication 3, caractérisé en ce que les modules logiques de comptage 30 comprennent des éléments de circuits de bascules comprenant un premier circuit de bascule où un signal d'horloge est appliqué, les circuits de bascules étant connectés électriquement, constitué d'un signal de sortie d'une petite kième bascule et un signal d'entrée d'une (k + 1)ième 35 bascule (où k = 1 - n - 1). 5. Circuit de détection selon la revendication 1, caractérisé en ce que les couches de blindage sont formées de lignes métalliques sur une couche de surface de la carte à puce. 6. Circuit de détection d'une carte à puce possédant une fonction de blindage actif, caractérisé en ce qu'il comporte plusieurs couches de blindage; un compteur (200) de couches de blindage destiné à compter les couches de blindage et des couches de non blindage; un compteur 10 (300) de couches de non blindage destiné à compter les couches de non blindage; et un comparateur (400) destiné à déterminer si la carte à puce a été falsifiée en comparant une valeur de comptage du compteur de couche de blindage à une valeur de comptage du compteur de couche de non 15 blindage. 7. Circuit de détection selon la revendication 6, caractérisé en ce que les couches de blindage sont formées de lignes métalliques sur une surface de la carte à puce. 8. Circuit de détection d'une carte à puce 20 possédant une fonction de blindage actif, caractérisé en ce qu'il comporte plusieurs couches de blindage et plusieurs couches de non blindage; un compteur (200) de couche de blindage destiné à compter les couches de blindage; un dispositif (500) de commande de comptage destiné à recevoir 25 une partie d'une valeur de comptage de sortie du compteur de couche de blindage et à utiliser un signal de sortie en tant que signal d'entrée du compteur de couche de blindage; un compteur (300) de couche de non blindage destiné à compter les couches de non blindage; et un 30 comparateur 400 destiné à comparer une valeur de comptage du compteur de couche de blindage et du dispositif de commande de comptage à une valeur de comptage du compteur de couche de non blindage. 9. Circuit de détection selon la revendication 8, 35 caractérisé en ce que les couches de blindage sont formées de lignes métalliques sur une surface de la carte à puce. 10. Circuit de détection selon la revendication 6, caractérisé en ce qu'il comporte en outre une partie de remise à l'état initial capable de remettre à l'état initial la carte à puce si une falsification est détectée d'après une valeur de sortie du comparateur. 11. Circuit de détection selon la revendication 6, caractérisé en ce que chacun du compteur de couche de blindage et du compteur de couche de non blindage comporte plusieurs modules logiques de comptage connectés les uns 10 aux autres en série, les modules logiques de comptage du compteur de couche de blindage étant connectés entre eux électriquement par l'intermédiaire des couches de blindage actif et les modules logiques de comptage du compteur de couche de non blindage étant connectés entre eux 15 électriquement par l'intermédiaire des couches de blindage non actif. 12. Circuit de détection selon la revendication 11, caractérisé en ce que les modules logiques de comptage comprennent n éléments de circuits de bascules comprenant 20 un premier circuit de bascule auquel un signal de sortie d'horloge d'un générateur d'horloge est appliqué, et les circuits de bascule sont connectés électriquement pour constituer un signal de sortie d'une kième bascule un signal d'horloge d'entrée d'une (k + 1)ième bascule (où k = 1 n 25 1). 13. Circuit de détection selon la revendication 8, caractérisé en ce que le dispositif de commande de comptage remet à zéro le compteur de couche de blindage dans le cas d'un état de débordement du compteur de couche 30 de blindage. 14. Circuit de détection selon la revendication 8, caractérisé en ce que le compteur de couche de non blindage est remis à zéro lors de l'apparition d'un état de débordement pour le compteur de couche de non blindage. 15. Procédé pour détecter une falsification d'une carte à puce, caractérisé en ce qu'il comprend la détermination de plusieurs couches de blindage; la détermination de plusieurs couches de non blindage; la comparaison du comptage des couche de blindage et du comptage des couches de non blindage au moyen d'un 5 comparateur (400) ; et la détermination d'une falsification de la carte à puce d'après le signal de sortie du comparateur. 16. Procédé selon la revendication 15, caractérisé en ce qu'il comprend en outre la remise à 10 l'état initial de la carte à puce si une falsification est détectée d'après un signal de sortie du comparateur.