Procedimiento para codificar información dentro de los archivos de directorio en una tarjeta inteligente de circuito integrado.

Procedimiento de codificación de información en la memoria permanente de una tarjeta inteligente quecomprende las etapas siguientes:



proporcionar un archivo de directorio (25) que presenta una dirección inicial (28) y una dirección final (29) dentro dela memoria permanente de la tarjeta inteligente, soportando la tarjeta inteligente la recuperación de los objetos dedatos según la norma PKCS15;

proporcionar un objeto de datos (27) para su almacenamiento en el interior de la tarjeta inteligente;almacenar el objeto de datos (27) entre la dirección inicial y la dirección final en por lo menos una última ubicaciónde memoria disponible en el interior del archivo de directorio, encontrándose la última ubicación de memoriadisponible más próxima a la dirección inicial del archivo de directorio que un objeto de datos almacenadopreviamente,

caracterizado porque:

el objeto de datos se escribe secuencialmente en la memoria empezando desde una dirección superior del objeto dedatos almacenado previamente hasta una dirección inferior más próxima a la dirección inicial; y

almacenar un puntero de datos (26) entre la dirección inicial y la dirección final en por lo menos la más próximaprimera ubicación de memoria disponible a la dirección inicial, resultando el puntero de datos indicativo de unaubicación de objeto de datos, escribiéndose el puntero de datos secuencialmente en la memoria empezando en laproximidad de la dirección inicial (28) y avanzando hacia la dirección final (29) de una manera opuesta a la del objetode datos,

en el que puede disponerse de un bloque continuo (32) de memoria para el almacenamiento en el mismo depunteros de datos y objetos de datos entre un último puntero de datos almacenado y la ubicación del objeto de datosindicada por el último puntero de datos almacenado.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/EP2002/011274.

Solicitante: ACTIVCARD IRELAND LIMITED.

Nacionalidad solicitante: Irlanda.

Dirección: 30 HERBERT STREET DUBLIN 2 IRLANDA.

Inventor/es: BOYER,John, HILLHOUSE,Robert D.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • G06F12/14 FISICA.G06 CALCULO; CONTEO.G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › G06F 12/00 Acceso, direccionamiento o asignación en sistemas o arquitecturas de memoria (entrada digital a partir de, o salida digital hacia soportes de registro, p. ej. hacia unidades de almacenamiento de disco G06F 3/06). › Protección contra la utilización no autorizada de la memoria.

PDF original: ES-2388217_T3.pdf

 

Procedimiento para codificar información dentro de los archivos de directorio en una tarjeta inteligente de circuito integrado.

Fragmento de la descripción:

Procedimiento para codificar información dentro de los archivos de directorio en una tarjeta inteligente de circuito integrado.

Campo de la invención

La presente invención se refiere a un procedimiento perfeccionado de codificación de datos en una tarjeta de circuito integrado (CI) y, más particularmente, a un procedimiento perfeccionado de codificación de datos en los archivos de directorio contenidos en una tarjeta inteligente de circuito integrado (CI) compatible con la norma PKCS15, tal como el definido en el preámbulo de la reivindicación 1, y a una tarjeta inteligente, tal como la definida en el preámbulo de la reivindicación 8.

Antecedentes de la invención

La tecnología de tarjeta inteligente (SC) permite el almacenamiento de información segura dentro de una tarjeta de circuito integrado. La información segura se almacena en un formato que exige claves y certificados de software para propósitos de autenticación a fin de recuperar la información. Una norma de codificación, conocida como PKCS15, establece cómo se representan estas claves y certificados en términos de archivos y directorios de tarjeta inteligente. El formato controla de forma segura el acceso externo a los archivos y directorios de la tarjeta inteligente durante el proceso de codificación de la información o de lectura de información de la tarjeta inteligente.

El formato compatible con PKCS15 para una tarjeta inteligente se documenta en la publicación "PKCS #15 v1.1: Cr y ptographic Token Information Syntax Standard", RSA Laboratories, 21 de diciembre de 1999. Cada tarjeta inteligente debe contener un archivo de directorio de objetos (ODF) . Este archivo contiene punteros a otros archivos de directorio; por ejemplo cuando se almacenan claves criptográficas algunos de los archivos presentes son los archivos de directorio de clave privada (PrKDF) , archivos de directorio de claves públicas (PuKDF) , archivos de directorio de claves secretas (SKDF) , archivos de directorio de certificados (CDF) y archivos de directorio de objetos de datos (DODF) .

