WO1996038825A1 - Carte a puce intelligente securisee - Google Patents

Carte a puce intelligente securisee Download PDF

Info

Publication number
WO1996038825A1
WO1996038825A1 PCT/FR1996/000796 FR9600796W WO9638825A1 WO 1996038825 A1 WO1996038825 A1 WO 1996038825A1 FR 9600796 W FR9600796 W FR 9600796W WO 9638825 A1 WO9638825 A1 WO 9638825A1
Authority
WO
WIPO (PCT)
Prior art keywords
smart card
card
operating system
memory
transaction
Prior art date
Application number
PCT/FR1996/000796
Other languages
English (en)
Inventor
Gérard CESAIRE
François Devaux
Yves Gerard
Original Assignee
Syseca S.A.
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 Syseca S.A. filed Critical Syseca S.A.
Publication of WO1996038825A1 publication Critical patent/WO1996038825A1/fr

Links

Classifications

    • 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/10Mechanisms 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/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment 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/357Cards having a plurality of specified features

Definitions

  • the present invention aims to improve the security of a smart card, while leaving the possibility for the promoter of a transaction to modify this transaction at leisure. It relates to an intelligent, secure smart card, equipped with a memory, part of which is permanent and with a microcontroller, comprising, stored in memory, a command interpreter assembling, in a code executable by the microcontroller, instructions a transaction management program written in an ineffective advanced language without translation by the command interpreter, remarkable in that it also comprises a basic operating system ensuring secure management of accesses to permanent memory with authorization keys for certain zones, and in that the command interpreter passes via the basic operating system for all actions affecting the permanent memory.

Abstract

Les cartes à puce intelligentes sont celles qui contrôlent elles-mêmes le déroulement de leur transaction afin d'éviter de spécialiser un lecteur par type de transaction. La carte à puce intelligente sécurisée (1) concernée par l'invention est une carte à puce intelligente qui renferme stocké en mémoire un programme de gestion de transaction (13) écrit dans un langage évolué nécessitant une interprétation par un interpréteur de commandes (12) passant par un système d'exploitation de base (10) pourvu de systèmes de sécurisation des accès à la mémoire. Grâce à cela, un utilisateur non habilité ne peut porter atteinte à l'intégrité d'une transaction puisque qu'il n'a accès dans la carte à puce qu'au niveau du langage évolué et que les ordres de ce langage évolué qu'il pourrait détourner sont nécessairement interceptés par l'interpréteur de commande (12) et par les systèmes de sécurisation du système d'exploitation de base (10).

Description

