WO2001084512A1 - Multiple application smart card - Google Patents

Multiple application smart card Download PDF

Info

Publication number
WO2001084512A1
WO2001084512A1 PCT/FR2001/001229 FR0101229W WO0184512A1 WO 2001084512 A1 WO2001084512 A1 WO 2001084512A1 FR 0101229 W FR0101229 W FR 0101229W WO 0184512 A1 WO0184512 A1 WO 0184512A1
Authority
WO
WIPO (PCT)
Prior art keywords
chip
operating system
memory
card
application
Prior art date
Application number
PCT/FR2001/001229
Other languages
French (fr)
Inventor
Emilien Charbonnier
Original Assignee
Gemplus
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 Gemplus filed Critical Gemplus
Priority to AU2001254898A priority Critical patent/AU2001254898A1/en
Publication of WO2001084512A1 publication Critical patent/WO2001084512A1/en

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating 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/3555Personalisation of two or more cards
    • 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
    • G06Q20/3576Multiple memory zones on card

Definitions

  • the present invention relates generally to smart cards, and more particularly to multi-application smart cards. It also applies to any other portable smart medium, such as a smart keychain.
  • the present invention relates generally to smart cards, and more particularly to multi-application smart cards. It also applies to any other portable smart medium, such as a smart keychain.
  • Recommendations 7816-1 and 2 define the physical specificities of smart cards.
  • At least one memory area At least one memory area, and a processing unit supporting so-called native functions, which are integrated by masking in the chip during its manufacture.
  • the chip further includes an operating system.
  • This operating system is defined in the context of the present invention as software, or a software interface, for accessing and managing physical physical resources (memories, input / output unit, interruptions, etc.). of the chip.
  • This operating system is typically written in a part of ROM memory of the chip.
  • This operating system provides for example the management of inputs / outputs, the management of interruptions, the management of files / memory spaces. It thus makes possible the development of an application without knowledge by the developer of the physical physical resources of the chip intended to implement this application. Physical resources are somehow translated by the operating system in the form of
  • Smart card technologies have been marked in recent years by an important development, namely the arrival of so-called "open” smart cards.
  • Smart cards have in fact evolved from being initially only proprietary devices and dedicated to one or more very specific application (s) to become media specific to the development of open applications, from which all programmers can develop applications using common, standard language.
  • the JavaCard TM standard promoted and licensed by SUN, or the Smart Card for Windows TM solution licensed by MICROSOFT Corp. each offers an open interface in the form of:
  • the invention provides a smart card type support comprising a chip, the chip comprising at least one memory area and a processing unit, said at least one memory area storing a first system of 'exploitation, or the first software interface to access physical resources.
  • the medium is characterized in that said at least one memory area stores at least a second operating system, or second software interface for accessing physical resources, which is different from the first operating system.
  • the memory additionally stores a program for initializing one or the other of said first and second operating systems, as a result of an exchange of data between said chip and a unit with which said chip communicates.
  • each operating system is associated with a respective pair of memory zones, each pair of memory zones memorizing a respective operating system and data used or produced by an application program, and that the chip also stores a memory management module to deny access to one of the operating systems and to data from an associated application program, by the other of the operating systems or by any other application program defined for this other operating system.
  • a unit for communicating with a card-type support comprises means for sending to said card an operating system selection message.
  • FIG. 1 is a schematic representation of the hardware and software layers implemented in a chip of a smart card according to the prior art
  • FIG. 4 is a flow diagram of a selection program for any of the operating systems implemented in the chip of the smart card as a result of a data exchange between said card and a unit with which said card communicated.
  • the chip comprises a processing unit 1 (CPU) suitable for executing particular applications 7 ⁇ , 7 2 , 7 3 ("Applets" in English terminology).
  • Basic 2 functions that is to say implemented in software in the form of an original operating system
  • / or native functions that is to say implemented in the hardware of the chip
  • a virtual machine (Virtual Machine in Anglo-Saxon literature) 4 and application programming interfaces (APIs) 3 are stored in a memory area of the chip.
  • These machine 4 and application programming interfaces 3 each comprise a part which is implemented as a function of the chosen processing unit 1, and another independent and identical part whatever the processing unit used.
  • the chip integrates two operating systems. In practice, still according to the invention, more than two operating systems can be provided. It should be noted that the applicant has developed a 2 Mbyte smart card, making it possible to integrate two operating systems into a chip.
  • At least two operating systems 20 and 21 are implemented in the chip.
  • each of the references 20 and 21 only identifies approximately what should be called “operating system", the definition of "operating system” being clearly accepted in the technical field of smart cards.
  • Each of these two operating systems is defined as a set of software functions ensuring the management of the elementary hardware functions (processing unit and memories) in the chip.
  • Some basic functions hardware can be implemented in the hardware of the chip in the form of so-called native or wired functions, for example cryptography functions.
  • the first operating system 20 is defined by the reference 2, and by a part of the elements bearing the references 4 and 3.
  • the second operating system 21 is defined by portions of the elements bearing the references
  • the first operating system 20, already presented with reference to FIG. 1, comprises a part of the virtual machine 4 and application programming interfaces (APIs) 3 which are stored in a memory area of the chip.
  • APIs application programming interfaces
  • machine 4 and application programming interface 3 each comprise a part which is implemented as a function of the hardware used, and another independent and identical part whatever the processing unit used.
  • these machine 4 and application programming interface 3 rely on the basic operating system functions associated with the reference 2.
  • the virtual machine 4 and the APIs 3 "hide" the processing unit CPU and the original operating system whatever they are, and any person can therefore develop any application 7- ⁇ , 7 2 , 73 independently of the native functions and operating system initially included in the card.
  • These applications 7 ⁇ , 7 2 , 7 3 can, for example, be telecommunications banking applications, electronic purses, etc.
  • the second operating system for example Smart Card for Windows TM, for its part comprises an input / output management module 10, a cryptography module 11 and a file management module 12.
  • the chip also stores , application programming interfaces (APIs) 14, an order and application verification module 13 and an authentication and authorization module 15.
  • APIs application programming interfaces
  • the second operating system is used by the chip 1 to execute applications 7 ⁇ , 7 2 , 73 which are supported and executed by means of an operating system different from that used for the execution of applications 8 15 8 2j 8 3 .
  • the so-called basic functions of the operating system 21, such as those associated with references 10, 11 and 12 are either implemented in software (in the form of an original operating system) or else in native forms (it ie implemented in the hardware of the chip).
  • each operating system 20 and 21 is associated with a pair of respective memory areas (20 ⁇ , 20 2 ) and (21 ⁇ , 21 2 ) suitable for storing said operating systems and the data used or produced by each application program.
  • a given operating system and the data of an associated application program cannot be accessed by another operating system or by any other application program defined for this other operating system.
  • the processing unit 1 accesses through a data and control bus to different memory areas 20 ⁇ , 20 2 and 21 1 , 21 2 through a memory management module M.
  • the memory areas 20- ⁇ , 21 1 are memory areas, typically
  • the memory management module M is in the form of a software program which manages access and security of access to the memory areas 20 ⁇ , 20 2 and 21 1 , 21 2 .
  • This memory management module M operates as follows: when access to a given address is requested by the processing unit 1, the module verifies that the address is an address of a memory area 20- ⁇ , 20 2 or 21 ⁇ , 21 2 associated with the only operating system 20 or 21 which is active at the time of the access request. If this is the case, the access request is validated and the processing unit 1 then accesses the requested memory address. If this is not the case, the memory management module M sends an interrupt message to the processing unit 1.
  • the smart card inserted in a reader or entering an electromagnetic field, is supplied (Step 30) by an energy source.
  • the card activates a “boot” module, or boot software module (Step 31).
  • the unit sends the card an operating system selection message.
  • This message is received by the card (Step 32).
  • the boot module initializes the selected operating system (Step 33), typically by transmitting to the processing unit 1 the address of a first instruction to be executed from the selected operating system.
  • the selected operating system is thus initialized.
  • the application (electronic wallet, etc.) to be implemented is then activated according to a scheme known according to the prior art for the type of application considered (Step 34).