El archivo de directorio de clave privada se considera un directorio de identificadores de clave privada conocidos por la aplicación PKCS 15, y habitualmente almacena una clave privada. La tarjeta inteligente que contiene claves privadas debe disponer de por lo menos un archivo PrKDF. En algunos casos, este archivo de directorio de clave privada contiene punteros de referencias cruzadas a objetos de autenticación utilizados para proteger el acceso a las claves residentes en cualquier lugar de la tarjeta. Si existen claves privadas correspondientes a las claves públicas también residentes en la tarjeta, las claves públicas se almacenan dentro de un archivo de directorio de claves públicas (PuKDF) . Entonces, las claves públicas y las claves privadas comparten el mismo identificador en la tarjeta.

Las tarjetas inteligentes que contienen claves secretas deben disponer de por lo menos un archivo de directorio de claves secretas (SKDF) . El SKDF contiene atributos de clave generales, tales como etiquetas e identificaciones. En algunos casos, el SKDF también contiene punteros de referencia cruzada a objetos de autenticación utilizados para proteger el acceso a las claves. El archivo de directorio de certificados (CDF) se considera como un directorio de certificados conocido por la aplicación PKCS15, y en cada tarjeta inteligente debería estar presente por lo menos un CDF. El CDF contiene certificados o referencias a certificados. El archivo de directorio de objetos de datos (DODF) se considera un directorio de objetos de datos distintos a las claves o los certificados. Las tarjetas inteligentes que contienen dichos objetos de datos deben disponer de por lo menos un archivo DODF. Estos archivos contienen atributos de objetos de datos generales, tales como identificadores de la aplicación a la cual pertenece el objeto de datos y también punteros a los propios objetos de datos.

Cada uno de los archivos de directorios (de clave privada, claves públicas, claves secretas, certificados u objetos de datos) ocupa una matriz permanente de memoria direccionable dentro de la tarjeta inteligente. En el procedimiento de codificación de la técnica anterior, las direcciones de los punteros se almacenan junto a una dirección inicial de memoria asignada al archivo del directorio de la tarjeta inteligente, y los datos de los punteros se almacenan en una dirección inicial de datos de puntero fija dentro de la memoria asignada al archivo del directorio de la tarjeta inteligente. Desgraciadamente, tras el proceso de codificación se obtienen dos bloques discontinuos de memoria no utilizada en el archivo de directorio, debido a la ubicación de la dirección inicial de datos de puntero.

La patente US nº 5.161.256 da a conocer una memoria de datos de una tarjeta CI constituida por un archivo de datos común utilizado para todas las aplicaciones, y una pluralidad de archivos de datos de aplicación utilizados independientemente para cada aplicación. Los archivos de datos comprenden una pluralidad de áreas. Se facilitan datos de identificación al archivo de datos y al área. Es posible prevenir la duplicación de definiciones verificando los datos de identificación. Si se utilizan datos distintos a los datos de identificación facilitados al archivo de datos común como datos de identificación para facilitar al archivo de datos de aplicación, el acceso a áreas del archivo de datos común y el archivo de datos de aplicación puede tener lugar conforme a los datos de mandato.

Considerando el objetivo anterior, el objeto de la presente invención es un procedimiento perfeccionado de codificación de información en la memoria permanente de una tarjeta inteligente. Este objeto se alcanza mediante las características del procedimiento según la reivindicación 1 y mediante las características de la tarjeta inteligente según la reivindicación 8.

En las reivindicaciones dependientes se describen otras características de la presente invención.

Por consiguiente, uno de los objetivos de la presente invención consiste en proporcionar un procedimiento perfeccionado de codificación de información en los archivos de directorio de una tarjeta inteligente, de tal forma que se disponga de un único bloque de memoria no utilizada en el archivo de directorio de la tarjeta inteligente tras la codificación, permitiendo dicho procedimiento perfeccionado la compatibilidad descendente con la aplicación compatible con PKCS15.

Sumario de la invención

Según la presente invención, está previsto un procedimiento de codificación de información en la memoria permanente de una tarjeta inteligente que comprende las etapas siguientes:

proporcionar un archivo de directorio que presenta una dirección inicial y una dirección final en la memoria permanente de la tarjeta inteligente;

proporcionar un objeto de datos para su almacenamiento en la tarjeta inteligente;

almacenar el objeto de datos entre la dirección inicial y la dirección final en por lo menos una última ubicación de memoria disponible del archivo de directorio, hallándose dicha última ubicación de memoria disponible más próxima a la dirección inicial del archivo de directorio que el objeto de datos almacenado previamente y

almacenar un puntero de datos entre la dirección inicial y la dirección final en por lo menos una primera ubicación de memoria disponible más próxima a la dirección inicial, indicando el puntero de datos la ubicación del objeto de datos,

