Procedimiento de ejecución de un protocolo criptográfico entre dos entidades electrónicas.
Procedimiento de elaboración de un protocolo criptográfico entre una primera entidad electrónica (A) y unasegunda entidad electrónica (B) susceptible de ataque,
según el cual se elabora un mensaje cualquiera (M), a partirdel cual es efectuada una cadena de operaciones por dicha segunda entidad, desembocando en la elaboración deun mensaje resultante o respuesta (R), siendo comparada dicha respuesta con el resultado de otro tratamientosemejante aplicado al mensaje y efectuado por dicha primera entidad, caracterizado porque, al menos en ciertasetapas de dicha cadena de operaciones, dicha segunda entidad efectúa, ya sea una operación de un tipo elegido(O1, O2, O3...On), ya sea la misma operación complementada (O 1, O 2, O 3,... O n), dependiendo la elección de unadecisión aleatoria, y porque dicha respuesta está constituida por el resultado de la última operación (O n) de dichacadena, eventualmente complementada.
Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E01400228.
Solicitante: OBERTHUR TECHNOLOGIES.
Nacionalidad solicitante: Francia.
Dirección: 50 QUAI MICHELET 92300 LEVALLOIS-PERRET FRANCIA.
Inventor/es: AKKAR,MEHDI-LAURENT, DISCHAMP,PAUL.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G06F7/00 FISICA. › G06 CALCULO; CONTEO. › G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › Métodos o disposiciones para el procesamiento de datos actuando sobre el orden o el contenido de los datos tratados (circuitos lógicos H03K 19/00).
- G06K19/073 G06 […] › G06K RECONOCIMIENTO DE DATOS; PRESENTACION DE DATOS; SOPORTES DE REGISTROS; MANIPULACION DE SOPORTES DE REGISTROS (impresión per se B41J). › G06K 19/00 Soportes de registro para utilización con máquinas y con al menos una parte prevista para soportar marcas digitales. › Disposiciones particulares para los circuitos, p. ej. para proteger el código de identificación en la memoria (protección contra la utilización no autorizada de la memoria de un computador G06F 12/14).
- G09C1/00 G […] › G09 ENSEÑANZA; CRIPTOGRAFIA; PRESENTACION; PUBLICIDAD; PRECINTOS. › G09C APARATOS DE CIFRAR O DESCIFRAR PARA LA CRIPTOGRAFIA U OTROS FINES QUE IMPLICAN LA NECESIDAD DEL SECRETO. › Aparatos o métodos por medio de los cuales una sucesión dada de signos, p. ej. un texto inteligible, se transforma en una sucesión de signos ininteligibles transponiendo los signos o grupos de signos o remplazándolos por otros según un sistema preestablecido (máquinas de escribir criptográficas G09C 3/00).
- H04L9/06 ELECTRICIDAD. › H04 TECNICA DE LAS COMUNICACIONES ELECTRICAS. › H04L TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION TELEGRAFICA (disposiciones comunes a las comunicaciones telegráficas y telefónicas H04M). › H04L 9/00 Disposiciones para las comunicaciones secretas o protegidas. › utilizando el aparato de cifrado registros de desplazamiento o memorias para la codificación por bloques, p. ej. sistema DES.
- H04L9/28 H04L 9/00 […] › utilizando un algoritmo de cifrado especial.
PDF original: ES-2421724_T3.pdf
Fragmento de la descripción:
Procedimiento de ejecución de un protocolo criptográfico entre dos entidades electrónicas La invención se refiere a un procedimiento de ejecución de un protocolo criptográfico entre dos entidades electrónicas, siendo una de ellas por ejemplo, pero no exclusivamente, una tarjeta de microprocesador. La invención se refiere más particularmente a un perfeccionamiento de dicho protocolo para prevenir los “ataques”, es decir los intentos de fraude basados en el análisis del material en funcionamiento, particularmente por el sesgo de medidas del consumo de corriente durante la ejecución de tal protocolo criptográfico provocado por un estafador.
Se sabe que ciertas entidades electrónicas encriptadas, particularmente las tarjetas de microcircuitos, son vulnerables a ciertos ataques basados en el análisis de ciertos parámetros durante una fase de funcionamiento. Se dice que las informaciones pueden “escaparse” a partir de un cálculo hecho en la tarjeta, típicamente la ejecución de un protocolo criptográfico provocado por el estafador en posesión de la tarjeta. Los parámetros analizados durante la ejecución de tal protocolo pueden ser, típicamente, diferencias de tiempo de cálculo o radiaciones electromagnéticas durante la ejecución del cálculo pero sobre todo el consumo de corriente de la entidad electrónica de la cual se busca forzar el código.
Así, el ataque clásico consiste en hacer ejecutar, por la entidad electrónica que cae en posesión del estafador, un cierto número de protocoles criptográficos basados en unos mensajes cualquiera, destinados por lo tanto al fracaso, pero que tienen por consecuencia hacer ejecutar cada vez, por la entidad (la tarjeta de microcircuito) , una cadena de operaciones conocida con la abreviatura DES (Data Encr y ption Standard) analizando a la vez el consumo de corriente en cada ejecución de dicho DES. El objeto de este ataque es encontrar la clave secreta de dicha entidad. El DES es, por su parte, un algoritmo bien conocido, muy ampliamente utilizado actualmente en el campo de las tarjetas bancarias o en de las tarjetas de control de acceso.
A título de ejemplo, en el marco de una autentificación normal entre una entidad A, por ejemplo un servidor, y una entidad B, por ejemplo una tarjeta de microcircuito en el que el DES se encuentra programado, los intercambios de informaciones entre las dos entidades son los siguientes:
- el servidor A solicita a la tarjeta B que envía un mensaje, suponiendo que A y B estén en posesión de la misma clave;
- B envía un mensaje cualquiera y lo guarda en la memoria;
- A aplica el DES al mensaje utilizando su clave y reenvía el resultado a la tarjeta B.
- Paralelamente, la tarjeta B aplica el DES al mensaje A haciendo uso de su propia clave. Esta obtiene un resultado que es comparado al que ha sido elaborado por el servidor A. Si los dos resultados son idénticos, la autentificación es validada.
Por otro lado, en el caso de un fraude, es decir en el caso de que el estafador disponga de la tarjeta y busque determinar la clave, puede conectar la tarjeta a un lector por el que podrá transmitirle mensajes y unirla a unos medios de registro del consumo de corriente durante la ejecución de las operaciones que efectúe.
A partir de estos medios simples, el estafador constituye un sistema F que conecta la tarjeta al sitio del servidor A.
El proceso es entonces el siguiente. F solicita un mensaje a la tarjeta exactamente como en el caso de iniciación de una autentificación. B envía este mensaje. F envía a B otro mensaje que representa supuestamente el resultado del tratamiento por el DES del mensaje enviado por B. Por supuesto, este mensaje es erróneo. No obstante, B hace intervenir su propia clave para ejecutar un DES con el fin de obtener un resultado, con el fin de compararlo con el mensaje (erróneo) enviado por F. El resultado de esta comparación es forzosamente negativo pero el estafador ha conseguido provocar la ejecución de un DES por B. Durante la ejecución de dicho DES, el consumo de corriente es detectado y memorizado.
Si F está en condiciones de hacer efectuar un cierto número de DES, en las mismas condiciones, por la tarjeta B, y memorizar cada vez los consumos de corriente, es posible poner en marcha un ataque cuyo principio es conocido. Este ataque llamado DPA (Differential Power Analysis) permite reconstituir la clave secreta de la entidad B.
El documento WO 99/63696 se refiere a oponerse a ataques de este tipo reduciendo las informaciones explotables susceptibles de “escaparse” durante la ejecución de algoritmos. Para hacer esto, sugiere particularmente introducir riesgos en los protocolos criptográficos con el fin de aumentar el número de ciclos necesarios para encontrar la clave secreta.
La patente neerlandesa NL1011800 C describe la protección de una clave secreta durante la ejecución de un procedimiento criptográfico en un circuito integrado. La ejecución del procedimiento criptográfico es una cadena de
operaciones. La protección es realizada porque la clave, los datos de entrada y/o los datos intermedios son enmascarados por datos aleatorios.
La invención propone una parada precisa a un ataque del género DPA por complementación aleatoria de ciertas operaciones del DES.
La invención se aplica particularmente a las entidades que utilizan los DES pero es aplicable también, como se verá más adelante, a otras entidades (tarjetas de microcircuitos) que utilizan algoritmos distintos al DES con tal de que estén constituidos por una sucesión de operaciones que poseen ciertas propiedades que serán explicitadas más adelante.
Más precisamente, la invención se refiere a un procedimiento de elaboración de un protocolo criptográfico entre una primera entidad electrónica y una segunda entidad electrónica susceptible de ataque, según el cual es elaborado un mensaje cualquiera, a partir del cual una cadena de operaciones es efectuada por dicha segunda entidad, dando como resultado la elaboración de un mensaje resultante o respuesta, siendo comparada dicha respuesta con el resultado de otro tratamiento parecido aplicado a dicho mensaje y efectuado por dicha primera entidad, caracterizado porque, al menos en ciertas etapas de dicha cadena de operaciones, dicha segunda entidad efectúa, ya sea una operación de un tipo elegido, ya sea la misma operación complementada, dependiendo la elección de una decisión aleatoria, y porque dicha respuesta está constituida por el resultado de la última operación de dicha cadena, eventualmente complementada.
La complementación puede ser realizada ya sea octeto por octeto, haciendo el O exclusivo del octeto corriente aleatoriamente con uno de los dos valores hexadecimales 00 y FF, ya sea bit a bit, tratando juntos los ocho bits consecutivos del octeto actual y haciendo el O exclusivo con un número elegido aleatoriamente, en cada octeto tratado, entre los 256 valores hexadecimales comprendidos entre 00 y FF.
Entre las operaciones susceptibles de ser complementadas, se puede citar la operación llamada de O exclusivo o incluso una operación de permutación de los bits del mensaje o de un resultado intermedio obtenido efectuando dicha cadena de operaciones, es decir, según el ejemplo descrito, después de la ejecución de una operación dada del DES. Se puede citar incluso la operación de acceso indexado en una tabla o cualquier operación estable en relación con la aplicación de la función O exclusivo, particularmente la operación que consiste en transferir el mensaje o un resultado intermedio precitado, de un emplazamiento a otro, desde un espacio de memorización.
Según un modo de realización posible, se definen en dicha segunda entidad dos cadenas de operaciones para el tratamiento de dicho mensaje, estando constituida una de las cadenas por una sucesión de operaciones dadas y estando constituida la otra cadena por una sucesión de las mismas operaciones complementadas y por una complementación final, y se decide de forma aleatoria ejecutar una de las dos cadenas de operaciones con cada recepción de un mensaje que proviene de dicha primera entidad.
Según otro modo de realización, actualmente juzgado preferible, el procedimiento consiste en utilizar dicho mensaje o un resultado intermedio resultante de la ejecución de una operación precedente de dicha cadena, para aplicarle una nueva operación de dicha cadena, o esta misma operación complementada, en función del estado de un parámetro aleatorio asociado a esta nueva operación, para poner al día un contador de complementaciones y para tener en cuenta el estado de este contador con el fin de la ejecución de dicha cadena de operaciones para decidir la configuración... [Seguir leyendo]
Reivindicaciones:
1. Procedimiento de elaboración de un protocolo criptográfico entre una primera entidad electrónica (A) y una segunda entidad electrónica (B) susceptible de ataque, según el cual se elabora un mensaje cualquiera (M) , a partir del cual es efectuada una cadena de operaciones por dicha segunda entidad, desembocando en la elaboración de un mensaje resultante o respuesta (R) , siendo comparada dicha respuesta con el resultado de otro tratamiento semejante aplicado al mensaje y efectuado por dicha primera entidad, caracterizado porque, al menos en ciertas etapas de dicha cadena de operaciones, dicha segunda entidad efectúa, ya sea una operación de un tipo elegido (O1, O2, O3…On) , ya sea la misma operación complementada ( O 1, O 2, O 3, … O n) , dependiendo la elección de una decisión aleatoria, y porque dicha respuesta está constituida por el resultado de la última operación ( O n) de dicha cadena, eventualmente complementada.
2. Procedimiento según la reivindicación 1, caracterizado porque una operación susceptible de ser complementada es la operación llamada de O exclusivo.
3. Procedimiento según la reivindicación 1 ó 2, caracterizado porque una operación susceptible de ser complementada es una operación de permutación de los bits de dicho mensaje o de un resultado intermedio obtenido efectuando dicha cadena de operaciones.
4. Procedimiento según una de las reivindicaciones 1 a 3, caracterizado porque una operación susceptible de ser complementada es una operación de acceso indexado a una tabla.
5. Procedimiento según una de las reivindicaciones 1 a 4, caracterizado porque una operación susceptible de ser complementada es una operación estable con respecto a la aplicación de la función O exclusivo.
6. Procedimiento según la reivindicación 5, caracterizado porque una operación susceptible de ser complementada es la transferencia de dicho mensaje o de un resultado intermedio obtenido efectuando una operación de dicha cadena, de un emplazamiento a otro de un espacio de memorización.
7. Procedimiento según una de las reivindicaciones precedentes, caracterizado porque consiste en utilizar dicho mensaje, o un resultado intermedio resultante de la ejecución de una operación precedente de dicha cadena, para aplicarle una nueva operación de dicha cadena, o esta misma operación complementada, en función del estado de un parámetro aleatorio (S’a) asociado a esta nueva operación, para poner al día un contador de complementaciones (Cc) y para tener en cuenta el estado de este contador al final de la ejecución de dicha cadena de operaciones para decidir la configuración final de dicha respuesta.
8. Procedimiento según una de las reivindicaciones 1 a 6, caracterizado porque consiste en utilizar dicho mensaje, o un resultado intermedio resultante de la ejecución de una operación precedente de dicha cadena, para aplicarle una nueva operación y para transmitir, de operación en operación, informaciones que forman parte de dichos resultados intermedios, necesarios para la configuración final de dicha respuesta.
9. Procedimiento según una de las reivindicaciones 1 a 6, caracterizado porque se definen en dicha segunda entidad dos cadenas de operaciones (CH1, CH2) para el tratamiento de dicho mensaje, estando constituida una de las cadenas por una sucesión de operaciones dada y estando constituida la otra cadena por una sucesión de las mismas operaciones complementadas y de una complementación final (C) , y porque se decide de forma aleatoria ejecutar una de las dos cadenas de operaciones en cada elaboración de un mensaje precitado.
10. Procedimiento según una de las reivindicaciones precedentes, caracterizado porque, mientras que se efectúa dicha serie de operaciones, se calcula la diferencia (d) entre el número de veces que las operaciones han sido efectuadas de forma normal y el número de veces que han sido efectuadas con complementación, y porque se suprime el riesgo (S’a) en la decisión de efectuar operaciones de forma normal o complementada, para ejecutar un cierto número de operaciones subsiguientes, cuando dicha diferencia sobrepasa un valor predeterminado en el modo (normal o complementario) menos utilizado hasta ahí, con vistas a reducir suficientemente dicha diferencia.
11. Procedimiento según una de las reivindicaciones precedentes, caracterizado porque la complementación se efectúa octeto por octeto.
12. Procedimiento según una de las reivindicaciones 1 a 10, caracterizado porque la complementación se efectúa bit a bit.
13. Procedimiento según una de las reivindicaciones precedentes, caracterizado porque, cuando varias operaciones consecutivas de dicha cadena son conmutativas, se permuta el orden de su ejecución, de forma aleatoria.
Patentes similares o relacionadas:
Sistema de sellado y método para instalar un sistema de sellado, del 3 de Junio de 2020, de THE EUROPEAN ATOMIC ENERGY COMMUNITY (EURATOM), REPRESENTED BY THE EUROPEAN COMMISSION: Sistema de sellado para contenedores nucleares, que sella una tapa de contenedor de un contenedor nuclear a un cuerpo de contenedor de dicho contenedor nuclear, dicho […]
Tarjeta de circuito integrado sin contacto con control digital, del 29 de Abril de 2020, de Smart Packing Solutions: Tarjeta de circuito integrado con funcionamiento sin contacto, destinada a comunicarse con un lector de tarjeta de circuito integrado que funciona a una frecuencia […]
Disco de soporte de registro conectado, del 1 de Enero de 2020, de MPO International: Disco de soporte de registro analógico que presenta por lo menos una primera cara que comprende por lo menos una capa de lectura y por […]
Pulsador de doble cara con función táctil, del 6 de Noviembre de 2019, de Khaled Asef, Mohammad: Pulsador , que comprende un primer contacto de conmutación y un segundo contacto de conmutación , que están dispuestos de manera […]
Disposición de recipiente que incluye un dispositivo de comunicación inalámbrica y método para operar el mismo, del 9 de Octubre de 2019, de NOVARTIS AG: Una disposición de recipiente , que comprende: un cuerpo de recipiente que comprende un interior para recibir materias sólidas o líquidos; […]
Método para autorizar una comunicación con un dispositivo electrónico portátil, tal como un acceso a un área de memoria, dispositivo y sistema electrónicos correspondientes, del 19 de Junio de 2019, de GEMALTO SA: Un método para permitir la comunicación con un dispositivo electrónico portátil y un dispositivo de comunicación externo , comprendiendo el dispositivo electrónico […]
Objeto portátil seguro, del 1 de Marzo de 2019, de GEMALTO SA: Un objeto portátil seguro del tipo de tarjeta inteligente que comprende (a) un cuerpo de objeto y (b) un micro-módulo que comprende un procesador y […]
Sistema de seguridad NFC y método para deshabilitar etiquetas no autorizadas, del 30 de Enero de 2019, de AVERY DENNISON CORPORATION: Una pantalla publicitaria que comprende un sistema de seguridad de NFC, que comprende, además: un controlador de seguridad del sistema de seguridad de NFC; […]