CARTE A PUCE INTELLIGENTE SECURISEE
On désigne par carte à puce, les cartes, en général du format d'une carte de crédit, mais également les jetons munis d'un microcircuit électronique, à base de mémoires et d'un microcontrôleur, agencées pour permettre le déroulement d'une transaction par exemple bancaire ou santé.
Les cartes à puce communiquent avec leur environnement au moyen de lecteurs équipés d'éléments de communication suffisant pour permettre et faciliter l'exécution de leur transaction. Les cartes à puce actuellement connues, dotées de mémoires et éventuellement d'un microcontrôleur, sont utilisées uniquement comme un support de données agrémenté de dispositifs de sécurisation. L'intelligence nécessaire à la conduite des transactions est reportée au niveau des lecteurs qui sont soit autonomes et pourvus d'un clavier, d'un afficheur et d'une mémoire gérés par un microcontrôleur doté d'un programme de contrôle de déroulement de transaction spécifique à la transaction envisagée, soit transparents et utilisés comme accès à un système informatique programmé spécialement pour la transaction envisagée.
Ce report de l'intelligence nécessaire à la conduite d'une transaction, soit au niveau du lecteur de carte, soit à celui d'un système informatique associé au lecteur de carte, a pour inconvénient de nécessiter une spécialisation du lecteur ou du système informatique associé en fonction du type de transaction. Ainsi, si l'on veut changer de type de transaction, il ne suffit pas de changer la programmation de la carte à puce ; il faut aussi changer celle du lecteur, s'il est autonome, ou du système informatique associé, si le lecteur est transparent. Cela est un obstacle au développement des applications des cartes à puce.
Pour éviter cet inconvénient, il a été proposé de ramener l'intelligence, c'est à dire la gestion de la transaction, au niveau de la carte à puce elle-même. La carte à puce ne se contente plus d'effectuer les instructions qui lui parviennent de l'extérieur en les accompagnant d'éventuelles mesures de sécurité ; elle prend la maîtrise du déroulement de la transaction en donnant ses instructions au lecteur qui devient un simple exécutant et qui, de ce fait, peut être banalisé et utilisé avec des cartes à puce de différentes sortes, spécialisées chacune dans des transactions très variées.
Il se pose alors des problèmes de capacité de mémoire carte si l'on veut stocker le programme de gestion de transaction dans la carte et de sécurisation si l'on veut éviter les opérations frauduleuses. Pour résoudre ces problèmes, il a été proposé dans la demande de brevet français FR-A- 2667 171 (GEMPLUS CARD INT.) et dans la demande internationale de brevet WO-A-9 10657 (INTELLECT AUSTRALIA) de passer pour le programme de gestion de la transaction par un langage de programmation intermédiaire qui nécessite un interpréteur dans la carte pour être assemblé et exécutable par le microprocesseur de la carte.
Si l'on obtient bien par ce procédé un gain de place en mémoire carte, on ne résout que partiellement le problème de la sécurisation. En effet, les interpréteurs proposés donnent un accès direct aux instructions en langage machine assurant la gestion de la mémoire carte si bien qu'il subsiste un risque de manipulation frauduleuse des données de la carte.
La présente invention a pour but d'améliorer la sécurité d'une carte à puce intelligente, tout en laissant la possibilité au promoteur d'une transaction de modifier cette transaction à loisir. Elle a pour objet une carte à puce intelligente, sécurisée, équipée d'une mémoire dont une partie est permanente et d'un microcontrôleur, comportant, stocké en mémoire, un interpréteur de commandes assemblant, en un code exécutable par le microcontrôleur, des instructions d'un programme de gestion de transaction écrit en un langage évolué ineffectif sans traduction par l'interpréteur de commandes, remarquable en ce qu'elle comporte en outre un système d'exploitation de base assurant la gestion sécurisée des accès à la mémoire permanente avec des clefs d'autorisation pour certaines zones, et en ce que l'interpréteur de commandes passe par l'intermédiaire du système d'exploitation de base pour toutes les actions touchant à la mémoire permanente.
Avantageusement, le programme de gestion de transaction écrit en langage évolué est stocké dans un fichier, dans une partie réinscriptible de la mémoire permanente de type EEPROM. Avantageusement, le système d'exploitation de base et l'interpréteur de commandes du langage interprété sont disposés dans une partie non réinscriptible de la mémoire permanente, de type ROM.
Le programme de gestion de transaction, lorsqu'il est stocké dans la carte à puce, communique avec le monde extérieur à la carte à puce et peut, par conséquent, être l'objet de tentatives de corruption. Le fait qu'il soit en langage évolué et interprété nécessitant, pour être exécuté par le microcontrôleur de la carte à puce, une traduction par un interpréteur de commandes s'appuyant, pour toute action sur la mémoire permanente, sur un système d'exploitation de base à sécurités d'accès permet de faire échec à de telles tentatives de corruption puisqu'il n'existe pas de possibilités accès direct entre l'interpréteur de commandes et la mémoire permanente. L'interpréteur de commandes et le système d'exploitation de base étant inaccessibles de l'extérieur de la carte à puce, grâce aux sécurités d'accès de la mémoire, sont eux, à l'abris des tentatives de corruption. En effet, le programme de gestion de la transaction peut accéder en lecture ou en écriture aux données stockées dans la partie EEPROM de la mémoire mais toujours sous contrôle du système d'exploitation de base qui vérifie le respect des sécurités accès à la mémoire. Le langage évolué et interprété a également l'avantage de permettre d'écrire des programmes plus compacts qu'un langage non interprété de sorte qu'il économise de l'espace mémoire.
D'autres caractéristiques et avantages de l'invention ressortiront de la description ci-après d'un mode de réalisation de l'invention donné à titre d'exemple. Cette description sera faite ci-après en regard du dessin dans lequel :
- une figure 1 est un schéma de principe du microcircuit électronique équipant une carte à puce,
- une figure 2 illustre, de manière schématique, les différentes couches logiques du programme d'un microcontrôleur de carte à puce intelligente sécurisée selon l'invention, et
- une figure 3 est un schéma de principe de l'organisation de la mémoire d'une carte à puce.
On distingue sur la figure 1 le microcircuit électronique ou puce d'une carte à puce. Celui-ci comporte un microcontrôleur (CPU) 2 en liaison avec de la mémoire vive (RAM) 3, de la mémoire permanente, morte non réinscriptible (ROM) 4 et réinscriptible (EEPROM) 5 et un port série d'entrées/sorties 6 menant à un ensemble de six à huit contacts électriques 7 permettant d'accéder à un lecteur. La figure 2 montre les grandes partitions des programmes de gestion du microcontrôleur d'une carte à puce intelligente selon l'invention. La couche la plus enfouie est un système d'exploitation de base 10, en code exécutable adapté au type de microcontrôleur de la carte à puce 1 , qui gère sa mémoire avec, pour la partie permanente de la mémoire, les systèmes habituels de sécurisation et un protocole de communication externe 11. Ce système d'exploitation de base 10 est associé à un interpréteur de commandes 12 auquel il passe la main dès qu'il reçoit une instruction d'exécution. L'interpréteur de commandes 12 est capable de reconnaître différentes instructions en langage évolué et repasse la main au système d'exploitation de base 10 dès que possible et, dans tous les cas, chaque fois qu'il s'agit de réaliser une action sur la mémoire permanente de la carte à puce. L'ensemble du système d'exploitation de base 10 et de l'interpréteur de commande 12 réside en mémoire morte non réinscriptible ROM et est surmonté par une couche externe constituée par un programme 13, en langage évolué et interprété, de gestion de la transaction à laquelle est dédiée la carte à puce, qui est stocké en mémoire morte réinscriptible EEPROM.
Le programme de gestion de transaction 13 communique avec l'extérieur de la carte à puce par l'intermédiaire du système d'exploitation de base. Par sécurité, toutes les instructions qu'il contient, notamment celles qui ont une action sur la mémoire permanente : lecture, écriture, effaçage, sont en langage évolué. De ce fait, elles sont incomprises du microcontrôleur si elles n'ont pas été interprétées par l'interpréteur de commande 12, qui les traduit et les dirige obligatoirement vers le système d'exploitation de base 10 et ses systèmes de sécurisation pour toute action sur la mémoire permanent de la carte. Vis à vis des actions sur la mémoire permanente de la carte, le programme de gestion de transaction, une fois assemblé par l'interpréteur de commandes 12, se comporte envers le système d'exploitation de base comme le port de communication externe SIO 6. De la sorte, toute action sur la mémoire permanente de la carte est régie par les mêmes règles qu'elle ait pour origine une commande en provenance du port de communication externe ou du programme de gestion de transaction mémorisé dans la carte. Ainsi, un utilisateur non habilité, ne peut porter atteinte à l'intégrité d'une transaction puisqu'il n'a accès dans la carte à puce qu'au niveau du langage évolué et interprété, et que les ordres de ce langage évolué et interprété qu'il pourrait détourner sont nécessairement interceptés par les systèmes de sécurisation du système d'exploitation de base 10 dès qu'ils ont trait à la mémoire permanente de la carte. L'utilisation d'un langage évolué devant être interprété, au niveau des échanges de la carte à puce avec l'extérieur, présente, également l'avantage, outre la sécurité qu'il apporte, de permettre d'écrire des programmes plus compacts et par conséquent d'économiser de l'espace mémoire. La mémoire, qui est constituée des parties vive (RAM) 3, et mortes non réinscriptible (ROM) 4 et réinscriptible (EEPROM) 5, a sa partie morte réinscriptible (EEPROM) 5 organisée, comme le montre la figure 2, selon une arborescence de répertoires dont les accès sont réglementés en fonction de leurs niveaux au moyen de serrures qui doivent être ouvertes au préalable à l'aide de clefs constituées par des codes. Le répertoire racine 20 est dit maître. Il donne accès à un ou plusieurs niveaux inférieurs de répertoires 21 , 22 dits répertoires dédiés. Les répertoires maître et dédiés renferment des fichiers élémentaires 200, 210, 220 et 221.
Le répertoire maître 20 est pourvu d'une protection de premier rang et renferme dans ses fichiers élémentaires un programme maître de gestion de transaction. Le gestionnaire du répertoire maître peut transmettre des droits à divers promoteurs d'application de rangs inférieurs enregistrés aux niveaux des répertoires dédiés et leur proposer en menu les applications qu'il autorise. Le répertoire dédié 21 est pourvu d'une protection de deuxième rang et destiné à un promoteur d'applications de deuxième rang qui n'a pas généralement accès au répertoire maître mais qui peut créer, dans son répertoire, des applications en langage évolué avec droits d'accès. Le répertoire dédié 22 est pourvu d'une protection de troisième rang et destiné à un promoteur d'application de troisième rang et ainsi de suite.
Grâce à cette hiérarchisation des répertoires et de leurs clefs d'accès, on peut faire cohabiter des applications gérées par des promoteurs d'application différents et indépendants. Chaque application étant installée dans un répertoire dédié à accès protégé par une clef spécifique, un utilisateur ne peut toucher à l'intégrité des données de la carte que dans les répertoires dont il possède les clefs accès. Même lorsqu'il est dûment autorisé à modifier une application, l'utilisateur ne peut agir sur la mémoire permanente de la carte sans passer par les sécurités d'accès du système d'exploitation de base car l'application pour avoir un effet sur la carte doit être écrite dans le langage évolué et interprété qui fait systématiquement appel aux sécurités d'accès du système d'exploitation de base pour toute opération sur la mémoire permanente de la carte.
Pour la réalisation d'une transaction, la carte à puce intelligente sécurisée communique en langage évolué et interprété, par l'intermédiaire du système d'exploitation de base, avec un lecteur qui lui fournit les ressources nécessaires telles que clavier, afficheur, liaison avec une ou plusieurs autres cartes à puce ou avec un système informatique. Cette communication se fait, à l'alternat, sur l'initiative du lecteur qui est électriquement maître des échanges mais sous le contrôle logique de la carte à puce qui définit les étapes successives d'une transaction par le déroulement de son programme de gestion de transaction. Le lecteur a la maîtrise électrique des échanges grâce à deux commandes qu'il émet en alternance à destination de la carte à puce, d'une part, une requête de mise à disposition d'un paquet d'instructions et de données élaborées au sein de la carte à puce dit "message carte" et d'autre part, une déclaration de compte rendu associée à un message de compte rendu sur l'exécution d'instructions reçues précédemment dans des messages carte. Ces deux commandes sont avantageusement la commande "get response" et la commande "enveloppe" ou "exécute" définies dans les normes ISO 7816/prEN726.
La commande "get response" est constituée par l'envoi d'un message binaire comprenant cinq champs successifs de un octet : - un premier champ nommé "CLA" renfermant un octet identifiant la classe de l'instruction, par exemple, instructions réservées aux applications bancaires,
- un deuxième champ nommé "INS" renfermant l'octet CO en hexadécimal identifiant le type de commande, "get response",
- un troisième champ réservé nommé "P1" renfermant l'octet 00 en hexadécimal,
- un quatrième champ réservé nommé "P2" renfermant l'octet 00 en hexadécimal, et - un cinquième champ nommé "Le field" renfermant un octet dont la valeur n correspond au nombre d'octets attendus en réponse de la carte à puce.
Cette commande "get response" entraîne une réponse de la carte à puce dite "Data field" renfermant n octets de données, n étant le nombre déclaré dans son champ "Le field", et deux octets "SW1 , SW2" de compte rendu carte.
La commande "exécute" est constituée par l'envoi d'un message binaire constitué de cinq champs successifs de un octet et d'un champ final de données de plusieurs octets: - un premier champ nommé "CLA" renfermant un octet identifiant la classe de l'instruction, par exemple, instructions réservées aux applications bancaires,
- un deuxième champ nommé "INS" renfermant l'octet AE en hexadécimal identifiant le type de commande "exécute", - un troisième champ réservé nommé "P1" renfermant l'octet 00 en hexadécimal,
- un quatrième champ réservé nommé "P2" renfermant l'octet 00 en hexadécimal,
- un cinquième champ nommé "Le field" renfermant un octet dont la valeur n correspond au nombre d'octets du message accompagnant la commande "exécute", et
- un sixième champ final nommé "Data field" renfermant les n octets de données annoncés dans le cinquième champ "Le field". Cette commande "exécute" entraîne une réponse de la carte à puce de deux octets "SW1 , S W2" donnant un compte rendu carte. La commande "enveloppe" a la même constitution que la commande "exécute" et s'en différencie par la valeur de l'octet de son deuxième champ "INS" identifiant la commande qui vaut C2 en hexadécimal. Dans ces trois messages, les champs respectifs "Le field" et "Le field" déclarent la longueur du message carte attendu ou celle du message compte rendu du lecteur au moyen desquels transitent les instructions à exécuter et données associées en provenance de la carte à puce ainsi qu'en retour les comptes-rendus des actions exécutées par le lecteur et données résultantes. A l'introduction de la carte à puce intelligente dans le lecteur, la carte à puce se trouve détectée et mise sous tension par le lecteur qui lui envoie un ordre de remise à zéro selon la norme ISO 7816-3. Il en résulte un processus d'initialisation du microcontrôleur de la carte à puce intelligente qui se termine par l'envoi au lecteur, depuis la carte à puce intelligente, d'une réponse d'acquittement à l'ordre de remise à zéro et par une mise en route du programme de gestion de transaction de la carte à puce intelligente pour un premier cycle de traitement aboutissant dans cette dernière à la préparation du premier message carte qui sera communiqué au lecteur dès que celui-ci en fera la demande au travers d'une requête de mise à disposition de message sous la forme d'une commande "get response".
A la réception de la réponse d'acquittement à l'ordre de remise à zéro, le lecteur entame un premier cycle d'échange de données avec la carte à puce intelligente.
Au cours de ce premier cycle d'échange, le lecteur envoie en direction de la carte à puce intelligente une requête de mise à disposition de message, sous la forme d'une commande "get response", pour demander l'envoi du message carte préparé par la carte à puce intelligente après son initialisation.
La carte à puce intelligente, à la réception d'une telle requête par la commande "get response", envoie le message carte préparé au lecteur.
Le lecteur reçoit le message carte, identifie les données qu'il contient, interprète le message, exécute les commandes demandées et répond à la carte à puce intelligente par une déclaration de compte rendu sous la forme d'une commande "enveloppe" ou "exécute", avec un message de compte rendu rapportant à la carte à puce intelligente la façon dont il a réalisé ce qui lui a été demandé et le résultat de ce traitement. Cela termine le premier cycle d'échange.
A la réception de la commande "enveloppe" ou "exécute" du premier cycle d'échange en provenance du lecteur, la carte à puce intelligente poursuit le déroulement de son programme de gestion de transaction au cours d'un deuxième cycle de traitement pendant lequel elle vérifie d'abord l'exécution correcte du message carte qu'elle vient d'émettre au moyen du message de compte rendu, puis prépare un autre message carte. Le lecteur entame ensuite un deuxième cycle d'échange en envoyant à la carte à puce intelligente une deuxième commande "get response" pour lire le nouveau message carte. Après traitement des données de ce nouveau message carte, le lecteur rend compte de son exécution à la carte à puce intelligente, au moyen d'un message de compte rendu incorporé à une deuxième commande "enveloppe" ou "exécute" qui clôt le deuxième cycle d'échange.
La carte à puce intelligente, à la réception de cette deuxième commande "enveloppe" ou "exécute" en provenance du lecteur entame alors, toujours sous le contrôle de son programme de gestion de transaction, un troisième cycle de traitement au cours duquel elle vérifie l'exécution correcte du message carte qu'elle vient d'émettre, au moyen du message de compte rendu reçu du lecteur, puis prépare un autre message carte.
Le lecteur entame alors un troisième cycle d'échange en envoyant à la carte à puce intelligente une troisième commande "get response" pour recevoir ce message carte.
Les cycles de traitement, à l'initiative de la carte à puce intelligente, et d'échange, à l'initiative du lecteur, se succèdent en fonction du programme de gestion de la transaction stocké dans la carte à puce intelligente. Conformément à la norme ISO 7816-3 le lecteur 1 est électriquement maître des échanges, mais le déroulement de la transaction se fait à l'initiative de la carte à puce 4 qui est intelligente.
Le lecteur peut comporter plusieurs connecteurs de carte à puce. Dans ce cas, une seule carte à puce intelligente à la fois pilote la transaction. La carte à puce intelligente qui pilote la transaction est dite "active". Les autres sont dites "passives". La carte à puce intelligente déclarée active est la première qui est capable de fournir une réponse a une instruction "get response" du lecteur.

