FR3021143A1 - Element securise et procede mis en œuvre dans un tel element securise - Google Patents

Element securise et procede mis en œuvre dans un tel element securise Download PDF

Info

Publication number
FR3021143A1
FR3021143A1 FR1454404A FR1454404A FR3021143A1 FR 3021143 A1 FR3021143 A1 FR 3021143A1 FR 1454404 A FR1454404 A FR 1454404A FR 1454404 A FR1454404 A FR 1454404A FR 3021143 A1 FR3021143 A1 FR 3021143A1
Authority
FR
France
Prior art keywords
command
isd
memory
volatile memory
secure element
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
Application number
FR1454404A
Other languages
English (en)
Other versions
FR3021143B1 (fr
Inventor
Marc Pardieu
Jeremy Billaud
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Idemia France SAS
Original Assignee
Oberthur Technologies SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Oberthur Technologies SA filed Critical Oberthur Technologies SA
Priority to FR1454404A priority Critical patent/FR3021143B1/fr
Publication of FR3021143A1 publication Critical patent/FR3021143A1/fr
Application granted granted Critical
Publication of FR3021143B1 publication Critical patent/FR3021143B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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/77Protecting 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 in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07345Means for preventing undesired reading or writing from or onto record carriers by activating or deactivating at least a part of the circuit on the record carrier, e.g. ON/OFF switches
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms 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/0806Details of the card

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

L'invention concerne un élément sécurisé, tel qu'une carte à microcircuit, comprenant une mémoire non-volatile réinscriptible et une interface de communication avec un lecteur externe, ainsi qu'un procédé mis en œuvre dans un tel élément sécurisé. Ce procédé comprend les étapes suivantes : - réception d'une commande à travers l'interface de communication ; - à réception de ladite commande, copie d'une image mémoire mémorisée dans une zone (ISD, D1, D2 ; ISD', D1', D2') de la mémoire non-volatile vers une partie (ISD', D1', D2' ; ISD, D1, D2) de la mémoire non-volatile distincte de ladite image mémoire.

Description

DOMAINE TECHNIQUE AUQUEL SE RAPPORTE L'INVENTION La présente invention concerne un élément sécurisé, tel qu'une carte à microcircuit, et un procédé mis en oeuvre dans un tel élément sécurisé. Elle concerne plus particulièrement un élément sécurisé comprenant une mémoire non-volatile réinscriptible et une interface de communication avec un lecteur externe. L'invention s'applique particulièrement avantageusement aux cartes à microcircuit utilisées dans le cadre de tests de fonctionnement. ARRIERE-PLAN TECHNOLOGIQUE Avant de pouvoir être utilisés avec les fonctionnalités qui leur sont propres, les éléments sécurisés tels que les cartes à microcircuit doivent passer par une phase de personnalisation, au cours de laquelle des données de personnalisation, qui comprennent notamment des données associées au futur détenteur de l'élément sécurisé, sont inscrites dans l'élément sécurisé, en pratique écrites dans la mémoire non-volatile réinscriptible. Les données de personnalisation sont ainsi par exemple des applets utilisées pour mettre en oeuvre des services au bénéfice de l'utilisateur, des 20 données d'identification de l'utilisateur, une adresse, un nom ou d'autres informations personnelles. Cette mise en place initiale des données nécessaires au fonctionnement ultérieur de l'élément sécurisé prend en général plusieurs dizaines de secondes, du fait notamment que l'écriture des données de personnalisation au sein de 25 l'élément sécurisé est réalisée par l'envoi successif de nombreuses commandes sur l'interface de communication de cet élément sécurisé. Cette durée est acceptable lorsque la personnalisation a lieu une seule fois dans la vie de l'élément sécurisé (après sa fabrication et avant son utilisation), ce qui est généralement le cas. 30 Une telle durée peut toutefois s'avérer gênante dans d'autres circonstances, par exemple lorsque l'élément sécurisé doit être personnalisé plusieurs fois, ce qui se produit notamment dans le cas de tests de fonctionnement, par exemple dans le cas des cartes de test. De telles cartes subissent en effet des tests de fonctionnement variés (par exemple des tests de certification - e.g. Visa ou Mastercard - visant à l'utilisation de la carte en tant que carte bancaire) dont certains peuvent conduire au blocage de la carte ; une nouvelle personnalisation est alors nécessaire si l'on souhaite pouvoir ré-utiliser la carte pour de nouveaux tests.
OBJET DE L'INVENTION Dans ce contexte, la présente invention propose un procédé mis en oeuvre dans un élément sécurisé tel que mentionné ci-dessus et comprenant les étapes suivantes : - réception d'une commande à travers l'interface de communication ; - à réception de ladite commande, copie d'une image mémoire mémorisée dans une zone de la mémoire non-volatile vers une partie de la mémoire non-volatile distincte de ladite image mémoire. La réception de la commande déclenche ainsi une copie de l'image mémoire d'un endroit à l'autre de la mémoire non-volatile, que ce soit en vue de la sauvegarde des données (par exemple de personnalisation) mémorisées dans cette image mémoire ou de leur restauration, comme expliqué ci-après. La durée de cette étape de copie est courte puisque la copie des données est réalisée en une opération pour l'ensemble de l'image mémoire. Selon une première possibilité, la commande est une commande de 20 sauvegarde et le procédé peut alors comprendre une étape préalable d'écriture de données de personnalisation dans ladite zone. Par ailleurs, le procédé comprend par exemple une étape ultérieure de lancement d'un test de fonctionnement de l'élément sécurisé. Le procédé peut alors éventuellement comprendre une étape de blocage de l'élément sécurisé 25 suite à la réalisation du test. Dans ce cas, les données de personnalisation, qui auront été sauvegardées, pourront facilement être restaurées, comme décrit ci-après. Selon une variante envisageable, le procédé peut en outre comprendre les étapes suivantes : 30 - mémorisation dans une mémoire vive de commandes impliquées dans une étape de personnalisation de l'élément sécurisé ; - à réception de ladite commande, copie des commandes mémorisées en mémoire vive vers ladite partie de la mémoire non-volatile. Les commandes, par exemple mémorisées sous forme de macro- commandes, pourront ainsi être exécutées rapidement lors d'une phase éventuelle de restauration. Selon une seconde possibilité, la commande est une commande de restauration et ladite partie de la mémoire non-volatile peut alors être une région dédiée à la mémorisation de données de personnalisation. Dans le cas de la variante déjà mentionnée, le procédé peut en outre comprendre les étapes suivantes : - lecture de commandes dans ladite zone ; - exécution des commandes lues de manière à écrire des données de personnalisation dans ladite région. L'exécution d'au moins une commande lue peut comprendre une étape de lecture, dans ladite zone, de l'une au moins desdites données de personnalisation. Les deux possibilités ci-dessus peuvent naturellement être combinées. 15 Ainsi, dans le cas où la commande précitée est une commande de sauvegarde, le procédé mis en oeuvre par l'élément sécurisé peut comprendre en outre les étapes suivantes : - blocage du fonctionnement de l'élément sécurisé ; - réception d'une commande de restauration par l'interface de 20 communication ; - à réception de la commande de restauration, copie d'une image mémoire mémorisée dans ladite partie de la mémoire non-volatile vers ladite zone de la mémoire non-volatile. La copie des commandes mémorisées en mémoire vive vers ladite partie 25 de la mémoire non-volatile est par exemple réalisée d'un bloc, ce qui augmente encore la vitesse de traitement. L'invention propose également un élément sécurisé comprenant une mémoire non-volatile réinscriptible et une interface de communication, caractérisé par un module conçu pour copier, à réception d'une commande sur l'interface de 30 communication, une image mémoire mémorisée dans une zone de la mémoire non-volatile vers une partie de la mémoire non-volatile distincte de ladite image mémoire. Le module comprend par exemple un processeur programmé pour commander la copie de l'image mémoire vers ladite partie à réception de ladite commande. Comme déjà indiqué, la commande peut être une commande de sauvegarde, auquel cas ladite zone est par exemple une zone de mémorisation de données de personnalisation, ou une commande de restauration, auquel cas ladite partie de la mémoire non-volatile est une région dédiée à la mémorisation de données de personnalisation. Selon le mode de réalisation décrit ci-après, l'élément sécurisé est une carte à microcircuit. Une telle carte à microcircuit comprend un corps, généralement réalisé en matière plastique, et un microcircuit conforme à la norme ISO/IEC 7816 avec des contacts affleurant à la surface du corps. En variante, l'élément sécurisé pourrait être par exemple un microcontrôleur sécurisé ou un élément sécurisé soudé. Un tel microcontrôleur sécurisé est par exemple conforme aux critères communs EAL (pour "Evaluation Assurance Level"), avec un niveau compris entre 15 2 et 7, ou à la norme FIPS (pour "Federal Information Processing Standard') 1402. L'élément sécurisé (par exemple un élément sécurisé soudé) comprend un microcontrôleur contenant des clés cryptographiques et des moyens de mise en oeuvre des algorithmes pour le chiffrement et le déchiffrement de données 20 reçues ou émises. L'élément sécurisé peut également comprendre des moyens pour détecter des attaques par fautes et exécuter des contremesures, par exemple des contremesures empêchant la mise en service du dispositif (blocage de l'élément sécurisé). 25 L'élément sécurisé peut en outre être conçu pour recevoir des commandes APDU et mettre en oeuvre un traitement spécifique en fonction des commandes reçues. DESCRIPTION DETAILLEE D'UN EXEMPLE DE REALISATION La description qui va suivre en regard des dessins annexés, donnés à 30 titre d'exemples non limitatifs, fera bien comprendre en quoi consiste l'invention et comment elle peut être réalisée. Sur les dessins annexés : - la figure 1 représente schématiquement un élément sécurisé, ici une carte à microcircuit, utilisé dans le cadre de la présente invention ; - la figure 2 représente les instructions échangées entre diverses entités fonctionnelles dans le cadre de la présente invention ; et - la figure 3 représente divers états d'une mémoire non-volatile réinscriptible rencontrés au cours du fonctionnement de la carte à microcircuit ; - la figure 4 représente les états successifs de mémoires de la carte à microcircuit au cours d'un fonctionnement dans le cas d'une variante de réalisation de l'invention. La figure 1 représente les éléments principaux d'un élément sécurisé, ici une carte à microcircuit 1. En variante, l'élément sécurisé pourrait être par 10 exemple un élément sécurisé soudé (ou eSE de l'anglais "embedded Secure Element"). La carte à microcircuit 1 comprend un microprocesseur 2 auquel sont reliées une mémoire morte 4 (ou ROM, acronyme de l'anglais "Read-Only Memory"), une mémoire non-volatile réinscriptible 5 (par exemple de type 15 EEPROM, acronyme de l'anglais "Electrically Erasable and Programmable ReadOnly Memory", ici une mémoire flash) et une mémoire vive 6 (ou RAM, acronyme de l'anglais "Random Access Memory"). La carte à microcircuit 1 comprend également une interface 8 reliée au microprocesseur et permettant d'échanger des données ou des instructions avec 20 un lecteur externe 10, conçu par exemple pour émettre des commandes de type APDU pour "Application Protocol Data Unit". Un tel lecteur externe équipe par exemple, comme expliqué dans la suite, une machine de personnalisation de la carte à microcircuit ou une machine de test de la carte à microcircuit. L'interface 8 comprend par exemple un ensemble de contacts situés en surface de la carte à 25 microcircuit 1, reliés au microprocesseur 2 et qui peuvent être placés au contact de plots correspondants du lecteur externe 10 (par exemple conformément à la norme ISO 7816). En variante, l'interface pourrait toutefois être une interface sans contact (par exemple conformément à la norme ISO 14443). Dans ces deux cas, on peut prévoir que la carte à microcircuit soit 30 alimentée (électriquement) à travers l'interface 8 (par liaison filaire dans le cas d'une interface par contacts, par télé-alimentation dans le cas d'une interface sans contact). La mémoire morte 4 mémorise des instructions qui, lorsqu'elles sont exécutées par le microprocesseur 2, permettent la mise en oeuvre d'entités fonctionnelles par le microprocesseur 2, notamment : - un système d'exploitation élémentaire BIOS pouvant effectuer des fonctionnalités basiques de gestion de la carte à microcircuit, notamment l'écriture dans le mémoire non-volatile réinscriptible 5; - un répartiteur élémentaire BD (parfois désigné par le terme anglais "Basic Dispatcher") conçu pour surveiller la réception d'instructions (ou commandes) sur l'interface 8 et pour distribuer chaque instruction reçue à l'entité fonctionnelle destinatrice de l'instruction. Une fois la carte personnalisée (comme cela sera expliqué ci-après), la mémoire non-volatile réinscriptible 5 mémorise également des instructions qui, lorsqu'elles sont exécutées par le microprocesseur 2, permettent la mise en oeuvre d'entités fonctionnelles, notamment un gestionnaire de carte CM (parfois désigné par le terme anglais "Card Manager") conçu pour effectuer des opérations, généralement désignées sous le terme de "services", à réception de commandes prédéfinies dans une interface de programmation (ou API de l'anglais "Application Programming Interface") en provenance du lecteur externe 10. La figure 2 représente des instructions échangées entre ces diverses entités fonctionnelles dans le cadre de la présente invention. Dans une première phase de fonctionnement, la carte à microcircuit est personnalisée au moyen d'une machine de personnalisation (qui constitue, au cours de cette phase, le lecteur externe 10 de la figure 1), qui joue rôle de station hôte H pour la carte à microcircuit 1. La personnalisation est par exemple réalisée par un émetteur (ou pour le compte de cet émetteur) afin que la carte à microcircuit 1 mémorise les programmes et les données nécessaires à la mise en oeuvre par la carte à microcircuit 1 de fonctionnalités prévues par cet émetteur. Par exemple, dans le cadre de la téléphonie mobile, l'émetteur est l'opérateur du réseau de téléphonie mobile et la carte à microcircuit 1 est personnalisée de façon à pouvoir offrir les fonctionnalités de module d'identification de l'abonné (ou SIM pour "Subscriber Identity Module") ou d'UICC (pour "Universal Integrated Circuit Card"). Avant personnalisation, la mémoire non-volatile réinscriptible 5 est vierge comme représenté à l'état (A) en figure 3. La machine de personnalisation envoie alors une commande de personnalisation PERSO à la carte à microcircuit 1, c'est-à-dire en pratique sur l'interface 8. Il s'agit par exemple d'une commande de type APDU (pour "Application Protocol Data Unit"). La commande de personnalisation est reçue par le répartiteur élémentaire BD (échange El représenté en figure 2), qui la transmet au système d'exploitation élémentaire BIOS (échange E2). À réception de cette commande, le système d'exploitation élémentaire BIOS écrit des données de personnalisation dans la mémoire non-volatile réinscriptible 5. Ces données représentent par exemple des instructions de programme destinées à être exécutées par le microprocesseur 2 au cours du fonctionnement de la carte à microcircuit 1, telles que par exemple des commandes ISD (pour "Issuer Security Domain") permettant la mise en oeuvre du gestionnaire de carte CM. L'ISD est par exemple conforme à la spécification "GlobalPlatform Card Specification V2.2.1".
Ces données peuvent également inclure des données personnelles D1, D2, propres au futur détenteur de la carte à microcircuit 1 et définissant par exemple un profil utilisateur. L'écriture de l'ensemble des commandes ISD et données personnelles D1, D2 peut nécessiter en pratique l'envoi d'une pluralité de commandes de personnalisation de la machine de personnalisation à la carte à microcircuit 1, ce qui implique que la phase de personnalisation nécessite un temps non négligeable, typiquement entre 25 s et 35 s. On remarque par ailleurs que certaines au moins des données personnelles D1, D2 peuvent être écrites dans la mémoire non-volatile réinscriptible 5 du fait de commandes émises par la machine de personnalisation à destination du gestionnaire de carte CM (une fois celui-ci installé sur la carte à microcircuit 1 du fait de premières étapes de personnalisation comme expliqué ci-dessus). Dans ce cas, le gestionnaire de carte CM reçoit (à travers le répartiteur élémentaire BD) la commande de personnalisation qui lui est destinée et commande au BIOS l'écriture des données personnelles D1, D2 dans la mémoire non-volatile réinscriptible. Après la phase de personnalisation, la mémoire non-volatile réinscriptible 5 est dans l'état (B) représenté en figure 3. On remarque que les données écrites, ici les données personnelles D1, D2, sont mémorisées dans des zones respectives de la mémoire non-volatile réinscriptible 5 qui ne sont pas nécessairement contigües. Dans une seconde phase de fonctionnement, on sauvegarde une partie au moins des données mémorisées en mémoire non-volatile réinscriptible 5 par 5 copie d'une ou plusieurs image(s) mémoire dans une zone dédiée de la mémoire non-volatile réinscriptible, comme expliqué ci-après. Cette phase de sauvegarde est par exemple initiée par une machine de test de la carte à microcircuit 1, qui constitue dans cette phase le lecteur externe 10 et joue donc le rôle de station hôte H. 10 La machine de test émet une commande de sauvegarde SAVE sur l'interface 8. Cette commande SAVE est donc reçue sur le répartiteur élémentaire BD (flèche E3), qui la transmet ici au gestionnaire de carte CM (flèche E4). On prévoit ici en effet que cette commande de sauvegarde SAVE soit traitée par le gestionnaire de carte CM, ce qui permet d'une part d'alléger les 15 traitements dévolus au répartiteur élémentaire BD et d'autre part de pouvoir éventuellement faire appel à des services disponibles au niveau du gestionnaire de carte CM, par exemple un service évolué d'authentification de l'émetteur de la commande (tel que celui proposé dans les spécifications "GlobalPlatform" à ce sujet). 20 Après un traitement préalable éventuel (par exemple ici l'authentification de l'émetteur de la commande de sauvegarde SAVE), le gestionnaire de carte CM émet à destination du système d'exploitation élémentaire BIOS (flèche E5) une commande de copie de la (ou des) image(s) mémoire ISD, D1, D2 mémorisées dans la mémoire non-volatile réinscriptible 5 vers une zone de sauvegarde dédiée 25 dans la mémoire non-volatile réinscriptible S. Plusieurs commandes de copie distinctes peuvent être émises, par exemple lorsque les données concernées sont mémorisées dans la mémoire non-volatile réinscriptible 5 sous forme d'images mémoire non-contigües. Le traitement préalable à la commande de copie mentionné ci-dessus 30 peut également inclure une étape de dimensionnement de la zone de sauvegarde (par exemple sur la base de la taille des images mémoire à copier) et d'allocation de la zone de sauvegarde. La mise en oeuvre effective de l'opération de copie peut éventuellement être conditionnée à la vérification préalable de l'absence de détection d'attaques lors du fonctionnement antérieur de la carte à microcircuit 1 (par exemple par consultation d'un registre indicatif de la détection antérieure d'attaques par le microcircuit 2). En variante, la commande de sauvegarde pourrait être traitée par le répartiteur élémentaire BD qui émettrait alors lui-même les instructions de recopie des images mémoire à destination du système d'exploitation élémentaire BIOS. À réception de la commande de copie (flèche E5), le système élémentaire BIOS réalise la copie des images mémoire IDS, D1, D2 contenant des données de personnalisation dans la zone de sauvegarde.
On obtient ainsi l'état (C) de la mémoire non-volatile réinscriptible 5 illustré en figure 3: on a référencé ISD', D1', D2' les images mémoire copiées dans la zone de sauvegarde (même si leur contenu est bien entendu identique à celui des images mémoire ISD, D1, D2 mémorisant des données de personnalisation).
Selon une variante envisageable, il est possible de procéder au chiffrement (à l'aide d'une clé cryptographique mémorisée dans la mémoire morte 4) des données copiées et par conséquent à leur écriture dans la zone de sauvegarde sous forme chiffrée. Un tel chiffrement permet d'empêcher la restoration (comme décrit ci-dessous) par un tiers malveillant.
Lorsque l'écriture (opération de copie) s'est déroulée correctement, le système d'exploitation élémentaire BIOS envoie une information d'accomplissement correct (flèche E6) au gestionnaire de carte CM ; le gestionnaire de carte CM peut alors confirmer l'accomplissement correct de la sauvegarde à la machine de test connectée à l'interface 8, à travers le répartiteur élémentaire BD (flèches E7 et E8). Le système d'exploitation élémentaire BIOS et/ou le gestionnaire de carte CM pourrait le cas échéant retourner une valeur d'erreur, par exemple si l'espace mémoire disponible dans la mémoire non-volatile réinscriptible n'est pas suffisant pour procéder à la sauvegarde.
Du fait que le procédé qui précède utilise la copie d'une ou plusieurs image(s) mémoire (et non la copie des données de personnalisation une à une), la phase de sauvegarde est relativement rapide, d'une durée typique comprise entre 1 s et 3 s. On peut alors procéder à une troisième phase de fonctionnement, au cours de laquelle la carte à microcircuit 1 est utilisée (c'est-à-dire notamment que les instructions mémorisées au cours de la phase de personnalisation sont exécutées par le microprocesseur 2 et que les données personnelles sont manipulées par le microprocesseur 2, soit au cours de l'exécution des instructions précitées, soit au cours de l'exécution d'instructions mémorisées dans la mémoire morte 4). Cette utilisation est par exemple la mise en oeuvre de tests par la machine de test précitée. Dans ce cadre, la machine de test émet différentes commandes (par exemple des commandes de type APDU ou des commandes à destination du gestionnaire de carte CM), comme schématiquement représenté par la flèche E11. Un test inclut typiquement la comparaison (par la machine de test) du résultat reçu de la carte à microcircuit suite à l'exécution d'une commande (par exemple de type APDU) et d'un résultat attendu.
Ces tests visent par exemple à vérifier que le fonctionnement de la carte à microcircuit 1 est bien conforme à certaines spécifications en matière de comportement et de sécurité, telles que les spécifications "GlobalPlatform" en la matière. En variante, il pourrait s'agir de tests visant la conformité aux spécifications VISA ou MASTERCARD.
La phase d'utilisation (ici par la mise en oeuvre de tests) peut conduire au blocage de la carte à microcircuit 1 (parfois dénommé "état de fin de vie"). Dans le cadre de la spécification "GlobalPlatform", cet état de blocage correspond à l'état désigné TERMINATED de la carte à microcircuit. Le blocage de la carte à microcircuit 1 peut résulter de la détection d'attaques ou d'erreurs de fonctionnement par le microcircuit 2. Cet état de blocage est représenté en (D) sur la figure 3 : on a représenté par des hachures les zones de mémorisation des données de personnalisation pour indiquer que la structure des données qui y sont mémorisées est différente de celle rencontrée à l'état précédent (état (C) représenté en figure 3) et que ces données ne sont de toute façon plus accessibles. Dans cette situation de blocage, les seules commandes auxquelles répond la carte à microcircuit sont les commandes STATUS (à laquelle la carte répond en indiquant son état de blocage) et RESTORE, décrite ci-dessous.
Dans l'état de blocage, la mémoire non-volatile réinscriptible mémorise (par exemple dans une zone mémoire incluse dans la partie de mémoire D1 et gérée par les instructions de la partie de mémoire ISD) notamment une donnée (ou drapeau) indicative de l'état de blocage (parfois dénommée "verrou").
On propose alors de procéder à une quatrième phase de fonctionnement, au cours de laquelle on effectue la restauration des données de personnalisation sauvegardées dans la zone de sauvegarde, comme expliqué à présent. La machine de test émet une commande de restauration RESTORE sur l'interface 8. La commande de restauration RESTORE est reçue sur le répartiteur élémentaire BD (flèche E12), qui la transmet au système d'exploitation élémentaire BIOS (flèche E13). Dans l'exemple décrit ici, la carte à microcircuit étant dans l'état TERMINATED défini par la spécification "GlobalPlatform", le gestionnaire de carte CM n'est en effet plus disponible pour recevoir une telle commande. À réception de la commande de restauration RESTORE, et éventuellement après une authentification de l'émetteur de la commande de restauration (par exemple au moyen d'un processus d'authentification de type défi-réponse ou "challenge-response" selon l'appellation anglo-saxonne), le système d'exploitation élémentaire BIOS effectue la copie des images mémoire ISD', D1', D2', préalablement sauvegardées dans la zone de sauvegarde par la commande SAVE, vers les zones de mémorisation des données de personnalisation dans la mémoire non-volatile réinscriptible 5.
Selon un mode de réalisation envisageable, la mise en oeuvre de la copie effective des images mémoire ISD', D1', D2' est conditionnée par la vérification qu'un compteur, incrémenté à chaque réception d'une commande de restauration RESTORE, ne dépasse pas un seuil prédéterminé. On peut ainsi limiter, pour des raisons de sécurité, le nombre de restaurations possible dans la vie de la carte à microcircuit 1. Un tel compteur est par exemple mémorisé dans une partie de la mémoire non-volatile réinscriptible 5, en dehors des images mémoire relatives aux données de personnalisation (de façon à ce que le compteur ne soit pas ré-initialisé par la commande de restauration RESTORE). Du fait qu'elle utilise la copie de pages mémoire (et non des données une à une), cette opération est relativement rapide, typiquement d'une durée comprise entre 2 s et 3 s. La mémoire non-volatile réinscriptible 5 est alors dans son état (E) représenté en figure 3: ainsi, l'état de la mémoire est identique à celui rencontré immédiatement après la mise en oeuvre de la commande de sauvegarde SAVE (état (C) représenté en figure 3). En particulier, les données de personnalisation ISD, D1, D2 sont dans la même configuration qu'au moment où la commande de sauvegarde SAVE a été exécutée, c'est-à-dire par exemple dans la configuration obtenue par l'opération de personnalisation.
L'écriture des données de personnalisation ISD, D1, D2 recopiées de la zone de sauvegarde s'effectue avec écrasement des données précédentes (données mémorisées à l'état (D) de la figure 3) de telle sorte en particulier que les données indicatives d'un état de blocage de la carte à microcircuit 1 sont écrasées au profit des données initiales correspondantes, qui ne sont pas indicatives d'un état de blocage. Le fonctionnement de la carte à microcircuit 1 peut donc reprendre comme si la carte à microcircuit 1 n'avait pas été bloquée, par exemple comme si la carte à microcircuit 1 venait d'être personnalisée (dans le cas où l'opération de sauvegarde initiée par la commande de sauvegarde SAVE est réalisée immédiatement après la personnalisation de la carte à microcircuit 1). On peut notamment procéder à de nouveaux tests : la machine de test peut émettre une autre commande de test TEST sur l'interface 8 (flèche E16). La figure 4 représente l'état de la mémoire non-volatile réinscriptible 5 et de la mémoire vive 6 (état indiqué (F) en figure 4) après une phase de personnalisation de la carte à microcircuit 1 selon une variante de réalisation de l'invention. Comme précédemment, le microprocesseur 2 écrit des données de personnalisation dans des zones ISD, D1 de la mémoire non-volatile réinscriptible 5.
En particulier, le microprocesseur 2 exécute une série d'instructions qui permet l'écriture, dans la zone de mémoire D1 de la mémoire non-volatile réinscriptible 5, de certaines données de personnalisation. Selon la variante décrite ici, au cours de la phase de personnalisation pendant laquelle le microprocesseur 2 écrit les données de personnalisation dans la zone D1 de la mémoire non-volatile réinscriptible 5, toute instruction (ou commande) exécutée par le microprocesseur 2 qui modifie la mémoire non-volatile réinscriptible 5 est mémorisée dans une plage dédiée MACRO de la mémoire vive 6. On remarque que sont ainsi mémorisées non seulement les instructions d'écritures elles-mêmes (avec, pour chaque instruction, l'adresse d'écriture dans la mémoire non-volatile réinscriptible 5), mais aussi éventuellement certaines données de personnalisation à écrire à ces adresses. La mémorisation systématique en mémoire vive 6 des instructions modifiant la mémoire non-volatile réinscriptible 5 est par exemple déclenchée par réception par le système d'exploitation élémentaire BIOS d'une commande prévue à cet effet (par exemple une commande "StartRecord'). Les instructions modifiant la zone D1 de la mémoire non-volatile réinscriptible 5 sont par exemple mémorisées dans la plage dédiée MACRO de la mémoire vive 6 sous forme de macro-commandes (qui regroupent chacune plusieurs instructions). Une fois la personnalisation terminée, la machine de personnalisation émet une commande de sauvegarde (ici par exemple une commande "StopRecord') qui provoque : - l'arrêt de la mémorisation systématique en mémoire vive 6 des instructions modifiant la mémoire non-volatile réinscriptible 5; - l'écriture dans une zone de sauvegarde de la mémoire non-volatile réinscriptible 5 d'une copie ISD' de l'image mémoire correspondant à la zone ISD , d'une copie Dl" de certaines aux moins des données de personnalisation de la zone D1 et d'une copie MACRO' de l'image mémoire correspondant à la plage 25 MACRO de mémorisation en mémoire vive 6 des macro-commandes regroupant chacune des instructions d'écriture des données de personnalisation de la zone Dl. Les macro-commandes sont ainsi copiées de la mémoire vive 6 à la mémoire non-volatile 5 en un seul bloc (c'est-à-dire en une seule opération), ce 30 qui permet un gain de vitesse d'exécution et d'accès mémoire. On remarque que, dans le présent exemple de mise en oeuvre, on ne copie pas dans la zone Dl" l'image mémoire de la zone D1 dans son intégralité, mais seulement des données de personnalisation qui ont été utilisées par les instructions (ou commandes) de personnalisation et qui sont donc mémorisées à divers endroits dans la zone Dl. La taille-mémoire de la zone Dl" est donc inférieure à celle de la zone Dl. On obtient alors l'état de la mémoire non-volatile réinscriptible 5 représenté en (G) sur la figure 4.
Comme pour le mode de réalisation décrit ci-dessus en référence à la figure 3, l'image mémoire ISD' pourra ultérieurement être recopiée dans la zone de mémorisation des données de personnalisation (à réception d'une commande de restauration par l'interface 8 de la carte à microcircuit 1) afin de remettre la zone de mémoire ISD dans l'état où elle se trouvait au moment de la sauvegarde.
Par ailleurs, les macro-commandes mémorisées dans la zone de sauvegarde, précisément au niveau de l'image mémoire MACRO', pourront alors être lues et exécutées par le microprocesseur 2, en utilisant, pour certaines, des commandes de l'image mémoire ISD' (ou de l'image mémoire ISD qui vient d'être restaurée) et des données de la zone Dl" de sauvegarde des données écrites dans la zone D1 lors de la personnalisation, afin de rétablir la zone de mémoire D1 dans l'état où elle se trouvait en fin de personnalisation (c'est-à-dire au moment de la sauvegarde). On obtient ainsi une complète remise en état de la carte à microcircuit. On remarque que l'utilisation de macro-commandes permet d'effectuer le traitement plus rapidement que lors de la personnalisation, réalisée sur la base de commandes isolées (qui doivent donc chacune être indépendamment reçue et traitée par la carte à microcircuit 1).

Claims (14)

  1. REVENDICATIONS1. Procédé mis en oeuvre dans un élément sécurisé (1) comprenant une mémoire non-volatile réinscriptible (5) et une interface de communication (8), le 5 procédé comprenant les étapes suivantes : - réception d'une commande (SAVE ; RESTORE) par l'interface de communication (8) ; - à réception de ladite commande (SAVE ; RESTORE), copie d'une image mémoire mémorisée dans une zone (ISD, D1, D2 ; ISD', D1', D2') de la 10 mémoire non-volatile (5) vers une partie (ISD', D1', D2' ; ISD, D1, D2) de la mémoire non-volatile (5) distincte de ladite image mémoire.
  2. 2. Procédé selon la revendication 1, dans lequel la commande est une commande de sauvegarde (SAVE) et dans lequel le procédé comprend une étape préalable (PERSO) d'écriture de données de personnalisation dans ladite zone 15 (ISD, D1, D2).
  3. 3. Procédé selon la revendication 2, dans lequel le procédé comprend une étape ultérieure (TEST) de lancement d'un test de fonctionnement de l'élément sécurisé (1).
  4. 4. Procédé selon la revendication 3, dans lequel le procédé comprend 20 une étape de blocage de l'élément sécurisé suite à la réalisation du test.
  5. 5. Procédé selon l'une des revendications 2 à 4, dans lequel le procédé comprend en outre les étapes suivantes : - mémorisation dans une mémoire vive (6) de commandes (MACRO) impliquées dans une étape de personnalisation de l'élément sécurisé (1) ; 25 - à réception de ladite commande, copie des commandes (MACRO) mémorisées en mémoire vive (6) vers ladite partie de la mémoire non-volatile (5).
  6. 6. Procédé selon la revendication 5, dans lequel la copie des commandes (MACRO) mémorisées en mémoire vive (6) vers ladite partie de la mémoire non-volatile (5) est réalisée d'un bloc. 30
  7. 7. Procédé selon la revendication 1, dans lequel la commande (RESTORE) est une commande de restauration et dans lequel ladite partie (ISD, D1, D2) de la mémoire non-volatile (5) est une région dédiée à la mémorisation de données de personnalisation.
  8. 8. Procédé selon la revendication 7, comprenant en outre les étapessuivantes : - lecture de commandes (MACRO') dans ladite zone ; - exécution des commandes lues de manière à écrire des données de personnalisation dans ladite région (D1).
  9. 9. Procédé selon la revendication 8, dans lequel l'exécution d'au moins une commande lue comprend une étape de lecture dans ladite zone (ISD', D1") de l'une au moins desdites données de personnalisation.
  10. 10. Procédé selon la revendication 1, dans lequel la commande est une commande de sauvegarde, le procédé comprenant en outres les étapes suivantes : - blocage du fonctionnement de l'élément sécurisé ; - réception d'une commande de restauration (RESTORE) par l'interface de communication ; - à réception de la commande de restauration (RESTORE), copie d'une image mémoire mémorisée dans ladite partie (ISD', D1', D2') de la mémoire non- volatile (5) vers ladite zone (ISD, D1, D2) de la mémoire non-volatile (5).
  11. 11. Élément sécurisé (1) comprenant une mémoire non-volatile réinscriptible (5) et une interface de communication (8), caractérisé par un module conçu pour copier, à réception d'une commande (SAVE ; RESTORE) sur l'interface de communication (8), une image mémoire mémorisée dans une zone (ISD, D1, D2; ISD', D1', D2') de la mémoire non-volatile vers une partie (ISD', D1', D2' ; ISD, D1, D2) de la mémoire non-volatile distincte de ladite image mémoire.
  12. 12. Élément sécurisé selon la revendication 11, dans lequel le module comprend un processeur (2) programmé pour commander la copie de l'image mémoire vers ladite partie à réception de ladite commande.
  13. 13. Élément sécurisé selon la revendication 11 ou 12, dans lequel la commande est une commande de sauvegarde (SAVE) et dans laquelle ladite zone (ISD, D1, D2) est une zone de mémorisation de données de personnalisation.
  14. 14. Élément sécurisé selon la revendication 11 ou 12, dans laquelle la commande (RESTORE) est une commande de restauration et dans laquelle ladite partie (ISD, D1, D2) de la mémoire non-volatile (5) est une région dédiée à la mémorisation de données de personnalisation.
FR1454404A 2014-05-16 2014-05-16 Element securise et procede mis en œuvre dans un tel element securise Active FR3021143B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR1454404A FR3021143B1 (fr) 2014-05-16 2014-05-16 Element securise et procede mis en œuvre dans un tel element securise

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1454404A FR3021143B1 (fr) 2014-05-16 2014-05-16 Element securise et procede mis en œuvre dans un tel element securise

Publications (2)

Publication Number Publication Date
FR3021143A1 true FR3021143A1 (fr) 2015-11-20
FR3021143B1 FR3021143B1 (fr) 2016-05-27

Family

ID=51726606

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1454404A Active FR3021143B1 (fr) 2014-05-16 2014-05-16 Element securise et procede mis en œuvre dans un tel element securise

Country Status (1)

Country Link
FR (1) FR3021143B1 (fr)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109376525B (zh) * 2018-09-14 2020-11-03 网宿科技股份有限公司 Linux服务器的提示方法、Linux服务器及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002042912A1 (fr) * 2000-11-22 2002-05-30 Gemplus Execution d'une application dans un objet electronique portable a faible capacite de memoire
EP2515503A1 (fr) * 2011-04-19 2012-10-24 Gemalto SA Procédé de gestion de données envoyées à un élément sécurisé via un message de type HTTP response
CA2796615A1 (fr) * 2011-11-23 2013-05-23 Research In Motion Limited Dispositif de communication mobile offrant des fonctionnalites d'effacement de donnees d'element securise et methodes associees

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002042912A1 (fr) * 2000-11-22 2002-05-30 Gemplus Execution d'une application dans un objet electronique portable a faible capacite de memoire
EP2515503A1 (fr) * 2011-04-19 2012-10-24 Gemalto SA Procédé de gestion de données envoyées à un élément sécurisé via un message de type HTTP response
CA2796615A1 (fr) * 2011-11-23 2013-05-23 Research In Motion Limited Dispositif de communication mobile offrant des fonctionnalites d'effacement de donnees d'element securise et methodes associees

Also Published As

Publication number Publication date
FR3021143B1 (fr) 2016-05-27

Similar Documents

Publication Publication Date Title
FR2666671A1 (fr) Procede de gestion d'un programme d'application charge dans un support a microcircuit.
EP2447835B1 (fr) Procédé de configuration d'une entité électronique
FR3019347A1 (fr) Securisation du chargement de donnees dans une memoire non-volatile d'un element securise
CA2946143C (fr) Procede de traitement de donnees transactionnelles, dispositif et programme correspondant
EP2388949A1 (fr) Procédé de gestion de dispositifs électroniques, par exemple de type circuits intégrés, avec génération interne d'une clé personnelle d'authentification
FR2863745A1 (fr) Memoire pour etiquettes rfid adaptee pour recevoir une commande de desactivation
EP2388948A1 (fr) Procédé et système d'accès à un circuit intégré comprenant une clé personnelle d'authentification
FR3021143A1 (fr) Element securise et procede mis en œuvre dans un tel element securise
EP3327607B1 (fr) Procede de verification de donnees
WO2019175482A1 (fr) Traitement sécurisé de données
FR3045184A1 (fr) Procede d’ecriture dans une memoire non-volatile d’une entite electronique et entite electronique associee
EP4125240A1 (fr) Element securise pre-personalise et personnalisation embarquee
CN109189450A (zh) 一种服务器固件升级的方法及装置
FR2805073A1 (fr) Ecriture en temps reel securisee pour memoire non volatile
FR3070076A1 (fr) Procede de protection d'un dispositif electronique contre des attaques par injection de faute
EP3832469A1 (fr) Système électronique sécurisé comportant un processeur et un composant mémoire ; composant programmable associé
EP3671519A1 (fr) Sécurisation d'une transaction au moyen d'une carte à puce et carte à puce
CA2252001A1 (fr) Systeme securise de controle d'acces permettant l'invalidation automatique de cles electroniques volees ou perdues et/ou le transfert d'habilitation a produire des cles
WO2016189227A1 (fr) Marquage en filigrane de la photo d'un document identitaire electronique lors de sa lecture
FR3062501A1 (fr) Procede pour la securite d'une operation electronique
EP2304559B1 (fr) Procédé de basculement entre deux versions d'une même application au sein d'un dispositif de traitement de l'information et ledit dispositif
EP3985531B1 (fr) Enrôlement biométrique avec vérification
EP3514749B1 (fr) Procede de controle de regles de dependances d'objets mis a jour dans un microcircuit, et dispositif correspondant
EP3502997B1 (fr) Sauvegarde de donnees d'historique dans un dispositif destine a traiter des transactions
EP3179400B1 (fr) Procédé de chargement d'une ressource informatique au sein d'un dispositif électronique, module électronique et programme d'ordinateur correspondant

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20151120

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

CA Change of address

Effective date: 20200826

CJ Change in legal form

Effective date: 20200826

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11