Procedimiento y dispositivo de protección de un microcircuito contra ataques.
Procedimiento de protección de un microcircuito contra un ataque,
que comprende:
- una etapa (205) de determinación de si se detecta un ataque,
- si se detecta un ataque, una etapa (210, 510) de realización de una función de protección;
caracterizado porque el procedimiento comprende además: 10
- si no se detecta ningún ataque, una etapa (215, 515) de realización de una función de señuelo que simula la función de protección para que sea perceptible, desde el exterior de dicho microcircuito, de manera sensiblemente idéntica a la función de protección.
Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E09169345.
Solicitante: OBERTHUR TECHNOLOGIES.
Nacionalidad solicitante: Francia.
Dirección: 50, QUAI MICHELET 92300 LEVALLOIS-PERRET FRANCIA.
Inventor/es: Chamley,Olivier, THIEBAULD DE LA CROUÉE,HUGUES.
Fecha de Publicación: .
Clasificación Internacional de Patentes:
- G06K19/073 FISICA. › G06 CALCULO; CONTEO. › 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).
PDF original: ES-2390638_T3.pdf
Fragmento de la descripción:
Procedimiento y dispositivo de protección de un microcircuito contra ataques
La presente invención se refiere a un procedimiento y a un dispositivo de protección de un microcircuito contra ataques. Se aplica, en particular, a la protección de tarjetas con chips contra los ataques con análisis del consumo eléctrico (“side channel attacks with power analysis”) .
El documento FR 2878633 A describe un procedimiento y dispositivo de ese tipo.
Para proteger los datos y los programas que éstos conservan, las tarjetas con microprocesador pueden implementar un banderín de destrucción (“kill-card flag”) . Cuando la tarjeta detecta un evento que considera que es un ataque, pone irreversiblemente este banderín en un valor dado y este banderín con este valor impide el funcionamiento posterior del microprocesador. Este banderín se conserva en la memoria no volátil y poner el banderín en el valor
dado implica efectuar una escritura en la memoria no volátil (mediante la ejecución de una función denominada “Killcard”) .
Unos ataques sofisticados se basan en el análisis de la ejecución con el fin de detectar la ejecución de una función de protección, o contramedida, lanzada por un microcircuito, con el fin de perturbar la ejecución de esta función de
protección mediante una acción física sobre el microcircuito (mediante perturbación de la frecuencia de reloj suministrada al microcircuito, mediante láser sobre una zona del circuito, etc.) o de impedir la ejecución de esta función de protección (mediante el corte de la alimentación al microcircuito, por ejemplo) . De ese modo, la detección de la ejecución de la función de protección es una condición previa a su perturbación o a su inhibición. Esto permite al atacante llevar adelante así su ataque convirtiendo en inoperativa a la función de protección o debilitándola.
Ciertos de estos ataques sofisticados utilizan unas técnicas de análisis de consumo para determinar el funcionamiento del microprocesador. En particular, las operaciones de escritura en memoria no volátil implican un consumo eléctrico muy superior a las operaciones aritméticas en memoria activa. El análisis del consumo utiliza de ese modo el hecho de que las diferentes operaciones consumen diferentes cantidades de electricidad. Estas
diferentes operaciones presentan de ese modo diferentes firmas en términos del consumo eléctrico. El hecho de que una operación de escritura en memoria no volátil sea muy distinta, porque es muy consumidora de electricidad, permite en el ataque evitar que el banderín tome efectivamente el valor dado que prohíbe la utilización posterior del microprocesador. Desde que la firma de esta escritura se detecta por el ataque, la alimentación del microprocesador se corta y la operación de escritura no se finaliza.
La presente invención viene a remediar estos inconvenientes.
Con este fin, de acuerdo con un primer aspecto, la presente invención presenta un procedimiento de protección del microcircuito contra un ataque, caracterizado porque comprende:
- una etapa de determinación de si se detecta un ataque,
- si se detecta un ataque, una etapa de realización de una función de protección, y
45. si no se detecta ningún ataque, una etapa de realización de una función de señuelo que simula la función de protección para que sea perceptible, desde el exterior de dicho microcircuito, de una forma sensiblemente idéntica a la función de protección.
De ese modo, un atacante no puede determinar si su ataque ha sido detectado percibiendo la realización de la
50 función de protección puesto que incluso si el ataque no ha sido detectado, la función de señuelo simula la realización de la función de protección.
Se observa que la simulación de la función de protección por la función de señuelo se ejecuta preferiblemente hasta un instante en el que ya no es posible para un atacante beneficiarse de la detección de la ejecución de la función de
55 protección para llevar adelante su ataque. De ese modo, preferiblemente, la función de señuelo tiene una duración superior o igual a la de la función de protección o a la tomada por la función de protección para impedir el funcionamiento normal del microcircuito, pudiendo ser perceptible la función de señuelo a continuación de esta duración sin que esto impida la protección del microcircuito.
60 Se observa que la magnitud física perceptible en el exterior del microcircuito y modulada por la función de protección y por la función de señuelo puede ser una radiación o un campo electromagnético, una resistencia, una capacidad, una inductancia, un voltaje, un amperaje o un consumo eléctrico, por ejemplo.
De acuerdo con las características particulares, a continuación de la etapa de determinación de si se ha detectado 65 un ataque, la función de protección no se ejecuta si la función de señuelo se ha ejecutado.
De acuerdo con las características particulares, la función de señuelo representa un consumo eléctrico sensiblemente idéntico al de la función de protección.
De ese modo, en el caso de que el consumo eléctrico provocado por la realización de la función de protección sea
perceptible desde el exterior del microcircuito, se prevé, en el curso del funcionamiento normal del microcircuito, realizar una función de señuelo que presente la misma firma, en términos de consumo eléctrico. El atacante no puede por lo tanto distinguir ya, en base al consumo eléctrico del microcircuito, la ejecución de la función de protección y el funcionamiento normal del microcircuito.
Como se ha mencionado más arriba, en el caso en que el atacante detenga la alimentación del microcircuito cada vez que se desencadena la función de señuelo, no puede analizar el funcionamiento del microcircuito. El ataque se convierte por lo tanto en ineficaz y el microcircuito se protege contra este tipo de ataque. Se observa que, en este tipo de ataque, si el atacante no corta la alimentación eléctrica cuando detecta el consumo eléctrico de la función de señuelo, con el fin de proseguir la observación del funcionamiento del microcircuito después de la realización de una
función de señuelo, dejará necesariamente que se ejecute la función de protección cuando su ataque haya sido detectado.
De acuerdo con unas características particulares, la función de protección es una función de colocación en fuera de servicio del microcircuito, preferiblemente mediante la escritura de un dato en la memoria no volátil. Por ejemplo, la función de protección es una función “Killcard” expuesta anteriormente.
De acuerdo con unas características particulares, la función de protección efectúa una etapa de escritura de un dato predeterminado en una primera dirección de una memoria no volátil.
De ese modo, previendo, en el funcionamiento normal del microcircuito, incluso en ausencia de detección de un ataque, la realización de la función de señuelo que presenta la misma firma en términos de consumo eléctrico que la función “Killcard”, se convierte el ataque en ineficaz.
De acuerdo con unas características particulares, la función de señuelo efectúa una etapa de escritura en memoria no volátil en una segunda dirección diferente de la primera dirección.
De acuerdo con unas características particulares, en el curso de la etapa de escritura en la segunda dirección por la función de señuelo, se escribe un mismo número de informaciones binarias que en el curso de la escritura en la primera dirección por la función de protección, y se pone en práctica el mismo algoritmo de escritura que durante la
escritura en la primera dirección por la función de protección.
De acuerdo con unas características particulares, en el curso de la etapa de escritura en la segunda dirección por la función de señuelo, se escribe dicho dato predeterminado en dicha segunda dirección.
De acuerdo con unas características particulares, en el curso de la etapa de realización de la función de señuelo, se efectúa una escritura en la memoria no volátil, en la primera dirección, de un dato diferente a dicho dato predeterminado.... [Seguir leyendo]
Reivindicaciones:
1. Procedimiento de protección de un microcircuito contra un ataque, que comprende:
- una etapa (205) de determinación de si se detecta un ataque,
- si se detecta un ataque, una etapa (210, 510) de realización de una función de protección;
caracterizado porque el procedimiento comprende además: 10
- si no se detecta ningún ataque, una etapa (215, 515) de realización de una función de señuelo que simula la función de protección para que sea perceptible, desde el exterior de dicho microcircuito, de manera sensiblemente idéntica a la función de protección.
2. Procedimiento de acuerdo con la reivindicación 1, caracterizado porque la función de señuelo presenta un consumo eléctrico sensiblemente idéntico al de la función de protección.
3. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 ó 2, caracterizado porque la función de
protección efectúa una etapa de escritura de un dato predeterminado en una primera dirección de una memoria no 20 volátil.
4. Procedimiento de acuerdo con la reivindicación 3, caracterizado porque la función de señuelo efectúa una etapa de escritura en memoria no volátil en una segunda dirección diferente de la primera dirección.
25 5. Procedimiento de acuerdo con la reivindicación 4, caracterizado porque, en el curso de la etapa de escritura en la segunda dirección por la función de señuelo, se escribe un mismo número de informaciones binarias que en el curso de la escritura en la primera dirección por la función de protección y se implementa el mismo algoritmo de escritura que durante la escritura en la primera dirección por la función de protección.
30 6. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 3 a 5, caracterizado porque dichas etapas de escritura en memoria no volátil implementan un algoritmo diferente al de las otras etapas de escritura en memoria no volátil efectuadas durante el funcionamiento normal del microcircuito.
7. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 3 a 6, caracterizado porque, en el curso de 35 al menos una parte de dichas etapas de escritura en memoria no volátil, no se implementa el dato de verificación.
8. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 3 a 7, caracterizado porque, en el curso de al menos una parte de dichas etapas de escritura en memoria no volátil, no se implementa la relectura del dato escrito.
9. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 3 a 8, caracterizado porque, en el curso de al menos una parte de dichas etapas de escritura en memoria no volátil, no se implementa el borrado de la zona de escritura (“erase”) .
45 10. Procedimiento de acuerdo con la reivindicación 9, caracterizado porque, si la rescritura de datos en la memoria no volátil es perceptible, desde el exterior de dicho microcircuito, de manera idéntica a la escritura inicial de dichos datos, la función de señuelo no incluye el borrado de la zona de escritura.
11. Procedimiento de acuerdo con la reivindicación 9, caracterizado porque la función de protección implementa 50 dicha etapa de borrado de la zona de escritura.
12. Procedimiento de acuerdo con la reivindicación 11, caracterizado porque una parte de las ejecuciones de la función de señuelo comprende dicha etapa de borrado de la zona de escritura.
55 13. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 a 12, caracterizado porque la función de protección efectúa una etapa de cifrado de al menos un dato sensible.
14. Procedimiento de acuerdo con una cualquiera de las reivindicaciones 1 a 13, caracterizado porque la función de
señuelo no tiene otra función más que la de simular la función de protección. 60
15. Dispositivo de protección de un microcircuito contra un ataque, que comprende:
• un medio (110, 120, 130, 150) de determinación de si se ha detectado un ataque, y
65 • un medio de control (110, 120, 130, 150) adaptado:
- si se detecta un ataque, para realizar una función de protección; estando dicho medio de control caracterizado porque está adaptado para:
- si no se detecta ningún ataque, realizar una función de señuelo que simula la función de protección que sea perceptible, desde el exterior de dicho microcircuito, de manera sensiblemente idéntica a la función de protección.
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; […]