Claims

R E V E N D I C A T I O N S
1. Carte à puce intelligente sécurisée (1 ), équipée d'une mémoire (3, 4, 5) dont une partie (4,5) est permanente et d'un microcontrôleur (2), comportant, stocké en mémoire, un interpréteur de commandes (12) assemblant en un code exécutable par le microcontrôleur (2), des instructions d'un programme de gestion de transaction écrit en un langage évolué ineffectif sans traduction par l'interpréteur de commandes (12), caractérisée en ce qu'elle comporte en outre un système d'exploitation de base (10) assurant la gestion sécurisée des accès à la mémoire permanente (4, 5) avec des clefs d'autorisation pour certaines zones, et en ce que l'interpréteur de commandes (12) passe par l'intermédiaire du système d'exploitation de base (10) pour toutes les actions touchant à la mémoire permanente (4,5).
2. Carte à puce intelligente sécurisée selon la revendication 1 , caractérisée en ce qu'elle comporte en mémoire permanente (5) au moins un fichier (200, 210, 211 ) contenant un programme de gestion de transaction en langage évolué et interprété.
3. Carte à puce intelligente sécurisée selon la revendication 2, caractérisée en ce que ledit fichier contenant un programme de gestion de transaction (13) en langage évolué et interprété est stocké en une zone de la mémoire permanente qui est morte et réinscriptible de type EEPROM.
4. Carte à puce intelligente sécurisée selon la revendication 1 , caractérisée en ce que ledit système d'exploitation de base (10) et ledit interpréteur de commandes (12) sont stockés en une zone de la mémoire permanente qui est morte et non réinscriptible de type ROM.
5. Carte à puce intelligente sécurisée selon la revendication 1 , caractérisée en ce qu'elle comporte en outre des moyens de communication
(6) capable de communiquer à l'alternat et en langage évolué et interprété avec un lecteur sous le contrôle du système d'exploitation de base (10), chaque communication étant laissée à l'initiative du lecteur qui est électriquement maître des échanges mais restant sous le contrôle logique de la carte à puce.
PCT/FR1996/000796 1995-05-30 1996-05-28 Carte a puce intelligente securisee WO1996038825A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9506370A FR2734934B1 (fr) 1995-05-30 1995-05-30 Carte a puce intelligente securisee
FR95/06370 1995-05-30

