ES2223541T3 - Metodo para hacer funcionar un elemento portador de datos configurado para ejecutar programas de funcion recargables. - Google Patents
Metodo para hacer funcionar un elemento portador de datos configurado para ejecutar programas de funcion recargables.Info
- Publication number
- ES2223541T3 ES2223541T3 ES00943867T ES00943867T ES2223541T3 ES 2223541 T3 ES2223541 T3 ES 2223541T3 ES 00943867 T ES00943867 T ES 00943867T ES 00943867 T ES00943867 T ES 00943867T ES 2223541 T3 ES2223541 T3 ES 2223541T3
- Authority
- ES
- Spain
- Prior art keywords
- application
- program
- memory device
- function
- memory
- 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
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
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G06—COMPUTING; 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
- G06Q20/3552—Downloading or loading of personalisation data
-
- 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/357—Cards having a plurality of specified features
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
- G07F7/10—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
- G07F7/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Electrotherapy Devices (AREA)
- Communication Control (AREA)
Abstract
Método para hacer funcionar un elemento portador de datos equipado con un dispositivo de comunicación, un dispositivo de memoria y una unidad de ejecución de programas para ejecutar programas de función contenidos en un dispositivo de memoria, caracterizado por las siguientes etapas: - instalación de un programa de función en el dispositivo de memoria (110) del elemento portador de datos para conseguir un interfaz de carga (120) que a su vez hace posible recargar programas de función que consiguen cada uno una aplicación de carga (210), - disposición de un espacio (130) de memoria libre, disponible para el interfaz de carga (120) en el dispositivo de memoria (110), - recarga, por lo menos, de una aplicación de carga (210) a través del dispositivo de comunicación (60) en el dispositivo de memoria (110), estando dicha recarga controlada por el interfaz de carga (120), y adjudicando a la aplicación de carga (210) una parte del espacio (130) de memoria libre a modo de espacio (220) de direcciones asignadas.
Description
Método para hacer funcionar un elemento portador
de datos configurado para ejecutar programas de función
recargables.
Esta invención parte de un método de acuerdo con
el preámbulo de la reivindicación principal.
Los elementos portadores de datos en forma de
tarjetas inteligentes se utilizan en una variedad de campos de
aplicación cada vez mayor. Unas tarjetas especialmente difundidas
responden al estándar ISO 7810 que consiste en un elemento portador
de plástico que incorpora un circuito semiconductor integrado y unos
medios de contacto para realizar conexiones eléctricas con un lector
correspondiente. También se ha propuesto reducir el tamaño de la
tarjeta portadora u omitirla completamente y en su lugar instalar,
por ejemplo, un microcontrolador de un solo chip en relojes, joyas,
prendas u otros artículos de uso cotidiano. El término "tarjeta
inteligente" pretende por lo tanto incluir todos los objetos
(pequeños) transportables actuales y futuros en los que se incrusta
un microcontrolador para permitir a su propietario o un portador
realizar las interacciones típicas de una tarjeta inteligente con
las especialmente dispuestas estaciones de interacción
correspondientes. Las aplicaciones típicas de una tarjeta
inteligente son la tarjeta de crédito, la tarjeta monedero, la
tarjeta de seguro sanitario o la tarjeta telefónica. El término
"aplicación" se refiere en este caso a la totalidad de todos
los datos, instrucciones, operaciones, estados, mecanismos y
algoritmos comprendidos en una tarjeta inteligente que son
necesarios para hacer funcionar una tarjeta inteligente dentro de un
sistema, por ejemplo un sistema de pago con tarjeta de crédito.
Cada aplicación posee habitualmente su propia
tarjeta inteligente correspondiente, y del mismo modo cada nueva
aplicación y actualización de una aplicación existente producen una
nueva tarjeta inteligente. Por lo tanto, es fundamentalmente
deseable disponer de una tarjeta inteligente que pueda ser utilizada
para una serie de aplicaciones de diferentes proveedores de
servicios y operadores de sistemas de tarjeta, tales como
organizaciones de tarjetas de crédito, bancos, compañías de seguros,
compañías telefónicas, etc.
Una organización de archivos para una tarjeta
inteligente de este tipo adecuada para varias aplicaciones se
muestra en Rankl/Effing, "Handbuch der Chipkarten," Carl Hauser
Verlag, 1996, capítulo 5.6. La estructura de la organización
descrita en el mismo se basa en el estándar ISO/IEC
7816-4. En la cima de la organización de archivos
hay un archivo maestro que contiene los directorios de todos los
otros archivos presentes en la tarjeta inteligente. Subordinados al
archivo maestro hay uno o más archivos especializados que contienen
los nombres de los archivos de archivos combinados en grupos, que
pertenecen en particular a una aplicación. Subordinados a cada uno
de los archivos especializados hay finalmente uno o más archivos
elementales que contienen datos útiles de una aplicación. Este
documento, además, describe la recarga del código de programa de una
manera técnicamente posible pero impropio por razones de seguridad.
Como medida más prometedora para superar los problemas de seguridad
se refiere a la disposición de una unidad de gestión de memoria que
supervisa que el código de programa que va a ser ejecutado se
mantiene dentro de los límites asignados.
El documento
WO-A1-98/09257 da a conocer un
sistema y un método para cargar aplicaciones en una tarjeta
inteligente, que hace posible introducir un programa y datos de
aplicación de aplicaciones adicionales en una tarjeta inteligente,
añadidos a los datos de las aplicaciones ya cargadas. Se toman
precauciones, en base a tecnologías criptográficas adecuadas, para
permitir la verificación de la autorización de la agencia que
realiza la recarga de datos. Después de que los datos de una
aplicación adicional han entrado en la memoria de la tarjeta
inteligente, se comprueba la autenticidad del programa
correspondiente. A continuación, se comprueban los datos de programa
con relación a su sintaxis y a sus limitaciones de tipo válido. Si
se descubre una incongruencia en una de estas etapas de
comprobación, los datos adicionales cargados se descartan y se
borran de la memoria. El sistema conocido permite la recarga
controlada de aplicaciones después de que la tarjeta haya sido
emitida al usuario final. Sin embargo, esto significa que una
entidad emisora de tarjetas que emite una tarjeta inteligente con
espacio de memoria libre disponible a un proveedor de servicios
debe, por ejemplo, saber de antemano la identidad de todas las
agencias del proveedor de servicios que van a ser autorizadas
posteriormente para ofrecer aplicaciones de recarga a un usuario
final. Esto puede hacerse por parte de la entidad emisora de
tarjetas, certificando ciertas claves públicas de identificación de
los proveedores de servicios para poder realizar una comprobación de
la autenticidad de los datos recargados, mediante la introducción de
su propia clave pública de identificación, por ejemplo, en la
máscara ROM de la tarjeta inteligente. Sin embargo, en el sistema
conocido, una entidad emisora de tarjetas no tiene la posibilidad de
realizar comprobaciones del espacio de memoria ocupado por los
proveedores de servicios en una única tarjeta inteligente, que vayan
más allá de la comprobación de autenticidad y de sintaxis
correcta.
El documento DE 197 23 676 A1 da a conocer un
método y un elemento portador de datos de acuerdo con la especie de
reivindicaciones independientes 1, 4, 8 y 12, de acuerdo con las
cuales los programas pueden cargarse sin problemas, de forma
reubicable, en tarjetas de chip. Los programas descargados son
ubicados en direcciones físicas libres disponibles o en segmentos
físicos por medio del sistema operativo presente en la tarjeta de
chip. En el mismo momento se crea una tabla que se utiliza a
continuación para establecer una asociación entre las direcciones
físicas y las direcciones lógicas. El método permite descargar
programas en una tarjeta de chip sin tener que conocer la ocupación
de memoria presente en la tarjeta. El documento no entra en
cuestiones de seguridad, por ejemplo, con respecto al acceso no
autorizado a direcciones externas de memoria. Asimismo no se asegura
la disponibilidad del espacio suficiente para un usuario que desee
descargar un programa en una tarjeta de chip.
El documento DE 197 18 115 A1 da a conocer además
una tarjeta inteligente y un método para cargar datos en una tarjeta
inteligente, que hacen posible introducir aplicaciones de tarjeta en
una tarjeta inteligente después del final del proceso de producción
de la tarjeta. En la tarjeta inteligente se dispone un espacio de
almacenamiento contenedor dentro del cual los proveedores de
servicios pueden cargar aplicaciones de su propiedad. En el espacio
de almacenamiento contenedor se define previamente la estructura de
programa básico de las aplicaciones recargables; sólo se recargan
datos y claves específicos. La definición previa de las estructuras
de las aplicaciones recargables logra una separación fiable de los
datos de los diferentes proveedores de servicios comprendidos en una
tarjeta. Este documento no da a conocer la recarga de aplicaciones
con una estructura de datos desconocida. En general no describe
alternativas para la definición previa de las estructuras de
aplicación para gestionar el espacio de almacenamiento contenedor.
El concepto de la definición previa de las estructuras de aplicación
no puede utilizarse si se carga posteriormente en una tarjeta un
código de programa de ámbito indefinido. Por lo tanto, la solución
encontrada en el documento DE 197 18 115 A1 es inadecuada para la
aplicación posterior de códigos completos de un programa de
aplicaciones.
La invención está basada en el problema de
proporcionar un método para introducir una aplicación adicional en
una tarjeta inteligente, y asimismo en proporcionar una tarjeta
inteligente que evite las desventajas indicadas de la técnica
anterior.
Este problema se resuelve de acuerdo con la
invención mediante un método con las características indicadas en la
reivindicación 1 y mediante una tarjeta inteligente con las
características de la reivindicación independiente 4. El problema se
resuelve del mismo modo mediante un método con las características
indicadas en la reivindicación 8 y mediante una tarjeta inteligente
con las características de la reivindicación independiente 12. Los
objetivos de las reivindicaciones 1 y 4, por un lado, y de la 8 y
12, por otro lado, tienen en cada caso una importancia inventiva
independiente. Asimismo, los métodos de acuerdo con las
reivindicaciones 1 y 8 y los objetivos de las reivindicaciones 4 y
12 pueden combinarse.
El método de la invención de acuerdo con la
reivindicación 1, y asimismo el método de acuerdo con la
reivindicación 8, permite que una entidad emisora de tarjetas, de un
modo ventajoso, deje que un usuario introduzca posteriormente
programas de función en una tarjeta bajo su propia autoridad. La
entidad emisora de tarjetas ya no necesita definir previamente qué
usuarios o proveedores de servicios van a tener permiso para
recargar aplicaciones adicionales en ciertas tarjetas inteligentes.
En lugar de eso, es posible recargar una aplicación incluso cuando
la tarjeta inteligente ya ha sido emitida y está en poder del
usuario. El método es, por lo tanto, adecuado en particular para
realizar una transferencia contractual de derechos definibles con
precisión sobre los recursos de memoria de las tarjetas inteligentes
a terceras partes, por parte de una entidad emisora de tarjetas.
El método asegura un estándar de alta seguridad.
De acuerdo con la reivindicación 1, esto se consigue por el hecho de
que las aplicaciones de carga, que permiten la recarga de programas
de función de aplicación, sólo pueden ser introducidos en la tarjeta
a través de un interfaz de carga principal dispuesto en la tarjeta
por la entidad emisora de la tarjeta. El interfaz de carga principal
permite de forma ventajosa, en particular, definir de forma exacta
la posición física y el rango de acción lógica de un programa de
función recargado. La creación de una posibilidad para recargar
programas de función simplifica además, de un modo ventajoso, la
producción de las tarjetas correspondientes.
El sistema de acreditación de acuerdo con la
reivindicación 8 ofrece la ventaja de que la entidad emisora de
tarjetas puede comprobar el volumen de espacio de memoria que va a
estar disponible para los usuarios individuales para las
aplicaciones recargables. El sistema de acreditación ofrece además
la posibilidad de disponer un sistema de coste asociado a la
aplicación. Por ejemplo, puede disponerse que un usuario o un
proveedor de servicios tenga que pagar una parte del coste total de
una tarjeta inteligente dependiendo de la cantidad de memoria de la
tarjeta inteligente que uno u otro ocupan.
En las reivindicaciones dependientes pueden
hallarse desarrollos ventajosos y realizaciones convenientes del
método y de la tarjeta inteligente propuestos.
A continuación la invención será explicada con
mayor detalle mediante una realización a título de ejemplo y de modo
no limitativo con relación a los dibujos, en los que:
la figura 1 muestra la estructura de una tarjeta
inteligente de microprocesador,
la figura 2 muestra esquemáticamente la ocupación
del dispositivo de memoria de una tarjeta inteligente con un
cargador principal,
la figura 3 muestra la ocupación del dispositivo
de memoria después de la carga de un cargador especial,
la figura 4 muestra una vista esquemática de una
estructura jerárquica que comprende un cargador principal y varios
cargadores especiales.
La figura 1 muestra la típica estructura de una
tarjeta inteligente (10) equipada con un microprocesador. El
elemento principal es la unidad central de proceso (20) que
proporciona a la tarjeta inteligente (10) su funcionalidad mediante
la ejecución de programas de función. La unidad de proceso (20)
tiene asignada para sí misma el dispositivo de memoria (110)
construido con tres circuitos de memoria (30), (40), (50). El
circuito de memoria (30) representa una memoria de sólo lectura
programada mediante máscara (ROM) que contiene en particular el
sistema operativo de la unidad central de proceso (20); el circuito
de memoria (50) representa la memoria (50) de sólo lectura borrable
eléctricamente (EEPROM) para recibir los códigos de programa de los
programas de función y los datos utilizados por la unidad central de
proceso (20); el circuito de memoria (40) representa normalmente una
memoria (40) volátil de acceso aleatorio (RAM) para ser utilizada
como memoria de trabajo durante la ejecución de un programa de
función. La funcionalidad de la tarjeta resulta de la totalidad de
los códigos de programa o datos contenidos en los circuitos de
memoria (30), (40), (50). Si técnicamente se requiere o es
conveniente, los circuitos de memoria (30), (40), (50) pueden
utilizarse de modo solapado, por ejemplo, si ciertas zonas de
direcciones de memoria de la EEPROM se utilizan para datos de
programa del sistema operativo, o si zonas de direcciones de memoria
de la ROM están ocupadas con datos de aplicación. Por ese motivo,
los circuitos de memoria (30), (40), (50) siempre se entenderán, a
continuación, como un conjunto, como el dispositivo de memoria
(110). Para intercambiar datos con dispositivos externos, la tarjeta
(10) dispone además de un dispositivo (60) de comunicación,
igualmente conectado a la unidad central de proceso (20). Una
aplicación típica de la tarjeta (10) mostrada es ejecutar
operaciones de pago electrónico. Puede hallarse una descripción
detallada de la tarjeta inteligente mostrada en la figura 1, por
ejemplo, en Rankl/Effing, "Handbuch der Chipkarten," Carl
Hauser Verlag, 1996, capítulo 2.3.
Una primera realización de la invención se basa
en el concepto de permitir aplicaciones de carga que pueden a su vez
cargar programas de función para aplicaciones para ser introducidos
en una tarjeta, pero permitiendo que las aplicaciones de carga
propiamente dichas sean dispuestas sólo mediante un interfaz de
carga especial. La figura 2 ilustra esquemáticamente la ocupación
del dispositivo de memoria (110) de una tarjeta inteligente que
incluye, en primer lugar, sólo el código de programa de un único
programa (120) de función, definiendo un primer interfaz de carga
(120). El interfaz de carga (120) está diseñado especialmente para
recargar en el dispositivo de memoria (110) programas de función que
realizan aplicaciones de carga, es decir, que a su vez tienen la
funcionalidad de carga y permiten la recarga de programas de función
para aplicaciones. El interfaz de carga (120) forma parte
convenientemente del equipo básico de una tarjeta inteligente y es
introducida en la tarjeta por la entidad emisora o el fabricante de
la tarjeta. El interfaz de carga (120), designado a continuación
como cargador principal (ML), ocupa parte del total de la zona de
memoria disponible en el dispositivo de memoria (110). El programa
de función que realiza el cargador principal (120) puede, en
particular, ser parte del sistema operativo de la tarjeta
inteligente y se ejecuta de acuerdo con lo anterior como parte del
código programado mediante máscara en la memoria (30) de sólo
lectura (ROM). Inicialmente, otra parte de la zona total de memoria
permanece desocupada de datos y está disponible como memoria libre
(130) para programas de función adicionales que aún pueden ser
cargados. La gestión de toda la memoria libre (130) se efectúa
primero por medio del cargador principal (120). En esta función como
dispositivo gestor, el cargador principal (120) controla en
particular la carga del código de programa del primer programa de
función que va a ser recargado en la memoria libre (130) y la
asignación de los espacios de direcciones. Los octetos de código del
primer programa de función al igual que el del resto de programas de
función son transmitidos a través del interfaz de datos (60) en
forma de señales eléctricas adecuadas.
El cargador principal (120) carga en el
dispositivo de memoria (110) preferiblemente sólo aquellos programas
de función que satisfacen las condiciones de seguridad definidas. De
esta manera, durante la carga, preferiblemente comprueba la
integridad y la autenticidad de una aplicación de carga que ha de
ser cargada, mediante la comprobación de si el código de programa
que está esperando ser cargado está presente sin cambios, en una
forma aprobada por el fabricante, o si el fabricante de una
aplicación de carga está realmente autorizado para introducir la
aplicación de carga, por ejemplo, gracias a haber obtenido el
derecho a utilizar los recursos de la tarjeta inteligente de la
entidad emisora de tarjetas.
La figura 3 muestra la disposición de la memoria
de la figura 2, en la que el cargador principal (120) ha cargado
ahora el primer programa de función (210), que realiza una
aplicación de carga en la memoria libre (130). La aplicación de
carga (210) define un segundo interfaz, designado a continuación
como cargador especial (210) (DL). Permite la introducción de
programas de función adicionales en el dispositivo de memoria (110)
de forma consecutiva. Sin embargo, sólo tiene definido como
disponible para sí el espacio de direcciones (220) asignado, no
ampliable. El espacio (220) de direcciones es adjudicado al cargador
especial (210) por medio del cargador principal (120), durante la
carga del cargador especial (210). Dicha asignación transfiere
completamente la gestión del espacio (220) de direcciones asignadas
al cargador especial (210), que dispone de la funcionalidad
necesaria como un dispositivo de gestión, para esta finalidad, al
igual que el cargador principal (120). El cargador principal (120)
no tiene influencia en, o acceso a, una utilización adicional del
espacio (220) de direcciones asignado al cargador especial
(210).
El cargador principal (120) todavía posee la
gestión de la parte del espacio libre de direcciones de memoria que
no está ocupado mediante la toma de control por medio de los
cargadores especiales (210) y la asignación de los espacios (220) de
direcciones, y fragmentados en dos secciones separadas (130a),
(130b).
El cargador especial (210) puede ser cargado por
el usuario de una tarjeta, a diferencia del cargador principal
(120). El cargador especial (210) permite, y es una condición previa
para ello, que el usuario cargue programas de función que realicen
aplicaciones dentro del espacio (220) de direcciones asignadas, de
forma consecutiva según se escoja. El término "aplicación" se
refiere en este caso a la totalidad de todos los datos,
instrucciones, operaciones, estados, mecanismos y algoritmos para
hacer funcionar una tarjeta inteligente que son necesarios para
hacer funcionar una tarjeta inteligente, dentro de una aplicación.
Cuando nuevos programas de función que realizan aplicaciones se
transfieren al espacio (220) de direcciones asignadas, el cargador
especial (210) se asegura de que el código de programa de un
programa de función cargado no puede bajo ningún concepto acceder a
los códigos de datos ubicados fuera del espacio (220) de direcciones
asignadas. El espacio (220) de direcciones asignado al cargador
especial (210) podría haber sido ya proporcionado por parte del
cargador principal (120) durante la carga, con medidas de protección
que eviten el acceso físico o lógico de zonas parciales del
dispositivo de memoria (110) ubicadas fuera del espacio (220) de
direcciones asignadas. El espacio (220) de direcciones asignadas es
repartido entre los programas de función recargados, por medio del
cargador especial (210). Por ejemplo, el programa de función (230),
para llevar a cabo una nueva aplicación de tarjeta, debe tener
asignado la zona parcial (231) del espacio (220) de direcciones
asignadas.
En una forma de la estructura descrita
anteriormente, particularmente favorable para la transferencia de
zonas de memoria a terceras partes, la ocupación del dispositivo de
memoria (110) se estructura de forma jerárquica, tal como muestra la
figura 4, y los programas de función recargados tienen la
posibilidad de acceder de un modo definido a otros programas de
función ya presentes en el dispositivo de memoria (110). La
estructura de árbol indicada ilustra la secuencia cronológica en la
que se añaden los diferentes programas de función. En una situación
mínima, la tarjeta está equipada sólo con el cargador principal
(120); inicialmente éste es el único acceso al dispositivo de
memoria (110) de la tarjeta. El cargador principal (120) permite la
carga de los cargadores especiales (210a), (210b), (210c) y la carga
de funciones generales o programas de función (240) que realizan
funciones básicas de la tarjeta. Si el cargador principal (120) está
ubicado en una tarjeta, los cargadores especiales (120) y los
programas de función (240) pueden cargarse a través del cargador
especial (210) en cualquier momento; por lo tanto, se muestran, en
la estructura de árbol de la figura 4, como trayectorias paralelas
que parten del cargador principal.
Todos los programas de función (210), (240),
cargados nuevamente, son comprobados en cuanto a permisos y
seguridad durante la carga realizada por parte del cargador
principal (120). Sólo se cargan los programas de función comprobados
con resultado positivo. Cada cargador especial cargado (210 a, b, c)
es asignado por el cargador principal (120) en un espacio (220) de
direcciones, de posición definida e inalterable, en el dispositivo
de memoria (110), que no puede ser extendido por el cargador
especial (210) asociado. El programa de función que realiza el
cargador especial (210) puede contener información acerca del tamaño
requerido del espacio (220) de direcciones asignadas. Si el cargador
principal (120) no recibe ninguna información acerca del tamaño,
asigna un espacio estándar de direcciones.
Cuando los programas de función (210), (240) son
cargados, el cargador principal (120) asegura que los espacios (220)
de direcciones asignadas de los diferentes cargadores especiales
(210) están estricta, física y lógicamente separados y que ningún
cargador especial (210) puede acceder en ningún caso al espacio
(220) de direcciones asignadas de otro cargador especial (210).
Después de la carga y asignación del espacio de direcciones, el
control sobre el espacio particular (220) de direcciones asignadas
pasa completa y exclusivamente al cargador especial cargador
especial asociado (210a), (210b), (210c). Cada cargador especial
(210) puede cargar ahora en su espacio particular (220) de
direcciones asignadas, programas de función adicionales, en
particular programas de función que lleven a cabo aplicaciones de
tarjeta, por ejemplo, claves criptográficas o métodos para llevar a
cabo transacciones financieras de forma segura. Durante la carga, el
cargador especial (210) somete al octeto de código, que pertenece a
un programa de función que va a ser cargado, a una prueba de
seguridad y de permiso.
El cargador especial (210) es capaz además de
enlazar, de una forma definida, los programas de función que van a
ser cargados nuevamente con algunos ya presentes. Durante la carga
de un programa de función, el cargador especial (210) define sus
posibles derechos de acceso y las posibilidades de enlace con
respecto a otros programas de función ya presentes en el dispositivo
de memoria (110). Del mismo modo, puede establecer limitaciones que
impidan expresamente el acceso o el enlace de un programa de función
cargado nuevamente con un programa de función ya presente o aún por
recargar. Las limitaciones de enlace o de acceso pueden ser
establecidas dentro del espacio de direcciones asignadas a un
cargador especial, pero también es válida la superposición de los
espacios de direcciones asignadas de otros cargadores
especiales.
En el ejemplo de la figura 4, el cargador
especial (210a) ha comprobado, permitido y cargado en el espacio
(220) de direcciones asignadas, dos programas de función (310),
(311), en el cargador especial (210b) tres programas de función
(320), (321), (322), y en el cargador especial (210c) un programa de
función (330) adicional. La recarga de los programas de función
(310), (311), (320), (321), (322), (330), si el cargador especial
(210) requerido está presente en la tarjeta, puede ser efectuada por
el cargador especial (210) en cualquier momento y en cualquier
orden. En la figura 4 cada programa de función recargado (310),
(311), (320), (321), (322), (330) está asignado de acuerdo con lo
anterior, con un particular cargador especial de carga (210a),
(210b), (210c). Los programas de función (310), (311), (320), (321),
(322), (330) pueden accederse entre ellos o enlazarse juntos,
asumiendo que esto fue permitido durante la carga por unos
particulares cargadores especiales (210) activos. En el ejemplo de
la figura 4, el programa de función (330) puede, por ejemplo,
acceder a los programas de función (321) ó (310), por ejemplo, para
utilizar procedimientos dispuestos en los mismos. Por otro lado, el
programa de función (330) no tiene ninguna posibilidad de acceder o
enlazar con respecto a los programas de función (311); esto está
bloqueado debido a la falta del correspondiente permiso de acceso o
de enlace del programa de función (330), ó (320), que está bloqueado
para todo acceso externo.
De forma complementaria a la carga de nuevos
programas de función por parte del cargador principal (120) o del
cargador especial (210), también es fundamentalmente posible borrar
los programas de función (210), (240), (310), (330) presentes en el
dispositivo de memoria (110). La autorización para el borrado se
establece durante la carga de un programa de función por parte del
cargador (120), (210). El borrado del cargador especial (210) sólo
es posible si el espacio (220) de direcciones asignado al mismo ya
no contiene ningún programa de función. El cargador principal (120)
no puede ser borrado.
Una medida que soporta ventajosamente la
transferencia de bajo riesgo del espacio de memoria de una tarjeta
inteligente a terceras partes, es la utilización de un sistema de
acreditación para llevar a cabo la asignación de espacio de
almacenamiento por medio de los cargadores principales (120) y/o los
cargadores especiales (210a), (210b), (210c). Las acreditaciones
tienen la forma de información digital. Son añadidas al cargador
especial (210) o a un programa de función que ha de ser cargado y
comprende en particular una sentencia acerca del tamaño del espacio
(220) de direcciones asignadas deseado o del tamaño del espacio
(230) de direcciones requerido para el programa de función
comprendido en el mismo. El cargador (120), (210) que ha de ser
utilizado para cargar un cargador especial o un programa de función
(230) dotado de una acreditación, debe ser capaz de evaluar la
acreditación. Puede disponerse un sistema de acreditación para todos
los cargadores (120), (210) de una tarjeta o sólo para algunos de
ellos; una estructura jerárquica de cargador como la mostrada en la
figura 3 no es una condición previa para establecerlo. Las
acreditaciones son generadas por la entidad emisora de la tarjeta
inteligente o por el fabricante del cargador (120), (210). Asimismo,
deben ser adquiridas de antemano a dicho emisor o fabricante, para
cargar de nuevo el cargador especial (210) o para cargar de nuevo un
programa de función en el dispositivo de memoria (110). De este
modo, el fabricante del cargador/entidad emisora de tarjetas siempre
está informado de la ocupación del espacio de direcciones asignado a
su cargador 120/210. Asignando sólo el espacio de direcciones
absolutamente necesario a los cargadores especiales o a los
programas de función que han de ser cargados nuevamente, se puede
asegurar particularmente una utilización que economiza el espacio de
memoria de un espacio de direcciones asignadas, por medio de la
correspondiente información comprendida en la acreditación.
Aparte de la mera información de tamaño, una
acreditación puede contener información adicional, por ejemplo,
información que permite una comprobación de la autenticidad de una
acreditación. La autenticidad y la capacidad contra falsificaciones
de una acreditación quedan aseguradas adicional y preferiblemente
mediante métodos criptográficos. En este caso, la información
comprendida en una acreditación está encriptada, de acuerdo con lo
anterior, por ejemplo, la acreditación contiene una clave de
inicialización que permite a un cargador autorizado deducir una
clave para leer la acreditación. Convenientemente, una acreditación
contiene además una firma digital realizada criptográficamente.
Además, para facilitar la gestión, una acreditación puede estar
dotada, por ejemplo, con la designación de un programa de función,
un identificador de aplicación, una fecha o similar. También es
posible disponer de una información que limite las condiciones de
uso de un programa de función, limitando por ejemplo, el tiempo
durante el que se puede utilizar una aplicación, o estableciendo
identificadores de tarjetas que sólo están autorizados a utilizar un
programa de función.
Claims (12)
1. Método para hacer funcionar un elemento
portador de datos equipado con un dispositivo de comunicación, un
dispositivo de memoria y una unidad de ejecución de programas para
ejecutar programas de función contenidos en un dispositivo de
memoria, caracterizado por las siguientes etapas:
- -
- instalación de un programa de función en el dispositivo de memoria (110) del elemento portador de datos para conseguir un interfaz de carga (120) que a su vez hace posible recargar programas de función que consiguen cada uno una aplicación de carga (210),
- -
- disposición de un espacio (130) de memoria libre, disponible para el interfaz de carga (120) en el dispositivo de memoria (110),
- -
- recarga, por lo menos, de una aplicación de carga (210) a través del dispositivo de comunicación (60) en el dispositivo de memoria (110), estando dicha recarga controlada por el interfaz de carga (120), y adjudicando a la aplicación de carga (210) una parte del espacio (130) de memoria libre a modo de espacio (220) de direcciones asignadas.
2. Método, según la reivindicación 1,
caracterizado por la siguiente etapa adicional:
- -
- recarga, por lo menos, de un programa de aplicación (230) a través del dispositivo de comunicación (60) por medio de la unidad de ejecución de programas bajo el control de la aplicación de carga (210) en el espacio (220) de direcciones adjudicado al mismo.
3. Método, según la reivindicación 1,
caracterizado porque el interfaz de carga (120) concede el
control sobre el espacio (220) de direcciones adjudicado a una
aplicación de carga (210) a la aplicación de carga (210).
4. Elemento portador de datos que dispone de
- un dispositivo de memoria (110) para recibir
programas de función y de aplicación,
- una unidad de ejecución de programas (20) para
ejecutar programas de función contenidos en el dispositivo de
memoria (110),
- un dispositivo de comunicación (60),
caracterizado por
- un interfaz de carga (120) conseguido a modo de
programa de función para cargar, por lo menos, una aplicación de
carga (210), que permite la recarga de un programa de aplicación
adicional en el dispositivo de memoria (110) a través del
dispositivo de comunicación (60),
- el interfaz de carga (120) que tiene asociado
al mismo, en el dispositivo de memoria (110), un espacio (130) de
memoria libre para recibir, por lo menos, una aplicación de
carga.
5. Elemento portador de datos, según la
reivindicación 4, caracterizado porque una aplicación de
carga (210) recibida en el dispositivo de memoria (110) controla una
parte (220) del espacio (130) de memoria libre asociado con el
interfaz de carga (120), independientemente del interfaz de
carga.
6. Elemento portador de datos, según la
reivindicación 4, caracterizado porque las aplicaciones de
carga (210) están diseñadas para enlazar, durante la carga,
programas de aplicación (330) que han de ser recargados, con
programas de función y de aplicación ya presentes en el elemento
portador de datos.
7. Elemento portador de datos, según la
reivindicación 6, caracterizado porque una aplicación de
carga (210) comprende limitaciones que prohiben el enlace de un
programa de aplicación (330) que ha de ser cargado nuevamente con
uno ya presente (311, 320).
8. Método para hacer funcionar un elemento
portador de datos que dispone de un dispositivo de memoria para
recibir programas de función y de aplicación, una unidad de
ejecución de programas para ejecutar programas de función y de
aplicación contenidos en el dispositivo de memoria, y un dispositivo
de comunicación, caracterizado por las siguientes etapas:
- equipación del elemento portador de datos con
un programa de función que consiga un interfaz de carga (120, 210)
para recargar programas de aplicación en el dispositivo de
memoria,
- equipación del elemento portador de datos con
un dispositivo de gestión para asignar espacios de direcciones en el
dispositivo de memoria (110) a los programas de aplicación
recargados,
- dotación del programa de aplicación que ha de
ser recargado con acreditaciones que contienen información acerca
del tamaño del espacio de memoria requerido por el programa de
aplicación,
- evaluación de la acreditación durante la
recarga de un programa de aplicación, y
- asignación al programa de aplicación de un
espacio de direcciones en el dispositivo de memoria (110) de acuerdo
con la información de tamaño determinada.
9. Método, según la reivindicación 8,
caracterizado porque la acreditación contiene además
información que designa el programa de aplicación.
10. Método, según la reivindicación 8,
caracterizado porque la acreditación contiene además una
forma para demostrar la autenticidad del programa de
aplicación.
11. Método, según la reivindicación 8,
caracterizado porque las acreditaciones son emitidas por la
entidad emisora del elemento portador de datos.
12. Elemento portador de datos que dispone de un
dispositivo de memoria (110) para recibir programas de función y de
aplicación, una unidad de ejecución de programas (20) para ejecutar
programas de función contenidos en el dispositivo de memoria, y un
dispositivo de comunicación (60), caracterizado por un
interfaz de carga (120, 210) realizado a modo de programa de función
para recargar, por lo menos, un programa de aplicación en el
dispositivo de memoria a través del dispositivo de comunicación
(60), disponiendo el interfaz de carga (120, 210) de medios para
comprobar una acreditación de un programa de aplicación que ha de
ser cargado, y para asignar espacio de memoria en el dispositivo de
memoria (110) a un programa de aplicación que ha de ser cargado, de
acuerdo con la información de tamaño contenida en la
acreditación.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19929164 | 1999-06-25 | ||
DE19929164A DE19929164A1 (de) | 1999-06-25 | 1999-06-25 | Verfahren zum Betreiben eines zur Ausführung von nachladbaren Funktionsprogrammen ausgebildeten Datenträgers |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2223541T3 true ES2223541T3 (es) | 2005-03-01 |
Family
ID=7912527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES00943867T Expired - Lifetime ES2223541T3 (es) | 1999-06-25 | 2000-06-23 | Metodo para hacer funcionar un elemento portador de datos configurado para ejecutar programas de funcion recargables. |
Country Status (11)
Country | Link |
---|---|
US (1) | US7117012B1 (es) |
EP (1) | EP1196902B1 (es) |
JP (1) | JP4727876B2 (es) |
CN (1) | CN1134751C (es) |
AT (1) | ATE275747T1 (es) |
AU (1) | AU5818400A (es) |
BR (1) | BRPI0011932B1 (es) |
CA (1) | CA2378406C (es) |
DE (2) | DE19929164A1 (es) |
ES (1) | ES2223541T3 (es) |
WO (1) | WO2001001357A1 (es) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001052131A (ja) * | 1999-08-04 | 2001-02-23 | Dainippon Printing Co Ltd | Icカードおよびその発行方法ならびにプログラム |
FR2835628A1 (fr) * | 2002-02-01 | 2003-08-08 | Schlumberger Systems & Service | Gestion de la mise a jour d'informations encodees en memoire |
US20040199787A1 (en) * | 2003-04-02 | 2004-10-07 | Sun Microsystems, Inc., A Delaware Corporation | Card device resource access control |
US7689250B2 (en) * | 2006-02-01 | 2010-03-30 | General Instrument Corporation | Method, apparatus and system for partitioning and bundling access to network services and applications |
DE102006014690A1 (de) | 2006-03-28 | 2007-10-04 | Vodafone Holding Gmbh | Speicherverwaltung von Chipkarten |
US20090216675A1 (en) * | 2008-02-21 | 2009-08-27 | The Coca-Cola Company | Commission Centric Network Operation Systems and Methods |
US9460440B2 (en) * | 2008-02-21 | 2016-10-04 | The Coca-Cola Company | Systems and methods for providing electronic transaction auditing and accountability |
US8645273B2 (en) | 2008-02-21 | 2014-02-04 | The Coca-Cola Company | Systems and methods for providing a vending network |
US20090216665A1 (en) * | 2008-02-21 | 2009-08-27 | The Coca-Cola Company | Systems and Methods for Providing Vending Network Data Management |
US20090222300A1 (en) * | 2008-03-03 | 2009-09-03 | The Coca-Cola Company | Systems and Methods of Marketing to Defined Consumer Groups |
US8121917B2 (en) * | 2008-03-03 | 2012-02-21 | The Coca-Cola Company | Systems for implementing a loyalty program |
US20090222339A1 (en) * | 2008-03-03 | 2009-09-03 | The Coca-Cola Company | Systems and Methods for Providing a Personal Terminal for a Loyalty Program |
US8015088B2 (en) * | 2008-03-03 | 2011-09-06 | The Coca-Cola Company | Methods for implementing a loyalty program |
CN102103651B (zh) * | 2009-12-21 | 2012-11-14 | 中国移动通信集团公司 | 一种一卡通系统的实现方法和系统以及一种智能卡 |
US20140304787A1 (en) * | 2013-04-05 | 2014-10-09 | Microsoft Corporation | Badge notification subscriptions |
FR3009400B1 (fr) * | 2013-07-31 | 2015-09-18 | Oberthur Technologies | Procede d'installation d'une application sur un element securise |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2591796B2 (ja) * | 1988-07-25 | 1997-03-19 | 日本電信電話株式会社 | Icカード |
JPH04245536A (ja) * | 1991-01-31 | 1992-09-02 | Matsushita Graphic Commun Syst Inc | 情報処理装置 |
US5293424A (en) * | 1992-10-14 | 1994-03-08 | Bull Hn Information Systems Inc. | Secure memory card |
JP3177047B2 (ja) * | 1993-01-27 | 2001-06-18 | 大日本印刷株式会社 | メモリ領域の管理方法 |
EP0666550B1 (en) * | 1994-02-08 | 1997-05-02 | Belle Gate Investment B.V. | Data exchange system comprising portable data processing units |
US6330648B1 (en) * | 1996-05-28 | 2001-12-11 | Mark L. Wambach | Computer memory with anti-virus and anti-overwrite protection apparatus |
JPH1055278A (ja) * | 1996-08-08 | 1998-02-24 | Toshiba Microelectron Corp | メモリ混載マイコン |
US5923884A (en) * | 1996-08-30 | 1999-07-13 | Gemplus S.C.A. | System and method for loading applications onto a smart card |
DE19718115A1 (de) * | 1996-12-23 | 1998-06-25 | Ccs Chipcard & Comm Syst Gmbh | Chipkarte und Verfahren zur Verwendung der Chipkarte |
CZ225499A3 (cs) | 1996-12-23 | 1999-11-17 | Deutsche Bank Ag | Čipová karta a způsob využití čipové karty |
US5754762A (en) * | 1997-01-13 | 1998-05-19 | Kuo; Chih-Cheng | Secure multiple application IC card using interrupt instruction issued by operating system or application program to control operation flag that determines the operational mode of bi-modal CPU |
US6575372B1 (en) * | 1997-02-21 | 2003-06-10 | Mondex International Limited | Secure multi-application IC card system having selective loading and deleting capability |
DE19723676A1 (de) * | 1997-06-05 | 1998-08-27 | Siemens Ag | Verfahren zum Nachladen von Programmen auf eine Chip-Karte |
JPH1131200A (ja) * | 1997-07-14 | 1999-02-02 | Dainippon Printing Co Ltd | Icカード |
US6308270B1 (en) * | 1998-02-13 | 2001-10-23 | Schlumberger Technologies, Inc. | Validating and certifying execution of a software program with a smart card |
EP0949595A3 (en) * | 1998-03-30 | 2001-09-26 | Citicorp Development Center, Inc. | Method and system for managing applications for a multi-function smartcard |
US6493550B1 (en) * | 1998-11-20 | 2002-12-10 | Ericsson Inc. | System proximity detection by mobile stations |
US6256690B1 (en) * | 1999-01-15 | 2001-07-03 | Todd Carper | System and method for facilitating multiple applications on a smart card |
-
1999
- 1999-06-25 DE DE19929164A patent/DE19929164A1/de not_active Ceased
-
2000
- 2000-06-23 CA CA002378406A patent/CA2378406C/en not_active Expired - Fee Related
- 2000-06-23 WO PCT/EP2000/005795 patent/WO2001001357A1/de active IP Right Grant
- 2000-06-23 DE DE50007701T patent/DE50007701D1/de not_active Expired - Lifetime
- 2000-06-23 CN CNB00810462XA patent/CN1134751C/zh not_active Expired - Fee Related
- 2000-06-23 BR BRPI0011932A patent/BRPI0011932B1/pt not_active IP Right Cessation
- 2000-06-23 ES ES00943867T patent/ES2223541T3/es not_active Expired - Lifetime
- 2000-06-23 EP EP00943867A patent/EP1196902B1/de not_active Expired - Lifetime
- 2000-06-23 AT AT00943867T patent/ATE275747T1/de active
- 2000-06-23 JP JP2001506505A patent/JP4727876B2/ja not_active Expired - Fee Related
- 2000-06-23 US US09/926,792 patent/US7117012B1/en not_active Expired - Fee Related
- 2000-06-23 AU AU58184/00A patent/AU5818400A/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
JP4727876B2 (ja) | 2011-07-20 |
CN1134751C (zh) | 2004-01-14 |
BRPI0011932B1 (pt) | 2016-03-29 |
EP1196902A1 (de) | 2002-04-17 |
ATE275747T1 (de) | 2004-09-15 |
AU5818400A (en) | 2001-01-31 |
DE19929164A1 (de) | 2001-01-11 |
CN1375094A (zh) | 2002-10-16 |
WO2001001357A1 (de) | 2001-01-04 |
EP1196902B1 (de) | 2004-09-08 |
BR0011932A (pt) | 2002-03-19 |
CA2378406C (en) | 2006-12-05 |
US7117012B1 (en) | 2006-10-03 |
DE50007701D1 (de) | 2004-10-14 |
CA2378406A1 (en) | 2001-01-04 |
JP2003503777A (ja) | 2003-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2223541T3 (es) | Metodo para hacer funcionar un elemento portador de datos configurado para ejecutar programas de funcion recargables. | |
EP1113387A2 (en) | Smart card having a non-volatile memory with a novel mapping | |
AU2011343546B2 (en) | Writing application data to a secure element | |
Shelfer et al. | Smart card evolution | |
AU2011343474B2 (en) | Local trusted services manager for a contactless smart card | |
US6481632B2 (en) | Delegated management of smart card applications | |
ES2526641T3 (es) | Procedimiento de comunicación, dispositivo de comunicación y procesador seguro | |
EP0976114A2 (en) | Secure multiple application card system and process | |
JP2003503777A5 (es) | ||
ES2216947T3 (es) | Transportador de datos portatil y procedimiento de utilizacion del mismo en una serie de aplicaciones. | |
KR20050050757A (ko) | 스마트 카드가 탑재된 이동 통신 단말기에 부가 서비스기능을 제공하기 위한 시스템 및 방법 | |
ES2353809T3 (es) | Aparato de gestión de memoria externa y procedimiento de gestión de memoria externa. | |
Chirico | Smart card programming | |
CZ225499A3 (cs) | Čipová karta a způsob využití čipové karty | |
ES2206644T3 (es) | Procedimiento para la programacion segura de una tarjeta con microprocesador para una aplicacion adicional. | |
CA2545292C (en) | A method for writing data and applications into identification media | |
KR100985650B1 (ko) | 반도체 ic 장치, ic 카드 및 이동 단말기 | |
ES2176035T5 (es) | Procedimiento y dispositivo de control del ciclo de vida de un objeto portatil, en particular de una tarjeta de chip. | |
ES2332965A1 (es) | Terminal punto de venta. | |
JP4460948B2 (ja) | 半導体集積回路装置、icカード、携帯端末 | |
AU2013222020A1 (en) | Local trusted services manager for a contactless smart card | |
CN108280372A (zh) | 一种安全芯片 | |
CN105512712A (zh) | 将预付额度的数量加载到预付费计量表中的双接口智能卡 |