Abstract

The invention concerns a support such as a smart card comprising a chip, said chip comprising at least a storage zone and a processing unit (1), said at least one storage zone storing a first platform (20), or first software interface for access to physical resources. The invention is characterised in that said at least one storage zone stores at least a second platform (21), or second software interface for access to physical resources, which is different from the first platform (20).

Description

CARTE A PUCE MULTI-APPLICATIVES. MULTI-APPLICATION CHIP CARD.
La présente invention concerne de manière générale les cartes à puce, et plus particulièrement les cartes à puce multi-applicatives. Elle s'applique également à tout autre support portable à puce, tel que porte-clé à puce. LesThe present invention relates generally to smart cards, and more particularly to multi-application smart cards. It also applies to any other portable smart medium, such as a smart keychain. The
Recommandations 7816-1 et 2 définissent les spécificités physiques des cartes à puce.Recommendations 7816-1 and 2 define the physical specificities of smart cards.
Une puce d'une carte à puce est un composant électronique comprenant des ressources matérielles sous la forme de :A chip of a smart card is an electronic component comprising material resources in the form of:
- au moins une zone de mémoire, et une unité de traitement supportant des fonctions dites natives, qui sont intégrées par masquage dans la puce lors de sa fabrication.- At least one memory area, and a processing unit supporting so-called native functions, which are integrated by masking in the chip during its manufacture.
La puce comprend, en outre, un système d'exploitation. Ce système d'exploitation est défini dans le cadre de la présente invention comme un logiciel, ou une interface logicielle, d'accès aux et de gestion des ressources physiques matérielles (mémoires, unité d'entrée/sortie, interruptions, etc ..) de la puce. Ce système d'exploitation est typiquement inscrit dans une partie de mémoire ROM de la puce. Ce système d'exploitation assure par exemple la gestion des entrées/sorties, la gestion des interruptions, la gestion des fichiers/espaces mémoires. Il rend ainsi possible le développement d'une application sans une connaissance par le développeur des ressources physiques matérielles de la puce destinée à mettre en œuvre cette application. Les ressources physiques sont en quelque sorte traduites par le système d'exploitation sous la forme deThe chip further includes an operating system. This operating system is defined in the context of the present invention as software, or a software interface, for accessing and managing physical physical resources (memories, input / output unit, interruptions, etc.). of the chip. This operating system is typically written in a part of ROM memory of the chip. This operating system provides for example the management of inputs / outputs, the management of interruptions, the management of files / memory spaces. It thus makes possible the development of an application without knowledge by the developer of the physical physical resources of the chip intended to implement this application. Physical resources are somehow translated by the operating system in the form of
« ressources logiques », telles que des commandes élémentaires. Lorsqu'un programme applicatif déterminé est exécuté par la puce de la carte, le système d'exploitation est mis à contribution dans les fonctions de gestion précitées."Logical resources", such as elementary commands. When a specific application program is executed by the card chip, the operating system is used in the aforementioned management functions.
Les technologies de la carte à puce ont été marquées ces dernières années par une évolution importante, à savoir l'arrivée de cartes à puce dites "ouvertes". Les cartes à puce ont en effet évolué en n'étant au départ que des dispositifs propriétaires et dédiés à une ou des applications bien particulière(s) pour devenir des supports propres au développement d'applications ouvertes, à partir desquels tous les programmeurs peuvent développer des applications en utilisant un langage commun et standard. A titre d'exemple, le standard JavaCard ™ promu et licensié par SUN, ou la solution Smart Card for Windows™ licensiée par MICROSOFT Corp. propose chacun une interface ouverte sous la forme de :Smart card technologies have been marked in recent years by an important development, namely the arrival of so-called "open" smart cards. Smart cards have in fact evolved from being initially only proprietary devices and dedicated to one or more very specific application (s) to become media specific to the development of open applications, from which all programmers can develop applications using common, standard language. For example, the JavaCard ™ standard promoted and licensed by SUN, or the Smart Card for Windows ™ solution licensed by MICROSOFT Corp. each offers an open interface in the form of:
(1) - un logiciel de type Machine Virtuelle offrant une interopérabilité de la carte indépendamment de son système d'exploitation, ce logiciel permettant notamment le développement de programmes applicatifs dans un langage donné indépendamment du système d'exploitation ; et (2) - un logiciel d'interface de programmation, formant partie du système d'exploitation et offrant une interopérabilité de la carte indépendamment du matériel, ou hardware en terminologie anglo-saxonne.(1) - Virtual Machine type software offering card interoperability regardless of its operating system, this software in particular allowing the development of application programs in a given language independently of the operating system; and (2) - programming interface software, forming part of the operating system and offering card interoperability regardless of the hardware, or hardware in English terminology.
Ces logiciels (1) et (2) "masquent" l'unité de traitement et le système d'exploitation originels quels qu'ils soient, et toute personne peut donc développer une quelconque application indépendamment des fonctions natives et du système d'exploitation inclus initialement dans la carte. Il suffit à cette personne de connaître le langage informatique ouvert qui est supporté par la Machine Virtuelle de la carte. A titre d'exemple, ce langage informatique de développement d'application peut être Visual basic ™.These softwares (1) and (2) "hide" the original processing unit and operating system whatever they are, and any person can therefore develop any application independently of the native functions and the operating system included. initially in the map. It is enough for this person to know the open computer language which is supported by the Virtual Machine of the card. As an example, this application development computer language can be Visual basic ™.
L'objectif initial visé par la spécification d'une interface ouverte, qui est de permettre la définition d'une « plate-forme » ouverte et commune pour le développement d'une application par un tiers quelconque, est contrecarré par les offres multiples qui existent pour de telles interfaces ouvertes.The initial objective aimed at by the specification of an open interface, which is to allow the definition of an open and common "platform" for the development of an application by any third party, is thwarted by the multiple offers which exist for such open interfaces.
D'une part, l'utilisateur de telles cartes devra posséder autant de cartes qu'il existent de plateformes ouvertes permettant le développement d'applications, s'il souhaite accéder à l'ensemble des applications existantes, ce qui va à rencontre de l'objectif visé par de tels systèmes ouverts. Il en résulte par ailleurs que chaque application développée pour une interface ouverte donnée devra être complètement conçue à nouveau lorsqu'elle devra être implémentée pour une autre interface ouverte. Afin de remédier aux inconvénients précités, l'invention fournit prévoit un support de type carte à puce comprenant une puce, la puce comprenant au moins une zone de mémoire et une unité de traitement, ladite au moins une zone de mémoire mémorisant un premier système d'exploitation, ou première interface logicielle d'accès à des ressources physiques. Le support se caractérise en ce que ladite au moins une zone de mémoire mémorise au moins un second système d'exploitation, ou seconde interface logicielle d'accès à des ressources physiques, qui est différent du premier système d'exploitation.On the one hand, the user of such cards must have as many cards as there are open platforms allowing the development of applications, if he wishes to access all of the existing applications, which goes against the objective of such open systems. It also follows that each application developed for a given open interface must be completely redesigned when it must be implemented for another open interface. In order to remedy the aforementioned drawbacks, the invention provides a smart card type support comprising a chip, the chip comprising at least one memory area and a processing unit, said at least one memory area storing a first system of 'exploitation, or the first software interface to access physical resources. The medium is characterized in that said at least one memory area stores at least a second operating system, or second software interface for accessing physical resources, which is different from the first operating system.
Ainsi, des applications développées pour chacun des deux systèmes d'exploitation peuvent être mises en oeuvre par une même carte.Thus, applications developed for each of the two operating systems can be implemented by the same card.
Avantageusement, la mémoire mémorise en outre un programme pour initialiser l'un ou l'autre desdits premier et second systèmes d'exploitation, en résultat d'un échange de données entre ladite puce et une unité avec laquelle ladite puce communique.Advantageously, the memory additionally stores a program for initializing one or the other of said first and second operating systems, as a result of an exchange of data between said chip and a unit with which said chip communicates.
Il peut être par ailleurs prévu qu'à chaque système d'exploitation est associé un couple de zones mémoire respectif, chaque couple de zones mémoire mémorisant un système d'exploitation respectif et des données utilisées ou produites par un programme applicatif, et que la puce mémorise, en outre, un module de gestion mémoire pour refuser tout accès à l'un des systèmes d'exploitation et à des données d'un programme applicatif associé, par l'autre des systèmes d'exploitation ou par un quelconque autre programme applicatif défini pour cet autre système d'exploitation.It can also be provided that each operating system is associated with a respective pair of memory zones, each pair of memory zones memorizing a respective operating system and data used or produced by an application program, and that the chip also stores a memory management module to deny access to one of the operating systems and to data from an associated application program, by the other of the operating systems or by any other application program defined for this other operating system.
Une unité pour communiquer avec un support de type carte conforme à l'invention comprend un moyen pour envoyer à ladite carte un message de sélection de système d'exploitation.A unit for communicating with a card-type support according to the invention comprises means for sending to said card an operating system selection message.
D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description qui suit, en référence aux dessins annexés correspondants dans lesquels : - la Figure 1 est une représentation schématique des couches matérielles et logicielles implémentées dans une puce d'une carte à puce selon la technique antérieure;Other characteristics and advantages of the present invention will appear more clearly on reading the description which follows, with reference to the corresponding appended drawings in which: - Figure 1 is a schematic representation of the hardware and software layers implemented in a chip of a smart card according to the prior art;
- la Figure 2 est une représentation schématique des couches matérielles et logicielles implémentées dans une puce d'une carte à puce selon l'invention;- Figure 2 is a schematic representation of the hardware and software layers implemented in a chip of a smart card according to the invention;
- la Figure 3 est un bloc-diagramme schématique d'une implémentation matérielle, ou hardware, d'une puce de carte selon l'invention; et- Figure 3 is a schematic block diagram of a hardware implementation, or hardware, of a card chip according to the invention; and
- la Figure 4 est un organigramme d'un programme de sélection de l'un quelconque des systèmes d'exploitation implémentés dans la puce de la carte à puce en résultat d'un échange de données entre ladite carte et une unité avec laquelle ladite carte communique.- Figure 4 is a flow diagram of a selection program for any of the operating systems implemented in the chip of the smart card as a result of a data exchange between said card and a unit with which said card communicated.
En référence à la Figure 1 , selon une réalisation donnée à titre d'exemple, dans une implémentation conventionnelle d'une interface ouverte par exemple de type « JavaCard™ » dans une puce de carte à puce, la puce comprend une unité de traitement 1 (CPU) propre à exécuter des applications particulières 7<ι, 72, 73 (« Applets » en terminologie anglo-saxonne). Des fonctions 2 de base (c'est à dire implémentées en software sous la forme d'un système d'exploitation originel) et/ou natives (c'est à dire implémentées dans le hardware de la puce) sont exécutées par la puce. Une machine virtuelle (Virtual Machine en littérature anglo-saxonne) 4 et des interfaces de programmation d'application (APIs) 3 sont mémorisées dans une zone mémoire de la puce. Ces machine 4 et interfaces de programmation d'application 3 comprennent chacune une partie qui est mise en œuvre en fonction de l'unité de traitement 1 choisie, et une autre partie indépendante et identique quelque soit l'unité de traitement utilisée. La machine virtuelle 4 et lesWith reference to FIG. 1, according to an embodiment given by way of example, in a conventional implementation of an open interface, for example of the “JavaCard ™” type in a smart card chip, the chip comprises a processing unit 1 (CPU) suitable for executing particular applications 7 <ι, 7 2 , 7 3 ("Applets" in English terminology). Basic 2 functions (that is to say implemented in software in the form of an original operating system) and / or native functions (that is to say implemented in the hardware of the chip) are executed by the chip. A virtual machine (Virtual Machine in Anglo-Saxon literature) 4 and application programming interfaces (APIs) 3 are stored in a memory area of the chip. These machine 4 and application programming interfaces 3 each comprise a part which is implemented as a function of the chosen processing unit 1, and another independent and identical part whatever the processing unit used. Virtual machine 4 and
APIs 3 "masquent" l'unité de traitement CPU et le système d'exploitation originel quels qu'ils soient, et toute personne peut donc développer une quelconque application 7ι, 72, 73 indépendamment des fonctions natives et système d'exploitation inclus initialement dans la carte. Ces applications 7ι, 72, 7z peuvent, à titre d'exemple, être des applications bancaires, des applications de télécommunications, de porte-monnaie électronique, etc Un gestionnaire (non représenté) est utilisé pour sécuriser les accès aux différentes mémoires et zones de ces mémoires afin d'éviter par exemple l'accès par une application 7ι à une zone de mémoire qui ne lui est pas allouée. Le repère 5 désigne un chargeur (« Loader » en littérature anglo-saxonne). Ce chargeur 5 est un programme de software pour charger dans la puce de la carte les applications 7\, 72, 73. Il implémente un protocole d'échange avec un serveur distant ou une quelconque unité, tel que lecteur de carte, etc.. avec laquelle la carte coopère pour le chargement d'applications, il assure le stockage dans la puce de cette application dans une zone de mémoire donnée, etc ..APIs 3 "hide" the CPU and the original operating system whatever they are, and anyone can develop any application 7ι, 7 2 , 7 3 regardless of native functions and operating system included initially in the map. These applications 7ι, 7 2 , 7z can, for example, be banking applications, telecommunications applications, electronic purses, etc. A manager (not shown) is used to secure access to the various memories and zones of these memories in order to avoid, for example, access by a 7ι application to a memory area which is not allocated to it. Reference 5 designates a charger ("Loader" in Anglo-Saxon literature). This loader 5 is a software program for loading the applications 7 \, 7 2 , 7 3 into the card chip. It implements an exchange protocol with a remote server or any other unit, such as a card reader, etc. with which the card cooperates for loading applications, it stores this application in the chip in an area of given memory, etc.
Dans la description qui suit d'un support de type carte à puce, il est prévu selon l'invention que la puce intègre deux systèmes d'exploitation. En pratique, toujours selon l'invention, plus de deux systèmes d'exploitation peuvent être prévus. Il est à noter que la demanderesse a mis au point une carte à puce de 2 Moctets, rendant possible l'intégration dans une puce de deux systèmes d'exploitation.In the following description of a chip card type support, it is provided according to the invention that the chip integrates two operating systems. In practice, still according to the invention, more than two operating systems can be provided. It should be noted that the applicant has developed a 2 Mbyte smart card, making it possible to integrate two operating systems into a chip.
En référence à la Figure 2, une puce d'une carte à puce selon l'invention comprend une unité de traitement 1 (CPU) propre à exécuter des premières applications 71s 72, 73, par exemple écrites en langage Visual Basic™ ainsi que des secondes applications 81, 82, 83 par exemple écrite en langage Java™. En pratique, les applications 7ι, 72, 73, d'une part, et 81, 8 83 .d'autre part, peuvent être écrites dans un même langage, cela ne dépendant que des Machines Virtuelles qui sont utilisées. Néanmoins, une application donnée devra préférentiellement être exécutée par l'un particulier des deux systèmes d'exploitation pour assurer son exécution dans un environnement approprié eu égard aux critères de sécurité, de temps de traitement, etc..., chaque système d'exploitation offrant un environnement particulier plus particulièrement adapté à certaines applications et pas à d'autres.With reference to FIG. 2, a chip of a smart card according to the invention comprises a processing unit 1 (CPU) suitable for executing first applications 7 1s 7 2 , 7 3 , for example written in Visual Basic ™ language as well as second applications 81, 8 2 , 83 for example written in Java ™ language. In practice, the applications 7ι, 7 2 , 7 3 , on the one hand, and 8 1 , 8 83. On the other hand, can be written in the same language, depending only on the Virtual Machines which are used. However, a given application should preferably be executed by one particular of the two operating systems to ensure its execution in an appropriate environment having regard to security criteria, processing time, etc., each operating system offering a particular environment more particularly adapted to certain applications and not to others.
Selon une caractéristique fondamentale de l'invention, au moins deux systèmes d'exploitation 20 et 21 sont mis en œuvre dans la puce. L'homme du métier conviendra que chacune des références 20 et 21 ne repère qu'approximativement ce qu'il convient d'appeler « Système d'exploitation », la définition de « système d'exploitation » étant clairement admise dans le domaine technique des cartes à puce. Chacun de ces deux systèmes d'exploitation est défini comme un ensemble de fonctions logicielles assurant la gestion des fonctions élémentaires matérielles (unité de traitement et mémoires) dans la puce. Certaines fonctions élémentaires matérielles peuvent être implémentées dans le hardware de la puce sous la forme de fonctions dites natives ou câblées, par exemple des fonctions de cryptographie. Dans la Figure 2, le premier système d'exploitation 20 est défini par la référence 2, et par une partie des éléments portant les références 4 et 3. Le second système d'exploitation 21 est défini par des portions des éléments portant les référencesAccording to a fundamental characteristic of the invention, at least two operating systems 20 and 21 are implemented in the chip. Those skilled in the art will agree that each of the references 20 and 21 only identifies approximately what should be called "operating system", the definition of "operating system" being clearly accepted in the technical field of smart cards. Each of these two operating systems is defined as a set of software functions ensuring the management of the elementary hardware functions (processing unit and memories) in the chip. Some basic functions hardware can be implemented in the hardware of the chip in the form of so-called native or wired functions, for example cryptography functions. In FIG. 2, the first operating system 20 is defined by the reference 2, and by a part of the elements bearing the references 4 and 3. The second operating system 21 is defined by portions of the elements bearing the references
10, 11 et 12.10, 11 and 12.
Le premier système d'exploitation 20, déjà présenté en référence à la Figure 1 , comprend une partie de la machine virtuelle 4 et des interfaces de programmation d'application (APIs) 3 qui sont mémorisées dans une zone de mémoire de la puce.The first operating system 20, already presented with reference to FIG. 1, comprises a part of the virtual machine 4 and application programming interfaces (APIs) 3 which are stored in a memory area of the chip.
Ces machine 4 et interface de programmation d'application 3 comprennent chacune une partie qui est mise en œuvre en fonction du hardware utilisé, et une autre partie indépendante et identique quelque soit l'unité de traitement utilisée. En outre, ces machine 4 et interface de programmation d'application 3 s'appuient sur les fonctions de base de système d'exploitation associées au repère 2. Les machine virtuelle 4 et les APIs 3 "masquent" l'unité de traitement CPU et le système d'exploitation originel quels qu'ils soient, et toute personne peut donc développer une quelconque application 7-ι, 72, 73 indépendamment des fonctions natives et système d'exploitation inclus initialement dans la carte. Ces applications 7ι, 72, 73 peuvent, à titre d'exemple, être des applications bancaires de télécommunications, de porte-monnaie électronique, etcThese machine 4 and application programming interface 3 each comprise a part which is implemented as a function of the hardware used, and another independent and identical part whatever the processing unit used. In addition, these machine 4 and application programming interface 3 rely on the basic operating system functions associated with the reference 2. The virtual machine 4 and the APIs 3 "hide" the processing unit CPU and the original operating system whatever they are, and any person can therefore develop any application 7-ι, 7 2 , 73 independently of the native functions and operating system initially included in the card. These applications 7ι, 7 2 , 7 3 can, for example, be telecommunications banking applications, electronic purses, etc.
Le second système d'exploitation, par exemple Smart Card for Windows™, comprend pour sa part, un module de gestion des entrées/sorties 10, un module de cryptographie 11 et un module de gestion de fichiers 12. La puce mémorise, en outre, des interfaces de programmation d'application (APIs) 14, un module de vérification des commandes et applications 13 et un module d'authentificatioπ et d'autorisation 15. Le second système d'exploitation est mis à contribution par la puce 1 pour exécuter les applications 7ι, 72, 73 qui sont supportées et exécutées au moyen d'un système d'exploitation différent de celui utilisé pour l'exécution des applications 815 82j 83. Les fonctions dites de base du système d'exploitation 21 , telles que celles associées aux références 10, 11 et 12 sont ou bien implémentées en software (sous la forme d'un système d'exploitation originel) ou bien sous formes natives (c'est à dire implémentées dans le hardware de la puce). Comme montré dans la Figure 3, à chaque système d'exploitation 20 et 21 est associé un couple de zones mémoire respectif (20ι, 202) et (21ι, 212) propre à mémoriser lesdits systèmes d'exploitation et les données utilisées ou produites par chaque programme applicatif. Un système d'exploitation donné et les données d'un programme applicatif associé ne sont pas accessibles par un autre système d'exploitation ou par un quelconque autre programme applicatif défini pour cet autre système d'exploitation. Pour cela, un mécanisme de sécurité est prévu. L'unité de traitement 1 accède à travers un bus de données et de commande à différentes zones mémoire 20ι, 202 et 211, 212 à travers un module de gestion de mémoire M. Les zones mémoire 20-ι, 211 sont des zones mémoire, typiquementThe second operating system, for example Smart Card for Windows ™, for its part comprises an input / output management module 10, a cryptography module 11 and a file management module 12. The chip also stores , application programming interfaces (APIs) 14, an order and application verification module 13 and an authentication and authorization module 15. The second operating system is used by the chip 1 to execute applications 7ι, 7 2 , 73 which are supported and executed by means of an operating system different from that used for the execution of applications 8 15 8 2j 8 3 . The so-called basic functions of the operating system 21, such as those associated with references 10, 11 and 12 are either implemented in software (in the form of an original operating system) or else in native forms (it ie implemented in the hardware of the chip). As shown in Figure 3, each operating system 20 and 21 is associated with a pair of respective memory areas (20ι, 20 2 ) and (21ι, 21 2 ) suitable for storing said operating systems and the data used or produced by each application program. A given operating system and the data of an associated application program cannot be accessed by another operating system or by any other application program defined for this other operating system. For this, a security mechanism is provided. The processing unit 1 accesses through a data and control bus to different memory areas 20ι, 20 2 and 21 1 , 21 2 through a memory management module M. The memory areas 20-ι, 21 1 are memory areas, typically
ROM, qui mémorisent respectivement les systèmes d'exploitation 20 et 21. Les zones mémoire de données 202, 212 sont des zones mémoire qui mémorisent respectivement les données propres à l'exécution d'un programme applicatif. Le module de gestion de mémoire M est sous la forme d'un programme logiciel qui gère l'accès et la sécurité des accès aux zones mémoire 20ι, 202 et 211, 212. Ce module de gestion de mémoire M opère de la manière suivante : lorsqu'un accès à une adresse donnée est demandé par l'unité de traitement 1 , le module vérifie que l'adresse est une adresse d'une zone mémoire 20-ι, 202 ou 21ι, 212 associée avec le seul des systèmes d'exploitation 20 ou 21 qui est actif au moment de la demande d'accès. Si tel est le cas, la demande d'accès est validée et l'unité de traitement 1 accède alors à l'adresse mémoire demandée. Si tel n'est pas le cas, le module de gestion de mémoire M renvoie un message d'interruption à l'unité de traitement 1.ROMs, which store the operating systems 20 and 21 respectively. The data memory areas 20 2 , 21 2 are memory areas which respectively store the data specific to the execution of an application program. The memory management module M is in the form of a software program which manages access and security of access to the memory areas 20ι, 20 2 and 21 1 , 21 2 . This memory management module M operates as follows: when access to a given address is requested by the processing unit 1, the module verifies that the address is an address of a memory area 20-ι, 20 2 or 21ι, 21 2 associated with the only operating system 20 or 21 which is active at the time of the access request. If this is the case, the access request is validated and the processing unit 1 then accesses the requested memory address. If this is not the case, the memory management module M sends an interrupt message to the processing unit 1.
En référence à la Figure 4, il est maintenant expliqué en détails un mécanisme d'activation de l'un ou l'autre des systèmes d'exploitation selon un mode de réalisation préférentiel. Les deux systèmes d'exploitation « cohabitant » dans la carte, il est impératif de prévoir l'activation sélective de l'un ou l'autre de ces deux systèmes d'exploitation selon le programme applicatif à activer. L'invention prévoit d'utiliser avantageusement le fait qu'une carte opère en pratique en mode esclave, c'est à dire qu'elle exécute les opérations que lui demande d'exécuter une unité (lecteur, serveur distant, etc..) avec laquelle elle communique . Ainsi, à titre d'exemple, selon la Recommandation ISO 7816-4, la sélection d'un protocole, par exemple T=1 ou T=0, de communication entre l'unité et la carte est toujours décidée par cette unité, la puce dans la carte se limitant à activer les circuits et éléments logiciels nécessaires à l'activation du protocole sélectionné par l'unité. L'invention prévoit d'utiliser avantageusement cette caractéristique pour proposer que l'activation de l'un ou l'autre des systèmes d'exploitation se fasse à la demande de l'unité avec laquelle la carte communique.Referring to Figure 4, there is now explained in detail a mechanism for activating one or the other of the operating systems according to a preferred embodiment. The two operating systems "cohabiting" in the card, it is imperative to provide for the selective activation of one or the other of these two operating systems according to the application program to be activated. The invention provides for advantageously using the fact that a card operates in practice in slave mode, that is to say that it executes the operations that it is asked to execute a unit (reader, remote server, etc.). with which it communicates. Thus, by way of example, according to ISO Recommendation 7816-4, the selection of a protocol, for example T = 1 or T = 0, of communication between the unit and the card is always decided by this unit, the chip in the card being limited to activating the circuits and software elements necessary for activating the protocol selected by the unit. The invention plans to advantageously use this feature to propose that the activation of one or the other of the operating systems is done at the request of the unit with which the card communicates.
Comme montré dans la Figure 4, la carte à puce, introduite dans un lecteur ou rentrant dans un champ électromagnétique, se trouve alimentée (Etape 30) par une source d'énergie. En réponse à cette alimentation, la carte active un module de « boot », ou module logiciel de démarrage (Etape 31). Lors d'un premier échange de données entre la carte (le module de boot) et l'unité, tel que lecteur, avec laquelle la carte communique, l'unité envoie à la carte un message de sélection de système d'exploitation. Ce message est reçu par la carte (Etape 32). En réponse à ce message, le module de boot initialise le système d'exploitation sélectionné (Etape 33), typiquement en transmettant à l'unité de traitement 1 l'adresse d'une première instruction à exécuter du système d'exploitation sélectionné. Le système d'exploitation sélectionné est ainsi initialise. L'application (porte-monnaie électronique, etc..) devant être mise en œuvre est ensuite activée selon un schéma connu selon la technique antérieure pour le type d'application considéré (Etape 34). As shown in Figure 4, the smart card, inserted in a reader or entering an electromagnetic field, is supplied (Step 30) by an energy source. In response to this supply, the card activates a “boot” module, or boot software module (Step 31). During a first exchange of data between the card (the boot module) and the unit, such as reader, with which the card communicates, the unit sends the card an operating system selection message. This message is received by the card (Step 32). In response to this message, the boot module initializes the selected operating system (Step 33), typically by transmitting to the processing unit 1 the address of a first instruction to be executed from the selected operating system. The selected operating system is thus initialized. The application (electronic wallet, etc.) to be implemented is then activated according to a scheme known according to the prior art for the type of application considered (Step 34).