en el que se dispone de un bloque continuo de memoria para el almacenamiento de un puntero de datos y los objetos de datos entre el último puntero de datos almacenado y la ubicación del objeto de datos indicada por el último puntero de datos almacenado.

Según otro aspecto de la presente invención, está previsto un procedimiento de codificación de información en la memoria permanente de una tarjeta inteligente, que comprende las etapas siguientes:

proporcionar un archivo de directorio que presenta una dirección inicial y una dirección final en la memoria permanente de la tarjeta inteligente;

proporcionar un objeto de datos para su almacenamiento en la tarjeta inteligente;

almacenar el objeto de datos entre la dirección inicial y la dirección final en por lo menos una última ubicación de memoria disponible próxima a la última ubicación de memoria disponible del archivo de directorio, hallándose... [Seguir leyendo]

 


Reivindicaciones:

1. Procedimiento de codificación de información en la memoria permanente de una tarjeta inteligente que comprende las etapas siguientes:

proporcionar un archivo de directorio (25) que presenta una dirección inicial (28) y una dirección final (29) dentro de la memoria permanente de la tarjeta inteligente, soportando la tarjeta inteligente la recuperación de los objetos de datos según la norma PKCS15;

proporcionar un objeto de datos (27) para su almacenamiento en el interior de la tarjeta inteligente;

almacenar el objeto de datos (27) entre la dirección inicial y la dirección final en por lo menos una última ubicación de memoria disponible en el interior del archivo de directorio, encontrándose la última ubicación de memoria disponible más próxima a la dirección inicial del archivo de directorio que un objeto de datos almacenado previamente,

caracterizado porque:

el objeto de datos se escribe secuencialmente en la memoria empezando desde una dirección superior del objeto de datos almacenado previamente hasta una dirección inferior más próxima a la dirección inicial; y

almacenar un puntero de datos (26) entre la dirección inicial y la dirección final en por lo menos la más próxima primera ubicación de memoria disponible a la dirección inicial, resultando el puntero de datos indicativo de una ubicación de objeto de datos, escribiéndose el puntero de datos secuencialmente en la memoria empezando en la proximidad de la dirección inicial (28) y avanzando hacia la dirección final (29) de una manera opuesta a la del objeto de datos,

en el que puede disponerse de un bloque continuo (32) de memoria para el almacenamiento en el mismo de punteros de datos y objetos de datos entre un último puntero de datos almacenado y la ubicación del objeto de datos indicada por el último puntero de datos almacenado.

2. Procedimiento según la reivindicación 1, que comprende las etapas siguientes:

almacenar el objeto de datos (27) entre la dirección inicial y la dirección final en por lo menos una ubicación de memoria disponible próxima a la última ubicación de memoria disponible en el interior del archivo de directorio, encontrándose la última ubicación de memoria disponible más próxima a una dirección inicial del archivo de directorio que un objeto de datos almacenado previamente; y

almacenar el puntero de datos (26) entre la dirección inicial y la dirección final en por lo menos una ubicación de memoria disponible próxima a la dirección inicial, resultando el puntero de datos indicativo de una ubicación de un objeto de datos.

3. Procedimiento según la reivindicación 1 o 2, en el que la aplicación del procedimiento da como resultado un bloque continuo (32) de memoria disponible entre el último puntero de datos almacenado y la ubicación de objeto de datos indicada por el último puntero de datos almacenado.

4. Procedimiento según cualquiera de las reivindicaciones 1 y 3, en el que el puntero de datos (26) comprende una dirección es determinada sustrayendo el tamaño del objeto de datos de la última dirección de ubicación de memoria disponible.

5. Procedimiento según cualquiera de las reivindicaciones 1 y 4, en el que la última dirección de ubicación de memoria disponible es determinada como la dirección en el interior del último puntero de datos menos una ubicación de dirección.

6. Procedimiento según cualquiera de las reivindicaciones 1 y 2, en el que la dirección inicial de la memoria es inferior a la dirección final de la memoria.

7. Procedimiento según cualquiera de las reivindicaciones 1 y 2, en el que la dirección inicial de la memoria es superior a la dirección final de la memoria y en el que el sentido de avance en la memoria es desde los valores de dirección superiores hacia los valores de dirección inferiores.

8. Tarjeta inteligente que comprende:

un archivo de directorio (25) que presenta una dirección inicial (28) y una dirección final (29) dentro de la memoria permanente de la tarjeta inteligente, soportando la tarjeta inteligente la recuperación de los objetos de datos según la norma PKCS15;

un objeto de datos (27) almacenado en el interior del archivo de directorio entre la dirección inicial y la dirección final; un puntero de datos (26) asociado al objeto de datos almacenado en el interior del archivo de directorio y entre la dirección inicial y la dirección final;

