ES2224976T3 - Procedimiento para la personalizacion segura de tarjetas de chip. - Google Patents

Procedimiento para la personalizacion segura de tarjetas de chip.

Info

Publication number
ES2224976T3
ES2224976T3 ES00115817T ES00115817T ES2224976T3 ES 2224976 T3 ES2224976 T3 ES 2224976T3 ES 00115817 T ES00115817 T ES 00115817T ES 00115817 T ES00115817 T ES 00115817T ES 2224976 T3 ES2224976 T3 ES 2224976T3
Authority
ES
Spain
Prior art keywords
descriptor
data
personalization
chip card
application
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.)
Expired - Lifetime
Application number
ES00115817T
Other languages
English (en)
Inventor
Harmut Droege
Volker Gottschalk
Juergen Haardoerfer
Albert Schaal
Markus Weinlaender
Martin Witzel
Rainer Dr. Woerz
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Siemens Corp
International Business Machines Corp
Original Assignee
Siemens AG
Siemens Corp
International Business Machines Corp
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 Siemens AG, Siemens Corp, International Business Machines Corp filed Critical Siemens AG
Application granted granted Critical
Publication of ES2224976T3 publication Critical patent/ES2224976T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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 OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06Q20/35765Access rights to memory zones

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Credit Cards Or The Like (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Método de inicialización y de personalización de una tarjeta (100) de chip, en el que los datos para al menos una aplicación de tarjeta de chip se transmiten a la memoria (102) de datos de la tarjeta (100) de chip, que comprende las siguientes etapas durante la inicialización: escribir al menos un descriptor (300) de aplicación para una aplicación de tarjeta de chip en la memoria (102) de datos de la tarjeta (100) de chip, incluyendo el descriptor (300) de aplicación detalles (302) de la dirección de memoria de precisamente un descriptor (200) de personalización, escribir al menos un descriptor (200) de personalización en la memoria (102) de datos de la tarjeta (100) de chip, incluyendo el descriptor (200) de personalización detalles (203) de la dirección de memoria del siguiente descriptor (210) de personalización, y durante la personalización: transmitir los datos (500) de personalización para una aplicación de tarjeta de chip a la tarjeta (100) de chip, escribir los datos (500) de personalización en la memoria (102) de datos de la tarjeta (100) de chip, en la dirección de memoria indicada por los detalles (302) del descriptor (300) de aplicación, transmitir los detalles (203) de la dirección de memoria del siguiente descriptor (210) de personalización, tomados del primer descriptor (200) de personalización, al descriptor (300) de aplicación, de manera que el siguiente descriptor (210) de personalización se asigne entonces al descriptor (300) de aplicación, repetir las etapas de personalización para todos los datos de personalización que deben transmitirse.

Description

Procedimiento para la personalización segura de tarjetas de chip.
Esta invención se refiere a un método de inicialización y personalización de una tarjeta de chip y a una tarjeta de chip para este objetivo.
Al producir las tarjetas de chip, existen dos fases en el proceso de producción que tienen que ver con la carga de datos en la tarjeta, concretamente, la inicialización y la personalización.
Durante la inicialización, se crean en la memoria de la tarjeta de chip las estructuras que se necesitarán posteriormente, tales como archivos y directorios y la correlación entre ellos. Asimismo, en la tarjeta de chip se cargan datos, siendo estos datos iguales para todas las tarjetas de una determinada serie o tirada. En lo que se refiere a la inicialización, la velocidad tiene un impacto significativo sobre los costes.
Durante la personalización, se carga en la tarjeta de chip información secreta y/o específica de la tarjeta. Si, por ejemplo, el número del ente que emite la tarjeta, que es el mismo para todas las tarjetas, se registró en el momento de la inicialización, entonces, en el momento de la personalización, es, por ejemplo, el número de la tarjeta de crédito, que es específico de la tarjeta, el que se programa dentro de la memoria de la tarjeta. Un requisito importante en este caso es que la personalización sólo debería ser posible para los campos que se pretende personalizar. Debe garantizarse que los datos se escriben en el lugar correcto, es decir, únicamente en los campos que fueron reservados para los datos de personalización en el momento de la inicialización. Este requisito se cumple cargando los denominados "marcadores de campo" en la memoria de la tarjeta de chip durante la inicialización. Cuando posteriormente se transmiten los datos de personalización a un campo concebido para este tipo de datos durante la personalización, se transmite información adicional a la tarjeta de chip junto con los datos de personalización. Posteriormente se compara esta información adicional con la información almacenada en el marcador de campo. Si los dos conjuntos de información son iguales, los datos de personalización se escriben en la memoria de la tarjeta de chip. Sin embargo, una comprobación de este tipo no es suficientemente robusta para descartar la posibilidad de un uso indebido. Se conocen tarjetas de chip que tienen una pluralidad de aplicaciones de tarjeta de chip almacenadas en ellas. Una aplicación de tarjeta de chip es un servicio que la tarjeta de chip es capaz de proporcionar, tal como una función de pago (aplicación A de tarjeta de chip) o un permiso de conducir electrónico (aplicación B de tarjeta de chip). Para garantizar la seguridad mientras se personaliza la tarjeta de chip, es necesario que las aplicaciones de la tarjeta de chip se aíslen unas de otras en el momento de la personalización, es decir, para garantizar que únicamente el proveedor de la aplicación A de tarjeta de chip es capaz de personalizar la aplicación A de tarjeta de chip o, expresado de otra manera, es capaz de cargar en la tarjeta los datos para la aplicación A de tarjeta inteligente. Lo mismo se aplica al proveedor de la aplicación B de tarjeta de chip y a cualquier otra aplicación de tarjeta de chip. Hasta la fecha, no se ha conseguido un aislamiento seguro entre las aplicaciones de la tarjeta de chip durante la personalización en ningún sistema de personalización de tarjetas de chips.
El documento WO-A-9940548 describe un método de inicialización y de personalización de una tarjeta de chip, en el que se transmiten datos para al menos una aplicación de tarjeta de chip a la memoria de datos de la tarjeta de chip, comprendiendo las siguientes etapas,
durante la inicialización:
escribir descriptores para una aplicación de tarjeta de chip en la memoria de datos de la tarjeta de chip;
durante la personalización:
transmitir a la tarjeta de chip los datos de personalización para una aplicación de tarjeta de chip, escribir los datos de personalización en la memoria de datos de la tarjeta de chip en la memoria.
El objeto de la presente invención es proporcionar un método para la inicialización y personalización mejoradas de las tarjetas de chip y una tarjeta de chip para este objetivo.
Según la invención, este objeto se consigue por medio de las características descritas en las reivindicaciones independientes.
Según la presente invención, se crean estructuras de datos en la tarjeta de chip que permiten que los datos que van a trasmitirse a la tarjeta de chip durante la personalización se asignen de forma inequívoca a las aplicaciones individuales de la tarjeta de chip y, de esta manera, a los proveedores de estas aplicaciones. Esto da lugar a un aislamiento seguro y fiable entre las aplicaciones de la tarjeta de chip durante la personalización. La presente invención hace que durante la personalización sea imposible personalizar datos que van a escribirse en campos de datos que no han sido concebidos para este objetivo por medio de, por ejemplo, los proveedores de aplicaciones de tarjeta de chip. La presente invención permite la personalización robusta de los campos para los datos de personalización que fueron definidos como tales durante la inicialización, dado que sólo pueden personalizarse las ubicaciones concebidas para este objetivo en la memoria de la tarjeta de chip. Para poner en práctica la presente invención, no se requiere espacio adicional de almacenamiento en la memoria de la tarjeta de chip. Al mismo tiempo, la inicialización requerida para la personalización de este tipo puede llevarse a cabo sin ninguna pérdida de velocidad en comparación con los métodos convencionales de inicialización.
A continuación, se describirá detalladamente la invención haciendo referencia a las realizaciones preferidas. En los dibujos:
La figura 1 es un diagrama que muestra el diseño de una tarjeta de chip que tiene una memoria de datos y bloques individuales de memoria.
La figura 2 es un diagrama que muestra el diseño de dos descriptores de personalización (DP) y la conexión lógica entre ellos, según la presente invención.
La figura 3 es un diagrama que muestra el diseño de un descriptor de aplicación (DA) y dos descriptores de personalización (DP), y las conexiones lógicas entre ellos, según la presente invención.
La figura 4 muestra la memoria de datos de una tarjeta de chip después de la inicialización según la invención.
La figura 5 muestra la memoria de datos de una tarjeta de chip durante la personalización según la invención, y
la figura 6 es un diagrama de flujos de una operación de personalización según la presente invención.
La figura 1 muestra una tarjeta 100 de chip tal como se usa en una realización preferida de la presente invención. La tarjeta de chip en cuestión es una denominada "tarjeta inteligente" o, expresado de otra manera, una tarjeta de chip que tiene un procesador 101, una memoria 102 de datos y software, tal como el sistema operativo de la tarjeta de chip. En este caso, es preferible que la memoria 102 de datos de la tarjeta 100 de chip sea gestionada por un gestor de memoria que está ubicado en la tarjeta 100 de chip y que es, por ejemplo, parte del sistema operativo de la tarjeta de chip. El gestor de memoria divide la memoria 102 de datos de la tarjeta 100 de chip en bloques 103 individuales de memoria. Esta división se lleva a cabo preferiblemente de forma dinámica, es decir, para adaptarse al espacio de almacenamiento requerido por las funciones individuales del sistema operativo o aplicaciones de la tarjeta de chip. Cada bloque 103 de memoria tiene una dirección física que es gestionada por el gestor de memoria. Dado que estas direcciones dependen de la versión del sistema operativo de la tarjeta de chip que está empleándose, del hardware de la tarjeta de chip que está utilizándose y de otras condiciones incidentales, lo que se emplea en la realización preferida son desplazamientos. Si va a inicializarse un área en la memoria 102 de la tarjeta 100 de chip, para crear un archivo, por ejemplo, se asigna un bloque 103 de memoria libre, y los datos se escriben en éste si así se requiere, por medio de un comando de la tarjeta de chip, tal como, CREAR ARCHIVO. En cambio, para permitir que los datos se escriban en un área concreta dentro del bloque 103, lo que se emplea preferiblemente es un desplazamiento que, por ejemplo, hace referencia al inicio del bloque 103. Al emplear direcciones relativas de memoria, se hace posible escapar de las restricciones impuestas por las direcciones de memoria físicas, específicas del hardware.
En lo sucesivo, se proporcionará una descripción de la inicialización que sirve como una preparación para la personalización de la tarjeta 100 de chip.
Durante la inicialización, se escribe un denominado descriptor de personalización (DP) en cada ubicación dentro de un bloque 103 de memoria que está concebido para mantener un campo de datos de personalización. La figura 2 muestra el diseño de un descriptor 200 DP. Cada descriptor de personalización contiene un campo 203 de desplazamiento SIGUIENTE. Además de esto, cada descriptor de personalización puede contener también un campo 201 de longitud LONG y un campo 202 de estado INDIC. Para definir otras características de personalización es posible que se inserten otros campos opcionales.
Es necesario que se transmita más de un registro de personalización para personalizar una aplicación de tarjeta de chip, las ubicaciones de almacenamiento para este objetivo se reservan en la memoria 102 de datos de la tarjeta 100 de chip por medio de otros descriptores DP durante la inicialización. El campo 203 de desplazamiento SIGUIENTE del descriptor 200 DP especifica el desplazamiento, es decir, la dirección de memoria, de un descriptor 210 DP adicional. Por medio del campo 203 de desplazamiento, los descriptores 200, 210 DP requeridos se organizan en listas de descriptores DP, de tal manera que hay una serie de descriptores 200, 210, etcétera DP en una orden ajustada establecida para el proceso de personalización. Desde el punto de vista organizativo, en este caso los descriptores 200, 210, etcétera DP están conectados juntos en el mismo orden en el que van a transmitirse los datos de personalización a la tarjeta 100 de chip durante la personalización subsiguiente. Para indicar que la lista de descriptores DP no contiene elementos adicionales, o que consiste en un único elemento, lo que puede hacerse, por ejemplo, es hacer el contenido del campo 203 de desplazamiento del último descriptor DP sea igual a cero. La figura 2 muestra cómo dos descriptores DP, en este caso DP1 y DP2, están conectados para formar una lista de descriptores DP. El empleo de direcciones relativas de memoria significa, tal como se ha descrito anteriormente, que pueden evitarse las restricciones de las direcciones físicas, lo que es particularmente ventajoso cuando tienen que realizarse cambios retrospectivos al hardware o al sistema operativo de la tarjeta de chip.
Para incrementar la robustez de la personalización, puede introducirse el campo 201 opcional de longitud LONG. Lo que se indica en el campo 201 de longitud LONG del descriptor 200 DP es la longitud, por ejemplo, en bytes, del campo para los datos de personalización que, durante la personalización subsiguiente, ocuparán el lugar del descriptor 200 DP a cuyo campo 201 de longitud pertenezcan.
Es preferible que la longitud de un descriptor 200 DP, que se escribe en la memoria 102 de datos durante la inicialización, sea más pequeña que la del campo de datos de personalización que se transmitirá a continuación. La longitud de un descriptor DP puede ser, por ejemplo, de 4 bytes, mientras que la de un campo de datos de personalización puede ser, por ejemplo, de 40 bytes. Sin embargo, también es posible que un descriptor 200 DP sea del mismo tamaño que su campo asociado de datos de personalización. La introducción del campo 201 de longitud hace posible que se consiga protección frente a la destrucción de estructuras de memoria inicializadas.
Para proporcionar incluso una mayor seguridad durante la personalización, puede introducirse el campo 202 opcional de estado INDIC. El campo 202 de estado de un descriptor 200 DP se utiliza para almacenar varios bits de estado, conocidos como indicadores, que especifican qué características necesitan mostrar los datos de personalización que se escribirán en lugar del descriptor 200 DP durante la personalización. De esta manera, puede especificarse, por ejemplo, si los datos de personalización deben estar cifrados/descifrados y/o firmados/no firmados, etc.
La introducción de descriptores de personalización ampliados de este tipo, hace posible que el proceso de personalización se controle de una forma que puede definirse de modo individual para cada registro de personalización.
Asimismo, durante la inicialización se crea al menos un descriptor de aplicación (DA) para cada aplicación de la tarjeta de chip en la memoria 102 de la tarjeta 100 de chip. Dado que cada una de las aplicaciones de la tarjeta de chip están asignadas a un proveedor, los descriptores DA también están asignados a los proveedores de las aplicaciones de la tarjeta de chip. En la figura 3 se muestra el diseño de un descriptor 300 DA.
Para permitir que sea identificado, un descriptor 300 DA incluye un designador 301 de aplicación que designa la aplicación de la tarjeta de chip que va a personalizarse empleando el descriptor 300 DA. Al designador 301 de aplicación se hará referencia en lo sucesivo como a un identificador de aplicación (IDA). El identificador 301 IDA incluye preferiblemente el nombre de la aplicación relevante de la tarjeta de chip y una identificación numérica inequívoca para el descriptor 300 DA.
El descriptor 300 DA también incluye el desplazamiento 302 ACT para el siguiente descriptor DP que va a procesarse. El campo 302 de desplazamiento se inicializa en este caso de tal manera que, antes de que comience la personalización, señala al primer descriptor 200 DP de una lista de descriptores DP.
El descriptor 300 DA también incluye otros datos, tales como datos 303 clave CLAVE para el empleo de mecanismos criptográficos de seguridad, tales como para descifrar datos de personalización transmitidos de forma cifrada o para la comprobación de una firma. Esto le permite a cualquier proveedor de aplicaciones de tarjeta de chip formular de modo individual los procedimientos criptográficos de seguridad que van a aplicarse durante la personalización.
El descriptor 300 DA también puede incluir un contador 304 de operaciones incorrectas CNT y, para incrementar la robustez de la personalización, puede incluir un denominado contador 305 de secuencias SEC, que es un contador que se incrementa cada vez que se introduce satisfactoriamente un registro de personalización en la memoria 102 de datos de la tarjeta 200 de chip, y que puede por ejemplo utilizarse durante la personalización para sincronizar con aplicaciones de bases de datos externas.
Cada descriptor 200, 210, etcétera DP, puede asignarse únicamente a una lista de descriptores DP, estando a su vez asignada cada lista a un descriptor 300 DA específico y por tanto a una aplicación de la tarjeta de chip. Si hay más de una aplicación de tarjeta de chip en la tarjeta 100 de chip, también debe haber más de un descriptor DP o lista de descriptores DP. De esta manera, las aplicaciones de la tarjeta de chip están aisladas unas de otras. La forma de inicialización que se ha descrito, en la que los descriptores 200, 210, etcétera DP están organizados en listas y cada una de las listas individuales de descriptores DP está acoplada a un descriptor 300 DA, significa que los campos de personalización están asignados de forma inequívoca a los distintos proveedores de las aplicaciones particulares de tarjeta de chip implicadas. Puesto que cualquiera de los descriptores 300 DA está asignado a únicamente una aplicación de la tarjeta de chip, los datos relacionados con la seguridad, tales como los datos 303 de clave CLAVE, también están asignados de forma inequívoca a una determinada aplicación de la tarjeta de chip.
Lo que se encuentra tras las etapas de inicialización que se han descrito para la preparación de la personalización es, por ejemplo, el mapa de memoria mostrado en la figura 4, que también muestra las conexiones lógicas entre los elementos individuales. Lo que se muestra como un ejemplo es una memoria 102 de datos que contiene dos aplicaciones A y B de tarjeta de chip, a cada una de las cuales está asignado un descriptor (DAA 401 y DAB 402) de aplicación. A su vez, el descriptor DAA 401 de aplicación tiene descriptores DPA1 403 y DPA2 404 de personalización asignados a él, y el descriptor DAB 402 de aplicación tiene descriptores DPB1 405 y DPB2 406 de personalización asignados a él. Una ventaja es que, tal como se muestra en la figura 4, los descriptores 401, 402 de aplicación y los descriptores 403, 404, 405, 406 de personalización pueden almacenarse en un orden aleatorio en la memoria 102 de datos de la tarjeta 100 de chip.
Se ha descrito la inicialización de la tarjeta 100 de chip, ahora se observará más detenidamente su personalización, en la que los datos de personalización secretos y/o específicos de la tarjeta o del usuario se cargan en la tarjeta 100 de chip. Al describir las etapas individuales del proceso de personalización, se hará referencia a la figura 6. En la realización descrita se incluyen los campos LONG e INDIC en el descriptor de personalización.
La personalización se lleva a cabo descendiendo en la lista de descriptores DP para cada descriptor 401, 403 DA. Lo que se describirá aquí a título de ejemplo es la personalización de una aplicación A de tarjeta de chip. Con este objetivo, tal como se muestra en la etapa 601, se envía un comando de personalización de la forma PERSONALIZAR (identificador IDA, primer registro de personalización), que contiene el identificador 301 IDA del descriptor 401 DA asignado a la aplicación relevante de la tarjeta de chip y un primer registro de personalización, a una tarjeta 100 de chip, por ejemplo, por medio de un operario que está llevando a cabo la personalización. La transmisión del identificador 301 IDA inicia el proceso de personalización en la tarjeta 100 de chip. Con la ayuda de funciones proporcionadas por el sistema operativo de la tarjeta de chip, el descriptor DA de la aplicación A de tarjeta de chip, que tiene un identificador IDA correspondiente, y en el presente caso (véase la figura 4) se denomina DAA 401, se selecciona de los descriptores 401, 402 DA presentes en la memoria 102 de datos (etapa 602). Para una personalización libre de errores, el registro de personalización que se transmite debe contener los datos que van a escribirse al primer campo apropiado para los datos de personalización, que en este caso es el descriptor DPA1 403.
En el caso de que la tarjeta 100 de chip esté concebida para el uso de un tipo en el que sólo se necesita un único descriptor AD de aplicación, puede prescindirse de la presencia de un identificador 301 IDA en el descriptor de aplicación y en el comando de personalización.
Entonces, en la etapa 603, se lleva a cabo una comprobación en la tarjeta 100 de chip para ver si el valor en el campo 201 de longitud de ese descriptor DP para el que se proporciona una referencia de localización mediante el campo ACT 302 de desplazamiento del descriptor DAA 401, queriendo decir DPA1 403 en el presente caso, es el mismo que la longitud del registro de personalización transmitido en el comando de personalización.
Si es el mismo, el registro de personalización se comprueba en la etapa 604 para ver si cumple los requisitos de seguridad establecidos en el campo 202 de estado INDIC del descriptor DPA1 403. Si, por ejemplo, en el campo de estado INDIC se especifica que los datos de personalización transmitidos deben ir acompañados de una firma digital, entonces, por ejemplo, se lleva a cabo una comprobación de los datos para ver si está presente una firma de este tipo y si no ha sido alterada. La firma puede comprobarse, por ejemplo, empleando datos 303 de clave CLAVE procedentes del descriptor DAA 401, que pueden incluir una clave de firma adecuada. O si, por ejemplo, está especificado en el campo de estado INDIC que los datos de personalización transmitidos deben estar cifrados, entonces, por ejemplo, puede comprobarse este cifrado y/o pueden descifrarse los datos, empleando, por ejemplo, los datos 303 de clave CLAVE procedentes del descriptor DAA 401, que pueden incluir una clave criptográfica adecuada. Para permitir que se comprueben los atributos de seguridad, el comando de personalización puede incluir cifras con las que comparar sumas de comprobación, etc. Todos los criterios de seguridad definidos en el campo de estado INDIC se tratan preferiblemente en la etapa 604.
Si se pasa satisfactoriamente la comprobación de seguridad, entonces, en la etapa 605, se sobrescribe el campo 302 de desplazamiento ACT del descriptor DAA 401 con el campo 203 de desplazamiento SIGUIENTE almacenado en el descriptor DPA1 403. El registro de personalización (cifrado en caso apropiado) se escribe en la ubicación de la memoria 102 de datos en la que está almacenado el descriptor DPA1 403. Puesto que de esta manera se sobrescribe el descriptor DPA1 403, se utiliza de forma óptima la capacidad de almacenamiento de la memoria de datos.
Si no están utilizándose los campos opcionales, no se lleva a cabo la comprobación de la longitud de los datos de personalización y/o de los requisitos de seguridad, y esto implica un aumento de la velocidad de personalización. Con esta personalización muy rápida, los datos de personalización simplemente se transmiten a la tarjeta 100 de chip en su orden ajustado y se escriben en los campos reservados para ello allí. Cuando esto se lleva a cabo, el aislamiento entre las aplicaciones queda garantizado mediante el principio de direccionamiento empleado basándose en descriptores DP y DA.
Para la personalización según la presente invención, no es necesario transmitir a la tarjeta 100 de chip ninguna información adicional a los datos de personalización reales (un identificador 301 IDA cuando hay presentes más de un descriptor de aplicación) que se refiera a marcadores de campo que estén presentes, dado que toda la información requerida, y particularmente la información sobre las direcciones de memoria que van a utilizarse durante la personalización, ya está presente en la tarjeta. El tiempo de transmisión de datos requerido para el proceso de personalización se reduce de forma correspondiente. Como resultado, es posible la personalización a una velocidad considerablemente más rápida que antes, particularmente cuando no se hace uso de opciones que consumen mucho tiempo, tal como un contador 305 SEC.
Las operaciones en la tarjeta 100 de chip que se necesitan durante los procesos de inicialización y personalización y que se han descrito, y concretamente las etapas 602 a 607, y las comprobaciones y cálculos que han tenido que llevarse a cabo, se realizan en la tarjeta 100 de chip ejecutando rutinas de software adecuadas, que pueden, por ejemplo, implementarse en el sistema operativo de la tarjeta de chip, en el procesador 101.
Si se especificó en el momento de la inicialización, por ejemplo, ajustando un bit apropiado en el campo 202 de estado INDIC del descriptor DPA1 403, que el primer registro de personalización debe estar acompañado de una determinada firma, entonces debido a la comprobación de seguridad, sólo una persona que transmita a la tarjeta 100 de chip un registro de personalización que cumpla este requisito puede sobrescribir el descriptor DPA1 403. Esto descarta la posibilidad de que se sobrescriban otros descriptores 404, 405, 406 DP de forma accidental o de forma intencionada. Dado que se definieron atributos de seguridad individuales para cada uno de los descriptores 403, 404, 405, 406 DP, es decir, para cada campo para datos de personalización, nuevamente en el momento de inicialización, puede controlarse de forma individual la personalización de cada campo individual para datos de personalización. Y una vez que se hayan definido los atributos de seguridad, no pueden eludirse en un momento posterior.
De forma alternativa, durante la inicialización puede especificarse, por ejemplo, mediante un bit de control adecuado en el campo 202 de estado INDIC, que el registro de personalización transmitido en el comando de personalización puede ser más corto de lo establecido, es decir, su longitud puede ser menor que el valor proporcionado en el campo 201 de longitud LONG del descriptor DP relevante. Dado que la cantidad de datos de personalización transmitidos en este caso es menor, el espacio de almacenamiento en la memoria 102 de datos de la tarjeta 100 de chip, que ya se ha reservado pero que no se utilizará, puede rellenarse con bytes de relleno. Por tanto, en este caso podrá llevarse a cabo la comprobación de seguridad incluso si el registro de personalización transmitido es más corto de lo que se especificó durante la inicialización.
La situación en la memoria 102 de datos de la tarjeta 100 de chip se muestra en la figura 5, en la que también se muestran una vez más las conexiones lógicas entre los elementos individuales. El lugar del descriptor DPA1 403 ha sido tomado por el registro 500 de personalización que fue transmitido (en la figura 5 se indica la posición original del descriptor DPA1 403 mediante líneas discontinuas). El campo 302 de desplazamiento ACT del descriptor DAA 401 señala al descriptor DPA2 404. Las estructuras de datos (DAB, DPB1, DPB2) para la aplicación B de tarjeta de chip permanecen sin cambios.
En el siguiente comando de personalización, puede sobrescribirse el descriptor DPA2 404 empleando un comando de personalización, por ejemplo, de la forma PERSONALIZAR (identificador IDA, segundo registro de personalización). De forma alternativa, sería posible comenzar sobrescribiendo el descriptor DPB1 405, y así sucesivamente. Lo que debe recordarse es que el orden en que están dispuestos los registros de personalización que van a transmitirse debe ser el mismo que en el que están conectados los descriptores 403, 404, 405, 406 DP en la lista de descriptores DP dada. Como medio de ayuda para esto puede utilizarse el contador 305 SEC, por ejemplo.
Una vez que han sido sobrescritos todos los descriptores DP de un descriptor DA, es decir, una vez que la lista de descriptores DP ya no contiene ningún elemento adicional, lo que puede indicarse por el hecho de que el campo 203 de desplazamiento SIGUIENTE del último descriptor DP tiene un contenido de cero, entonces en la etapa 607 se elimina el descriptor DA que se utilizó de la aplicación relevante de la tarjeta de chip. Se ha cargado totalmente la aplicación de tarjeta de chip.
En una realización de la invención, el identificador 301 IDA sólo se transmite en el comando de personalización en casos en los que ha de seleccionarse un nuevo descriptor DA de aplicación, por ejemplo, cuando se transmite el primer comando de personalización. Mientras ningún comando de personalización subsiguiente contenga un identificador 301 IDA, la asignación de datos de personalización transmitidos al descriptor de aplicación apropiado tiene lugar de forma automática, por ejemplo, empleando funciones apropiadas en el sistema operativo de la tarjeta de chip. Únicamente cuando se transmite otro identificador 301 IDA, se seleccionará un nuevo descriptor DA correspondiente.
La personalización en la tarjeta 100 de chip se lleva a cabo empleando servicios y rutinas conocidos y, por ejemplo, definidos previamente, proporcionados por el sistema operativo de la tarjeta de chip, los cuales pueden solicitarse mediante comandos tales como el comando de personalización.

Claims (14)

1. Método de inicialización y de personalización de una tarjeta (100) de chip, en el que los datos para al menos una aplicación de tarjeta de chip se transmiten a la memoria (102) de datos de la tarjeta (100) de chip, que comprende las siguientes etapas
durante la inicialización:
escribir al menos un descriptor (300) de aplicación para una aplicación de tarjeta de chip en la memoria (102) de datos de la tarjeta (100) de chip, incluyendo el descriptor (300) de aplicación detalles (302) de la dirección de memoria de precisamente un descriptor (200) de personalización,
escribir al menos un descriptor (200) de personalización en la memoria (102) de datos de la tarjeta (100) de chip, incluyendo el descriptor (200) de personalización detalles (203) de la dirección de memoria del siguiente descriptor (210) de personalización, y
durante la personalización:
transmitir los datos (500) de personalización para una aplicación de tarjeta de chip a la tarjeta (100) de chip,
escribir los datos (500) de personalización en la memoria (102) de datos de la tarjeta (100) de chip, en la dirección de memoria indicada por los detalles (302) del descriptor (300) de aplicación,
transmitir los detalles (203) de la dirección de memoria del siguiente descriptor (210) de personalización, tomados del primer descriptor (200) de personalización, al descriptor (300) de aplicación, de manera que el siguiente descriptor (210) de personalización se asigne entonces al descriptor (300) de aplicación,
repetir las etapas de personalización para todos los datos de personalización que deben transmitirse.
2. Método según la reivindicación 1, en el que el descriptor (300) de aplicación incluye detalles (301) para permitir que sea asignado de forma inequívoca a una aplicación de tarjeta de chip.
3. Método según la reivindicación 1 ó 2, en el que el descriptor (200) de personalización también incluye detalles (201, 202) que definen las características de los datos (500) de personalización a transmitir, comprendiendo dicho método la etapa adicional de:
comprobar los datos (500) de personalización transmitidos para ver si cumplen los detalles (201, 202),
y en el que la escritura de los datos (500) de personalización en la memoria (102) de datos de la tarjeta (100) de chip sólo tiene lugar si se han cumplido los detalles (201, 202).
4. Método según la reivindicación 3, en el que los datos (500) de personalización se comprueban en función de los detalles (201, 202) del descriptor (200) de personalización asignado actualmente al descriptor (300) de aplicación.
5. Método según la reivindicación 3 ó 4, en el que los datos (500) de personalización se comprueban utilizando información (303) incluida en el descriptor (300) de aplicación.
6. Método según cualquiera de las reivindicaciones 3 a 5, en el que los detalles (201, 202) incluidos en el descriptor (200, 210) de personalización incluyen la longitud (201) de los datos (500) de personalización.
7. Método según cualquiera de las reivindicaciones 3 a 6, en el que los detalles (201, 202) incluidos en el descriptor (200, 210) de personalización incluyen requisitos (202) de seguridad que deben cumplir los datos (500) de personalización.
8. Método según cualquiera de las reivindicaciones 1 a 7, en el que el descriptor (300) de aplicación incluye un contador (305), método que incluye la etapa adicional de
incrementar el contador (305) cada vez que un registro de personalización se introduzca satisfactoriamente en la memoria (102) de datos de la tarjeta (100) de chip.
9. Tarjeta (100) de chip con un procesador (101) para ejecutar rutinas de software, una memoria (102) de datos y rutinas de software para efectuar el método según cualquiera de las reivindicaciones de 1 a 8.
10. Tarjeta de chip según la reivindicación 9, en la que la memoria (102) de datos contiene, antes de que empiece la personalización de la tarjeta (100) de chip:
al menos un descriptor (300) de aplicación para una aplicación de tarjeta de chip, incluyendo dicho descriptor detalles (302) de una dirección de memoria de un descriptor (200) de personalización, y
al menos un descriptor (200) de personalización que incluye detalles (203) de una dirección de memoria del siguiente descriptor (210) de personalización.
11. Tarjeta de chip según la reivindicación 10, en la que el descriptor (300) de aplicación incluye detalles (301) de la aplicación de tarjeta de chip que se le ha asignado.
12. Tarjeta de chip según la reivindicación 10 u 11, en la que el descriptor (300) de aplicación incluye información (303) que puede utilizarse para comprobar los datos (500) de personalización.
13. Tarjeta de chip según las reivindicaciones 10 a 12, en la que el descriptor (200) de personalización también incluye detalles (201, 202) que definen las características de los datos (500) de personalización a transmitir.
14. Método según cualquiera de las reivindicaciones 10 a 13, en el que el descriptor (300) de aplicación incluye un contador (305) que se incrementa cada vez que un registro de personalización se introduce satisfactoriamente en la memoria (102) de datos de la tarjeta (100) de chip.
ES00115817T 1999-08-19 2000-07-22 Procedimiento para la personalizacion segura de tarjetas de chip. Expired - Lifetime ES2224976T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE19939280A DE19939280A1 (de) 1999-08-19 1999-08-19 Sicheres Personalisieren von Chipkarten
DE19939280 1999-08-19

Publications (1)

Publication Number Publication Date
ES2224976T3 true ES2224976T3 (es) 2005-03-16

Family

ID=7918874

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00115817T Expired - Lifetime ES2224976T3 (es) 1999-08-19 2000-07-22 Procedimiento para la personalizacion segura de tarjetas de chip.

Country Status (6)

Country Link
US (1) US6971025B1 (es)
EP (1) EP1079339B1 (es)
AT (1) ATE275746T1 (es)
CA (1) CA2315986A1 (es)
DE (2) DE19939280A1 (es)
ES (1) ES2224976T3 (es)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040122774A1 (en) * 2002-08-02 2004-06-24 Martin Studd Method and system for executing applications on a mobile device
DE10252512A1 (de) * 2002-11-08 2004-05-27 Robert Bosch Gmbh Datenträgerelement sowie damit versehenes Produkt oder Transporthilfsmittel
EP1622098A1 (en) * 2004-07-30 2006-02-01 ST Incard S.r.l. IC card secure personalization method
WO2007087432A2 (en) * 2006-01-24 2007-08-02 Stepnexus, Inc. Method and system for personalizing smart cards using asymmetric key cryptography
EP1873728B1 (en) * 2006-06-29 2013-11-27 Incard SA Method for configuring an IC Card in order to receive personalization commands
DE102006034375A1 (de) * 2006-07-25 2008-01-31 Giesecke & Devrient Gmbh Personalisierung von tragbaren Datenträgern
DE102008050578A1 (de) * 2008-10-06 2010-04-08 Giesecke & Devrient Gmbh Personalisieren von portablen Datenträgern
EP2200253A1 (en) 2008-12-19 2010-06-23 Gemalto SA Method of managing sensitive data in an electronic token
DE102010044687A1 (de) * 2010-09-08 2012-03-08 Giesecke & Devrient Gmbh Portabler Datenträger mit Fehlbedienungszähler
CN107463407B (zh) * 2017-08-10 2020-11-06 青岛海信移动通信技术股份有限公司 指纹芯片初始化方法及装置
DE102023110087A1 (de) 2022-04-22 2023-10-26 Giesecke+Devrient ePayments GmbH Verfahren und System zur Personalisierung eines sicheren Elements
US20250245314A1 (en) 2022-04-22 2025-07-31 Giesecke+Devrient Mobile Security Germany Gmbh Method and system for personalizing a secure element

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4874935A (en) * 1986-03-10 1989-10-17 Data Card Coprporation Smart card apparatus and method of programming same
JPH02214994A (ja) * 1989-02-15 1990-08-27 Hitachi Maxell Ltd Icカード
US5438679A (en) * 1990-11-30 1995-08-01 Casio Computer Co., Ltd. Data storage apparatus having volatile memory and nonvolatile memory and data indication means for indicating memory storing data
DE19536548A1 (de) * 1995-09-29 1997-04-03 Ibm Vorrichtung und Verfahren zur vereinfachten Erzeugung von Werkzeugen zur Initialisierung und Personalisierung von und zur Kommunikation mit einer Chipkarte
US5889941A (en) * 1996-04-15 1999-03-30 Ubiq Inc. System and apparatus for smart card personalization
ATE281680T1 (de) * 1997-03-24 2004-11-15 Visa Int Service Ass System und verfahren für eine mehrzweckchipkarte die eine nachträgliche speicherung einer anwendung auf dieser karte ermöglicht
EP1053535B1 (en) * 1998-02-06 2006-07-19 Mondex International Limited Configuration of ic card
US6390374B1 (en) * 1999-01-15 2002-05-21 Todd Carper System and method for installing/de-installing an application on a smart card

Also Published As

Publication number Publication date
EP1079339A2 (en) 2001-02-28
ATE275746T1 (de) 2004-09-15
CA2315986A1 (en) 2001-02-19
DE19939280A1 (de) 2001-02-22
DE60013518T2 (de) 2005-10-13
EP1079339A3 (en) 2001-08-22
US6971025B1 (en) 2005-11-29
EP1079339B1 (en) 2004-09-08
DE60013518D1 (de) 2004-10-14

Similar Documents

Publication Publication Date Title
ES2224976T3 (es) Procedimiento para la personalizacion segura de tarjetas de chip.
US6575372B1 (en) Secure multi-application IC card system having selective loading and deleting capability
US8533414B2 (en) Authentication and securing of write-once, read-many (WORM) memory devices
JP5123524B2 (ja) 保護されたメモリ・アクセスを用いたスマートカード
JP3237101B2 (ja) チップ・カードの事後初期設定方法
EP0984404A2 (en) Storing data objects in a smart card memory
JP2003522351A (ja) メモリにアクセスするための方法およびそのためのメモリデバイス
JP2002501267A (ja) 旅行関連マルチ機能スマートカードのための方法および装置
WO1998052161A2 (en) Key transformation unit for an ic card
JP2003536154A (ja) 電子チップ搭載システム、特にチップカードのメモリ内での敏感データの安全化保存方法と、その方法を実施する搭載システム
CN101366038A (zh) Ic卡及其访问控制方法
CN1375094A (zh) 用于操作设计成执行可重新装载的功能程序的数据载体的方法
JP2004252707A (ja) メモリデバイス
EP1393187A2 (en) Method and device for protecting data transmission between a central processor and a memory
US7147167B2 (en) Update management for encoded data in memory
ES2216947T3 (es) Transportador de datos portatil y procedimiento de utilizacion del mismo en una serie de aplicaciones.
KR100300794B1 (ko) 칩카드에정보를입력하는방법
JP4679135B2 (ja) 証明用媒体発行システムおよび証明用媒体発行方法
JP3545627B2 (ja) 携帯可能電子装置
ES2206644T3 (es) Procedimiento para la programacion segura de una tarjeta con microprocesador para una aplicacion adicional.
ES2353809T3 (es) Aparato de gestión de memoria externa y procedimiento de gestión de memoria externa.
JPH0682344B2 (ja) Icカ−ド
US20080275917A1 (en) Itso Fvc2 Application Monitor
JPH0727460B2 (ja) 電子携帯装置システムにおける乱数発生方法及びこの方法を実施するためのシステム
EP4390735A1 (en) Update agent with linear memory