Claims

REVENDICATIONS
1 - Support de type carte à puce comprenant une puce, ladite puce comprenant au moins une zone de mémoire et une unité de traitement (1), ladite au moins une zone de mémoire (20ι, 202, 211, 212) mémorisant un premier système d'exploitation (20), ou première interface logicielle d'accès à des ressources physiques, caractérisé en ce que ladite au moins une zone de mémoire mémorise au moins un second système d'exploitation (21), ou seconde interface logicielle d'accès à des ressources physiques, qui est différent du premier système d'exploitation (20).1 - Chip card type support comprising a chip, said chip comprising at least one memory area and a processing unit (1), said at least one memory area (20ι, 20 2 , 21 1 , 21 2 ) storing a first operating system (20), or first software interface for accessing physical resources, characterized in that said at least one memory area stores at least a second operating system (21), or second software interface access to physical resources, which is different from the first operating system (20).
2 - Support de type carte à puce conforme à la revendication 1 , caractérisé en ce que ladite mémoire mémorise, en outre, un programme pour initialiser l'un ou l'autre desdits premier et second systèmes d'exploitation (20, 21), en résultat d'un échange de données entre ladite puce et une unité avec laquelle ladite puce communique.2 - Chip card type support according to claim 1, characterized in that said memory stores, in addition, a program for initializing one or the other of said first and second operating systems (20, 21), as a result of an exchange of data between said chip and a unit with which said chip communicates.
3 - Support de type carte à puce conforme à l'une quelconque des revendications précédentes, caractérisé en ce qu'à chaque système d'exploitation (20 ; 21) est associé un couple de zones mémoire respectif (20 ( 202 ; 211, 212), chaque couple de zones mémoire (20-ι, 202 ; 211, 212) mémorisant un système d'exploitation respectif (20, 21) et des données utilisées ou produites par un programme applicatif (7-ι, 72, 73 ; 81, 82, 83), et en ce que ladite puce mémorise, en outre, un module de gestion mémoire (M) pour refuser tout accès à l'un des systèmes d'exploitation (20 ; 21) et à des données d'un programme applicatif (7<\, 72, 73 ; 81,3 - Chip card type support according to any one of the preceding claims, characterized in that each operating system (20; 21) is associated with a pair of respective memory areas (20 ( 20 2 ; 21 1 , 21 2 ), each pair of memory areas (20-ι, 20 2 ; 21 1 , 21 2 ) storing a respective operating system (20, 21) and data used or produced by an application program (7-ι , 7 2 , 7 3 ; 8 1 , 8 2 , 8 3 ), and in that said chip stores, in addition, a memory management module (M) to refuse any access to one of the operating systems ( 20; 21) and to data from an application program (7 < \ , 7 2 , 7 3 ; 8 1 ,
82, 83) associé, par l'autre (21, 20) des systèmes d'exploitation ou par un quelconque autre programme applicatif (81, 82, 83 57-1, 72j 73 )défini pour cet autre système d'exploitation.8 2 , 83) associated, by the other (21, 20) of the operating systems or by any other application program (8 1 , 8 2 , 8 3 57- 1 , 7 2j 7 3 ) defined for this other operating system.
4 - Unité pour communiquer avec un support de type carte à puce conforme à l'une quelconque des revendications précédentes, caractérisée en ce qu'elle comprend un moyen pour envoyer à ladite puce dudit support un message de sélection de système d'exploitation (31 , 32). 4 - Unit for communicating with a chip card type medium according to any one of the preceding claims, characterized in that it comprises means for sending to said chip of said medium an operating system selection message (31 , 32).
PCT/FR2001/001229 2000-04-28 2001-04-20 Multiple application smart card WO2001084512A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU2001254898A AU2001254898A1 (en) 2000-04-28 2001-04-20 Multiple application smart card

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR00/05539 2000-04-28
FR0005539A FR2808359B1 (en) 2000-04-28 2000-04-28 MULTI-APPLICATION CHIP CARD