Publications (1)

Publication Number Publication Date
WO1996038825A1 true WO1996038825A1 (fr) 1996-12-05

Family

ID=9479470

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR1996/000796 WO1996038825A1 (fr) 1995-05-30 1996-05-28 Carte a puce intelligente securisee

Country Status (2)

Country Link
FR (1) FR2734934B1 (fr)
WO (1) WO1996038825A1 (fr)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794519A1 (fr) * 1996-03-09 1997-09-10 Wolfgang Salge Carte à puce
WO1998045818A2 (fr) * 1997-04-08 1998-10-15 Angewandte Digital Elektronik Gmbh Procede pour l'utilisation d'unites memoires de cartes a puce
WO1999038131A1 (fr) * 1998-01-22 1999-07-29 Mondex International Limited Codelets
US6230267B1 (en) 1997-05-15 2001-05-08 Mondex International Limited IC card transportation key set
US6317832B1 (en) 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
WO2002058019A1 (fr) * 2001-01-22 2002-07-25 Gemplus Procede pour la creation de fichiers de donnees, prives securises et carte a puce comportant un fichier prive securise

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0368752A1 (fr) * 1988-11-09 1990-05-16 CP8 Transac Système de téléchargement sécurisé d'un terminal et procédé mis en oeuvre
FR2657445A1 (fr) * 1990-01-25 1991-07-26 Gemplus Card Int Procede de chargement de programmes d'application dans un lecteur de carte a memoire a microprocesseur et systeme destine a sa mise en óoeuvre.
FR2667171A1 (fr) * 1990-09-25 1992-03-27 Gemplus Card Int Support portable a micro-circuit facilement programmable et procede de programmation de ce micro-circuit.
WO1994010657A1 (fr) * 1992-10-26 1994-05-11 Intellect Australia Pty. Ltd. Systeme de transaction hote - utilisateur

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0368752A1 (fr) * 1988-11-09 1990-05-16 CP8 Transac Système de téléchargement sécurisé d'un terminal et procédé mis en oeuvre
FR2657445A1 (fr) * 1990-01-25 1991-07-26 Gemplus Card Int Procede de chargement de programmes d'application dans un lecteur de carte a memoire a microprocesseur et systeme destine a sa mise en óoeuvre.
FR2667171A1 (fr) * 1990-09-25 1992-03-27 Gemplus Card Int Support portable a micro-circuit facilement programmable et procede de programmation de ce micro-circuit.
WO1994010657A1 (fr) * 1992-10-26 1994-05-11 Intellect Australia Pty. Ltd. Systeme de transaction hote - utilisateur

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0794519A1 (fr) * 1996-03-09 1997-09-10 Wolfgang Salge Carte à puce
WO1997033258A1 (fr) * 1996-03-09 1997-09-12 Wolfgang Salge Carte a puce
US7730310B2 (en) 1997-02-21 2010-06-01 Multos Limited Key transformation unit for a tamper resistant module
US6317832B1 (en) 1997-02-21 2001-11-13 Mondex International Limited Secure multiple application card system and process
US7734923B2 (en) 1997-02-21 2010-06-08 Multos Limited Key transformation unit for a tamper resistant module
US7730311B2 (en) 1997-02-21 2010-06-01 Multos Limited Key transformation unit for a tamper resistant module
US7730312B2 (en) 1997-02-21 2010-06-01 Multos Limted Tamper resistant module certification authority
US7669055B2 (en) 1997-02-21 2010-02-23 Multos Limited Key transformation unit for a tamper resistant module
US7689826B2 (en) 1997-02-21 2010-03-30 Multos Limited Flexibly loading a tamper resistant module
US7702908B2 (en) 1997-02-21 2010-04-20 Multos Limited Tamper resistant module certification authority
US7707408B2 (en) 1997-02-21 2010-04-27 Multos Limited Key transformation unit for a tamper resistant module
WO1998045818A3 (fr) * 1997-04-08 1999-05-20 Angewandte Digital Elektronik Procede pour l'utilisation d'unites memoires de cartes a puce
WO1998045818A2 (fr) * 1997-04-08 1998-10-15 Angewandte Digital Elektronik Gmbh Procede pour l'utilisation d'unites memoires de cartes a puce
US6230267B1 (en) 1997-05-15 2001-05-08 Mondex International Limited IC card transportation key set
WO1999038131A1 (fr) * 1998-01-22 1999-07-29 Mondex International Limited Codelets
US6357665B1 (en) 1998-01-22 2002-03-19 Mondex International Limited Configuration of IC card
FR2819909A1 (fr) * 2001-01-22 2002-07-26 Gemplus Card Int Procede pour la creation de fichiers de donnees, prives securises et carte a puce comportant un fichier prive securise
WO2002058019A1 (fr) * 2001-01-22 2002-07-25 Gemplus Procede pour la creation de fichiers de donnees, prives securises et carte a puce comportant un fichier prive securise

