WO2000051087A1 - Dispositif d'acces securise a des applications d'une carte a puce - Google Patents
Dispositif d'acces securise a des applications d'une carte a puce Download PDFInfo
- Publication number
- WO2000051087A1 WO2000051087A1 PCT/FR2000/000465 FR0000465W WO0051087A1 WO 2000051087 A1 WO2000051087 A1 WO 2000051087A1 FR 0000465 W FR0000465 W FR 0000465W WO 0051087 A1 WO0051087 A1 WO 0051087A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- smart card
- register
- applications
- application
- entity
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/357—Cards having a plurality of specified features
- G06Q20/3576—Multiple memory zones on card
- G06Q20/35765—Access rights to memory zones
Definitions
- the present invention relates to a device for secure access to applications of a smart card.
- the invention relates to a device for secure access to applications of a smart card, notably involving instructions, informing at all times of the rights, essentially in terms of access to the memory of the smart card. , the software component or the hardware intervention that is executed in the smart card.
- the most common smart cards include a microprocessor that manages program memory.
- the program memory is most often dedicated to a single application or to a set of applications loaded at the same time in the smart card. When several applications are loaded into a smart card, they have a close relationship with each other and are all intended for the same type of service. Thus, for example, a smart card cannot simultaneously play the role of bank card and the role of loyalty card for any trade.
- new software architectures are envisaged. These new software architectures exploit the development of standardized programming languages (for example, the "JAVA" language) which solve portability problems.
- FIG. 1 is a simplified representation of a software architecture of the smart card projects which are currently developing.
- the architecture shown in Figure 1 includes in particular a first part 110 which corresponds to the so-called system part of the software architecture of a smart card 100, and a second part 120 which corresponds to the so-called application part of the software architecture of the smart card 100.
- the system part 110 of the smart card is essentially composed of a library of programs 112 of the operating system of the smart card, of an interface 114 to manage interactions with, for example, the microprocessor of the smart card or else with the different memories of the smart card, and a space for managing hardware interrupts 116.
- the application part 120 of the software architecture is composed of different applications: - a first, a second, and a third main application, respectively 122, 124 and 126; a first, a second and a third additional applications, respectively 121, 123 and 125.
- the main applications 122, 124 and 126 are written in a programming language directly understandable by the processor of the smart card.
- the additional applications 121, 123 and 125 are typically applications coded in a standardized language. These applications can be added at any time, to the system part 110, in the application part 120 of the software architecture described. In FIG. 1, the additional applications 121, 123 and 125 depend directly on the first main application 122.
- the first main application 122 here serves as an interpreter between the additional applications and the operating system by transforming the codes of the additional applications into a machine language understandable by operating system programs 112.
- the secure access device to applications of a smart card according to the invention is used in an architecture of this type.
- the software architecture which has just been described is more complex than that which currently exists in smart cards in circulation. Indeed, the architecture described supposes that applications can be added in a standardized programming language, possibly after the circulation of the smart card. A satisfactory level of security is therefore more complex to achieve than when a single application, or a group of applications dedicated to a single function of the smart card, was loaded once and for all into the smart card definitively limited in term of applications available. The risk that a new application will disturb the operation of previous applications is therefore lower.
- a software architecture comprising simultaneously an application dedicated to the evaluation of the loyalty of a customer to an oil company and a classic banking application, must guarantee that a secret key used in the banking application cannot be read when using the application associated with the oil company.
- the object of the present invention is to overcome the problems which have just been described.
- the invention proposes a device making it possible to manage different software applications possibly implemented at different moments, or different hardware events, of a smart card, while ensuring high security.
- the device according to the invention offers the possibility of detecting when the user of an application is trying to override his rights, for example by trying to access data which is not intended for the application in question. .
- the invention proposes the implementation of specific instructions internal to the microprocessor of the smart card. These specific instructions are call (DCALL) and return (DRETURN) instructions. These call and return instructions are associated according to the invention with specific registers which make it possible to ascertain whether or not the operations carried out by the application being executed in the smart card are authorized.
- the invention therefore relates to a device for accessing applications of a smart card comprising a microprocessor associated with an operating system operating with a set of instructions, a program memory and a battery of applications in a memory. of the chip card, characterized in that it comprises - a microprocessor register for storing a code, on several control bits, specific to an entity involved,
- control device for controlling, as a function of the control bits, the authorized nature of access to areas of the memory of the smart card by the new entity called or involved in the smart card,
- each new intervening entity is activated at a predefined address of a memory of the ROM memory type (Read Only Memory in English literature) of the smart card.
- the entity operating in the smart card can be an application of the application battery or a hardware event, or even the operating system associated with the microprocessor of the smart card.
- - Figure 1 already described, is a simplified representation of a software architecture of smart card projects that are currently developing
- - Figure 2 is a representation of the operating principle according to the invention during the execution of an application within the smart card.
- a microprocessor 200 of a smart card 100 manages all the operations of a "battery of applications 210 of the smart card 100.
- a bi-directional bus 250 ensures the exchange of information between the microprocessor 200 and any application of the battery of applications 210.
- the information exchanged can be data, addresses or control instructions.
- a memory access controller 220 exchanges information with the microprocessor 200, in particular by means of a link 230 which carries a signal, called a control signal between the microprocessor 200 and the memory access controller 220.
- an entity such as the application 211 requires, by means of the bidirectional bus 250, the intervention of another entity such as an application 212, it executes a DCALL call instruction followed by a designation of the entity called.
- a register R is updated during such calls. A certain number of bits of the register R then take a value associated with the entity called by the call instruction DCALL. This value is related to a label or to a code specific to the process associated with the application and will be designated hereinafter "label".
- the register R is therefore a hardware means of the microprocessor 200 which is used to memorize a code specific to the entity of the software architecture which is being executed, and to control its domain of execution.
- the DCALL instruction makes it possible to enter the future process to be executed and to assign a label which will be entered in the register R.
- the future process in progress can be access to a frozen memory (ROM) or to a random access memory (RAM), as well as the processing of codes or data - which are reported in different memories.
- the device according to the invention can also take into account so-called hardware instructions, for example of the re-initialization type.
- the so-called hardware instructions are events which can occur in real time on a smart card and which generate interruptions in the microprocessors of these smart cards. This type of event is managed by the device according to the invention in the same way as the software instructions: the bits of the register R take on a very precise value, appropriate to each event in real time occurring on the smart cards, limiting and thus controlling the rights of these events.
- the information provided by the register R is thus capable of controlling information, for example to the microprocessor or to any other entity external to the software architecture, relating to the identification of the area of the software architecture concerned by the application. running.
- the information provided by the register R makes it possible to control the area of the memory of the smart card in which the application has the right to intervene, that is to say the memory space to which it can access.
- a second label is associated with each group of data in memory or with memory locations. These second labels are preset when programming the memory. When an instruction commands the use of data in memory, these are read with the second associated label. These data will be accessible only if there is authorization given by the control module.
- the bits of the status register are, in this case, different from the bits which would correspond to a DCALL call of the particular application in question.
- the addresses of the memory to which we are trying to access are not addresses belonging to the domain authorized from the last application that made a DCALL type call - this condition then being determined from the confrontation between the labels - illegal access information prohibits access to these memories.
- a second register CS makes it possible to keep in memory a code specific to the applications which were active at the time of the last DCALL call instruction issued by the current application, that is to say those which are to be executed following the current application.
- the register CS is intended to keep in memory a specific code appearing in the register R of the application which was active during the last execution of the call instruction DCALL.
- This register CS therefore serves as a buffer to keep in memory the first label which was contained in the register R of the method which was active just before this DCALL instruction.
- a DRET return instruction is executed by the microprocessor, and the data contained in the second register CS allow to return to the application which was previously executed and which had been activated by a DCALL call.
- the R register is also updated. Thus, when the instruction DRET is executed, the value which is in the register CS is reloaded in the register R.
- the register CS is contained in the microprocessor 200 and is connected directly to the register R so as to allow the evolution of the stored data as described.
- the information stored in the CS register can only be accessed by the processor itself, and this only during the execution of the DCALL and DRET instructions.
- the hardware event will use the registers R and / or CS to set up a process number.
- the process in question will not be a process called by a DCALL instruction, but a "hardware" process.
- the DCALL and DRET instructions are not used during such a hardware event, and only the registers R and CS are used with an action which is already preprogrammed in the circuit and designated by its process (for example by assignment of 'a number).
- the second CS register cannot be directly accessed by smart card applications in order to guarantee the integrity of the device during its implementation during the execution of a DRET return instruction.
- the bits of the register R take a value specific to the application which was previously executing, thus restoring its rights and its limitations in terms of memory access.
- the device for accessing memory areas provides great security in terms of access to the different areas of the memory, for a software architecture such as that presented in FIG. 1.
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
Description
Claims
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP00907718A EP1155389B1 (fr) | 1999-02-25 | 2000-02-24 | Dispositif d'acces securise a des applications d'une carte a puce |
| JP2000601614A JP2002538532A (ja) | 1999-02-25 | 2000-02-24 | Icカードのアプリケーションに対するアクセス保護装置 |
| US09/914,315 US6776346B1 (en) | 1999-02-25 | 2000-02-24 | Secured access device with chip card application |
| DE60009870T DE60009870T2 (de) | 1999-02-25 | 2000-02-24 | Vorrichtung für gesicherten zugang zu chipkartenanwendungen |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FR9902363A FR2790324B1 (fr) | 1999-02-25 | 1999-02-25 | Dispositif d'acces securise a des applications d'une carte a puce |
| FR99/02363 | 1999-02-25 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2000051087A1 true WO2000051087A1 (fr) | 2000-08-31 |
Family
ID=9542532
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/FR2000/000465 Ceased WO2000051087A1 (fr) | 1999-02-25 | 2000-02-24 | Dispositif d'acces securise a des applications d'une carte a puce |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US6776346B1 (fr) |
| EP (1) | EP1155389B1 (fr) |
| JP (1) | JP2002538532A (fr) |
| DE (1) | DE60009870T2 (fr) |
| FR (1) | FR2790324B1 (fr) |
| WO (1) | WO2000051087A1 (fr) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2004068426A1 (fr) * | 2003-01-31 | 2004-08-12 | Matsushita Electric Industrial Co., Ltd. | Carte de memoire semi-conductrice et son programme de controle |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006509277A (ja) * | 2002-11-18 | 2006-03-16 | ストーカード・インコーポレーテッド | 大容量記憶ボリュームを有する安全なトランザクション・カード |
| JP4322021B2 (ja) * | 2003-02-06 | 2009-08-26 | 株式会社ルネサステクノロジ | メモリカード |
| DE10324996A1 (de) * | 2003-06-03 | 2005-02-17 | Giesecke & Devrient Gmbh | Chipkarte mit wenigstens einer Applikation |
| EP2495690B1 (fr) * | 2011-03-01 | 2015-05-13 | Nxp B.V. | Transpondeur et procédé de surveillance d'accès aux données d'application du transpondeur |
| GB2514042A (en) * | 2012-03-01 | 2014-11-12 | Siemens Ag | RFID Transponder having a plurality of memory areas |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4797542A (en) * | 1986-02-04 | 1989-01-10 | Casio Computer Co., Ltd. | Multiple application electronic card-like apparatus |
| US4831245A (en) * | 1986-09-16 | 1989-05-16 | Fujitsu Limited | System for data field area acquisition in IC card for multiple services |
| US4930129A (en) * | 1987-03-13 | 1990-05-29 | Mitsubishi Denki Kabushiki Kaisha | IC card having internal error checking capability |
| US4985921A (en) * | 1988-04-11 | 1991-01-15 | Spa Syspatronic Ag | Portable data carrying device |
| EP0766211A2 (fr) * | 1995-09-29 | 1997-04-02 | International Business Machines Corporation | Carte à circuit intégré multifonctionnelle |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5165043A (en) * | 1989-03-15 | 1992-11-17 | Hitachi, Ltd. | Memory card system and access method for memory card |
| JPH03276337A (ja) * | 1990-03-27 | 1991-12-06 | Toshiba Corp | マイクロコントローラ |
| JP3375669B2 (ja) * | 1993-03-23 | 2003-02-10 | 富士通株式会社 | I/oメモリカードのアクセス方法およびその運用方法 |
| GB9307623D0 (en) * | 1993-04-13 | 1993-06-02 | Jonhig Ltd | Data writing to eeprom |
| DE4341887C2 (de) * | 1993-12-08 | 1996-12-19 | Siemens Ag | Verfahren zum Verhindern einer unberechtigten Datenänderung bei einer Vorrichtung mit einem nichtflüchtigen Speicher |
-
1999
- 1999-02-25 FR FR9902363A patent/FR2790324B1/fr not_active Expired - Fee Related
-
2000
- 2000-02-24 WO PCT/FR2000/000465 patent/WO2000051087A1/fr not_active Ceased
- 2000-02-24 EP EP00907718A patent/EP1155389B1/fr not_active Expired - Lifetime
- 2000-02-24 DE DE60009870T patent/DE60009870T2/de not_active Expired - Lifetime
- 2000-02-24 JP JP2000601614A patent/JP2002538532A/ja not_active Withdrawn
- 2000-02-24 US US09/914,315 patent/US6776346B1/en not_active Expired - Lifetime
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4797542A (en) * | 1986-02-04 | 1989-01-10 | Casio Computer Co., Ltd. | Multiple application electronic card-like apparatus |
| US4831245A (en) * | 1986-09-16 | 1989-05-16 | Fujitsu Limited | System for data field area acquisition in IC card for multiple services |
| US4930129A (en) * | 1987-03-13 | 1990-05-29 | Mitsubishi Denki Kabushiki Kaisha | IC card having internal error checking capability |
| US4985921A (en) * | 1988-04-11 | 1991-01-15 | Spa Syspatronic Ag | Portable data carrying device |
| EP0766211A2 (fr) * | 1995-09-29 | 1997-04-02 | International Business Machines Corporation | Carte à circuit intégré multifonctionnelle |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2004068426A1 (fr) * | 2003-01-31 | 2004-08-12 | Matsushita Electric Industrial Co., Ltd. | Carte de memoire semi-conductrice et son programme de controle |
| CN100347731C (zh) * | 2003-01-31 | 2007-11-07 | 松下电器产业株式会社 | 半导体存储卡及对其进行控制的程序 |
| US7526625B2 (en) | 2003-01-31 | 2009-04-28 | Panasonic Corporation | Semiconductor memory card, and program for controlling the same |
| US7895405B2 (en) | 2003-01-31 | 2011-02-22 | Panasonic Corporation | Semiconductor memory card, and program for controlling the same |
Also Published As
| Publication number | Publication date |
|---|---|
| DE60009870T2 (de) | 2005-04-21 |
| EP1155389B1 (fr) | 2004-04-14 |
| US6776346B1 (en) | 2004-08-17 |
| JP2002538532A (ja) | 2002-11-12 |
| DE60009870D1 (de) | 2004-05-19 |
| FR2790324B1 (fr) | 2001-12-28 |
| EP1155389A1 (fr) | 2001-11-21 |
| FR2790324A1 (fr) | 2000-09-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP0733245B1 (fr) | Carte a memoire et procede de fonctionnement | |
| EP0479655B1 (fr) | Circuit intégré pour une carte à microprocesseur conçue pour recevoir des programmes multiples en mémoire programmable | |
| US20240070121A1 (en) | Thread safe lock-free concurrent write operations for use with multi-threaded in-line logging | |
| EP1337919B1 (fr) | Procede de securisation rendant deterministe l'execution en temps reel d'applications multitaches du type controle-commande avec confinement d'erreur | |
| FR2977694A1 (fr) | Microprocesseur protege contre un debordement de pile | |
| FR2989801A1 (fr) | Procede de gestion securisee d'un espace memoire pour microcontroleur | |
| FR2686171A1 (fr) | Carte a memoire de masse pour microordinateur avec facilites d'execution de programmes internes. | |
| EP2912640B1 (fr) | Procédé de gestion d'identifiants dans une carte a circuit integré et carte a circuit integré correspondante | |
| FR3103585A1 (fr) | Procédé de gestion de la configuration d’accès à des périphériques et à leurs ressources associées d’un système sur puce formant par exemple un microcontrôleur, et système sur puce correspondant | |
| EP1619590B1 (fr) | Procédé de programmation d'un contrôleur de DMA dans un système sur puce et système sur puce associé | |
| EP1155389B1 (fr) | Dispositif d'acces securise a des applications d'une carte a puce | |
| EP1365323B1 (fr) | Procédé d'échange d'informations entre systèmes d'exploitation cohabitant sur un même ordinateur | |
| EP1258004B1 (fr) | Ecriture en temps reel securisee pour memoire non volatile | |
| EP1960934B1 (fr) | Procede pour securiser l'execution d'un code logiciel en langage intermediaire dans un appareil portatif | |
| EP1881404A1 (fr) | Procédé de protection dynamique des données lors de l'exécution d'un code logiciel en langage intermédiaire dans un appareil numérique | |
| US7664916B2 (en) | Global smartcard cache methods and apparatuses | |
| CA2264896A1 (fr) | Module de securite comportant des moyens de creation de liens entre des fichiers principaux et des fichiers auxiliaires | |
| CN116700842B (zh) | 数据对象的读写方法、装置、计算设备及存储介质 | |
| FR2787901A1 (fr) | Organisation memoire par zones physiques | |
| FR2873471A1 (fr) | Systeme a carte a memoire sans contact a mot de passe | |
| FR2829847A1 (fr) | Procede de controle d'acces a des ressources partagees dans un systeme embarque et systeme embarque pour la mise en oeuvre d'un tel procede | |
| EP1250645B1 (fr) | Systeme de gestion de peripheriques dans un circuit integre | |
| EP4459493A1 (fr) | Système sur puce comportant un contrôleur de mémoire et procédé de contrôle de mémoire correspondant | |
| FR3095054A1 (fr) | Gestion d’une mémoire dans un dispositif électronique | |
| JPS6034144B2 (ja) | 記憶装置アクセスのロック方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP US |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
| 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) | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2000907718 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 09914315 Country of ref document: US |
|
| ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2000 601614 Kind code of ref document: A Format of ref document f/p: F |
|
| WWP | Wipo information: published in national office |
Ref document number: 2000907718 Country of ref document: EP |
|
| WWG | Wipo information: grant in national office |
Ref document number: 2000907718 Country of ref document: EP |