Procedimiento de firma.

Procedimiento para securizar la integridad de los datos de un software para un aparato de control de un vehículo automóvil

, en el que se puede almacenar en una memoria del aparato de control un software que influye en el funcionamiento del aparato de control, caracterizado por los pasos de habilitar un par de claves para el cifrado y descifrado de datos electrónicos,

archivar una primera clave en o para un aparato de control del vehículo automóvil,

firmar con la segunda clave un software que se quiere cargar,

cargar el software firmado en la memoria del aparato de control,

comprobar la firma del software por medio de la clave archivada en o para el aparato de control y aceptar el software cargado cuando la comprobación se desarrolle con un resultado positivo,

añadir al software al menos una información individual de un vehículo que contiene el aparato de control, firmar el software juntamente con la al menos una información individual del vehículo,

por que, aparte de la comprobación de la firma del software, se comprueba también la información individual del vehículo, por que se acepta el software en el aparato de control solamente cuando la información individual de vehículo del software coincide con la del vehículo, y

por que la firma depende de la información individual del vehículo contenida en el software.

Tipo: Patente Europea. Resumen de patente/invención. Número de Solicitud: E01101343.

Solicitante: BAYERISCHE MOTOREN WERKE AKTIENGESELLSCHAFT.

Nacionalidad solicitante: Alemania.

Dirección: PETUELRING 130 80809 MÜNCHEN ALEMANIA.

