Método de transferencia segura de datos.
Método para comparar datos fuente registrados en una memoria fuente (NV_MEM) de una tarjeta inteligente condatos transferidos (COPY_ELT_X_V_MEM) copiados desde la memoria fuente (NV_MEM) en una memoriadenominada de destino (V_MEM) de esta tarjeta inteligente,
en el cual se lee en la memoria fuente (NV_MEM) unvalor de integridad (PI_ELT_X) asociado a un elemento fuente (ELEMENT_X_NV_MEM) tal como un archivo quecontiene los datos fuente,
caracterizado porque:
se calcula la integridad de un elemento reconstituido correspondiente al elemento fuente (ELEMENT_X_NV_MEM),siendo reconstituido este elemento a partir de los datos transferidos (COPY_ELT_X_V_MEM) completados en sucaso por los datos del elemento fuente (ELEMENT_X_NV_MEM) distintos a los datos transferidos si los datostransferidos (COPY_ELT_X_V_MEM) corresponden solamente a una parte de los datos que constituyen el elementofuente (ELEMENT_X_NV_MEM) y porque se decide que los datos transferidos (COPY_ELT_X_V_MEM) sonidénticos a los datos fuente cuando el cálculo de integridad da un valor idéntico al valor de integridad del elementofuente (PI_ELT_X).
Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/FR2009/000014.
Solicitante: MORPHO.
Nacionalidad solicitante: Francia.
Dirección: 11 Boulevard Galliéni 92130 Issy Les Moulineaux FRANCIA.
Inventor/es: DECROIX,DAVID, PEPIN,CYRILLE, ROUDIERE,GUILLAUME.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G06F21/55 FISICA. › G06 CALCULO; CONTEO. › G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › G06F 21/00 Disposiciones de seguridad para la protección de computadores, sus componentes, programas o datos contra actividades no autorizadas. › La detección de intrusiones locales o la aplicación de contramedidas.
PDF original: ES-2429766_T3.pdf
Fragmento de la descripción:
Método de transferencia segura de datos La invención concierne al aseguramiento de la transferencia de datos entre varios componentes de una tarjeta inteligente.
Antecedentes de la invención El chip de una tarjeta inteligente contiene típicamente un procesador o microcontrolador así como una memoria volátil tal como una memoria RAM, y una memoria no volátil tal como una memoria Flash, EEPROM o también ROM.
La ejecución de una operación por un software de la tarjeta inteligente necesita numerosos intercambios de datos desde la memoria no volátil hacia la memoria volátil del chip. Así, cualquier explotación de datos registrados en la memoria no volátil requiere una transferencia hacia la memoria volátil.
Éste es el caso durante la lectura de un archivo que puede contener especialmente datos ligados a un código secreto a fin de compararle con un valor facilitado en entrada, y durante la lectura de una clave para efectuar un cálculo criptográfico.
Éste es igualmente el caso durante la lectura de una tabla estática de constantes registrada en una memoria ROM, que contenga por ejemplo datos representativos de los derechos de acceso a los archivos registrados en la tarjeta.
Esta fase de transferencia, que está asegurada por un bus de datos del chip, es sensible a perturbaciones de orden electromagnético. Existe así un procedimiento de fraude consistente en someter a la tarjeta a una fuente de radiación electromagnética durante la transferencia de datos, lo que permite al defraudador acceder a datos que normalmente le deben permanecer ocultos.
Estas perturbaciones provocan por ejemplo una modificación de los datos durante la transferencia, en cuyo caso, los datos cargados en la memoria volátil difieren de los datos fuente de la memoria no volátil.
Esta sensibilidad permite potencialmente recuperar fraudulentamente una clave o un código secreto de la tarjeta, eludir los derechos de acceso a los archivos contenidos en la tarjeta, y/o modificar parámetros de configuración de la tarjeta.
Esta es la razón por la cual están previstas medidas para detectar estas modificaciones a fin de impedir la ejecución de una operación cuando se haya detectado una modificación de este tipo.
Un método consiste en verificar después de la transferencia que los datos transferidos son idénticos a los datos fuente. Estos datos pueden ser una parte o la totalidad de un elemento, es decir una parte o la totalidad de los datos que constituyen uno o varios archivos.
Concretamente, después de la transferencia se verifica que cada octeto del elemento inscrito en la memoria volátil es idéntico a cada octeto del elemento fuente, lo que corresponde a una operación de tipo lectura y verificación.
Este método conocido sigue siendo a pesar de todo ineficaz frente a ciertos ataques. Si un atacante sabe perturbar la transferencia, para modificar los datos copiados en la memoria no volátil, y si sabe reproducir esta misma perturbación durante la operación de lectura y verificación, la modificación no puede ser detectada.
En efecto, en este caso, la operación de lectura y verificación no detecta anomalía puesto que ésta verifica únicamente que los datos perturbados durante la copia lo han sido igualmente durante la lectura que precede a la verificación.
El documento EP-1772811-A2 divulga la transferencia de datos entre un anfitrión y una memoria RAM de una tarjeta inteligente, siendo transferidos los datos a través de una memoria tampón de esta tarjeta inteligente. Un control de integridad de los datos transferidos es realizado por medio de un código de control de tipo CRC.
El documento FR-2888960 divulga un método de detección de una falta por perturbación larga durante la transmisión de datos desde o hacia una tarjeta inteligente por medio de una suma de control correspondiente a los datos transmitidos.
Objeto de la invención El objetivo de la invención es proponer una solución para poner remedio a estos inconvenientes anteriores, proponiendo un método que ofrezca un mejor nivel de aseguramiento de la transferencia de datos entre los componentes del chip.
Resumen de la invención A tal efecto, la invención tiene por objeto un método para comparar datos fuente registrados en una memoria fuente con datos transferidos copiados desde la memoria fuente en una memoria denominada de destino, en el cual se lee en la memoria fuente un valor de integridad asociado a un elemento fuente tal como un archivo que contenga los datos fuente, en el cual se calcula la integridad de un elemento reconstituido correspondiente al elemento fuente, siendo reconstituido este elemento a partir de los datos transferidos completados en su caso por los datos del elemento fuente distintos a los datos transferidos, y en el cual se decide que los datos transferidos son idénticos a los datos fuente cuando el cálculo de integridad dé un valor idéntico al valor de integridad del elemento fuente.
Durante la copia, los datos fuente son los que transitan por el bus de datos, pero durante la verificación, el valor de integridad es el que transita por el bus de datos. Así pues, los valores que transitan por el bus no son los mismos durante la copia y durante la verificación, de modo que un ataque consistente en aplicar la bus de datos las mismas perturbaciones durante la copia y durante la verificación es completamente ineficaz.
La invención concierne igualmente a un método tal como el definido anteriormente, en el cual el valor de integridad asociado al elemento que contiene los datos fuente y el valor de integridad calculado para el elemento reconstituido son valores de control cíclico de redundancia de los datos.
La invención concierne igualmente a un método tal como el definido anteriormente, en el cual se copia desde la memoria no volátil hacia la memoria volátil, un valor de referencia distinto a los datos que hay que transferir, estando este valor de referencia por una parte prerregistrado en la memoria no volátil y por otra prerregistrado en un software de lectura de la tarjeta inteligente, y en el cual se compara el valor transferido a la memoria volátil con el valor registrado en el software de lectura para determinar si los datos transferidos son idénticos a los datos fuente.
La invención concierne igualmente a un método tal como el definido anteriormente, en el cual la copia del valor predeterminado es efectuada durante la copia de los datos fuente.
Breve descripción de las figuras
- La figura 1 es una representación esquemática de un elemento fuente registrado en una memoria fuente no volátil;
- La figura 2 es una representación esquemática de la transferencia de una parte de los datos del elemento fuente de la figura 1 hacia una memoria volátil.
Descripción detallada de la invención La idea de base de la invención es proceder después de la transferencia a un cálculo de integridad de los datos transferidos, de manera que se detecte si ha tenido lugar una modificación durante la transferencia cuando el valor dado por el cálculo de integridad basado en los datos transferidos no corresponde al valor de integridad asociado a los datos fuente.
El método se aplica al caso de la transferencia de una parte o de la totalidad de los datos de un elemento cuyo valor de integridad está registrado en la memoria fuente.
El valor de integridad es por ejemplo una suma de control de los datos del elemento considerado que generalmente es un archivo. Este valor de integridad puede ser una integridad del tipo LRC, es decir “Longitudinal Redundancy Check” que significa control de paridad cruzado, o bien una integridad de tipo hash.
Este valor de integridad es ventajosamente un valor de CRC, es decir de control cíclico de redundancia que es una prueba de integridad específicamente prevista para la detección de los errores de transmisión de datos. Podrá tratarse de un valor de CRC16 correspondiente a un control cíclico de redundancia sobre 16 indicadores binarios.
En el ejemplo que sigue, el método comprende tres etapas para transferir datos de un elemento fuente presente en la memoria no volátil, representado esquemáticamente en la figura 1, estando indicado en ésta por “ELEMENT_X_NV_MEM, y para verificar que los datos transferidos son idénticos a los datos fuente.
El valor de integridad PI_ELT_X de cualquier elemento ELEMENT_X_NV_MEM ha sido registrado previamente en la memoria no volátil, habiendo sido efectuado éste previamente por ejemplo cuando este elemento ha sido escrito en la memoria no volátil NV_MEM.
Como está representado esquemáticamente en la figura 2, una parte o la totalidad de los datos de este elemento... [Seguir leyendo]
Reivindicaciones:
1. Método para comparar datos fuente registrados en una memoria fuente (NV_MEM) de una tarjeta inteligente con datos transferidos (COPY_ELT_X_V_MEM) copiados desde la memoria fuente (NV_MEM) en una memoria denominada de destino (V_MEM) de esta tarjeta inteligente, en el cual se lee en la memoria fuente (NV_MEM) un valor de integridad (PI_ELT_X) asociado a un elemento fuente (ELEMENT_X_NV_MEM) tal como un archivo que contiene los datos fuente,
caracterizado porque:
se calcula la integridad de un elemento reconstituido correspondiente al elemento fuente (ELEMENT_X_NV_MEM) , siendo reconstituido este elemento a partir de los datos transferidos (COPY_ELT_X_V_MEM) completados en su caso por los datos del elemento fuente (ELEMENT_X_NV_MEM) distintos a los datos transferidos si los datos transferidos (COPY_ELT_X_V_MEM) corresponden solamente a una parte de los datos que constituyen el elemento fuente (ELEMENT_X_NV_MEM) y porque se decide que los datos transferidos (COPY_ELT_X_V_MEM) son idénticos a los datos fuente cuando el cálculo de integridad da un valor idéntico al valor de integridad del elemento fuente (PI_ELT_X) .
2. Método de acuerdo con la reivindicación 1, en el cual el valor de integridad (PI_ELT_X) del elemento que contiene los datos fuente y el valor de integridad calculado para el elemento reconstituido son valores de control cíclico de redundancia de los datos.
3. Método de acuerdo con las reivindicaciones 1 o 2, en el cual se copia desde la memoria fuente (NV_MEM) hacia la memoria de destino (V_MEM) , un valor de referencia (VR_NV_MEM) distinto a los datos que hay que transferir, estando este valor de referencia por una parte prerregistrado en la memoria fuente (NV_MEM) y por otra prerregistrado en un software de lectura de la tarjeta inteligente, y en el cual se compara el valor transferido (VR_V_MEM) en la memoria de destino (V_MEM) con el valor registrado en el software de lectura para determinar si los datos transferidos (COPY-ELT_X_V_MEM) son idénticos a los datos fuente.
4. Método de acuerdo con la reivindicación 3, en el cual la copia del valor predeterminado es efectuada durante la copia de los datos fuente.
Patentes similares o relacionadas:
Método y aparato de procesamiento de servicio, del 3 de Junio de 2020, de Advanced New Technologies Co., Ltd: Un método para el procesamiento de servicios, el método que comprende: después de recibir una solicitud de procesamiento de servicios de un usuario, […]
Método y aparato para reconocer el comportamiento de riesgo, del 8 de Abril de 2020, de Alibaba Group Holding Limited: Un método para identificar comportamientos de riesgo dentro de una red informática, el método que comprende: adquirir datos de comportamiento del usuario, […]
Sistemas y métodos para rastrear comportamiento malicioso a través de múltiples entidades de software, del 25 de Marzo de 2020, de Bitdefender IPR Management Ltd: Un sistema de servidor que comprende al menos un procesador de hardware y una unidad de memoria, configurado el al menos un procesador de hardware para ejecutar un gestor […]
Sistemas y métodos de seguridad informática que utilizan excepciones de introspección asíncronas, del 18 de Marzo de 2020, de Bitdefender IPR Management Ltd: Sistema anfitrión que comprende un procesador de hardware y una memoria, estando configurado el procesador de hardware para ejecutar una entidad objetivo, un analizador de […]
Sistema y método para proporcionar un nodo de almacenamiento seguro conectado a la red aérea, del 18 de Marzo de 2020, de THE BOEING COMPANY: Un sistema de almacenamiento conectado a la red, que comprende: al menos un medio de almacenamiento extraíble, el al menos un medio de […]
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étodo, aparato y sistema para detectar condiciones de seguridad de un terminal, del 5 de Febrero de 2020, de HUAWEI TECHNOLOGIES CO., LTD.: Un aparato para detectar un estado de seguridad del terminal, en donde el aparato está ubicado en una unión entre una red privada y una red pública, […]
Detección y alerta de ataques cibernéticos a redes centradas en recursos, del 29 de Enero de 2020, de Palantir Technologies, Inc: Un sistema informático configurado para generar una alerta relacionada con un ataque cibernético contra un recurso, comprendiendo el sistema informático: […]