Publications (1)

Publication Number Publication Date
WO2001084512A1 true WO2001084512A1 (en) 2001-11-08

Family

ID=8849765

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2001/001229 WO2001084512A1 (en) 2000-04-28 2001-04-20 Multiple application smart card

Country Status (3)

Country Link
AU (1) AU2001254898A1 (en)
FR (1) FR2808359B1 (en)
WO (1) WO2001084512A1 (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2373079A (en) * 2000-12-19 2002-09-11 Smart Card Solutions Ltd Smart card with universal content manager
WO2005017748A1 (en) * 2003-08-08 2005-02-24 Giesecke & Devrient Gmbh Operating system for a portable data carrier
FR2864294A1 (en) * 2003-12-17 2005-06-24 Oberthur Card Syst Sa Chip card e.g. bank card, has dispatcher and correspondence table that constitute prohibiting unit to prohibit execution of application on specific functions, where execution of application on other functions remains authorized
US7653602B2 (en) 2003-11-06 2010-01-26 Visa U.S.A. Inc. Centralized electronic commerce card transactions
US7725369B2 (en) 2003-05-02 2010-05-25 Visa U.S.A. Inc. Method and server for management of electronic receipts
US7857216B2 (en) 2003-09-12 2010-12-28 Visa U.S.A. Inc. Method and system for providing interactive cardholder rewards image replacement
US8005763B2 (en) 2003-09-30 2011-08-23 Visa U.S.A. Inc. Method and system for providing a distributed adaptive rules based dynamic pricing system
US8010405B1 (en) 2002-07-26 2011-08-30 Visa Usa Inc. Multi-application smart card device software solution for smart cardholder reward selection and redemption
US8015060B2 (en) 2002-09-13 2011-09-06 Visa Usa, Inc. Method and system for managing limited use coupon and coupon prioritization
EP2428890A1 (en) * 2010-09-14 2012-03-14 LG Electronics Mobile terminal and method of operating the same, and identify module card
US8407083B2 (en) 2003-09-30 2013-03-26 Visa U.S.A., Inc. Method and system for managing reward reversal after posting
US8429048B2 (en) 2009-12-28 2013-04-23 Visa International Service Association System and method for processing payment transaction receipts
US8554610B1 (en) 2003-08-29 2013-10-08 Visa U.S.A. Inc. Method and system for providing reward status
US8626577B2 (en) 2002-09-13 2014-01-07 Visa U.S.A Network centric loyalty system
US9852437B2 (en) 2002-09-13 2017-12-26 Visa U.S.A. Inc. Opt-in/opt-out in loyalty system
US11132691B2 (en) 2009-12-16 2021-09-28 Visa International Service Association Merchant alerts incorporating receipt data

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0565875A2 (en) * 1992-04-15 1993-10-20 International Business Machines Corporation Techniques for supporting operating systems for portable computers
US5600818A (en) * 1991-05-08 1997-02-04 Gao Gesellschaft Fuer Automation Und Organisation Data protective microprocessor circuit for portable data carriers, for example credit cards
US5636357A (en) * 1994-12-21 1997-06-03 Eurotronics Company Memory card and method for operation in a plurality of systems having incompatible object code format requirements
US5822582A (en) * 1996-07-19 1998-10-13 Compaq Computer Corporation Boot drive selection and hibernation file detection
US5912453A (en) * 1995-09-29 1999-06-15 International Business Machines Corporation Multiple application chip card with decoupled programs
US6005942A (en) * 1997-03-24 1999-12-21 Visa International Service Association System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600818A (en) * 1991-05-08 1997-02-04 Gao Gesellschaft Fuer Automation Und Organisation Data protective microprocessor circuit for portable data carriers, for example credit cards
EP0565875A2 (en) * 1992-04-15 1993-10-20 International Business Machines Corporation Techniques for supporting operating systems for portable computers
US5636357A (en) * 1994-12-21 1997-06-03 Eurotronics Company Memory card and method for operation in a plurality of systems having incompatible object code format requirements
US5912453A (en) * 1995-09-29 1999-06-15 International Business Machines Corporation Multiple application chip card with decoupled programs
US5822582A (en) * 1996-07-19 1998-10-13 Compaq Computer Corporation Boot drive selection and hibernation file detection
US6005942A (en) * 1997-03-24 1999-12-21 Visa International Service Association System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"AUTOMATIC INITIAL PROGRAM LOAD SELECTION", IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, vol. 39, no. 3, 1 March 1996 (1996-03-01), pages 61, XP000581622, ISSN: 0018-8689 *
"MULTIPLE BOOTABLE OPERATING SYSTEM", IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, vol. 35, no. 1A, 1 June 1992 (1992-06-01), pages 311 - 314, XP000308879, ISSN: 0018-8689 *

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2373079A (en) * 2000-12-19 2002-09-11 Smart Card Solutions Ltd Smart card with universal content manager
US8010405B1 (en) 2002-07-26 2011-08-30 Visa Usa Inc. Multi-application smart card device software solution for smart cardholder reward selection and redemption
US10460338B2 (en) 2002-09-13 2019-10-29 Visa U.S.A. Inc. Network centric loyalty system
US8015060B2 (en) 2002-09-13 2011-09-06 Visa Usa, Inc. Method and system for managing limited use coupon and coupon prioritization
US8239261B2 (en) 2002-09-13 2012-08-07 Liane Redford Method and system for managing limited use coupon and coupon prioritization
US8626577B2 (en) 2002-09-13 2014-01-07 Visa U.S.A Network centric loyalty system
US9852437B2 (en) 2002-09-13 2017-12-26 Visa U.S.A. Inc. Opt-in/opt-out in loyalty system
US7987120B2 (en) 2003-05-02 2011-07-26 Visa U.S.A. Inc. Method and portable device for management of electronic receipts
US7725369B2 (en) 2003-05-02 2010-05-25 Visa U.S.A. Inc. Method and server for management of electronic receipts
US7827077B2 (en) 2003-05-02 2010-11-02 Visa U.S.A. Inc. Method and apparatus for management of electronic receipts on portable devices
US9087426B2 (en) 2003-05-02 2015-07-21 Visa U.S.A. Inc. Method and administration system for management of electronic receipts
US8386343B2 (en) 2003-05-02 2013-02-26 Visa U.S.A. Inc. Method and user device for management of electronic receipts
WO2005017748A1 (en) * 2003-08-08 2005-02-24 Giesecke & Devrient Gmbh Operating system for a portable data carrier
US8554610B1 (en) 2003-08-29 2013-10-08 Visa U.S.A. Inc. Method and system for providing reward status
US8793156B2 (en) 2003-08-29 2014-07-29 Visa U.S.A. Inc. Method and system for providing reward status
US7857215B2 (en) 2003-09-12 2010-12-28 Visa U.S.A. Inc. Method and system including phone with rewards image
US7857216B2 (en) 2003-09-12 2010-12-28 Visa U.S.A. Inc. Method and system for providing interactive cardholder rewards image replacement
US8407083B2 (en) 2003-09-30 2013-03-26 Visa U.S.A., Inc. Method and system for managing reward reversal after posting
US8005763B2 (en) 2003-09-30 2011-08-23 Visa U.S.A. Inc. Method and system for providing a distributed adaptive rules based dynamic pricing system
US8244648B2 (en) 2003-09-30 2012-08-14 Visa U.S.A. Inc. Method and system for providing a distributed adaptive rules based dynamic pricing system
US9141967B2 (en) 2003-09-30 2015-09-22 Visa U.S.A. Inc. Method and system for managing reward reversal after posting
US9710811B2 (en) 2003-11-06 2017-07-18 Visa U.S.A. Inc. Centralized electronic commerce card transactions
US7653602B2 (en) 2003-11-06 2010-01-26 Visa U.S.A. Inc. Centralized electronic commerce card transactions
FR2864294A1 (en) * 2003-12-17 2005-06-24 Oberthur Card Syst Sa Chip card e.g. bank card, has dispatcher and correspondence table that constitute prohibiting unit to prohibit execution of application on specific functions, where execution of application on other functions remains authorized
WO2005059847A1 (en) * 2003-12-17 2005-06-30 Oberthur Card Systems Sa Microcircuit multi-account card for restricting an account operation and corresponding communication method
US11132691B2 (en) 2009-12-16 2021-09-28 Visa International Service Association Merchant alerts incorporating receipt data
US8650124B2 (en) 2009-12-28 2014-02-11 Visa International Service Association System and method for processing payment transaction receipts
US8429048B2 (en) 2009-12-28 2013-04-23 Visa International Service Association System and method for processing payment transaction receipts
CN102404449A (en) * 2010-09-14 2012-04-04 Lg电子株式会社 Mobile terminal and method of operating the same, and identify module card
US8577413B2 (en) 2010-09-14 2013-11-05 Lg Electronics Inc. Mobile terminal and method of operating the same, and identify module card
EP2428890A1 (en) * 2010-09-14 2012-03-14 LG Electronics Mobile terminal and method of operating the same, and identify module card

Also Published As

Publication number Publication date
AU2001254898A1 (en) 2001-11-12
FR2808359B1 (en) 2002-06-28
FR2808359A1 (en) 2001-11-02

Similar Documents

Publication Publication Date Title
EP1004100B1 (en) Portable electronic device for safe communication system, and method for initialising its parameters
US6233683B1 (en) System and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card
WO2001084512A1 (en) Multiple application smart card
EP2455922B1 (en) NFC transaction method and system
EP1004992A2 (en) A system and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card
FR2897706A1 (en) MICROPROCESSOR CARD AND MICROPROCESSOR CARD SYSTEM SUPPORTING MULTIPLE INTERFACES.
WO2002005511A1 (en) Security module
WO2002042912A1 (en) Executing an application in a portable electronic object with low storage capacity
FR2833374A1 (en) METHOD AND DEVICE FOR CONTROLLING ACCESS IN AN ONBOARD SYSTEM
FR2945143A1 (en) Applications i.e. contactless payment applications, administrating method for mobile telephone terminal, involves deactivating applications to transmit deactivation request of previously activated group to access controller
EP2124153A1 (en) Methods and device for implementing multi-functional peripherals using a single standard driver
EP2912640B1 (en) Method for managing identifiers in a smart card and smart card
EP2058746B1 (en) Portable electronic entity, host station and associated method
FR2923041A1 (en) METHOD OF OPENING SECURED TO THIRDS OF A MICROCIRCUIT CARD.
WO2002008897A1 (en) Protocol for message exchange between applications implanted on an onboard system, and corresponding onboard system
WO1999000774A9 (en) Security module comprising means generating links between main files and auxiliary files
EP2304559B1 (en) Method for swapping between two versions of a same application within an information processing device, and said device
EP2302518B1 (en) Method and apparatus for installation of a MIFARE applicaton in a MIFARE memory
RU2673394C2 (en) Method of installing application on secure element
AU770900B2 (en) A system and method for a multi-application smart card which can facilitate a post-issuance download of an application into the smart card
FR2789774A1 (en) Security module for secure comparison of an authentication code with one stored in memory has additional auxiliary registers in which randomly chosen data words are placed for use in authenticating the code in the main registers
FR2795583A1 (en) Telecommunications terminal security application module access unit having detector associating security profile and access command authorising application module access when match found.
FR2967514A1 (en) Method for conducting transaction between e.g. mobile telephone and ticket issuing machine in area, involves establishing communication channel between portable and transaction devices, transferring program, and receiving application data
FR2967513A1 (en) Near-field communication transaction performing method for use in e.g. supermarket, involves utilizing application program to conduct transaction with transaction device, and utilizing media as relay contact to close transaction terminal
FR2833093A1 (en) Method for passing data between memory of portable tool and reader terminal, comprises creation of single file containing all data blocks their modification in terminal in one operation and return

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG US UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

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

Ref country code: JP