Inventor/es: SCHMIDT, ERNST, KUHLS, BURKHARD.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones, aparatos, circuitos o sistemas no... > H04L29/06 (caracterizadas por un protocolo)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones para las comunicaciones secretas o... > H04L9/32 (comprendiendo medios para verificar la identidad o la autorización de un utilizador del sistema)
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Acceso, direccionamiento o asignación en sistemas... > G06F12/14 (Protección contra la utilización no autorizada de la memoria)
  • SECCION G — FISICA > CONTROL; REGULACION > SISTEMAS DE CONTROL O DE REGULACION EN GENERAL; ELEMENTOS... > Sistemas de control por programa (aplicaciones específicas,... > G05B19/042 (que utilizan procesadores digitales (G05B 19/05 tiene prioridad))
  • SECCION G — FISICA > ENSEÑANZA; CRIPTOGRAFIA; PRESENTACION; PUBLICIDAD;... > APARATOS DE CIFRAR O DESCIFRAR PARA LA CRIPTOGRAFIA... > G09C1/00 (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))
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Disposiciones de seguridad para la protección de... > G06F21/57 (Certificados o mantenimiento de plataformas informáticas de confianza, p. ej.: recuperación de seguridad o power-downs, controles, control de versión del software del sistema, actualizaciones de seguridad o valoración de vulnerabilidades)
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Disposiciones de seguridad para la protección de... > G06F21/73 (mediante la creación o la determinación de identificación de hardware, p. ej.: números de serie)
  • SECCION G — FISICA > COMPUTO; CALCULO; CONTEO > TRATAMIENTO DE DATOS DIGITALES ELECTRICOS (computadores... > Disposiciones de seguridad para la protección de... > G06F21/44 (Programa o dispositivo de autenticación)

PDF original: ES-2530229_T3.pdf

 

google+ twitter facebook

Fragmento de la descripción:

Procedimiento de firma.

La invención concierne a un procedimiento para securizar la integridad de los datos de un software para un aparato de control de un vehículo automóvil.

Con la proporción creciente de la electrónica y las posibilidades de comunicación en y con un vehículo crecen también los requisitos que tienen que imponerse a la seguridad.

En las muy diferentes zonas del vehículo se utilizan microcontroladores de mando. Estos aparatos de control están unidos hoy en día frecuentemente uno con otro a través de un sistema de bus y existen generalmente posibilidades (por ejemplo enlace de diagnosis) para acceder desde fuera a este bus y para comunicarse con los distintos aparatos de control.

El funcionamiento de los aparatos de control viene determinado por programas de software. Hasta ahora, el software que se utiliza en un aparato de control (también: controlador) está archivado casi siempre en una memoria no programable (por ejemplo, en microprocesadores programados con máscara). Por tanto, no se puede realizar sin ciertas dificultades una manipulación del software. Por ejemplo, se puede reconocer el cambio completo de un módulo de memoria por otro módulo de memoria y reaccionar a este cambio de una manera correspondiente.

Sin embargo, debido a la utilización futura, en el vehículo, de aparatos de control programables, especialmente los llamados aparatos de control programables flash, se hace mayor el peligro de que se realicen manipulaciones no autorizadas en el software y, por tanto, en el funcionamiento de los aparatos de control. Así, el cambio de software por parte de personas no autorizadas podría llevarse a cabo de manera sencilla mediante una nueva programación con poco coste.

Sin embargo, por motivos de seguridad y para cumplir con los requisitos legales se tienen que adoptar medidas que impidan una variación del software original o autoricen esta variación solamente a personas autorizadas.

Por lo demás, en el futuro se podría manifestar como ventajoso perseguir un concepto de piezas ¡guales, en el que se emplea un mismo hardware en modelos diferentes. La diferencia en el funcionamiento reside entonces solamente en el software. En este concepto existe ciertamente la necesidad de que un determinado software solamente pueda ejecutarse en un vehículo individual y no pueda ser copiado de una manera sencilla.

Se conocen por el estado de la técnica un gran número de procedimientos y dispositivos de autentificación.

Así, en el documento US 5,844,986 se describe un procedimiento que se emplea para evitar una intervención no permitida en un sistema BIOS de un PC. Un coprocesador criptográfico, que contiene una memoria BIOS, realiza una autentificación y comprobación de una variación BIOS basándose en un llamado procedimiento de clave pública con una clave pública y una clave secreta. La comprobación se efectúa en este caso mediante una comprobación de una firma digital incrustada en el software que se quiere cargar.

Se conoce por el documento EP 0 816 970 un dispositivo para comprobar un software de empresa. Este dispositivo para autentificar una memoria PROM de arranque comprende una parte de memoria con un microcódigo. Un sector de autentificación comprende un generador hash que genera datos hash en respuesta a la ejecución del microcódigo.

El documento EP-A-0 939 012 propone un procedimiento para verificar la coherencia de informaciones que se cargan, a través de un aparato de carga remota, en un ordenador para controlar el funcionamiento de un equipo funcional de un automóvil. En este caso, el ordenador calcula una palabra de validación en base a las informaciones y compara la palabra de validación con una palabra de validación correspondiente almacenada en el ordenador de manera inaccesible para el aparato de carga remota. Para la verificación, el ordenador comprueba si la palabra de validación calculada por el ordenador coincide con la palabra de validación almacenada en el ordenador.

Sin embargo, con los procedimientos o dispositivos anteriores no es posible realizar directamente la comprobación de un software que se quiera cargar en un aparato de control de un vehículo automóvil.

El problema de la presente invención consiste en proporcionar un procedimiento para securizar la carga de un software auténtico en un aparato de control de un vehículo automóvil.

El problema se resuelve con las características de la reivindicación 1.

Según ésta, se genera primeramente un par de claves para el cifrado y descifrado de datos electrónicos. Por claves se entienden aquí en general parámetros de codificación y/o descodificación que son conocidos por algoritmos criptográficos en sí conocidos.

En el presente caso, el software es provisto de una firma (signatura) electrónica por medio de la primera clave. Para verificar la autenticidad del software se ha archivado una segunda clave correspondiente en o para el aparato de control en el cual deberá cargarse este software. Con esta segunda clave se puede comprobar la firma electrónica del software. Si la comprobación se desarrolla positivamente, se acepta entonces el software y éste puede ser aprovechado para controlar el aparato de control.

Como cifrado puede emplearse según una primera forma de realización un llamado procedimiento simétrico en el que ambas claves son idénticas. Por tanto, se trata aquí realmente de una sola clave que se emplea en sitios diferentes. Sin embargo, dado que tiene que contarse siempre con posibilidades de que se conozca una clave archivada en un aparato de control, el nivel de seguridad de un procedimiento simétrico no es óptimo. Por tanto, este procedimiento puede utilizarse únicamente cuando no están afectados procesos demasiados críticos para la seguridad. Para aumentar el nivel de seguridad se puede emplear una protección contra disparo adicional en forma de un hardware especial.

Según otra forma de realización preferida, se elige un procedimiento de cifrado asimétrico con una clave secreta y una clave pública. En este caso, la clave pública puede estar archivada en o para el aparato de control. Con la clave secreta se firmaría entonces el software. Como alternativa, el aparato de control o el propio vehículo puede generar también el par de claves asincrono y archivar luego la clave secreta en el aparato de control. La clave pública tendría que ser entonces legible de modo que se pueda firmar con ella un software. Naturalmente, en la última alternativa habría que asegurarse de que la clave secreta no sea legible.

Los algoritmos de cifrado con una clave secreta y una clave pública consisten en un llamado procedimiento de clave pública en el que la clave pública deberá ser públicamente conocida, mientras que la clave secreta es conocida solamente por un sitio autorizado, por ejemplo un centro de confianza. Tales algoritmos criptográficos son, por ejemplo, el algoritmo de Rivest, Shamir y Adleman (algoritmo RSA), un algoritmo de encriptado de datos (algoritmo DEA) y algoritmos similares. Con la clave secreta o la clave pública se puede generar - análogamente a la firma manuscrita - una firma digital para un documento electrónico. Solamente el propietario de la clave secreta o pública puede confeccionar una firma válida. La autenticidad del documento puede comprobarse después mediante la verificación de la firma por medio de la clave pública o secreta correspondiente. La clave secreta se denomina a veces también clave privada.

Un tercero no autorizado que no conozca la clave correcta no está en condiciones de proveer una firma válida. Si se carga entonces en un aparato de control un software manipulado y no firmado correctamente, esto es reconocido con la clave correspondiente y el aparato de control... [Seguir leyendo]

 


Reivindicaciones:

1. Procedimiento para securizar la integridad de los datos de un software para un aparato de control de un vehículo automóvil, en el que se puede almacenar en una memoria del aparato de control un software que influye en el funcionamiento del aparato de control, caracterizado por los pasos de

habilitar un par de claves para el cifrado y descifrado de datos electrónicos,

archivar una primera clave en o para un aparato de control del vehículo automóvil,

firmar con la segunda clave un software que se quiere cargar,

cargar el software firmado en la memoria del aparato de control,

comprobar la firma del software por medio de la clave archivada en o para el aparato de control y aceptar el software cargado cuando la comprobación se desarrolle con un resultado positivo,

añadir al software al menos una información individual de un vehículo que contiene el aparato de control, firmar el software juntamente con la al menos una información individual del vehículo,

por que, aparte de la comprobación de la firma del software, se comprueba también la información individual del vehículo, por que se acepta el software en el aparato de control solamente cuando la información individual de vehículo del software coincide con la del vehículo, y

por que la firma depende de la información individual del vehículo contenida en el software.

2. Procedimiento según la reivindicación 1, caracterizado por que se emplea un par de claves asimétrico en el que ambas clases son iguales.

3. Procedimiento según la reivindicación 1, caracterizado por que se emplea un par de claves asimétrico con una clave secreta y una clave pública.

4. Procedimiento según la reivindicación 3, caracterizado por que la clave pública está archivada en o para el aparato de control y se firma el software con la clave secreta.

5. Procedimiento según la reivindicación 3, caracterizado por que el vehículo, especialmente el o un aparato de control del vehículo, genera un par de claves síncrono, por que se archiva la clave secreta en el vehículo, especialmente en un aparato de control, y por que se puede extraer del vehículo la clave pública para firmar un software.

6. Procedimiento según cualquiera de las reivindicaciones anteriores, caracterizado por que la clave archivada en el aparato de control se archiva en el sector de arranque de un ordenador.

7. Procedimiento según la reivindicación 6, caracterizado por que el sector de la rutina de arranque se bloquea después de la inscripción y el ingreso de la clave y está así protegido contra un acceso adicional, especialmente un acceso de inscripción.

8. Procedimiento según cualquiera de las reivindicaciones anteriores, caracterizado por que se reproduce primeramente el software sobre una información de longitud determinada y se firma luego esta información.

9. Procedimiento según la reivindicación 8, caracterizado por que se elige como función de reproducción una función hash.

10. Procedimiento según la reivindicación 1, caracterizado porque se genera un par de claves propio (par de claves individual del vehículo) para comprobar la información individual del vehículo, estando presentes en una unidad de seguridad del vehículo la información individual del vehículo y una primera clave del par de claves propio, estando archivada también en el software, junto a la información individual del vehículo, la segunda clave del par de claves propio y comprobándose en una rutina separada en el vehículo si coinciden las dos claves del par de claves propio, para aceptar, en caso afirmativo, el software cargado.

11. Procedimiento según cualquiera de las reivindicaciones anteriores, caracterizado por que se comprueba el software al menos durante la primera activación del aparato de control y se le marca entonces de manera correspondiente.

12. Procedimiento según cualquiera de las reivindicaciones anteriores, caracterizado por que, en caso de un acceso externo al aparato de control, una unidad de acceso comprueba si existe una autorización para el acceso.

13. Procedimiento según la reivindicación 12, caracterizado por que se solicita un código a un aparato de control y se comprueba la naturaleza correcta de este código.

14. Procedimiento según la reivindicación 12 ó 13, caracterizado por que un aparato de control emite un número aleatorio que ha de ser firmado por el accedente, y por que se comprueba la firma en el aparato de control,

especialmente por medio de una clave de autentificación.

15. Procedimiento según cualquiera de las reivindicaciones 12 a 14, caracterizado por que, al consultar la autorización de acceso, se verifica un nivel de autorización y se aceptan o no se aceptan acciones de acceso en función del nivel de autorización.

16. Procedimiento según cualquiera de las reivindicaciones anteriores, caracterizado por que un equipo de 10 seguridad realiza en un vehículo al menos esporádicamente una comprobación de autentificación de un aparato de

control y registra el aparato de control en caso de resultado negativo.

17. Procedimiento según la reivindicación 16, caracterizado por que en el aparato de control está archivado un código secreto individual de dicho aparato de control.

18. Procedimiento según la reivindicación 16 o 17, caracterizado por que el equipo de seguridad consulta una 15 característica específica del aparato de control y comprueba la autenticidad de ésta.

19. Procedimiento según cualquiera de las reivindicaciones 16 a 18, caracterizado por que se emplea en la comprobación de autenticidad una clave archivada en el equipo de seguridad y/o una clave archivada en el aparato de control.