FR2823398A1 - Extraction d'une donnee privee pour authentification d'un circuit integre - Google Patents
Extraction d'une donnee privee pour authentification d'un circuit integre Download PDFInfo
- Publication number
- FR2823398A1 FR2823398A1 FR0104586A FR0104586A FR2823398A1 FR 2823398 A1 FR2823398 A1 FR 2823398A1 FR 0104586 A FR0104586 A FR 0104586A FR 0104586 A FR0104586 A FR 0104586A FR 2823398 A1 FR2823398 A1 FR 2823398A1
- Authority
- FR
- France
- Prior art keywords
- private data
- network
- circuit
- physical parameters
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/12—Card verification
- G07F7/127—Card verification in which both online and offline card verification can take place
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/73—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/409—Device specific authentication in transaction processing
- G06Q20/4097—Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/12—Card verification
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0866—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3271—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
- H04L9/3278—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10W—GENERIC PACKAGES, INTERCONNECTIONS, CONNECTORS OR OTHER CONSTRUCTIONAL DETAILS OF DEVICES COVERED BY CLASS H10
- H10W42/00—Arrangements for protection of devices
- H10W42/40—Arrangements for protection of devices protecting against tampering, e.g. unauthorised inspection or reverse engineering
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10W—GENERIC PACKAGES, INTERCONNECTIONS, CONNECTORS OR OTHER CONSTRUCTIONAL DETAILS OF DEVICES COVERED BY CLASS H10
- H10W46/00—Marks applied to devices, e.g. for alignment or identification
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10W—GENERIC PACKAGES, INTERCONNECTIONS, CONNECTORS OR OTHER CONSTRUCTIONAL DETAILS OF DEVICES COVERED BY CLASS H10
- H10W46/00—Marks applied to devices, e.g. for alignment or identification
- H10W46/401—Marks applied to devices, e.g. for alignment or identification for identification or tracking
- H10W46/403—Marks applied to devices, e.g. for alignment or identification for identification or tracking for non-wireless electrical read out
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10W—GENERIC PACKAGES, INTERCONNECTIONS, CONNECTORS OR OTHER CONSTRUCTIONAL DETAILS OF DEVICES COVERED BY CLASS H10
- H10W46/00—Marks applied to devices, e.g. for alignment or identification
- H10W46/601—Marks applied to devices, e.g. for alignment or identification for use after dicing
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Accounting & Taxation (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Finance (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Storage Device Security (AREA)
Abstract
L'invention concerne un procédé et un circuit d'extraction d'une donnée secrète (s) dans un circuit intégré participant à une procédure d'authentification au moyen d'un dispositif externe tenant compte de cette donnée secrète, la donnée secrète étant générée sur demande et rendue éphémère.
Description
<Desc/Clms Page number 1>
EXTRACTION D'UNE DONNEE PRIVÉE POUR AUTHENTIFICATION D'UN CIRCUIT
INTÉGRÉ
La présente invention concerne l'authentification d'un circuit intégré ou d'un élément ou sous-ensemble électronique contenant un tel circuit au moyen d'une procédure d'authentification ayant recours à une donnée secrète contenue dans le circuit intégré. L'invention concerne plus particulièrement les procédures d'authentification basées sur l'utilisation d'une donnée ou clé privée (dite aussi secrète) au moyen d'un dispositif externe. Un exemple d'application de la présente invention est le domaine des cartes à puce qu'elles soient à unités de compte prépayées ou non.
INTÉGRÉ
La présente invention concerne l'authentification d'un circuit intégré ou d'un élément ou sous-ensemble électronique contenant un tel circuit au moyen d'une procédure d'authentification ayant recours à une donnée secrète contenue dans le circuit intégré. L'invention concerne plus particulièrement les procédures d'authentification basées sur l'utilisation d'une donnée ou clé privée (dite aussi secrète) au moyen d'un dispositif externe. Un exemple d'application de la présente invention est le domaine des cartes à puce qu'elles soient à unités de compte prépayées ou non.
Les divers procédés d'authentification d'une carte à puce ou analogue ont pour but d'éviter le piratage ou la falsification d'une carte soit par utilisation d'un dispositif discret reproduisant la carte, soit par piratage d'un terminal de lecture ou encore par reproduction à grande échelle de cartes à puce falsifiées.
Les procédés d'authentification les plus performants ont recours à une donnée privée présente dans le circuit intégré à authentifier et à une donnée ou clé dite publique, dépendant de cette donnée privée et stockée dans un dispositif externe. La donnée privée est mise en jeu de façon indirecte à chaque besoin
<Desc/Clms Page number 2>
d'authentification du circuit intégré, sans qu'il y ait "transfert de connaissance". Dans des procédés dits"sans transfert de connaissance" (ou"zero-knowledgeil), l'authentification se déroule suivant un protocole qui, de façon prouvée, et sous des hypothèses reconnues comme parfaitement raisonnables par la communauté scientifique, ne révèle rien de la clé secrète de l'entité dont la signature est à authentifier. Des exemples de procédés d'authentification connus auxquels s'applique la présente invention sont décrits dans la demande de brevet français nO 2 716 058 et dans le brevet américain nO 4 995 082.
L'inconvénient du recours à une donnée privée par ailleurs indispensable pour distinguer ou différencier des ensembles ou sous-ensembles électroniques, par exemple des cartes à puce, les uns par rapport aux autres est que cette donnée constitue une donnée stockée dans le composant à identifier. Une telle donnée est par conséquent susceptible d'être piratée par examen de l'élément de stockage de cette donnée dans la carte à puce, ou par piratage des registres dans lesquels est stockée la donnée, etc. La donnée privée est de plus généralement immuable pour une carte à puce donnée afin de permettre une authentification répétitive de celle-ci. Il en découle une fragilité de la fonction d'authentification.
Dans une application à des cartes à puce prépayées (par exemple, des cartes d'unités téléphoniques), si la donnée privée est la même pour toute une famille de carte à puce, cela rend possible des piratages à grande échelle.
En pratique, on n'envoie pas la donnée privée ellemême, mais un résultat de calcul prenant en compte cette donnée privée, un nombre fonction d'un nombre aléatoire choisi par le circuit intégré et communiqué au dispositif externe, et un nombre aléatoire choisi par le dispositif externe et communiqué à la carte. Le résultat est alors vérifié par le dispositif externe pour authentifier la carte.
<Desc/Clms Page number 3>
La présente invention vise à améliorer les procédures et systèmes d'authentification de circuits intégrés ayant recours à une donnée privée émanant du circuit intégré.
L'invention vise, plus particulièrement, à optimiser la sécurité anti-fraude des dispositifs électroniques ayant recours à un circuit intégré pourvu d'une donnée privée en empêchant l'extraction de cette donnée privée par diverses attaques du circuit intégré.
Pour atteindre ces objets, la présente invention prévoit un procédé d'extraction d'une donnée privée dans un circuit intégré participant à une procédure d'authentification au moyen d'un dispositif externe tenant compte de cette donnée privée, la donnée privée étant générée sur demande et rendue éphémère.
Selon un mode de réalisation de la présente invention, à chaque génération de la donnée privée, on initialise une durée de vie de cette donnée privée et on efface cette donnée d'au moins un premier élément de mémorisation la contenant, à l'issue de cette durée de vie.
Selon un mode de réalisation de la présente invention, la génération de la donnée privée et l'initialisation de sa durée de vie sont déclenchées par un même signal.
Selon un mode de réalisation de la présente invention, on réduit la durée de vie de la donnée privée au fur et à mesure de ses générations.
Selon un mode de réalisation de la présente invention, la durée de vie est variable.
Selon un mode de réalisation de la présente invention, la donnée privée est obtenue au moins partiellement à partir d'un réseau de paramètres physiques.
Selon un mode de réalisation de la présente invention, le réseau de paramètres physiques est programmable.
Selon un mode de réalisation de la présente invention, le réseau de paramètres physiques est programmé, au moins partiellement, par un mot fourni par un élément de mémorisation.
<Desc/Clms Page number 4>
Selon un mode de réalisation de la présente invention, le réseau de paramètres physiques est programmé, au moins partiellement, par du bruit.
Selon un mode de réalisation de la présente invention, on commande le réseau de paramètres physiques également hors des périodes de génération de la donnée privée.
Selon un mode de réalisation de la présente invention, la donnée privée est obtenue au moins à partir d'une première donnée mémorisée dans le circuit intégré et d'une deuxième donnée générée sur demande par le réseau de paramètres physiques.
Selon un mode de réalisation de la présente invention, on rend éphémère la deuxième donnée.
Selon un mode de réalisation de la présente invention, les nombres de bits des première et deuxième données sont proches l'un de l'autre, de préférence égaux.
La présente invention prévoit également un circuit intégré, comportant des moyens pour la mise en oeuvre du procédé.
Selon un mode de réalisation de la présente invention, le circuit comporte un circuit de réinitialisation d'au moins un élément de mémorisation.
Selon un mode de réalisation de la présente invention, le circuit de réinitialisation est constitué d'un ou plusieurs éléments retardateurs initialisés par une commande de génération de la donnée privée.
Selon un mode de réalisation de la présente invention, le retard apporté par au moins un élément retardateur du circuit de réinitialisation est variable.
Ces objets, caractéristiques et avantages, ainsi que d'autres de la présente invention seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non-limitatif en relation avec les figures jointes parmi lesquelles : la figure 1 illustre, sous forme d'organigramme, un procédé d'authentification d'un circuit intégré mettant en oeuvre une donnée privée auquel s'applique la présente invention ;
<Desc/Clms Page number 5>
la figure 2 représente, sous forme de schéma-blocs et de façon très schématique, un circuit d'extraction d'une donnée privée selon un mode de réalisation de la présente invention ; la figure 3 représente un mode de réalisation d'un réseau de paramètres physiques d'un circuit d'extraction selon la présente invention ; les figures 4A et 4B illustrent, sous forme de chronogrammes, le fonctionnement du réseau de la figure 3 ; et les figures 5,6 et 7 représentent trois modes de réalisation d'un circuit de réinitialisation d'un circuit d'extraction selon la présente invention.
Les mêmes éléments ont été désignés par les mêmes références aux différentes figures. Pour des raisons de clarté, seules les étapes de procédés et les éléments du circuit d'extraction qui sont nécessaires à la compréhension de l'invention ont été représentés aux figures et seront décrits par la suite. En particulier, les procédés d'authentification et les algorithmes ayant recours à des données privées sont parfaitement connus et ne seront pas détaillés, sauf en ce qui concerne la fourniture de la donnée privée faisant l'objet de l'invention.
Une caractéristique de la présente invention est de ne pas stocker, de façon permanente, la donnée privée ou secrète sous forme binaire dans le circuit intégré mais de générer cette donnée privée sur demande, c'est-à-dire lors d'une procédure d'authentification. L'invention prévoit de plus que cette donnée privée soit éphémère, c'est-à-dire qu'elle ne soit plus détectable dans le circuit intégré au bout d'un temps prédéterminé qui suit sa génération.
La figure 1 représente, sous forme d'organigramme simplifié, un mode de mise en oeuvre d'une procédure d'authentification du type auquel s'applique la présente invention. Cet exemple concerne l'authentification d'une carte à puce par un dispositif externe. En figure 1, on a fait ressortir les étapes de la procédure d'authentification se déroulant côté carte C ou côté lecteur R.
<Desc/Clms Page number 6>
Une phase d'authentification suit bien entendu l'introduction d'une carte dans le lecteur, l'envoi d'un identifiant par la carte au lecteur ou à un central, sa vérification par le central, puis l'extraction par le central d'une donnée ou clé publique v à partir de l'identifiant communiqué par la carte. Cette clé publique provient le plus souvent d'une table de clés.
Pour la phase d'authentification proprement dite, on commence par tirer aléatoirement, côté carte, un nombre r (bloc 10). Ce nombre r est mémorisé (bloc 11, MEM (r)) dans le circuit intégré de la carte. Puis, on applique (bloc 12) à ce nombre r un premier algorithme ALGO1 fournissant un résultat X. Le résultat X est transmis au lecteur R qui le mémorise (bloc 13, MEM (X)). Côté lecteur, on tire un nombre aléatoire e (bloc 14) que l'on mémorise (bloc 15, MEM (e)). Ce nombre e est envoyé à la carte C qui elle-même le mémorise (bloc 16, MEM (e)).
La carte extrait alors sa donnée privée s (bloc 17) selon le procédé de la présente invention. Cette donnée privée s est prise en compte dans un deuxième algorithme ALGA2 (bloc 18) avec les données r et e pour fournir un résultat Y. De préférence, le nombre r est effacé après avoir été utilisé pour le calcul du nombre Y et avant l'envoi de ce dernier. Le résultat Y est envoyé au lecteur R qui vérifie (bloc 19) au moyen d'un troisième algorithme ALGA3 que la grandeur X est bien égale à l'application de cet algorithme aux grandeurs Y, e et v. La clé publique v est bien entendu fonction de la donnée ou clé privée s de la carte. Selon le résultat du test de cohérence, le lecteur fournit un indicateur d'authentification (T) ou d'absence d'authentification (F) à la carte (bloc 20). La procédure d'authentification est alors terminée.
Un procédé d'authentification tel que décrit en figure 1 est connu. L'invention intervient uniquement pour fournir la donnée privée s de façon caractéristique.
Les tailles des différentes données sont généralement importantes pour améliorer la sécurité contre le piratage.
<Desc/Clms Page number 7>
Selon un exemple particulier de réalisation, les différentes grandeurs sont liées entre elles par les algorithmes et relations suivantes : les clés publiques v et privées s sont liées entre elles par la relation v = g-S modulo n, où g représente un générateur de groupe cyclique et n un nombre entier ; le premier algorithme ALGO1 est X gr modulo n le deuxième algorithme ALG02 est Y = r + e. s ; et le troisième algorithme ALG03 est X gy. ve modulo n.
Toujours selon cet exemple, les différentes données prises en compte peuvent avoir les tailles suivantes : n, g et X représentent chacun environ 1000 bits r, s et Y représentent chacun environ 220 bits et e représente environ 30 bits.
On notera que divers algorithmes sont connus de la technique et pourront être mis en oeuvre en ayant recours au procédé de l'invention. Par exemple, la clé publique v pourra être calculée par le lecteur ou le central à partir de l'identifiant de la carte et d'une donnée émise par cette dernière.
La figure 2 représente un mode de réalisation d'une cellule 1 d'extraction de donnée privée dans un circuit intégré selon la présente invention. La cellule 1 comporte un réseau de paramètres physiques (PPN) liés à la fabrication de la puce de circuit intégré. Ce réseau de paramètres physiques 2 fournit un grand nombre de signaux et participe à la génération de la donnée privée s selon l'invention.
Un mode de réalisation préféré d'un réseau de paramètres physiques sera illustré par la suite en relation avec la figure 3. Toutefois, on pourra également recourir à un réseau classique de paramètres physiques consistant, par exemple à mesurer des paramètres électriques. Il peut s'agir, par exemple d'une mesure d'une tension seuil d'un transistor, d'une mesure d'une résistance ou d'une mesure de capacité parasite, d'une mesure de courant produit par une source de courant, d'une mesure
<Desc/Clms Page number 8>
de constante de temps (par exemple, un circuit RC), d'une mesure d'une fréquence d'oscillation, etc. Comme ces caractéristiques sont sensibles aux dispersions technologiques et de procédé de fabrication, on peut considérer que le ou les paramètres électriques pris en compte sont propres à une fabrication et constituent une signature des circuits intégrés issus de cette fabrication.
Dans l'exemple d'une mesure de paramètres électriques, ces signaux sont convertis en signaux numériques au moyen d'un convertisseur analogique numérique 24 (ADC) et le cas échéant multiplexés par un multiplexeur 4 (MUX) pour constituer un mot binaire SP2, stocké dans un registre 25. Le mot SP2 est donc sensible aux dispersions technologiques et de procédé de fabrication. Le convertisseur 24 et le multiplexeur 4 ont été représentés en pointillés car il s'agit d'éléments optionnels. En particulier, le convertisseur 24 pourra être omis dans le mode de réalisation préféré du réseau de paramètres physiques décrit ultérieurement en relation avec la figure 3.
De préférence, les paramètres électriques mesurés au moyen du réseau 2 ne sont pas toujours les mêmes. Le réseau 2 est alors programmable. Il est paramétré ou configuré à chaque mesure à partir d'un mot binaire MP, stocké dans un registre 26. Le mot MP est propre à la puce de circuit intégré et peut être individualisé d'une carte à une autre. La mesure des paramètres physiques est déclenchée par un signal MES issu d'une unité de commande 7 de la cellule 1.
La cellule 1 reçoit de préférence un unique signal de commande St, déclencheur d'une extraction du paramètre s délivré sur une unique borne de sortie de la cellule 1.
Le mot SP2 est fourni à un combineur 8 recevant également un mot binaire SP1 stocké dans un registre 9. Le rôle du circuit 8 est de combiner les mots SP1 et SP2 pour fournir la donnée privée s stockée dans un registre 10.
A titre d'exemple particulier de réalisation, la combinaison opérée par le combineur 8 peut être du type :
<Desc/Clms Page number 9>
s = ( (SP1-SP2) 2 + (SPI + SP2) 2) 2 modulo P, où P est un nombre premier sur k bits. Le nombre s est alors un mot de k bits obtenu à partir des mots SP1 et SP2 respectivement sur kl et k2 bits. De préférence, les nombres kl et k2 de bits
des mots SP1 et SP2 sont égaux. Cela permet de garder l'égalité de difficulté à un pirate éventuel pour le cas où une partie (SP1 ou SP2) du mot s viendrait à être découverte.
Comme le nombre MP, le nombre SP1 est différent d'une carte à l'autre. Le combineur 8 garantit la taille de la donnée s et une valeur non nulle. Le recours à une donnée SP1 propre à la carte garantit que la clé privée s soit unique quelle que soit la donnée MP fournie au réseau de paramètres physiques pour le configurer. Selon un mode de réalisation simplifié, par exemple pour un circuit de taille réduite, on pourra chercher, pour une taille de clé privée donnée, à limiter la taille du réseau de paramètres physiques en augmentant la taille de la donnée SP1.
Selon l'invention, la cellule 1 comporte également un circuit 22 de réinitialisation (remise à zéro ou à un) de certains de ses registres. Le circuit 22 a notamment pour rôle de rendre temporaire la présence de la donnée privée s dans le registre 21. Pour garantir une sécurité optimale, le circuit 22 (Res) commande la réinitialisation non seulement du registre 21 mais également du registre 25 contenant la donnée SP2 extraite du réseau 2. En d'autres termes, on fixe la durée de vie de la donnée privée et/ou de ses constituants à partir de sa génération.
Un avantage de la présente invention est qu'en combinant le recours à un réseau de paramètres physiques pour conditionner au moins une partie de la donnée privée et à une réinitialisation temporisée des éléments de mémorisation (par exemple, des registres) stockant cette donnée privée, on empêche à un pirate éventuel de découvrir la donnée privée de la carte par un examen par exemple visuel.
Les combinaisons des paramètres MP et SP1 conditionnant l'obtention de la donnée privée augmentent la difficulté de
<Desc/Clms Page number 10>
piratage. On notera toutefois que le recours à une combinaison des mots SP1 et SP2 est optionnel. On pourra dans une première version se contenter de générer directement la donnée privée à partir du réseau de paramètres physiques et de rendre celle-ci éphémère grâce au circuit 22. Selon une autre variante simplifiée de réalisation, les données MP et SP1 sont confondues. Dans ce cas, un seul registre 9 ou 26 est utilisé. On pourra également détecter la cohérence de la réponse du réseau de paramètres physiques dans la mesure où les données SP1 et SP2 sont alors corrélées. Cela peut permettre, par exemple, de détecter une
copie réalisée après piratage de la donnée SP1 et reproduction du réseau 2, si les dispersions technologiques ou de procédé de fabrication sont différentes pour le circuit d'origine et le circuit pirate.
copie réalisée après piratage de la donnée SP1 et reproduction du réseau 2, si les dispersions technologiques ou de procédé de fabrication sont différentes pour le circuit d'origine et le circuit pirate.
Le circuit 22 est par exemple commandée par une horloge CLK déclenchée par l'unité de commande 7 à l'arrivée d'un signal St de déclenchement de l'extraction du paramètre s.
Selon un mode de réalisation de l'invention appliqué au cas ou un code est saisi par l'utilisateur de la carte, ce code peut être stocké de manière directe ou modifiée dans le registre 9 pour constituer le code SP1. Dans ce cas, le circuit 22 peut également remettre à zéro le registre 9 pour empêcher la présence permanente du code SP1 sur la carte. Cette fonction est illustrée par un pointillé en figure 2.
Selon une autre variante, on peut adjoindre à la commande du réseau de paramètres physiques une source de bruit (pointillés 23). Il s'agit de fournir au réseau de paramètres physiques des commandes aléatoires hors de périodes d'authentification. Cela rend alors plus difficile le piratage par observation de la consommation du circuit. En faisant fonctionner le réseau 2 en permanence, il sera plus difficile pour un pirate de repérer à quel moment celui-ci est utilisé pour générer une clé. De plus, un pirate pourra considérer le réseau 2 comme une simple source de bruit analogique utilisée pour brouiller la consommation, ce qui est connu en soi, et par suite
<Desc/Clms Page number 11>
éliminer la contribution à la consommation dans son attaque, y compris au moment où le réseau est utilisé pour générer une clé.
Le signal de mesure commande alors un multiplexeur chargé de sélectionner ou de combiner les signaux de configuration représentés par le mot MP et les bits M23 arrivant sur la liaison 23. Le signal MES est, par exemple, un bit de déclenchement d'un multiplexeur 21 des signaux MP et M23. La source de bruit 23 peut remplacer tout ou partie du mot MP dans le paramétrage ou la programmation du réseau 2.
Selon une autre variante, le mot MP est fourni en permanence au réseau 2 qui passe alors son temps à générer la donnée SP2. La clé privée s reste toutefois générée de façon éphémère lors de la combinaison avec la donnée SPI. Il y a alors encore plus de chances que le pirate filtre la réponse en consommation du réseau 2 lors d'une attaque consistant en examiner la consommation du circuit.
La réalisation d'un réseau de paramètres physiques consistant à mesurer des paramètres électriques présents dans le réseau sous la forme de résistances, de capacités parasites ou analogues ne fait pas l'objet de la présente invention. Une telle réalisation est parfaitement classique. Il pourra s'agir, par exemple, d'un réseau de résistances et/ou de capacités commutables associées en parallèle et/ou en série, les commutateurs étant commandés en fonction des signaux de configuration MP et éventuellement M23 arrivant sur le réseau 2.
En guise de réseaux de paramètres physiques, on pourra également recourir à des circuits faisant appel à une mesure temporelle. Par exemple, on mesure le temps de lecture/écriture d'une mémoire de type EEPROM. Un exemple de réseau de paramètres physiques de ce type est décrit dans le brevet américain NO 5818738.
La figure 3 représente le schéma électrique d'un mode de réalisation préféré d'un réseau de paramètres physiques selon la présente invention.
<Desc/Clms Page number 12>
Dans cet exemple, le circuit 2 comporte une unique borne 42 d'entrée destinée à recevoir un signal numérique E de déclenchement d'une génération. Pour la mise en oeuvre de l'invention, le signal E doit comprendre, comme on le verra par la suite en relation avec les figures 4A et 4B, au moins un front par identification. Il pourra s'agir directement du signal St.
Le circuit 2 délivre directement un code binaire Bl, B2,..., Bi-1, Bi,..., Bji-i, Bn sur un nombre de bits prédéterminé, ce code étant sensible aux dispersions technologiques et de procédé de fabrication du circuit. Chaque bit Bi est délivré sur une borne 31, 32,.... 3i-l'3i,..., 3n-1 3n du circuit 2 qui lui est propre. Le circuit 2 délivre donc le code d'identification sous forme parallèle.
A chaque bit Bi du code d'identification est associé un chemin électrique P1, P2, ..., Pi, ..., Pn reliant la borne d'entrée commune 42 à une borne 3i de même rang. De préférence, les retards apportés par les différents chemins électriques Pi sont choisis pour être légèrement différents les uns des autres de façon à garantir une sensibilité aux dispersions technologiques du procédé de fabrication.
On voit donc déjà que, par les différents retards apportés par les chemins électriques, le front déclencheur du signal d'entrée E est reproduit sur les différentes sorties à des instants différents.
On prévoit d'effectuer la lecture de l'information présente aux sorties du circuit 2 de façon synchronisée et à un instant correspondant, de façon approximative, au retard moyen théorique entre les différents chemins électriques. Plus précisément, selon le mode de réalisation préféré de l'invention illustré par la figure 3, on prévoit un chemin électrique moyen 44 (CO) pour fixer l'instant de lecture à partir de l'apparition du front déclencheur du signal d'entrée E.
Par exemple, le chemin 44 relie l'entrée 42 du circuit
2 aux bornes Ck de bascules 51 52,.... 5i,..., 5n faisant partie des chemins électriques respectifs Pl'P2,..., Pi,...,
2 aux bornes Ck de bascules 51 52,.... 5i,..., 5n faisant partie des chemins électriques respectifs Pl'P2,..., Pi,...,
<Desc/Clms Page number 13>
Pn et dont les sorties respectives Q constituent les bornes dz 32,..., 3i,..., 3n de sortie du circuit 2. Selon ce mode de réalisation, chaque chemin électrique Pi comporte un élément retardateur 61 (Cl), 62 (C2)..., 6i (Ci)..., 6n (Cn) reliant l'entrée 42 du circuit à l'entrée D de la bascule correspondante du chemin. Les éléments retardateurs 6i sont les éléments qui présentent, selon la présente invention, des retards différents les uns par rapport aux autres. En effet, les bascules Si ont, de préférence, la même constitution. Elles participent toutefois au retard apporté au signal d'entrée jusqu'aux bornes de sortie respective du circuit 2 par rapport au retard moyen CO apporté par l'élément 44.
Lorsqu'on applique un front sur le signal d'entrée E, ce front arrive sur les entrées D respectives des bascules à des instants différents. La lecture de l'état d'entrée des différentes bascules est synchronisée par le front du signal E retardé, cette fois, par l'élément 44. C'est notamment pour cette raison que l'on choisit préférentiellement un retard CO correspondant approximativement au retard moyen des différents éléments 6i.
Dans l'exemple de la figure 3, les différentes sorties
3i du circuit 2 sont reliées individuellement en entrée d'un registre de mémorisation du code binaire obtenu, chaque bit Bi correspondant à l'une des sorties du circuit. En pratique, ce registre est le registre 25 de la figure 2.
3i du circuit 2 sont reliées individuellement en entrée d'un registre de mémorisation du code binaire obtenu, chaque bit Bi correspondant à l'une des sorties du circuit. En pratique, ce registre est le registre 25 de la figure 2.
Les figures 4A et 4B illustrent, sous forme de chronogrammes et sans respect d'échelle, le fonctionnement du réseau 2 de la figure 3. Les figures 4A et 4B représentent des exemples d'allures du signal E, et des signaux en sortie des différents éléments retardateurs. Dans l'exemple des figures 4A et 4B, on considère pour simplifier le cas d'un code binaire sur quatre bits. Les chronogrammes ont été désignés par les références CO, Cl, C2, C3 et C4.
<Desc/Clms Page number 14>
La différence entre les figures 4A et 4B représente la différence entre deux circuits 1 intégrés sur des puces issues de fabrications différentes.
En figure 4A, on suppose qu'à un instant t5, on déclenche un front montant sur le signal E. Ce front apparaît sur les différentes entrées des bascules D (correspondant aux sorties des éléments retardateurs Cl, C2, C3 et C4) à des instants respectifs différents tl, t2, t3 et t4. Par ailleurs, l'élément 44 (CO) apporte un retard déclenchant la lecture des données en entrée des bascules à un instant tO. Tous les chemins qui génèrent un retard supérieur au retard CO fournissent un bit à l'état a dans la mesure où le front du signal E ne leur est pas encore parvenu. Tous les chemins qui génèrent un délai inférieur au délai CO produisent un bit à l'état 1 dans le mesure où le front du signal E arrive sur l'entrée de la bascule correspondante avant l'expiration du délai CO. Dans l'exemple de la figure 4A, à l'instant tO, on fournit le code 1010 comme code d'identification.
La figure 4B illustre le même circuit issu d'un procédé de fabrication différent donnant donc une puce différente. Le code obtenu y est différent. Par exemple, il s'agit du code 0010.
En figure 4B, on a fait apparaître arbitrairement un instant t5
identique au cas de la figure 4A. Par contre, les instants t'O, t'1, t'2, t'3 et t'4 auxquels le front du signal E a terminé de parcourir les chemins respectifs CO, Cl, C2, C3 et C4 sont différents du cas de la figure 4A.
identique au cas de la figure 4A. Par contre, les instants t'O, t'1, t'2, t'3 et t'4 auxquels le front du signal E a terminé de parcourir les chemins respectifs CO, Cl, C2, C3 et C4 sont différents du cas de la figure 4A.
On remarquera que l'élément retardateur CO est lui-même sensible aux dispersions technologiques et de procédé de fabrication. Cela n'a cependant pas d'incidence pour la mise en oeuvre de l'invention dans la mesure où ce retard représente un retard moyen et où le code recherché est arbitraire. En effet, pour la génération d'une clé privée, ce qui est important, c'est que des circuits intégrés issus d'un même procédé de fabrication fournissent le même code. Comme les éléments retardateurs sont sensibles aux dispersions de procédé de fabrication, ce sera le
<Desc/Clms Page number 15>
Un avantage de ce mode de réalisation est que le réseau 2 est particulièrement sensible. En pratique, la différence détectable des retards apportés par les différents chemins est de l'ordre de la picoseconde. Or, les dispersions des procédés de fabrication ou technologiques apportent le plus souvent des différences de l'ordre d'au moins une dizaine de picosecondes.
Un autre avantage est qu'en cas de dérive dans le temps d'un des retards apportés par les éléments, cela n'affecte pas les résultats du circuit. En effet, tous les éléments de retard étant de préférence de constitution similaire, la dispersion sera dans le même sens pour tous les éléments (chemins).
Pour réaliser les éléments retardateurs des chemins électriques du réseau de la figure 3, on pourra utiliser n'importe quels éléments intégrés sensibles aux dispersions technologiques ou influencés par le procédé de fabrication. Il pourra s'agir, par exemple, de séries de résistances et/ou de condensateurs. Pour les résistances, on pourra recourir à des résistances dans l'épaisseur du circuit intégré, mais on préférera utiliser des résistances en silicium polycristallin dont la valeur est liée à la géométrie et qui présentent l'avantage d'être moins dépendante de la température. Bien entendu, les éléments retardateurs pourront prendre d'autres formes, pourvu d'être sensibles aux dispersions technologiques et/ou de procédés de fabrication. De plus, le choix de la plage de variation des retards apportés par les différents éléments dépendent de l'application et de la sensibilité souhaitée.
Un avantage du réseau de paramètres physiques illustré par la figure 3 est qu'il évite le recours à un convertisseur analogique/numérique 24 dans la mesure où le mot binaire est directement délivré par les sorties respectives des bascules.
Les figures 5 à 7 représentent, de façon schématique et partielle, différents modes de réalisation du circuit 22 de réinitialisation.
<Desc/Clms Page number 16>
Selon un premier mode de réalisation illustré par la figure 5, le circuit 22 est constitué de plusieurs éléments retardateurs 71 (T), 72 ("CI), 73 (-c") pour différencier les instants de réinitialisation des registres 25,9 et 21. Dans l'exemple de la figure 5, l'élément 71 apporte le retard T de réinitialisation du registre 25. L'élément 72 et l'élément 71 avec lequel il est en série apportent le retard r+r'de réinitialisation du registre 9. L'élément 73 et l'élément 71 avec
lequel il est en série apportent le retard T+T"de réinitialisation du registre 21. On voit que, de façon simplifiée, le signal appliqué à l'élément retardateur 71 constituant le premier élément du circuit 22 peut être directement le bit du signal St qui peut également constituer le bit MES de commande du réseau de paramètres physiques. Dans ce cas, il suffit que les entrées de réinitialisation des différents registres soient activables par l'état approprié du bit St.
lequel il est en série apportent le retard T+T"de réinitialisation du registre 21. On voit que, de façon simplifiée, le signal appliqué à l'élément retardateur 71 constituant le premier élément du circuit 22 peut être directement le bit du signal St qui peut également constituer le bit MES de commande du réseau de paramètres physiques. Dans ce cas, il suffit que les entrées de réinitialisation des différents registres soient activables par l'état approprié du bit St.
Selon le deuxième mode de réalisation de la figure 6, on utilise le signal MES pour déclencher un élément retardateur 74 fournissant un retard minimal rm. Puis on ajoute à ce retard minimal, un retard variable tu fourni par un élément 75 configurable en fonction du signal MP et, s'il existe, du bruit 23. La figure 6 illustre également un exemple de commande du réseau de paramètres physiques plus détaillé qu'en figure 2. On y a fait figurer un multiplexeur 76 de combinaison des signaux MP et du bruit 23 ou de sélection du signal MP ou du bruit 23. La lecture de ce multiplexeur est commandée par le signal MES. La sortie du multiplexeur délivre un mot de configuration dans un registre 77 (REG). Ce mot de configuration sert au réseau de
paramètres physiques 2"proprement dit et, selon ce mode de réalisation, à configurer le retard variable rv.
paramètres physiques 2"proprement dit et, selon ce mode de réalisation, à configurer le retard variable rv.
Selon un troisième mode de réalisation illustré par la figure 7, on utilise un retard T fixe, fourni par un élément 71.
Toutefois, au lieu d'être déclenché par l'apparition du signal St, le retard-c est déclenché par la mise en oeuvre du réseau de paramètres physiques, c'est-à-dire par le multiplexeur 76 ou par
<Desc/Clms Page number 17>
le registre 77 (non représenté en figure 7), ou par un signal produit par le réseau lui-même. Dans l'exemple de la figure 7, l'élément retardateur 71 peut être bien entendu associé aux éléments 72 et 73 de la figure 5. Plus généralement, les différents exemples de réalisation ainsi que d'autres peuvent être prévus individuellement ou en combinaison.
Bien entendu, la présente invention est susceptible de diverses variantes et modifications qui apparaîtront à l'homme de l'art. En particulier, bien que l'invention ait été décrite en relation avec un procédé d'authentification particulier, celle-ci s'applique quelle que soit la procédure d'authentification envisagée, pourvu qu'elle ait recours à une donnée privée de la part du circuit à identifier.
De plus, on a fait référence à des registres de stockage qui pourront être remplacés par tout élément de mémorisation adapté, par exemple, des mémoires ou des parties de mémoire volatiles ou non selon le type de donnée stockée. En outre, l'écriture et la lecture des données dans ces éléments de mémorisation pourront être série ou parallèle.
Enfin, on pourra prévoir de réduire le temps de présence de la clé privée au fur et à mesure de ses générations lors d'une même authentification, par exemple lors de générations successives requises par des authentifications infructueuses. Cela améliore encore la fiabilité en réduisant la présence de la clé privée pour le cas où il s'agit d'une attaque visant à détecter cette clé.
Claims (17)
- REVENDICATIONS 1. Procédé d'extraction d'une donnée privée (s) dans un circuit intégré participant à une procédure d'authentification au moyen d'un dispositif externe tenant compte de cette donnée privée, caractérisé en ce qu'il consiste à générer la donnée privée sur demande et à la rendre éphémère.
- 2. Procédé selon la revendication 1, caractérisé en ce qu'il consiste, à chaque génération de la donnée privée (s), à initialiser une durée de vie de cette donnée privée et effacer cette donnée d'au moins un premier élément de mémorisation (21) la contenant, à l'issue de cette durée de vie.
- 3. Procédé selon la revendication 2, caractérisé en ce que la génération de la donnée privée et l'initialisation de sa durée de vie sont déclenchées par un même signal (St).
- 4. Procédé selon la revendication 2 ou 3, caractérisé en ce qu'il consiste à réduire la durée de vie de la donnée privée (s) au fur et à mesure de ses générations.
- 5. Procédé selon l'une quelconque des revendications 2 à 4, caractérisé en ce que la durée de vie est variable.
- 6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que la donnée privée (s) est obtenue au moins partiellement à partir d'un réseau de paramètres physiques (2).
- 7. Procédé selon la revendication 6, caractérisé en ce que le réseau de paramètres physiques (2) est programmable.
- 8. Procédé selon la revendication 7, caractérisé en ce que le réseau de paramètres physiques (2) est programmé, au moins partiellement, par un mot (MP) fourni par un élément de mémorisation.
- 9. Procédé selon la revendication 7 ou 8, caractérisé en ce que le réseau de paramètres physiques (2) est programmé, au moins partiellement, par du bruit (23).
- 10. Procédé selon l'une quelconque des revendications 6 à 9, caractérisé en ce qu'il consiste à commander le réseau de<Desc/Clms Page number 19>paramètres physiques (2) également hors des périodes de génération de la donnée privée (s).
- 11. Procédé selon l'une quelconque des revendications 6 à 10, caractérisé en ce que la donnée privée (s) est obtenue au moins à partir : d'une première donnée (SP1) mémorisée dans le circuit intégré ; et d'une deuxième donnée (SP2) générée sur demande par le réseau de paramètres physiques (2).
- 12. Procédé selon la revendication 11, caractérisé en ce qu'il consiste à rendre éphémère la deuxième donnée (SP2).
- 13. Procédé selon la revendication 11 ou 12, caractérisé en ce que les nombres de bits des première (SP1) et deuxième (SP2) données sont proches l'un de l'autre, de préférence égaux.
- 14. Circuit intégré, caractérisé en ce qu'il comporte des moyens pour la mise en oeuvre du procédé selon l'une quelconque des revendications 1 à 13.
- 15. Circuit selon la revendication 14, caractérisé en ce qu'il comporte un circuit (22) de réinitialisation d'au moins un élément de mémorisation (21,9, 25).
- 16. Circuit selon la revendication 15, caractérisé en ce que le circuit de réinitialisation est constitué d'un ou plusieurs éléments retardateurs (71,72, 73,74, 75) initialisés par une commande de génération de la donnée privée (s).
- 17. Circuit selon la revendication 16, caractérisé en ce que le retard apporté par au moins un élément retardateur (75) du circuit de réinitialisation est variable.
Priority Applications (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0104586A FR2823398B1 (fr) | 2001-04-04 | 2001-04-04 | Extraction d'une donnee privee pour authentification d'un circuit integre |
| FR0115531A FR2823397A1 (fr) | 2001-04-04 | 2001-11-30 | Diversification d'un identifiant unique d'un circuit integre |
| FR0115526A FR2823401A1 (fr) | 2001-04-04 | 2001-11-30 | Regeneration d'une quantite secrete a partir d'un identifiant d'un circuit integre |
| JP2002580278A JP2004534992A (ja) | 2001-04-04 | 2002-04-04 | 集積回路を認証するための私的データの抽出 |
| EP02730352A EP1374191A2 (fr) | 2001-04-04 | 2002-04-04 | Extraction d'une donnee privee pour authentification d'un circuit integre |
| PCT/FR2002/001190 WO2002082389A2 (fr) | 2001-04-04 | 2002-04-04 | Extraction d'une donnee privee pour authentification d'un circuit integre |
| US10/473,903 US7827413B2 (en) | 2001-04-04 | 2002-04-04 | Extraction of a private datum to authenticate an integrated circuit |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR0104586A FR2823398B1 (fr) | 2001-04-04 | 2001-04-04 | Extraction d'une donnee privee pour authentification d'un circuit integre |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| FR2823398A1 true FR2823398A1 (fr) | 2002-10-11 |
| FR2823398B1 FR2823398B1 (fr) | 2003-08-15 |
Family
ID=8861937
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| FR0104586A Expired - Lifetime FR2823398B1 (fr) | 2001-04-04 | 2001-04-04 | Extraction d'une donnee privee pour authentification d'un circuit integre |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7827413B2 (fr) |
| EP (1) | EP1374191A2 (fr) |
| JP (1) | JP2004534992A (fr) |
| FR (1) | FR2823398B1 (fr) |
| WO (1) | WO2002082389A2 (fr) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7840803B2 (en) * | 2002-04-16 | 2010-11-23 | Massachusetts Institute Of Technology | Authentication of integrated circuits |
| FR2875949A1 (fr) * | 2004-09-28 | 2006-03-31 | St Microelectronics Sa | Verrouillage d'un circuit integre |
| GB0615392D0 (en) * | 2006-08-03 | 2006-09-13 | Wivenhoe Technology Ltd | Pseudo random number circuitry |
| JP2008059150A (ja) * | 2006-08-30 | 2008-03-13 | Fuji Xerox Co Ltd | 情報処理プログラム、画像読取プログラム、情報処理装置、画像読取装置および情報処理システム |
| US8312269B2 (en) * | 2007-11-28 | 2012-11-13 | Hitachi Global Storage Technologies Netherlands, B.V. | Challenge and response access control providing data security in data storage devices |
| US9032476B2 (en) * | 2009-05-12 | 2015-05-12 | Empire Technology Development Llc | Secure authentication |
| EP2434683A4 (fr) | 2009-05-22 | 2016-04-20 | Mitsubishi Electric Corp | Dispositif électronique, programme de génération de clé, support d'enregistrement et procédé de génération de clé |
| US8572394B2 (en) | 2009-09-04 | 2013-10-29 | Computer Associates Think, Inc. | OTP generation using a camouflaged key |
| US8843757B2 (en) * | 2009-11-12 | 2014-09-23 | Ca, Inc. | One time PIN generation |
| US8457919B2 (en) * | 2010-03-31 | 2013-06-04 | Inside Secure | Process for testing the resistance of an integrated circuit to a side channel analysis |
| FR2964218B1 (fr) * | 2010-08-25 | 2013-08-09 | Oberthur Technologies | Securisation d'un element de memorisation d'une donnee binaire, registre de controle et d'une carte a puce |
| DE102013203415B4 (de) * | 2013-02-28 | 2016-02-11 | Siemens Aktiengesellschaft | Erstellen eines abgeleiteten Schlüssels aus einem kryptographischen Schlüssel mittels einer physikalisch nicht klonbaren Funktion |
| WO2015089346A1 (fr) | 2013-12-13 | 2015-06-18 | Battelle Memorial Institute | Classification de composants électroniques |
| US9970986B2 (en) * | 2014-03-11 | 2018-05-15 | Cryptography Research, Inc. | Integrated circuit authentication |
| US10789550B2 (en) | 2017-04-13 | 2020-09-29 | Battelle Memorial Institute | System and method for generating test vectors |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19843424A1 (de) * | 1998-09-22 | 2000-03-23 | Fraunhofer Ges Forschung | Vorrichtung zum Liefern von Ausgangsdaten als Reaktion auf Eingangsdaten und Verfahren zum Überprüfen der Authentizität und Verfahren zum verschlüsselten Übertragen von Informationen |
Family Cites Families (33)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE3415209A1 (de) | 1983-04-29 | 1984-10-31 | N.V. Philips' Gloeilampenfabrieken, Eindhoven | Speichereinheit mit einem speicher und einer schutzeinheit |
| WO1984004614A1 (fr) | 1983-05-13 | 1984-11-22 | Ira Dennis Gale | Dispositif de protection des donnees |
| EP0186230A2 (fr) | 1984-12-21 | 1986-07-02 | Koninklijke Philips Electronics N.V. | Unité de commande d'accès en mémoire à vérification parallèle d'adresse virtuelle et de mot d'action |
| DE3736882C2 (de) * | 1987-10-30 | 1997-04-30 | Gao Ges Automation Org | Verfahren zur Echtheitsprüfung eines Datenträgers mit integriertem Schaltkreis |
| DE4243888A1 (de) * | 1992-12-23 | 1994-06-30 | Gao Ges Automation Org | Datenträger und Verfahren zur Echtheitsprüfung eines Datenträgers |
| US5679945A (en) * | 1995-03-31 | 1997-10-21 | Cybermark, L.L.C. | Intelligent card reader having emulation features |
| AU734654B2 (en) * | 1996-02-09 | 2001-06-21 | Integrated Technologies Of America, Inc. | Access control/crypto system |
| US5887065A (en) * | 1996-03-22 | 1999-03-23 | Activcard | System and method for user authentication having clock synchronization |
| US8549310B2 (en) * | 1996-04-08 | 2013-10-01 | Walker Digital, Llc | Method and apparatus for secure measurement certification |
| US6085323A (en) * | 1996-04-15 | 2000-07-04 | Kabushiki Kaisha Toshiba | Information processing system having function of securely protecting confidential information |
| KR100213188B1 (ko) * | 1996-10-05 | 1999-08-02 | 윤종용 | 사용자 인증 장치 및 방법 |
| JP3440763B2 (ja) * | 1996-10-25 | 2003-08-25 | 富士ゼロックス株式会社 | 暗号化装置、復号装置、機密データ処理装置、及び情報処理装置 |
| AUPO799197A0 (en) * | 1997-07-15 | 1997-08-07 | Silverbrook Research Pty Ltd | Image processing method and apparatus (ART01) |
| JPH11191149A (ja) * | 1997-12-26 | 1999-07-13 | Oki Electric Ind Co Ltd | Icカード用lsiおよびその使用方法 |
| US6028445A (en) * | 1997-12-30 | 2000-02-22 | Xilinx, Inc. | Decoder structure and method for FPGA configuration |
| US6657535B1 (en) * | 1998-08-31 | 2003-12-02 | Hawkeye Global, Inc. | System for signaling a device at a remote location |
| US6192436B1 (en) * | 1998-09-18 | 2001-02-20 | Xilinx Inc. | System and method for configuration of electronic devices using a smart card which having configuration data stored therein |
| US6161213A (en) * | 1999-02-17 | 2000-12-12 | Icid, Llc | System for providing an integrated circuit with a unique identification |
| US6654889B1 (en) * | 1999-02-19 | 2003-11-25 | Xilinx, Inc. | Method and apparatus for protecting proprietary configuration data for programmable logic devices |
| US7017043B1 (en) * | 1999-03-19 | 2006-03-21 | The Regents Of The University Of California | Methods and systems for the identification of circuits and circuit designs |
| JP3342677B2 (ja) * | 1999-06-22 | 2002-11-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | コンテンツデータ鑑定装置 |
| US6829356B1 (en) * | 1999-06-29 | 2004-12-07 | Verisign, Inc. | Server-assisted regeneration of a strong secret from a weak secret |
| FR2796175B1 (fr) | 1999-07-09 | 2001-08-31 | Sagem | Procede de preservation de l'integrite de donnees logiciel de mise en oeuvre de donnees sensibles confidentielles et carte support de ces donnees |
| US7005733B2 (en) * | 1999-12-30 | 2006-02-28 | Koemmerling Oliver | Anti tamper encapsulation for an integrated circuit |
| US7240218B2 (en) * | 2000-02-08 | 2007-07-03 | Algotronix, Ltd. | Method of using a mask programmed key to securely configure a field programmable gate array |
| US6769062B1 (en) * | 2000-10-25 | 2004-07-27 | Ericsson Inc. | Method and system of using an insecure crypto-accelerator |
| US6948065B2 (en) * | 2000-12-27 | 2005-09-20 | Intel Corporation | Platform and method for securely transmitting an authorization secret |
| FR2825873A1 (fr) * | 2001-06-11 | 2002-12-13 | St Microelectronics Sa | Stockage protege d'une donnee dans un circuit integre |
| JP2003078518A (ja) * | 2001-09-03 | 2003-03-14 | Fuji Xerox Co Ltd | 暗号化・復号システム、暗号化装置、復号装置およびそれらの方法 |
| JP3904432B2 (ja) * | 2001-11-16 | 2007-04-11 | 株式会社ルネサステクノロジ | 情報処理装置 |
| US7769997B2 (en) * | 2002-02-25 | 2010-08-03 | Network Resonance, Inc. | System, method and computer program product for guaranteeing electronic transactions |
| US7840803B2 (en) * | 2002-04-16 | 2010-11-23 | Massachusetts Institute Of Technology | Authentication of integrated circuits |
| WO2006053304A2 (fr) * | 2004-11-12 | 2006-05-18 | Pufco, Inc. | Clés de dispositifs volatiles, et leurs applications |
-
2001
- 2001-04-04 FR FR0104586A patent/FR2823398B1/fr not_active Expired - Lifetime
-
2002
- 2002-04-04 JP JP2002580278A patent/JP2004534992A/ja active Pending
- 2002-04-04 US US10/473,903 patent/US7827413B2/en not_active Expired - Fee Related
- 2002-04-04 EP EP02730352A patent/EP1374191A2/fr not_active Withdrawn
- 2002-04-04 WO PCT/FR2002/001190 patent/WO2002082389A2/fr not_active Ceased
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE19843424A1 (de) * | 1998-09-22 | 2000-03-23 | Fraunhofer Ges Forschung | Vorrichtung zum Liefern von Ausgangsdaten als Reaktion auf Eingangsdaten und Verfahren zum Überprüfen der Authentizität und Verfahren zum verschlüsselten Übertragen von Informationen |
Also Published As
| Publication number | Publication date |
|---|---|
| FR2823398B1 (fr) | 2003-08-15 |
| EP1374191A2 (fr) | 2004-01-02 |
| US20040114765A1 (en) | 2004-06-17 |
| WO2002082389A3 (fr) | 2003-02-13 |
| JP2004534992A (ja) | 2004-11-18 |
| WO2002082389A2 (fr) | 2002-10-17 |
| US7827413B2 (en) | 2010-11-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1267248B1 (fr) | Stockage protégé d'une donnée dans un circuit intégré | |
| FR2823398A1 (fr) | Extraction d'une donnee privee pour authentification d'un circuit integre | |
| EP0402210B1 (fr) | Procédé pour vérifier l'intégrité d'un logiciel ou de données, et système pour la mise en oeuvre de ce procédé | |
| EP1234284A1 (fr) | Procede de securisation de la phase de pre-initialisation d'un systeme embarque a puce electronique, notamment d'une carte a puce, et systeme embarque mettant en oeuvre le procede | |
| FR2948795A1 (fr) | Detecteur d'injection de fautes dans un circuit integre | |
| FR3038416A1 (fr) | ||
| EP1391853A1 (fr) | Diversification d'un identifiant unique d'un circuit intégré | |
| WO1999048239A1 (fr) | Procede de securisation de donnees mettant en oeuvre un algorithme cryptographique | |
| FR2833119A1 (fr) | Generation de quantites secretes d'identification d'un circuit integre | |
| EP1359550A1 (fr) | Régéneration d'une quantité secrète à partir d'un identifiant d'un circuit intégré | |
| EP0884704B1 (fr) | Procédé d'authentification de circuit intégré | |
| EP1436792B1 (fr) | Protocole d'authentification a verification d'integrite de memoire | |
| FR2840083A1 (fr) | Test d'un algorithme execute par un circuit integre | |
| FR2949010A1 (fr) | Procede de contremesure pour proteger des donnees memorisees | |
| EP1742407B1 (fr) | Protection d'une quantité numérique contenue dans un circuit intégré comportant une interface JTAG | |
| EP1942599A1 (fr) | Protection d'une donnée statique dans un circuit intégré | |
| EP1633074A1 (fr) | Circuit intégré à signal de sécurisation codé, procédé de sécurisation, dispositif et signal de sécurisation codé au moyen d'une clé dynamique correspondants. | |
| EP1442556A2 (fr) | Procede securise de mise en oeuvre d'un algorithme de cryptographie et composant correspondant | |
| EP1571522A1 (fr) | Dispositif de protection contre l'injection d'erreur dans un bloc logique asynchrone d'un module logique élémentaire | |
| WO2002082449A1 (fr) | Stockage d'un code binaire immuable dans un circuit integre | |
| WO2017060495A1 (fr) | Procédé et système de sauvegarde répartie dynamique | |
| FR2823401A1 (fr) | Regeneration d'une quantite secrete a partir d'un identifiant d'un circuit integre | |
| FR3122753A1 (fr) | Procédé d'exécution d'un code binaire par un microprocesseur | |
| FR2823397A1 (fr) | Diversification d'un identifiant unique d'un circuit integre | |
| EP1571754A1 (fr) | Dispositif de protection contre l'injection d'erreur dans une bascule synchrone d'un module logique élémentaire |