caracterizada porque:

el objeto de datos se escribe secuencialmente en la memoria empezando desde una dirección superior de un objeto de datos almacenado previamente hasta una dirección inferior más próxima a la dirección inicial; el puntero de datos se escribe secuencialmente en la memoria empezando en la proximidad de la dirección inicial

(28) y avanzando hacia la dirección final (29) de una manera opuesta a la del objeto de datos; y

presenta un bloque continuo (32) de memoria disponible entre un último puntero de datos almacenado y la ubicación de objeto de datos indicada por el último puntero de datos almacenado, sirviendo el bloque continuo de memoria disponible para almacenar en la misma los punteros de datos y los objetos de datos.

9. Tarjeta inteligente según la reivindicación 8, en la que:

el objeto de datos (27) es almacenado en por lo menos una última ubicación de memoria disponible en el interior del archivo de directorio; y

el puntero de datos asociado (26) es almacenado en por lo menos la más próxima primera ubicación de memoria disponible a la dirección inicial y entre la dirección inicial (28) y la dirección final (29) .

10. Tarjeta inteligente según la reivindicación 8, en la que:

una pluralidad de objetos de datos (27) se almacena en un bloque de memoria contiguo que comprende por lo menos una última ubicación de memoria disponible en el interior del archivo de directorio; y

una pluralidad de punteros de datos asociados (26) se almacena en un bloque de memoria contiguo que comprende por lo menos la más próxima primera ubicación de memoria disponible a la dirección inicial y entre la dirección inicial y la dirección final.

11. Tarjeta inteligente según la reivindicación 8, en la que:

una pluralidad de objetos de datos (27) se almacena en un bloque de memoria contiguo que comprende una ubicación de memoria próxima a la última ubicación de memoria disponible en el interior del archivo de directorio; y

una pluralidad de punteros de datos asociados (26) se almacena en un bloque de memoria contiguo que comprende una ubicación de memoria próxima a por lo menos la más próxima primera ubicación de memoria disponible a la dirección inicial y entre la dirección inicial y la dirección final.


 

Patentes similares o relacionadas:

Arquitectura e instrucciones flexibles para el estándar de cifrado avanzado (AES), del 27 de Mayo de 2020, de INTEL CORPORATION: Un procesador que comprende: una pluralidad de núcleos; una caché de instrucciones de nivel 1, L1, para almacenar una pluralidad de instrucciones […]

Procedimiento de control sistemático de direcciones de zonas de memoria en el marco de una transferencia por acceso directo, del 1 de Abril de 2020, de THALES: Procedimiento de control sistemático por un dispositivo de control de al menos un mensaje de configuración de transferencia, siendo el mensaje de configuración […]

Servidor de seguridad de soporte lógico, del 19 de Febrero de 2020, de Idemia Identity & Security France: Procedimiento de verificación de ejecución de applets (AA1, AB1) desarrolladas en un lenguaje orientado objeto y compiladas en código intermedio, siendo el procedimiento […]

Múltiples conjuntos de campos de atributos dentro de una única entrada de tabla de páginas, del 25 de Septiembre de 2019, de QUALCOMM INCORPORATED: Un procedimiento que comprende: traducir , por una primera unidad de procesamiento , una dirección de memoria virtual a una […]

Procedimiento para proteger datos relevantes para la seguridad en una memoria caché, del 14 de Agosto de 2019, de SIEMENS AKTIENGESELLSCHAFT: Procedimiento para proteger datos relevantes para la seguridad en una memoria caché, archivándose una copia de los datos relevantes para la seguridad […]

Archivo seguro, del 7 de Agosto de 2019, de Waterfall Security Solutions Ltd: Aparato de almacenamiento, que comprende: una memoria ; un procesador de encriptado , que está configurado para recibir y encriptar datos transmitidos desde uno […]

Sistemas y métodos para proporcionar como salida un resultado de una instrucción de procesador vigente tras su salida de una máquina virtual, del 3 de Abril de 2019, de Bitdefender IPR Management Ltd: Un sistema anfitrión que comprende al menos un procesador hardware configurado para ejecutar una máquina virtual y un programa de seguridad informática, en donde el al menos […]

Sistema y método para la gestión distribuida de ordenadores compartidos, del 20 de Febrero de 2019, de Zhigu Holdings Limited: Método para operar una arquitectura de gestión informática de múltiples niveles, teniendo dicho método los siguientes pasos: operar un ordenador […]

Utilizamos cookies para mejorar nuestros servicios y mostrarle publicidad relevante. Si continua navegando, consideramos que acepta su uso. Puede obtener más información aquí. .