FR3028642A1 - METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR - Google Patents
METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR Download PDFInfo
- Publication number
- FR3028642A1 FR3028642A1 FR1460939A FR1460939A FR3028642A1 FR 3028642 A1 FR3028642 A1 FR 3028642A1 FR 1460939 A FR1460939 A FR 1460939A FR 1460939 A FR1460939 A FR 1460939A FR 3028642 A1 FR3028642 A1 FR 3028642A1
- Authority
- FR
- France
- Prior art keywords
- microcircuit
- software entity
- compressed
- operating system
- decompressed
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/355—Personalisation of cards for use
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Stored Programmes (AREA)
Abstract
Procédé de personnalisation d'un microcircuit (MC) muni d'une mémoire non volatile (MEM). Ce procédé comprend une écriture (E01) dans ladite mémoire non-volatile d'au moins une première partie (P1) d'une entité logicielle et d'une deuxième partie (P2) de la même entité logicielle, la deuxième partie ayant été compressée, et au moins une étape d'une phase de personnalisation (E02) du microcircuit dans laquelle la deuxième partie compressée reste compressée. L'invention concerne également un procédé d'utilisation du microcircuit et un microcircuit.Method of personalizing a microcircuit (MC) equipped with a non-volatile memory (MEM). This method comprises writing (E01) in said non-volatile memory of at least a first part (P1) of a software entity and a second part (P2) of the same software entity, the second part having been compressed and at least one step of a personalization phase (E02) of the microcircuit in which the second compressed portion remains compressed. The invention also relates to a method of using the microcircuit and a microcircuit.
Description
1 Arrière-plan de l'invention L'invention se rapporte au domaine général des microcircuits, et plus particulièrement à la personnalisation de ces microcircuits. On connaît aujourd'hui des microcircuits comprenant des mémoires dans lesquelles des logiciels et des données personnelles sont 10 écrits ou placés. Généralement, on écrit dans la mémoire des microcircuits un système d'exploitation, des applications, et des données de personnalisation. Par données de personnalisation, on comprend qu'il s'agit de données liées au porteur telles que son nom, son prénom, sa date de naissance, sa photo, ou encore une clef cryptographique associée 15 au porteur. Des microcircuits existants comportent à cet effet des mémoires de type ROM et EEPROM bien connues de l'homme du métier. Dans ces microcircuits, le fabricant des microcircuits peut être amené à inscrire dans la mémoire de type ROM le système d'exploitation, tandis qu'un tiers, par 20 exemple un fabricant de carte à microcircuit, inscrira les données de personnalisation dans l'EEPROM. Les mémoires de type EEPROM ont pour inconvénient d'être lentes lors de lectures et d'écritures. Ce type de mémoire n'est donc pas adapté pour le stockage de grandes quantités de données, puisque ce stockage 25 requiert une durée trop longue. Ces mémoires ne sont pas non plus adaptées pour le stockage de systèmes d'exploitation, puisqu'elles limitent leur vitesse d'exécution. Pour pallier cet inconvénient, il a été proposé d'utiliser des mémoires Flash au sein des microcircuits. Les fabricants de microcircuits peuvent inscrire les systèmes 30 d'exploitation dans les mémoires Flash des microcircuits. Cela étant, il est préférable pour les fabricants de carte à puce d'écrire eux-mêmes le système d'exploitation dans les microcircuits à mémoire Flash, en plus des données de personnalisation. Ceci permet notamment aux fabricants de carte à puce de gérer plus facilement leurs stocks et leurs achats, par 35 exemple en mutualisant ces derniers et en réduisant le nombre de références de microcircuit à traiter. 3028642 2 On peut noter que : - les systèmes d'exploitation de microcircuits peuvent occuper de 30 kilooctets à plusieurs centaines de kilooctets de mémoire, - les applications peuvent occuper de quelques kilooctets à des dizaines de 5 kilooctets, - les données de personnalisation peuvent occuper de quelques kilooctets à des dizaines de kilooctets, et - des éléments de code optionnels peuvent occuper de quelques kilooctets à des dizaines de kilooctets.BACKGROUND OF THE INVENTION The invention relates to the general field of microcircuits, and more particularly to the customization of these microcircuits. Microcircuits are known today comprising memories in which software and personal data are written or placed. Generally, microcircuits memory is written an operating system, applications, and personalization data. By personalization data, it is understood that it is data related to the wearer such as his name, first name, date of birth, his photo, or a cryptographic key associated with the bearer. Existing microcircuits have for this purpose ROM and EEPROM type memories well known to those skilled in the art. In these microcircuits, the microcircuit manufacturer may have to enter the operating system into the ROM memory, while a third party, for example a microcircuit card manufacturer, will enter the personalization data in the EEPROM. . EEPROM type memories have the disadvantage of being slow during readings and writes. This type of memory is therefore not suitable for storing large amounts of data, since this storage requires a too long duration. These memories are also not suitable for the storage of operating systems, since they limit their speed of execution. To overcome this drawback, it has been proposed to use flash memories within microcircuits. Microcircuit manufacturers can register the operating systems in the flash memories of the microcircuits. However, it is preferable for smart card manufacturers to write themselves the operating system in flash memory microcircuits, in addition to personalization data. This allows smart card manufacturers to manage their inventories and purchases more easily, for example by pooling them and reducing the number of microcircuit references to be processed. 3028642 2 It can be noted that: - microcircuit operating systems can occupy from 30 kilobytes to several hundred kilobytes of memory, - the applications can occupy from a few kilobytes to tens of 5 kilobytes, - personalization data can occupy from a few kilobytes to tens of kilobytes, and - optional code elements can take from a few kilobytes to tens of kilobytes.
L'écriture de l'ensemble de ces données peut être faite avec des équipements utilisant des transmissions par contact ou sans contact. Cette écriture peut nécessiter une durée de l'ordre de 5 à 10 secondes pour un système d'exploitation de 160 kilooctets. Dans la suite de la demande, le terme écriture peut être compris 15 comme englobant notamment les actions de chargement et/ou de transmission des données. Ces étapes d'écriture rallongent donc la durée de la personnalisation des microcircuits chez les fabricants de carte à puce, ce qui augmente les coûts de productions. 20 L'invention vise notamment à pallier cet inconvénient. Objet et résumé de l'invention 25 La présente invention vise une solution à ce problème en proposant un procédé de personnalisation d'un microcircuit muni d'une mémoire non volatile. Selon une caractéristique générale, le procédé comprend une 30 écriture dans ladite mémoire non-volatile d'au moins une première partie d'une entité logicielle et d'une deuxième partie de la même entité logicielle, la deuxième partie ayant été compressée, et au moins une étape d'une phase de personnalisation du microcircuit postérieure à ladite étape d'écriture et dans laquelle la deuxième partie compressée reste 35 compressée. 3028642 3 Par entité logicielle, on entend un unique logiciel, dont les deux parties décompressées peuvent fonctionner à la fois seules et/ou ensemble. En d'autres termes, la première partie peut appeler des fonctions dans la deuxième partie décompressée et la deuxième partie 5 décompressée peut appeler des fonctions dans la première partie. Les deux parties sont également issues d'une même version de l'entité logicielle. Ainsi, et d'une façon générale, l'invention permet de réduire la durée de fabrication et de personnalisation des microcircuits, puisqu'au 10 moins une partie d'une entité logicielle qui est écrite est compressée, elle occupe donc moins d'espace. Il en découle une réduction du temps de transfert du code de l'entité logicielle. Même si la décompression de la deuxième partie peut prendre du temps, on peut la mettre en oeuvre à tout moment ensuite sans que cela 15 ne retarde une chaîne de fabrication dans laquelle un grand nombre de microcircuits sont traités. En réduisant la durée de chargement et d'écriture, on réduit le coût de production du microcircuit. Dans un mode particulier de mise en oeuvre, l'entité logicielle est 20 un système d'exploitation du microcircuit, la première partie de l'entité logicielle étant une portion non-compressée du système d'exploitation et la deuxième partie compressée de l'entité logicielle étant une portion compressée du système d'exploitation. Dans un mode particulier de mise en oeuvre, la portion non- 25 compressée du système d'exploitation du microcircuit est utilisée au moins lors de ladite au moins une étape d'une phase de personnalisation du microcircuit, et la portion compressée du système d'exploitation du microcircuit est destinée à être utilisée décompressée lors de l'utilisation du microcircuit, après ladite étape d'une phase de personnalisation. 30 Ainsi, on peut regrouper dans la portion à compresser des fonctions qui ne sont pas utilisées lors de la personnalisation mais uniquement lors de l'utilisation du microcircuit. L'utilisation peut être par exemple l'usage du microcircuit dans son application finale. 3028642 4 Dans un mode particulier de mise en oeuvre, la deuxième partie compressée de l'entité logicielle est destinée à être décompressée lors de la détection d'au moins un évènement. Dans un mode particulier de mise en oeuvre, on écrit, au cours de 5 ladite étape d'écriture, la deuxième partie compressée de l'entité logicielle en écrivant plusieurs sous-parties compressées de l'entité logicielle, chaque sous-partie étant destinée à être décompressée lors de la détection d'au moins un évènement. Dans un mode particulier de mise en oeuvre, la deuxième partie 10 compressée est destinée à être décompressée lors de la première utilisation du microcircuit. Ainsi, utilisé dans son application finale, le microcircuit va décompresser la deuxième partie compressée pour permettre l'utilisation de toutes les fonctions de l'entité logicielle.The writing of all these data can be done with equipment using contact or contactless transmissions. This writing may require a duration of the order of 5 to 10 seconds for an operating system of 160 kilobytes. In the remainder of the application, the term "write" can be understood as including, in particular, the actions of loading and / or transmission of data. These writing steps therefore lengthen the duration of microcircuit personalization for smart card manufacturers, which increases production costs. The invention aims in particular to overcome this drawback. OBJECT AND SUMMARY OF THE INVENTION The present invention aims to solve this problem by proposing a method of customizing a microcircuit provided with a non-volatile memory. According to one general feature, the method comprises writing to said non-volatile memory of at least a first portion of a software entity and a second portion of the same software entity, the second portion having been compressed, and least one step of a personalization phase of the microcircuit subsequent to said writing step and wherein the second compressed portion remains compressed. By software entity means a single software, the two decompressed parts can operate both alone and / or together. In other words, the first part can call functions in the second decompressed part and the second decompressed part can call functions in the first part. Both parts are also from the same version of the software entity. Thus, and in a general manner, the invention makes it possible to reduce the duration of manufacture and personalization of the microcircuits, since at least a part of a software entity that is written is compressed, it thus occupies less space . This results in a reduction in the code transfer time of the software entity. Even though decompression of the second part may take a long time, it can be implemented at any time thereafter without delaying a production line in which a large number of microcircuits are processed. By reducing the loading and writing time, the production cost of the microcircuit is reduced. In a particular mode of implementation, the software entity is a microcircuit operating system, the first part of the software entity being an uncompressed portion of the operating system and the second compressed portion of the operating system. software entity being a compressed portion of the operating system. In a particular mode of implementation, the uncompressed portion of the operating system of the microcircuit is used at least during said at least one stage of a personalization phase of the microcircuit, and the compressed portion of the system of exploitation of the microcircuit is intended to be used decompressed during the use of the microcircuit, after said step of a personalization phase. Thus, one can group in the portion to compress functions that are not used during customization but only when using the microcircuit. The use can be for example the use of the microcircuit in its final application. In a particular mode of implementation, the second compressed part of the software entity is intended to be decompressed during the detection of at least one event. In a particular embodiment, during the said writing step, the second compressed part of the software entity is written by writing several compressed subsections of the software entity, each sub-part being intended to be decompressed when detecting at least one event. In a particular mode of implementation, the second compressed portion 10 is intended to be decompressed during the first use of the microcircuit. Thus, used in its final application, the microcircuit will decompress the second part compressed to allow the use of all functions of the software entity.
Dans un mode particulier de mise en oeuvre, le procédé comprend toutes les étapes d'une phase de personnalisation du microcircuit dans laquelle la deuxième partie compressée reste compressée. Dans un mode particulier de mise en oeuvre, le procédé comporte l'écriture de données de personnalisation liées à l'entité logicielle dans une mémoire du microcircuit, par exemple ladite mémoire non-volatile. En d'autres termes, on personnalise le microcircuit pour l'entité logicielle. L'invention propose également un procédé d'utilisation d'un microcircuit ayant subi au moins une étape d'une phase de personnalisation et muni d'une mémoire non-volatile. Selon une caractéristique générale de ce procédé, la mémoire non volatile comporte au moins une première partie d'une entité logicielle et une deuxième partie de la même entité logicielle, la deuxième partie ayant été compressée, et l'on décompresse la deuxième partie pour obtenir l'entité logicielle. Dans un mode particulier de mise en oeuvre, l'entité logicielle est un système d'exploitation du microcircuit, la première partie de l'entité logicielle étant une portion non-compressée du système d'exploitation et la deuxième partie compressée de l'entité logicielle étant une portion compressée du système d'exploitation.In a particular mode of implementation, the method comprises all the steps of a personalization phase of the microcircuit in which the second compressed portion remains compressed. In a particular mode of implementation, the method comprises the writing of personalization data related to the software entity in a memory of the microcircuit, for example said non-volatile memory. In other words, the microcircuit is customized for the software entity. The invention also proposes a method of using a microcircuit having undergone at least one step of a personalization phase and provided with a non-volatile memory. According to a general characteristic of this method, the non-volatile memory comprises at least a first part of a software entity and a second part of the same software entity, the second part having been compressed, and the second part is decompressed to obtain the software entity. In a particular mode of implementation, the software entity is a microcircuit operating system, the first part of the software entity being an uncompressed portion of the operating system and the second compressed part of the entity. software being a compressed portion of the operating system.
3028642 5 Dans un mode particulier de mise en oeuvre, on utilise la portion du système d'exploitation ayant été décompressée pour le fonctionnement du microcircuit. Dans un mode particulier de mise en oeuvre, la deuxième partie 5 compressée de l'entité logicielle est décompressée lors de la détection d'au moins un évènement. Dans un mode particulier de mise en oeuvre, plusieurs sous-parties compressées de l'entité logicielle ont été écrites, chaque sous-partie étant décompressée lors de la détection d'au moins un évènement.In a particular mode of implementation, the portion of the operating system that has been decompressed for the operation of the microcircuit is used. In a particular mode of implementation, the second compressed part of the software entity is decompressed during the detection of at least one event. In a particular mode of implementation, several compressed sub-parts of the software entity have been written, each sub-part being decompressed during the detection of at least one event.
10 Dans un mode particulier de mise en oeuvre, la deuxième partie compressée est décompressée lors de la première utilisation du microcircuit. Dans un mode particulier de mise en oeuvre, le microcircuit a subi toutes les étapes d'une phase de personnalisation avant ladite 15 décompression. Dans un mode particulier de mise en oeuvre, une mémoire du microcircuit comporte des données de personnalisation liées à l'entité logicielle. L'invention propose également un microcircuit ayant subi au moins 20 une étape d'une phase de personnalisation et muni d'une mémoire non-volatile, caractérisé en ce que la mémoire non volatile comporte au moins une première partie d'une entité logicielle et une deuxième partie de la même entité logicielle, la deuxième partie ayant été compressée. Dans un mode particulier de réalisation, l'entité logicielle est un 25 système d'exploitation du microcircuit, la première partie de l'entité logicielle étant une portion non-compressée du système d'exploitation et la deuxième partie compressée de l'entité logicielle étant une portion compressée du système d'exploitation. Dans un mode particulier de réalisation, la portion du système 30 d'exploitation ayant été décompressée est destinée à être utilisée pour le fonctionnement du microcircuit. Dans un mode particulier de réalisation, la deuxième partie compressée de l'entité logicielle est destinée à être décompressée lors de la détection d'au moins un évènement.In a particular mode of implementation, the second compressed part is decompressed during the first use of the microcircuit. In a particular mode of implementation, the microcircuit has undergone all the stages of a personalization phase before said decompression. In a particular mode of implementation, a memory of the microcircuit includes personalization data related to the software entity. The invention also proposes a microcircuit having undergone at least one step of a personalization phase and provided with a non-volatile memory, characterized in that the non-volatile memory comprises at least a first part of a software entity and a second part of the same software entity, the second part having been compressed. In a particular embodiment, the software entity is a microcircuit operating system, the first portion of the software entity being an uncompressed portion of the operating system and the second compressed portion of the software entity. being a compressed portion of the operating system. In a particular embodiment, the portion of the operating system 30 having been decompressed is intended to be used for the operation of the microcircuit. In a particular embodiment, the second compressed portion of the software entity is intended to be decompressed during the detection of at least one event.
35 Dans un mode particulier de réalisation, plusieurs sous-parties compressées de l'entité logicielle ont été écrites, chaque sous-partie étant 3028642 6 destinée à être décompressée lors de la détection d'au moins un évènement. Dans un mode particulier de réalisation, la deuxième partie compressée est destinée à être décompressée lors de la première 5 utilisation du microcircuit. Dans un mode particulier de réalisation, le microcircuit a subi toutes les étapes d'une phase de personnalisation. Dans un mode particulier de réalisation, une mémoire du microcircuit comporte des données de personnalisation liées à l'entité 10 logicielle. Enfin, l'invention propose un document d'identité comprenant le microcircuit tel que défini ci-avant. Le document d'identité peut être un passeport électronique.In a particular embodiment, several compressed sub-parts of the software entity have been written, each sub-part being intended to be decompressed upon detection of at least one event. In a particular embodiment, the second compressed portion is intended to be decompressed during the first use of the microcircuit. In a particular embodiment, the microcircuit has undergone all the stages of a personalization phase. In a particular embodiment, a memory of the microcircuit includes personalization data related to the software entity. Finally, the invention proposes an identity document comprising the microcircuit as defined above. The identity document can be an electronic passport.
15 Brève description des dessins 20 D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple dépourvu de tout caractère limitatif. Sur les figures : - la figure 1 représente de façon schématique un procédé de 25 personnalisation d'un microcircuit selon un mode de mise en oeuvre de l'invention, ainsi que l'évolution de la mémoire du microcircuit au cours des étapes du procédé, - la figure 2 représente de façon schématique un procédé d'utilisation d'un microcircuit selon un mode de mise en oeuvre de l'invention, 30 - la figure 3 illustre schématiquement les variations de tailles du système d'exploitation, - la figure 4 illustre schématiquement les durées d'écriture des différents éléments qui sont écrits dans une mémoire de microcircuit.BRIEF DESCRIPTION OF THE DRAWINGS Other features and advantages of the present invention will become apparent from the description given below, with reference to the accompanying drawings which illustrate an example devoid of any limiting character. In the figures: FIG. 1 schematically represents a method of customizing a microcircuit according to an implementation mode of the invention, as well as the evolution of the memory of the microcircuit during the steps of the method, FIG. 2 diagrammatically represents a method of using a microcircuit according to an embodiment of the invention, FIG. 3 schematically illustrates the variations in the size of the operating system, FIG. schematically illustrates the writing times of the various elements that are written in a microcircuit memory.
35 3028642 7 Description détaillée d'un mode de réalisation Nous allons maintenant décrire un procédé de personnalisation d'un microcircuit, conformément à un mode particulier de réalisation de 5 l'invention. Dans le mode de réalisation décrit ici, l'entité logicielle qui est écrite dans la mémoire est un système d'exploitation. Sur la figure 1, on a représenté un procédé de personnalisation d'un microcircuit MC, muni d'une mémoire non-volatile MEM du type Flash.DETAILED DESCRIPTION OF THE EMBODIMENT We will now describe a method of personalizing a microcircuit, in accordance with a particular embodiment of the invention. In the embodiment described here, the software entity that is written in the memory is an operating system. FIG. 1 shows a method of personalizing a microcircuit MC, provided with a non-volatile memory MEM of the Flash type.
10 Le microcircuit MC est par exemple installé au sein d'une carte pour former une carte à microcircuit. Préalablement à la mise en oeuvre du procédé de la figure 1, un système d'exploitation a été divisé en deux portions : une portion P1 non compressée et une portion P2 compressée. La division du système 15 d'exploitation sera décrite plus en détail en se référant à la figure 3. Le procédé de la figure 1 comporte une étape E01 dans laquelle on écrit dans la mémoire non-volatile MEM les portions Pi et P2 du système d'exploitation. Après une étape E02 de phase de personnalisation, qui comporte 20 au moins une sous-étape de pré-personnalisation et une sous-étape de personnalisation, des données de personnalisation PER sont écrites dans la mémoire non-volatile MEM. Au cours de cette étape E02, la portion non-compressée P1 du système d'exploitation peut être fonctionnelle et être utilisée pour la 25 personnalisation. La portion non-compressée P1 comporte ici des fonctions relatives à l'allocation de mémoire qui sont utilisées pour la personnalisation. La phase de personnalisation comprend une pré-personnalisation et une personnalisation. La pré-personnalisation correspond à une étape 30 de configuration du microcircuit et/ou du système d'exploitation, cette étape étant mise en oeuvre pour un groupe de microcircuits, par exemple une flotte. La pré-personnalisation peut par exemple correspondre à l'activation et à la désactivation de moyens de communication (contact et/ou sans contact), de protocoles de communications, ou encore 35 d'algorithmes cryptographiques. A titre d'exemple, pour les passeports électroniques, on peut configurés des protocoles tels que BAC, BAC+AA, 3028642 8 EAC ou SAC, et pour une plateforme JavaCard, on peut configurer les protocoles Global Platform. La personnalisation comprend l'écriture d'informations différentes pour chaque microcircuit. Cela peut correspondre au chargement de clés 5 et de certificats cryptographiques, ou encore de données liées à l'utilisateur qui sera le porteur du microcircuit telles que son nom, son adresse, ou des données biométriques. On peut noter que la phase depersonnalisation permet l'écriture de données qui sont liées au système d'exploitation et qui sont destinées à 10 être utilisées par ce système d'exploitation. On obtient ainsi un microcircuit MC ayant subi toutes les étapes d'une phase de personnalisation et muni d'une mémoire non-volatile MEM, cette mémoire non volatile MEM comportant une portion non-compressée P1 du système d'exploitation, une portion compressée P2 du même 15 système d'exploitation, et des données de personnalisation PER. Sur la figure 2, on a représenté un procédé d'utilisation du microcircuit MC décrit en se référant à la figure 1. Le microcircuit MC a été personnalisé et il comporte donc des données de personnalisation PER écrites dans sa mémoire non-volatile MEM. La mémoire non-volatile MEM 20 comporte en outre une portion non-compressée du système d'exploitation Pl et une portion compressée du système d'exploitation P2. Dans une étape E03, un évènement est détecté. Cet évènement peut être la première utilisation du microcircuit MC dans son application finale, et la détection peut être réalisée par la portion non-compressée du 25 système d'exploitation Pl. A titre indicatif, on peut détecter la première fois que le microcircuit est alimenté électriquement, ou détecter une instruction de type APDU bien connue de l'homme du métier, ou détecter la première authentification du porteur du microcircuit (par exemple lors de la saisie d'un code PIN ou d'une donnée biométrique), ou encore 30 détecter la première authentification d'un terminal extérieur par le microcircuit (par exemple lors d'une authentification par un système d'inspection par un passeport à travers le protocole EAC, c'est à dire au moyen d'un terminal embarquant un logiciel permettant d'accéder aux données d'un passeport électronique).The microcircuit MC is for example installed within a card to form a microcircuit card. Prior to the implementation of the method of FIG. 1, an operating system has been divided into two portions: an uncompressed portion P1 and a compressed portion P2. The division of the operating system 15 will be described in more detail with reference to FIG. 3. The method of FIG. 1 comprises a step E01 in which the portions Pi and P2 of the control system are written in the non-volatile memory MEM. exploitation. After a personalization phase step E02, which comprises at least a pre-personalization sub-step and a personalization sub-step, personalization data PER is written to the non-volatile memory MEM. During this step E02, the uncompressed portion P1 of the operating system can be functional and used for customization. The uncompressed portion P1 here includes memory allocation functions that are used for customization. The customization phase includes pre-customization and customization. The pre-customization corresponds to a configuration step 30 of the microcircuit and / or the operating system, this step being implemented for a group of microcircuits, for example a fleet. Pre-customization may for example correspond to the activation and deactivation of communication means (contact and / or contactless), communications protocols, or cryptographic algorithms. For example, for e-passports, protocols such as BAC, BAC + AA, 3028642 8 EAC or SAC can be configured, and for a JavaCard platform, the Global Platform protocols can be configured. The customization includes writing different information for each microcircuit. This may correspond to the loading of keys 5 and cryptographic certificates, or data related to the user who will be the holder of the microcircuit such as his name, his address, or biometric data. It may be noted that the depersonalisation phase allows the writing of data which is related to the operating system and which is intended to be used by this operating system. Thus, a microcircuit MC having undergone all the stages of a personalization phase and provided with a non-volatile memory MEM, this nonvolatile memory MEM having an uncompressed portion P1 of the operating system, a compressed portion P2 of the same operating system, and personalization data PER. FIG. 2 shows a method of using the microcircuit MC described with reference to FIG. 1. The microcircuit MC has been personalized and therefore comprises personalization data PER written in its non-volatile memory MEM. The non-volatile memory MEM 20 further comprises an uncompressed portion of the operating system P1 and a compressed portion of the operating system P2. In a step E03, an event is detected. This event may be the first use of the microcircuit MC in its final application, and the detection can be performed by the uncompressed portion of the operating system Pl. As an indication, it is possible to detect the first time that the microcircuit is powered. electrically, or detect an instruction APDU type well known to those skilled in the art, or detect the first authentication of the holder of the microcircuit (for example when entering a PIN or a biometric data), or 30 detect the first authentication of an external terminal by the microcircuit (for example during an authentication by an inspection system by a passport through the EAC protocol, that is to say by means of a terminal carrying software allowing to access the data of an electronic passport).
35 On peut ensuite décompresser (étape E04) la portion P2 compressée du microcircuit. On peut noter que cette décompression est 3028642 9 liée à la détection de l'événement mise en oeuvre dans l'étape E03, et éventuellement à une condition d'authentification supplémentaire ou une condition de mise en contact du microcircuit. On peut noter que la gestion d'applications dans des formats 5 compressés peut être mise en oeuvre au sein d'un microcircuit. On obtient ainsi un microcircuit MC avec un système d'exploitation complet dans lequel les deux portions décompressées peuvent fonctionner ensemble. Sur la figure 3, on a représenté par un diagramme les variations 10 de taille du système d'exploitation. Le système d'exploitation entier SE est complet et comporte toutes les fonctions du système d'exploitation qui sont utilisés pour la personnalisation, l'utilisation, ou encore les deux. Ensuite, ce système d'exploitation SE est divisé en une portion à 15 compresser du système d'exploitation P2' et une portion non compressée P1. La portion non-compressée P1 comporte, comme indiqué ci-avant, des fonctions utiles pour la personnalisation telles que l'allocation de mémoire, et cette portion P1 comporte également des informations relatives à la portion à compresser P2. Plus précisément, la portion non-compressée P1 20 peut comporter des instructions visant à décompresser l'autre portion, des instructions pour la détection d'un évènement avant de décompresser, ou encore des informations relatives à l'emplacement dans la mémoire de l'autre portion du système d'exploitation. La division peut être mise en oeuvre en compilant le système 25 d'exploitation, en identifiant les fonctions qui peuvent être compressées, et en plaçant ces fonctions dans un fichier distinct pour obtenir deux fichiers distincts. L'ajout de ces informations dans la portion non-compressée du système d'exploitation peut augmenter la taille totale du système 30 d'exploitation, comme cela est visible sur la figure 3 sur laquelle les deux portions P1 et P2' ont une taille plus grande que le système d'exploitation SE. Après compression, on obtient la portion compressée P2, et l'ensemble formé par les deux portions P1 et P2 a une taille bien inférieure 35 à celle de la taille du système d'exploitation initial SE. La différence de taille de mémoire est notée TM. La demanderesse a réussi à ce jour à 3028642 10 compresser plusieurs dizaines de kilooctets, avec des taux de compression pouvant aller jusqu'à 80%. Sur la figure 4, on a représenté de manière schématique les durées d'écriture des différents éléments qui sont écrits dans une mémoire 5 de microcircuit, et les durées de mise en oeuvre de certaines fonctions. Sur cette figure, on a représenté le chargement d'un système d'exploitation dans une mémoire Flash par le procédé selon l'invention, dans une mémoire Flash selon la technique antérieure, et dans une mémoire d'un microcircuit dans lequel le système d'exploitation est écrit 10 dans une mémoire ROM. Dans une phase P1, mise en oeuvre chez un fabricant de carte à microcircuit, on inscrit un système d'exploitation dans les microcircuits équipés de mémoire Flash. Comme on peut le voir sur la figure, la durée Dse1 d'écriture du système d'exploitation est plus longue dans le cas de la 15 technique antérieur que la durée Dse2 d'écriture du système d'exploitation ayant une portion compressée. Dans cette même phase P1, on personnalise le microcircuit. Dans les trois situations, cela correspond à l'écriture de données de pré-personnalisation et de personnalisation pendant une durée Dper identique 20 pour chaque situation. Dans une phase P2, on utilise les microcircuits pour la première fois. Pour les deux microcircuits selon la technique antérieure, cela correspond à une utilisation d'une durée du. Pour le microcircuit obtenu par le procédé selon l'invention, une 25 étape de décompression est mise en oeuvre ayant une durée Ddec, puis une utilisation d'une durée du est mise en oeuvre de la même manière que pour les autres microcircuits. Lors de la deuxième utilisation (phase P3), les utilisations ont toutes la même durée et tous les microcircuits se comportent de la même 30 manière.The compressed P2 portion of the microcircuit can then be decompressed (step E04). It may be noted that this decompression is linked to the detection of the event implemented in step E03, and possibly to an additional authentication condition or a contacting condition of the microcircuit. It may be noted that the management of applications in compressed formats can be implemented within a microcircuit. A microcircuit MC is thus obtained with a complete operating system in which the two decompressed portions can work together. In FIG. 3, a diagram shows the variations in size of the operating system. The entire OS operating system is complete and includes all operating system features that are used for customization, use, or both. Next, this operating system SE is divided into a compressing portion of the operating system P2 'and an uncompressed portion P1. The uncompressed portion P1 comprises, as indicated above, useful functions for personalization such as the allocation of memory, and this portion P1 also includes information relating to the portion to be compressed P2. More specifically, the uncompressed portion P1 may include instructions for decompressing the other portion, instructions for detecting an event before decompressing, or information about the location in the memory of the event. other portion of the operating system. The division can be implemented by compiling the operating system, identifying the functions that can be compressed, and placing these functions in a separate file to obtain two separate files. Adding this information to the uncompressed portion of the operating system can increase the total size of the operating system, as can be seen in FIG. 3, where both portions P1 and P2 'are larger in size. large than the OS operating system. After compression, the compressed portion P2 is obtained, and the assembly formed by the two portions P1 and P2 is much smaller than the size of the initial operating system SE. The difference in memory size is noted TM. The Applicant has so far succeeded in compressing several tens of kilobytes, with compression rates of up to 80%. FIG. 4 diagrammatically shows the writing durations of the various elements that are written in a microcircuit memory 5, and the periods of implementation of certain functions. This figure shows the loading of an operating system in a flash memory by the method according to the invention, in a Flash memory according to the prior art, and in a memory of a microcircuit in which the system of operation is written in a ROM. In a phase P1, implemented at a microcircuit card manufacturer, an operating system is registered in microcircuits equipped with flash memory. As can be seen in the figure, the operating system write time Dse1 is longer in the prior art than the operating system write time Dse2 having a compressed portion. In this same phase P1, the microcircuit is personalized. In all three situations, this corresponds to writing pre-personalization and personalization data for an identical Dper duration for each situation. In a P2 phase, the microcircuits are used for the first time. For the two microcircuits according to the prior art, this corresponds to a use of a duration of. For the microcircuit obtained by the method according to the invention, a decompression step is carried out having a duration Ddec, then a use of a duration of is implemented in the same way as for the other microcircuits. During the second use (phase P3), the uses all have the same duration and all the microcircuits behave in the same way.
Claims (21)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1460939A FR3028642B1 (en) | 2014-11-13 | 2014-11-13 | METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1460939A FR3028642B1 (en) | 2014-11-13 | 2014-11-13 | METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR |
Publications (2)
Publication Number | Publication Date |
---|---|
FR3028642A1 true FR3028642A1 (en) | 2016-05-20 |
FR3028642B1 FR3028642B1 (en) | 2016-12-23 |
Family
ID=52737198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR1460939A Active FR3028642B1 (en) | 2014-11-13 | 2014-11-13 | METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR |
Country Status (1)
Country | Link |
---|---|
FR (1) | FR3028642B1 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1994019768A1 (en) * | 1993-02-19 | 1994-09-01 | Oakleigh Systems, Inc. | Compressed bios system |
US5768597A (en) * | 1996-05-02 | 1998-06-16 | Starfish Software, Inc. | System and methods for improved installation of compressed software programs |
US5940871A (en) * | 1996-10-28 | 1999-08-17 | International Business Machines Corporation | Computer system and method for selectively decompressing operating system ROM image code using a page fault |
US6421776B1 (en) * | 1994-10-14 | 2002-07-16 | International Business Machines Corporation | Data processor having BIOS packing compression/decompression architecture |
US20070043938A1 (en) * | 2003-08-01 | 2007-02-22 | Symbian Software Limited | Method of accessing data in a computing device |
DE102005045149A1 (en) * | 2005-09-22 | 2007-04-05 | Giesecke & Devrient Gmbh | Method for initializing and / or personalizing a portable data carrier |
US20090106483A1 (en) * | 2007-10-17 | 2009-04-23 | Spansion Llc | Secure personalization of memory-based electronic devices |
-
2014
- 2014-11-13 FR FR1460939A patent/FR3028642B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1994019768A1 (en) * | 1993-02-19 | 1994-09-01 | Oakleigh Systems, Inc. | Compressed bios system |
US6421776B1 (en) * | 1994-10-14 | 2002-07-16 | International Business Machines Corporation | Data processor having BIOS packing compression/decompression architecture |
US5768597A (en) * | 1996-05-02 | 1998-06-16 | Starfish Software, Inc. | System and methods for improved installation of compressed software programs |
US5940871A (en) * | 1996-10-28 | 1999-08-17 | International Business Machines Corporation | Computer system and method for selectively decompressing operating system ROM image code using a page fault |
US20070043938A1 (en) * | 2003-08-01 | 2007-02-22 | Symbian Software Limited | Method of accessing data in a computing device |
DE102005045149A1 (en) * | 2005-09-22 | 2007-04-05 | Giesecke & Devrient Gmbh | Method for initializing and / or personalizing a portable data carrier |
US20090106483A1 (en) * | 2007-10-17 | 2009-04-23 | Spansion Llc | Secure personalization of memory-based electronic devices |
Also Published As
Publication number | Publication date |
---|---|
FR3028642B1 (en) | 2016-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2786317B1 (en) | Writing data in a non-volatile memory of a smart card | |
EP2447835A1 (en) | Method for configuring an electronic entity | |
CA2946143C (en) | Method for processing transaction data, device and corresponding program | |
WO2007042533A1 (en) | Smart card customizing | |
EP3242243B1 (en) | Method for backing up and restoring data of a secure element | |
FR2908209A1 (en) | PORTABLE ELECTRONIC ENTITY AND METHOD FOR CUSTOMIZING SUCH AN ELECTRONIC ENTITY | |
FR3028642A1 (en) | METHOD FOR CUSTOMIZING A MICROCIRCUIT WITH WRITING A COMPRESSED PART OF SOFTWARE ENTITY, AND METHOD OF USE AND MICROCIRCUIT THEREFOR | |
EP1258004A1 (en) | Secure real time writing for volatile storage | |
FR3071641B1 (en) | METHOD FOR CONFIGURING A SECURE ELEMENT SUCH AS AN ELECTRONIC CARD | |
EP3291188B1 (en) | Method for controlling an electronic device and corresponding electronic device | |
EP3588308B1 (en) | Configuration of an electronic device | |
EP4075358B1 (en) | Management of the memory in a device for processing transactions | |
EP3502997B1 (en) | Backup of history data in a device intended for processing transactions | |
EP2833262B1 (en) | Method for installing an application on a secure element | |
EP2304559B1 (en) | Method for swapping between two versions of a same application within an information processing device, and said device | |
EP2579187A1 (en) | Microcircuit device equipped with contact pads and method of manufacturing such a device | |
FR3062501A1 (en) | METHOD FOR SECURING ELECTRONIC OPERATION | |
EP3340098A1 (en) | Method for securing an electronic operation with a smart card | |
FR3087919A1 (en) | MULTIAPPLICATIVE CHIP CARD AND COMMUNICATION METHOD IMPLEMENTED BY SUCH A CHIP CARD | |
EP2383746B1 (en) | Method for writing and reading in an atomicity memory | |
EP2252978B1 (en) | Integrated circuit card having a modifiable operating program and corresponding method of modification | |
FR3021143A1 (en) | SECURE ELEMENT AND METHOD IMPLEMENTED IN SAFE SUCH ELEMENT | |
FR3023941A1 (en) | METHOD OF CUSTOMIZING A MICROCIRCUIT CARD | |
EP3757892A1 (en) | Method for radiofrequency communication between a reader and a device connected to a peripheral, with radiofrequency field measurement | |
EP2306414A1 (en) | Communication method between a reader and two chip cards |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PLFP | Fee payment |
Year of fee payment: 2 |
|
PLSC | Publication of the preliminary search report |
Effective date: 20160520 |
|
PLFP | Fee payment |
Year of fee payment: 3 |
|
PLFP | Fee payment |
Year of fee payment: 4 |
|
PLFP | Fee payment |
Year of fee payment: 5 |
|
PLFP | Fee payment |
Year of fee payment: 6 |
|
PLFP | Fee payment |
Year of fee payment: 7 |
|
PLFP | Fee payment |
Year of fee payment: 8 |
|
PLFP | Fee payment |
Year of fee payment: 9 |
|
CA | Change of address |
Effective date: 20230220 |
|
CD | Change of name or company name |
Owner name: IDEMIA FRANCE, FR Effective date: 20230220 |
|
PLFP | Fee payment |
Year of fee payment: 10 |