[go: up one dir, main page]

MXPA98006674A - Metodo para modificar la serie de instrucciones de una tarjeta inteligente - Google Patents

Metodo para modificar la serie de instrucciones de una tarjeta inteligente

Info

Publication number
MXPA98006674A
MXPA98006674A MXPA/A/1998/006674A MX9806674A MXPA98006674A MX PA98006674 A MXPA98006674 A MX PA98006674A MX 9806674 A MX9806674 A MX 9806674A MX PA98006674 A MXPA98006674 A MX PA98006674A
Authority
MX
Mexico
Prior art keywords
attributes
instruction
smart card
attribute
files
Prior art date
Application number
MXPA/A/1998/006674A
Other languages
English (en)
Other versions
MX9806674A (es
Inventor
Feiken Albertus
Original Assignee
Koninklijke Kpn Nv
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
Priority claimed from EP96200402A external-priority patent/EP0790551A1/en
Application filed by Koninklijke Kpn Nv filed Critical Koninklijke Kpn Nv
Publication of MX9806674A publication Critical patent/MX9806674A/es
Publication of MXPA98006674A publication Critical patent/MXPA98006674A/es

Links

Abstract

La invención provee un método para modificar y/o extender la serie de instrucciones READ, WRITE de una tarjeta inteligente;se hace uso de las tablas de atributos 100, 200, 300 asociadas con ciertos archivos y con los comandos de la serie de instrucciones existentes para modificar las funciones de las instrucciones;así, se pueden implementar funciones no estándar sin la necesidad de usar instrucciones adicionales, es decir, no estándar.

Description

MÉTODO PARA MODIFICAR LA SERIE DE INSTRUCCIONES DE UNA TARJETA INTELIGENTE ANTECEDENTES DE LA INVENCIÓN La presente invención se refiere a un método para modificar la serie de instrucciones de una tarjeta inteligente. Más particularmente» la presente invención se refiere a un método para modificar las instrucciones individuales de una tarjeta inteligente. Una tarjeta inteligente! llamada también tarjeta IC (IC = circuito integrado)» es un dispositivo electrónico para efectuar pagos. El circuito integrado de la tarjeta contiene un microprocesador o su similar para procesar datos. El procesador de una tarjeta inteligente está provisto normalmente con una serie de instrucciones que comprende instrucciones (comandos), tales como READ» WRITE. UPDATE. etc.. para operar sobre los datos (pago) contenidos en la tarjeta. Con frecuencia se utilizan series de instrucciones estandarizadas. tales co o. por ejemplo, las definidas por la norma europea EN726. Sin embargo. dicha serie de instrucciones está necesariamente limitada con respecto al número y al alcance de las instrucciones. Conforme surgen sistemas electrónicos de pago que implican tarjetas inteligentes. surge con frecuencia la necesidad de añadir nuevas funciones a la tarjeta, o de alterar las funciones existentes. Dichos cambios implican usualmente una modificación de la serie de instrucciones de la tarjeta inteligente. Esto normalmente implicaría un rediseño del circuito integrado de la tarjeta, lo cual no sólo es costoso, sino hace que las tarjetas existentes sean obsoletas. Además. alterar una serie de instrucciones estandarizadas comprometería su compatibilidad con el estándar. Por estas y otras razones, surge la necesidad de poder modificar la serie de instrucciones de las tarjetas inteligentes sin desviarse substancial ente de la serie existente.
BREVE DESCRIPCIÓN DE LA INVENCIÓN Es asi un objetivo de la invención superar las desventajas anteriormente mencionadas y otras desventajas de la técnica anterior. y proveer un método que haga posible modificar una serie de instrucciones de una tarjeta inteligente sin añadir comandos. Es otro objetivo de la invención añadir nuevas funciones a una tarjeta inteligente, estando basadas las nuevas funciones en la serie original de instrucc ones. Para lograr estos y otros objetivos. la invención provee un método para modificar la serie de instrucciones de un procesador de una tarjeta inteligente. la tarjeta inteligente comprendiendo además una memoria para almacenar archivos y grupos de atributos asociados con los archivos, cada atributo especificando propiedades de una instrucción de la serie, el método comprendiendo el paso de insertar en un grupo de atributos un nuevo atributo que corresponda con la instrucción que va a ser modificada, dicho nuevo atributo especificando una propiedad modificada de la instrucción respectiva. Es decir. de conformidad con la presente invención, las instrucciones se modifican modificando sus atributos. Ya que los atributos pueden ser organizados en grupos asociados con archivos específicos, el método de la presente invención permite que las strucciones sean modificadas selectivamente. es decir, modificadas para archivos específ cos. Un atributo especifica típicamente una condición de acceso o una clave específica que será utilizada por la instrucción involucrada. Sin embargo, el atributo puede contener código de máquina (o un señalador a código de máquina) que especifique una operación adicional, la operación realizando una función especifica (tal como un procedimiento criptográf co). Insertando una nueva operación, o una operación modificada, en un atributo, se puede modificar la función de una instrucción sin alterar lo propio de la instrucción. Se entenderá que la inserción de un atributo puede implicar el reemplazo de un atributo existente. En general, las posiciones de memoria se pueden reservar para almacenar atributos. La inserción de un nuevo atributo implica generalmente almacenar el nuevo atributo en la posición de memoria correspond ente. en cuyo caso cualquier información almacenada previamente en la posición de memoria es sobreescri ta . De conformidad con la invención, el método se puede aplicar en situaciones donde los grupos de atributos de la serie de instrucciones comprenden una primera tabla que contiene primeros atributos, y una segunda tabla que contiene segundos atributos, la primera tabla conteniendo referencias para la segunda tabla, y en donde un nuevo atributo se inserta en la segunda tabla. Dicha primera tabla puede comprender, por ejemplo, dicha clave especifica, mientras que la segunda tabla contiene procedimientos (operaciones) que serán utilizados en conjunto con la instrucción involucrada. Debe observarse que la primera tabla puede ser referida por una tabla base que contiene referencias. Insertando un nuevo atributo en la segunda tabla, la modificación se logra con un cambio mínimo en los atributos. Las tarjetas inteligentes modernas pueden tener por lo menos dos archivos de datos diferentes, por ejemplo, para diferentes aplicaciones de la tarjeta inteligente. En tal caso, un grupo de atributos puede comprender subgrupos asociados con los archivos de datos respectivos. La invención permite que un nuevo atributo sea insertado en un número limitado de subgrupos. haciendo asi modificaciones de las instrucciones especificas para archivos de datos individuales. De esta forma, puede lograrse una gran flexibilidad de instrucciones.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La figura 1 muestra» en perspectiva. una tarjeta inteligente como se usa para propósitos de pago e identificación. La figura 2 muestra esquemáticamente el circuito integrado de la tarjeta inteligente de la figura 1. La figura 3 muestra esquemáticamente una tabla de atributos de una serie de instrucciones de una tarjeta inteligente, por ejemplo, la tarjeta inteligente de la figura 2. La figura 4 muestra esquemáticamente una tabla de claves asociada con la tabla de atributos de la figura 3. La figura 5 muestra esquemáticamente una tabla de procedimientos asociada con la tabla de atributos de la figura 3 y la tabla de claves de la figura 4. La figura 6 muestra esquemáticamente un ejemplo de una estructura jerárquica de archivos de una tarjeta inte! i gente .
EJEMPLOS DE MODALIDADES La tarjeta inteligente o tarjeta IC 1 mostrada esquemáticamente y mediante el ejemplo de 1 a figura 1 comprende un substrato 2. en el cual está incluido un circuito integrado.
El circuito integrado está provisto con contactos 3 para hacer contacto con un lector de tarjeta o su similar. Debe observarse que la presente invención se puede aplicar también en el caso de las llamadas tarjetas inteligentes sin contactos. El circuito integrado 10 mostrado esquemáticamente y mediante el ejemplo en la figura 2 comprende un procesador 11. una memoria 12 y un circuito de entrada/salida 13. La memoria puede comprender una parte de memoria volátil (RAM) para almacenar datos temporalmente» y una parte de memoria no volátil (ROM) para almacenar datos permanentemente o semipermanentemente. La última parte es preferiblemente una memoria de tipo EEPROM (memoria de sólo lectura eléctricamente borrable). Los datos almacenados en la parte no volátil pueden contener tanto datos de programación (instrucciones, programas) como datos de pago. es decir» datos relacionados con transacc ones monetarias. Se entenderá que se puede proveer una memoria aparte (no mostrada) para almacenar la serie de instrucciones del procesador 11. El procesador 11 puede ser un microprocesador que tenga una serie de instrucciones estandarizadas, por ejemplo. de conformidad con la norma europea EN726. Se entenderá que pueden utilizarse también otras series de instrucc ones estándar o no estándar. La serie de instrucciones se explicará con más detalle en relación a la figura 3. El circuito de entrada/salida 13 maneja la comunicación entre el procesador 11 y dispositivos externos (no mostrados) tales como lectores de tarjeta. El circuito de entrada/sal da 13. que puede contener memorias volátiles adecuadas, está conectado con el procesador 11 mediante un enlace de datos. El procesador 11 y 1 a memoria 12 pueden estar conectados por medio del mismo enlace de datos. La tabla ae atributos mostrada esquemát camente y mediante el ejemplo en la figura 3 y denotada en general por el número de referencia 100» comprende varias partes asociadas con diferentes archivos (una estructura posible de archivos de la tarjeta inteligente se explicará después en relación con la figura G ) . Una primera parte, asociada con el archivo A (21 en la figura S). comprende los campos 111. 121 y 131. El primer campo 111 contiene el indicador de archivos» denotado aquí por "archivo A". El segundo campo 121 contiene una tabla de instrucciones» es decir, una tabla que contiene la serie de instrucciones de la tarjeta inteligente» o por lo menos referencias a las instrucciones de la serie de instrucciones. Se entenderá que lo propio de las instrucciones comprenden el código de máquina ejecutado por el procesador. En el ejemplo mostrado. se muestran las strucciones "READ". " RITE y "UPDATE". El tercer campo 131 contiene atributos de las i strucc ones en el campo 121. Es decir, para cada instrucción del segundo campo 121. puede haber una entrada en el tercer campo 131. la entrada const tuyendo un grupo de atributos que especifican además el funcionamiento de la instrucción. Los atributos pueden comprender, por ejemplo, condiciones de acceso y números de referencia denotados en la figura 3 por AC y B KEYIMR. respecti amente. Las condiciones de acceso pueden comprender ALWAYS . NEVER. PROTECTED. y similares. Los números de referencia pueden referirse a entradas en la tabla de claves mostrada en la figura 4. El tercer campo 131 de la tabla 100 puede constituir asi una tabla base de atributos, que refiere a otras tablas (mostradas en la figura 4). Aunque el primer, segundo y tercer campos de la tabla de atributos 100 se muestran en la figura 3 con motivo de claridad como campos adyacentes. en modalidades reales los campos pueden estar muy bien almacenados en posiciones diferentes no adyacentes de la memoria 12 de la tarjeta nte! igente. Los atributos incluidos en el campo 131 corresponden todos con el archivo A. como se especifica en el campo 111. Es decir. los atributos del campo 111 sólo son válidos para el archivo A. Dicha estructura permite que las instrucciones tengan diferentes funcionalidades para diferentes archivos (datos). Dicho archivo puede contener datos con respecto a una aplicación específica (función) de la tarjeta inteligente. Las aplicaciones típicas son "finanzas", "programa de lealtad" y "acceso" para hacer o recibir pagos, recabar créditos de lealtad, y tener acceso a construcciones y similares, respectivamente. Incluso dentro de dicha aplicación, puede utilizarse más de un archivo de datos, y asi puede existir más de un grupo asociado de atributos. Como resultado de los atributos que son específicos a un archivo de datos, la función de una instrucción puede. por lo menos para las partes definidas por los atributos, ser especifica a un archivo de datos. Asi, las condiciones de acceso de la instrucción "READ" pueden variar entre un archivo que contiene, por ejemplo, datos de finanzas (almacenamiento de dinero electrónico) y un archivo que contiene datos personales del usuario de la tarjeta inteligente. Esto se explicará con más detalle en relación a las figuras 4 y 5. Las condiciones de acceso reales, mostradas simból camente en la figura 3 mediante AC, pueden estar contenidas en la tabla base de atributos 100, o pueden estar contenidas en una tabla aparte (no mostrada). Del mismo modo» las claves (KEY 1, KEY 2. ...) mostradas en la figura 4 pueden estar contenidas en la tabla de atributos 100. Para facilitar la explicación de la invención, se supondrá que las entradas KEYNR. que pueden ser simplemente números (1. 2. ... ) » se refieren a la tabla de claves 200 de la figura 4. Cada entrada en la tabla de claves 200 de la figura 4 contiene un número clave (KEYNER.)» una clave (KEY 1. KEY 2. ...) y una identificación de procedimiento o número de procedimiento (denotado como PRONR) en las figuras 4 y 5). Cada identificación de procedimiento se refiere a su vez a una entrada en la tabla de procedimientos 300. Cada entrada en la tabla de procedimientos 300 contiene un número de procedimiento y un procedimiento (operación). denotado en la figura 5» por ejemplo» por DES c RSA. Dicho procedim ento puede ser un procedimiento criptográfico. tal como DES y RSA. o alguna otra operación sobre datos. De conformidad con la presente invención. las instrucciones de una tarjeta inteligente se pueden modificar modificando sus atributos. Asi» modificando una entrada en la tabla de procedimientos 300» se puede lograr una nueva función o una modificación de una función existente. En la figura 5 se inscribe una nueva función (por ejemplo» multiplicar datos con un factor común» o restar uno de datos) en la segunda entrada de la tabla de procedimientos. Asi» si en la tabla de claves 200 se selecciona la clave número 3» el número de procedimiento se refiere al número de procedimiento 2» siendo la nueva función. Cada vez que se ejecute una instrucción que impl que el uso de KEY 3» se invocará la nueva función. Se entenderá que pueden hacerse referencias a una nueva función de varias formas» por ejemplo» directamente de la tabla 100 de la figura 3. Del mismo modo. la tabla de claves 200 puede contener claves "fantasma" para permitir el uso de la tabla sin usar en realidad una clave. En lugar de insertar la nueva función en la tabla de procedimientos 300. se puede insertar un señalador que señale a una posición de memoria en donde está almacenado el código nuevo o modificado. Como se explicó anteriormente. en la tabla base de atributos (100 en la figura 3) pueden existir diferentes atributos para diferentes archivos. De conformidad con la invención» el método permite una serie de instrucciones flexible modificando los atributos para archivos de datos ndi viduales . Las tarjetas inteligentes pueden comprender una estructura jerárquica de directorio para organizar sus archivos. Un ejemplo de dicha estructura se muestra en la figura 6. Un archivo principal 20 tiene tres subarchivos 21. 22 y 23. Es decir, el archivo principal puede contener referencias a los subarchivos. o dichas referencias se almacenan en otra parte (por ejemplo, en un directorio común). Un grupo de atributos está asociado con el archivo principal 20. Es posible contar con grupos individuales de atributos para los tres subarchivos 21, 22 y 23. como se muestra en la figura 3. Sin embargo, en caso de que un grupo de atributos esté asociado con el archivo 20. dicho grupo de atributos puede ser aplicable a todos los archivos inferiores en la jerarquía respecto al archivo principal 20. Es decir. el mismo grupo de atributos puede estar asociado también con los archivos 21. 22 y 23. En otras palabras» si una instrucción se cambia modificando un atributo (de un grupo de atributos) asociado con cierto archivo» la modificación puede mantenerse para todos los archivos jerárquicamente inferiores respecto a dicho archivo. Esto permite que una instrucción sea alterada para. por ejemplo. una aplicación de tarjeta especifica. en donde esta aplicación implica varios archivos. Como se explicó anteriormente. la modificación de instrucciones se logra de conformidad con la presente invención reemplazando y/o modificando atributos. El método de la invención permite asi el uso de instrucciones estándar (funciones estándar de tarjeta) para efectuar operaciones no estándar. La invención provee también una serie de instrucciones modificada de una tarjeta inteligente» asi como también una tarjeta inteligente provista con una serie de instrucciones modificada. La inserción real de un nuevo atributo en una tabla de atributos se logra almacenando el nuevo atributo en una posición de memoria apropiada. Los datos que representan el nuevo atributo se pueden transferir desde una computadora mediante un lector/escritor de tarjeta a la memoria de la tarjeta. En relación a la figura 2» los datos son transferidos mediante la unidad de 1/0 13 a la memoria 12 en forma usual . Será entendido por los expertos en la técnica que las modalidades descritas anteriormente se dan únicamente a manera de ejemplo» y que son posibles muchas modificaciones y adiciones sin apartarse del alcance de la presente invención.

Claims (8)

NOVEDAD DE LA INVENCIÓN REIVINDICACIONES
1.- Un método para modificar la serie de instrucciones de un procesador (11) de una tarjeta inteligente (1). la tarjeta inteligente comprendido además una memoria (12) para almacenar archivos (21. 22) y grupos de atributos (por ejemplo AC. KEYiMR» KEY 1) asociados con los archivos» cada atributo especificando propiedades de una instrucción (por ejemplo. READ) de la serie, caracterizado porque el método comprende el paso de insertar en un grupo de atributos un nuevo atributo (por ejemplo. NEW FUNCTION) que corresponde con una instrucción que va a ser modificada, dicho nuevo atributo especificando una propiedad modificada de la instrucción respect a.
2.- El método de conformidad con la reivindicación 1. caracterizado porque los grupos de atributos están organizados en una primera tabla (100) que refiere a una tabla adicional (200, 300), y en donde un nuevo atributo (NEW FUNCTION) se inserta en una tabla adicional (por ejemplo. 300).
3.- El método de conformidad con las reivindicaciones l o 2» caracterizado porque la inserción de un nuevo atributo implica el reemplazo de un atributo existente.
4.- El método de conformidad con la cualquiera de las reivindicaciones anteriores. caracterizado porque la memoria (12) de la tarjeta inteligente (1) comprende por lo menos dos archivos (por ejemplo, 21» 22), un grupo de atributos (por ejemplo, 131) estando asociado con cada archivo, un nuevo atributo siendo insertado en un número limitado de grupos.
5.- El método de conformidad con la cualquiera de las reivindicaciones anteriores» caracterizado porque los archivos (por ejemplo» 21» 22) están organizados jerárquicamente» cada grupo de atributos estando asociado con por lo menos un archivo (por ejemplo» 20)» y todos los archivos (por ejemplo 21» 22) siendo jerárquicamente inferiores respecto a dicho archivo (20) .
6.- El método de conformidad con la cualquiera de las reivindicaciones anteriores» caracterizado porque una serie de atributos está asociada con todos los archivos de la tarjeta inteligente (1).
7.- La serie de instrucciones de una tarjeta inteligente (1). caracterizada porque es modificada por el método de conformidad con cualquiera de las reivindicaciones anteriores.
8.- La tarjeta inteligente (1)» caracterizada porque comprende una memoria (12) y un procesador (11) que tiene una serie de instrucciones modificada por el método de conformidad con cualquiera de las reivi dicaciones 1 a 6.
MXPA/A/1998/006674A 1996-02-16 1998-08-17 Metodo para modificar la serie de instrucciones de una tarjeta inteligente MXPA98006674A (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP96200402A EP0790551A1 (en) 1996-02-16 1996-02-16 Method of modifying the instruction set of a smart card
EP96200402 1996-02-16

Publications (2)

Publication Number Publication Date
MX9806674A MX9806674A (es) 1998-12-31
MXPA98006674A true MXPA98006674A (es) 1999-02-01

Family

ID=

Similar Documents

Publication Publication Date Title
EP0880737B1 (en) Method of modifying the instruction set of a smart card
KR910002257B1 (ko) 휴대가능전자장치
US5226155A (en) Method and system for allocating file space in memory of ic card
EP1272983B1 (en) Integrated production of smart cards
US6488211B1 (en) System and method for flexibly loading in IC card
EP0583006A2 (en) IC card with hierarchical file structure
US6357665B1 (en) Configuration of IC card
US5097118A (en) Portable electronic apparatus for writing and reading data to and from an external device and performing data memory allocation
US5401950A (en) IC card having improved security checking function
JPS6228297A (ja) 更新情報と履歴情報の読出し手段を有するicカ−ド
EP1053535B1 (en) Configuration of ic card
EP0622736B1 (en) File management system with file-size flexibility
KR910009097B1 (ko) 휴대가능 전자장치
US6286757B1 (en) Portable electronic apparatus
JP4090350B2 (ja) Icカード
MXPA98006674A (es) Metodo para modificar la serie de instrucciones de una tarjeta inteligente
CA2246247A1 (en) Method of modifying the instruction set of a smart card
CN1302427C (zh) 集成电路卡终端
HK1025157A (en) Method of modifying the instruction set of a smart card
JP7438432B1 (ja) 電子情報記憶媒体、icチップ、icカード、レコード書き込み方法、及びプログラム
KR100901007B1 (ko) 동일한 아이디의 어플리케이션을 포함하는 스마트 카드
KR101104460B1 (ko) 금융아이씨카드로부터 복수 계좌 정보를 판독하는 방법 및 이 방법의 적용을 위한 금융아이씨카드
JPH01220083A (ja) 携帯可能電子装置
JPH01147686A (ja) 携帯可能電子装置
JP2007323273A (ja) 携帯可能電子装置およびicカード