Also Published As

Publication number Publication date
FR2734934A1 (fr) 1996-12-06
FR2734934B1 (fr) 1997-07-04

Similar Documents

Publication Publication Date Title
USRE39269E1 (en) Data exchange system comprising portable data processing units
US7185110B2 (en) Data exchange system comprising portable data processing units
EP0552079B1 (fr) Carte à mémoire de masse pour microordinateur
EP0666550B1 (fr) Système d'échange de données avec des unités de traitement de données portatives
FR2734937A1 (fr) Systeme a cartes a puce intelligentes
JP4129063B2 (ja) シェル特徴を有するicカード
FR2766942A1 (fr) Lecteur de carte a puce avec microcontroleur et composant de securite
EP1240570A2 (fr) Controle d'acces pour des applications cooperantes dans une carte a puce
EP0552077B1 (fr) Carte à mémoire de masse pour microordinateur avec facilités d'exécution de programmes internes
WO1996038825A1 (fr) Carte a puce intelligente securisee
CA2261620C (fr) Interface homme-machine pour lecteur de carte a puce
FR2808359A1 (fr) Carte a puce multi-applicatives
CA2219815C (fr) Lecteur pour carte a puce intelligente
FR2810481A1 (fr) Controle d'acces a un moyen de traitement de donnees
EP1325418A1 (fr) Protection contre l'exploitation abusive d'une instruction dans une memoire
EP0900429A1 (fr) Systeme securise de controle d'acces permettant le transfert d'habilitation a produire des cles
EP0944880A1 (fr) Module de securite comportant des moyens de creation de liens entre des fichiers principaux et des fichiers auxiliaires
CA2219823C (fr) Systeme a cartes a puce intelligentes
Ádám et al. Smart Cards–Present and Future
FR2818767A1 (fr) Logiciel de gestion d'objets logiciels pouvant etre utilise, notamment, comme explorateur de cartes a puce
FR2797505A1 (fr) Circuit a microprocesseur securise par un interpreteur secret

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA JP US

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE

DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: CA

122 Ep: pct application non-entry in european phase