PROCEDIMIENTO DE SECURIZACIÓN DE UN PROGRAMA INFORMÁTICO, DISPOSITIVO, PROCEDIMIENTO DE ACTUALIZACIÓN Y SERVIDOR DE ACTUALIZACIÓN CORRESPONDIENTES.

Procedimiento de securización en la utilización de un programa informático principal (11) que pilota al menos un dispositivo (D1,

..., Dn) que recibe y entrega datos, habiendo sido objeto dicho programa principal (11) de una fase de control durante la cual ha sido sometido a una serie de estímulos con el fin de detectar una eventual anomalía, y hallándose en fase de producción, poniendo en práctica dicho procedimiento un programa informático secundario de control (12), diferente de dicho programa principal (11) y apto para entregar los mismos datos de salida (30) que al menos una porción, llamada porción crítica, de dicho programa principal (11), en presencia de datos de entrada (20) idénticos, comprendiendo dicho procedimiento las siguientes etapas, al menos cuando se activa una de dichas porciones críticas de dicho programa principal (11): - ejecución (102) de dicha porción crítica, que entrega primeros datos de salida (31) en función de datos de entrada (20); - ejecución (104) de dicho programa de control (12), que entrega segundos datos de salida (32) en función de dichos datos de entrada (20); - comparación (106) de dichos datos de salida primeros y segundos (31, 32) y generación (108) de una información de anomalía (35), si dichos datos de salida primeros y segundos (31, 32) son diferentes, correspondiendo dichos datos de entrada (20) a un estímulo atípico, no tratado durante dicha fase de prueba, etapas: caracterizado porque el procedimiento comprende además las siguientes - transmisión (110) de dicha información de anomalía (35) a un servidor (S) remoto, con vistas a un análisis y a una corrección diferida de dicho programa principal (11); - prosecución de dicho programa principal (11), de manera transparente para un usuario, en función de dichos primeros datos de salida (31) y pese a la detección de dicha anomalía

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

Solicitante: COMPAGNIE INDUSTRIELLE ET FINANCIERE D'INGENIERIE INGENICO.

Nacionalidad solicitante: Francia.

Dirección: 92 192 AVENUE CHARLES DE GAULLE 92200 NEUILLY SUR SEINE FRANCIA.

Inventor/es: NACCACHE, DAVID.

Fecha de Publicación: .

Fecha Solicitud PCT: 3 de Febrero de 2009.

Fecha Concesión Europea: 28 de Julio de 2010.

Clasificación Internacional de Patentes:

  • G06F11/00C1
  • G06F11/14S2
  • G06F11/14T

Clasificación PCT:

  • G06F11/00 FISICA.G06 CALCULO; CONTEO.G06F PROCESAMIENTO ELECTRICO DE DATOS DIGITALES (sistemas de computadores basados en modelos de cálculo específicos G06N). › Detección de errores; Corrección de errores; Monitorización (detección, corrección o monitorización de errores en el almacenamiento de información basado en el movimiento relativo entre el soporte de registro y el transductor G11B 20/18; monitorización, es decir, supervisión del progreso del registro o reproducción G11B 27/36; en memorias estáticas G11C 29/00).
  • G06F11/14 G06F […] › G06F 11/00 Detección de errores; Corrección de errores; Monitorización (detección, corrección o monitorización de errores en el almacenamiento de información basado en el movimiento relativo entre el soporte de registro y el transductor G11B 20/18; monitorización, es decir, supervisión del progreso del registro o reproducción G11B 27/36; en memorias estáticas G11C 29/00). › Detección o corrección de errores en los datos por redundancia en las operaciones, p. ej. mediante la utilización de diversas secuencias de operaciones que conduzcan al mismo resultado (G06F 11/16 tiene prioridad).

Países PCT: Austria, Bélgica, Suiza, Alemania, Dinamarca, España, Francia, Reino Unido, Grecia, Italia, Liechtensein, Luxemburgo, Países Bajos, Suecia, Mónaco, Portugal, Irlanda, Eslovenia, Finlandia, Rumania, Chipre, Lituania, Letonia, Ex República Yugoslava de Macedonia, Albania.

PROCEDIMIENTO DE SECURIZACIÓN DE UN PROGRAMA INFORMÁTICO, DISPOSITIVO, PROCEDIMIENTO DE ACTUALIZACIÓN Y SERVIDOR DE ACTUALIZACIÓN CORRESPONDIENTES.

Fragmento de la descripción:

1. Campo de la invención

El campo de la invención es la securización de los programas informáticos. La invención se refiere más en particular al control permanente de los programas informáticos y a la detección de los errores o anomalías en estos programas informáticos. 5

La invención encuentra especial aplicación en los programas informáticos para aplicaciones críticas, por ejemplo en sistemas seguros de pago mediante tarjetas bancarias, en medios de transporte tales como aviones, como también en emplazamientos industriales tales como centrales nucleares.

2. Técnica anterior 10

Son ya conocidas técnicas de prueba que permiten comprobar un programa informático (o equipo lógico) y poner de manifiesto los eventuales errores o anomalías de funcionamiento (llamados «errores de programa» en español y «bugs» en inglés). A tal efecto, el documento FR2893431 describe la sucesiva utilización de dos tareas de soporte lógico independientes. 15

Generalmente se aplica un conjunto de muestras de datos de entrada que a priori son representativas del uso que se hará del programa y se comprueba que los datos salientes son conformes a los datos esperados por las especificaciones. Una vez terminado el período de prueba del programa informático, el programa informático es «puesto en producción» (instalado, difundido o comercializado) y puede por 20 ejemplo pilotar un dispositivo en el que está integrado.

La presencia de errores de programa en programas informáticos críticos puede tener repercusiones lamentables o graves para el (los) dispositivo(s) que pilotan/verifican. Así, son críticos los programas informáticos utilizados en aplicaciones que necesitan una gran precisión y/o una fuerte seguridad, por ejemplo en los 25 sistemas de transporte (pilotaje de los aviones, señalización ferroviaria, equipo lógico embarcado de automóviles), la producción de energía (control de las centrales nucleares), la salud (aparatos médicos), el ámbito financiero (pago electrónico) o las aplicaciones militares.

Las precauciones que se han de tomar en el desarrollo de un programa 30 informático crítico de este tipo las define generalmente el ordenante, o están fijadas por una norma, cuyas elevadas exigencias dictan probar el programa informático en un gran número de configuraciones con el fin de tender hacia un funcionamiento sin brecha del programa informático crítico. Así, durante el período de prueba del programa informático crítico, se intenta aumentar al máximo el control del programa 35

informático enviándole el máximo de diferentes secuencias o estímulos posibles. El documento US6629267 describe la utilización de un servidor remoto para actualizar el programa principal que pilota un dispositivo que ha detectado una anomalía.

3. Inconvenientes de la técnica anterior

Sin embargo, es imposible someter a pruebas exhaustivas un programa 5 informático, y en particular un programa informático crítico, en la medida en que el período de prueba a menudo es un compromiso entre el tiempo y la completitud. Además, estas pruebas pueden no cubrir por ejemplo usos atípicos o difícilmente previsibles, o evoluciones de determinados aspectos a lo largo del tiempo. Se entiende que generalmente no es posible cubrir todas las posibilidades y que, cuanto más 10 exhaustiva es la fase de prueba, más larga será, lo que retarda en su tanto la efectiva puesta en práctica del programa.

4. Objetivos de la invención

La invención tiene como objetivo principal subsanar estos inconvenientes de la técnica anterior. 15

Más precisamente, es un objetivo de la invención mejorar la seguridad de los programas, y en particular de los programas críticos.

Es otro objetivo de la invención permitir reducir la duración de la fase de prueba, sin reducir considerablemente la seguridad del programa.

La invención también tiene como objetivo detectar una eventual anomalía de 20 una manera que sea simple de poner en práctica.

Es otro objetivo de la invención permitir una reacción rápida y eficaz en caso de que se detecte una anomalía en programas de este tipo.

5. Resumen de la invención

Estos objetivos, al igual que otros que posteriormente se harán manifiestos, se 25 logran con la ayuda de un procedimiento de securización en la utilización de un programa informático principal que pilota al menos un dispositivo que recibe y entrega datos.

De acuerdo con la invención, este procedimiento pone en práctica un programa informático secundario de control, diferente de dicho programa principal y apto para 30 entregar los mismos datos de salida que al menos una porción, llamada porción crítica, de dicho programa principal, en presencia de datos de entrada idénticos.

Un procedimiento de securización de este tipo según la invención queda definido por la reivindicación 1.

La invención permite así someter a prueba de manera permanente y sin 35

bloqueo un programa, particularmente un programa principal que se utiliza para una aplicación crítica, incluso después de su fase de prueba. Para tal fin, la invención pone en práctica un programa de control (prueba) en paralelo con el programa principal, al menos para las porciones críticas de este programa principal. Esta puesta en práctica se efectúa durante la fase de «producción» del programa principal, es decir, cuando 5 por ejemplo el programa principal pilota efectivamente un dispositivo que recibe y entrega datos, tal como por ejemplo un terminal de pago electrónico.

La ejecución en paralelo del programa principal y del programa de control permite la detección de anomalía(s) (error de programa) en el programa principal en cualquier momento en la fase de producción. Así, se puede detectar en todo momento 10 la presencia de una anomalía, cuando los datos salientes de los dos programas son diferentes para los mismos datos entrantes. En caso de discrepancia entre estos datos de salida, se genera una información de anomalía y luego se transmite hacia un servidor remoto sin interrumpir el programa principal.

Dicho de otro modo, la invención permite la comprobación con carácter 15 permanente de un programa principal y la detección de errores de programa, no sólo durante el período de prueba del programa principal, sino también durante el período de producción del programa principal.

La invención es además eficaz, puesto que la comprobación del programa principal está basada en datos de entrada «reales» que pueden no haber sido 20 contemplados en el momento del período de prueba del programa principal porque corresponden, por ejemplo, a un uso atípico. La invención permite por tanto securizar de manera permanente y continua la utilización de un programa informático sin bloquear su ejecución.

La transmisión de información de anomalías hacia un servidor remoto permite 25 señalizar de manera rápida y eficaz eventuales anomalías y, ventajosamente, aportar al programa principal, de manera diferida, los parches necesarios (que se pueden difundir hacia un parque de máquinas, si el mismo programa está puesto en práctica en todas estas máquinas, y no sólo hacia aquélla que ha señalizado la anomalía).

En una forma de realización particular de la invención, la etapa de transmisión 30 comprende la transmisión de un informe que contiene un conjunto de información relativa a dicha anomalía, entre ella dichos datos de entrada y dichos datos de salida, destinado a permitir la identificación del origen de la anomalía y su corrección.

Ello permite determinar más rápidamente el origen de la anomalía y la corrección necesaria. 35

De acuerdo con una forma de realización ventajosa, el procedimiento comprende una etapa de recepción de información de corrección de dicho programa principal, transmitida por dicho servidor.

Así, la invención permite, como respuesta a la detección de una anomalía, la transmisión de información de corrección mediante un servidor remoto hacia el 5 dispositivo pilotado por el programa principal (y, en su caso, hacia otros dispositivos que utilicen este programa). Así, el dispositivo puede securizar la utilización del programa principal, sin que haya habido una larga interrupción de su funcionamiento.

El procedimiento puede comprender asimismo, complementaria o alternativamente,...

 


Reivindicaciones:

1. Procedimiento de securización en la utilización de un programa informático principal (11) que pilota al menos un dispositivo (D1,..., Dn) que recibe y entrega datos,

habiendo sido objeto dicho programa principal (11) de una fase de control 5 durante la cual ha sido sometido a una serie de estímulos con el fin de detectar una eventual anomalía, y hallándose en fase de producción,

poniendo en práctica dicho procedimiento un programa informático secundario de control (12), diferente de dicho programa principal (11) y apto para entregar los mismos datos de salida (30) que al menos una porción, llamada porción crítica, de 10 dicho programa principal (11), en presencia de datos de entrada (20) idénticos,

comprendiendo dicho procedimiento las siguientes etapas, al menos cuando se activa una de dichas porciones críticas de dicho programa principal (11):

- ejecución (102) de dicha porción crítica, que entrega primeros datos de salida (31) en función de datos de entrada (20); 15

- ejecución (104) de dicho programa de control (12), que entrega segundos datos de salida (32) en función de dichos datos de entrada (20);

- comparación (106) de dichos datos de salida primeros y segundos (31, 32) y generación (108) de una información de anomalía (35), si dichos datos de salida primeros y segundos (31, 32) son diferentes, correspondiendo dichos datos de entrada 20 (20) a un estímulo atípico, no tratado durante dicha fase de prueba,

caracterizado porque el procedimiento comprende además las siguientes etapas:

- transmisión (110) de dicha información de anomalía (35) a un servidor (S) remoto, con vistas a un análisis y a una corrección diferida de dicho programa 25 principal (11);

- prosecución de dicho programa principal (11), de manera transparente para un usuario, en función de dichos primeros datos de salida (31) y pese a la detección de dicha anomalía.

30

2. Procedimiento de securización según la reivindicación 1, caracterizado porque dicha etapa de transmisión (110) comprende la transmisión de un informe que contiene un conjunto de información relativa a dicha anomalía (35), entre ella dichos datos de entrada (20) y dichos datos de salida (31, 32), destinado a permitir la identificación del origen de la anomalía (35) y su corrección. 35

3. Procedimiento de securización según una cualquiera de las reivindicaciones 1 y 2, caracterizado porque comprende una etapa de recepción de información de corrección (40) de dicho programa principal (11), transmitida por dicho servidor (S).

5

4. Procedimiento de securización según una cualquiera de las reivindicaciones 1 a 3, caracterizado porque comprende una etapa de recepción de un mandato de interrupción o de modificación (41) de dicho programa principal (11), transmitido por dicho servidor (S).

10

5. Procedimiento de securización según una cualquiera de las reivindicaciones 1 a 4, caracterizado porque comprende una etapa de almacenamiento de un informe que contiene un conjunto de información relativa a dicha anomalía.

6. Dispositivo (D1,..., Dn) que comprende medios de tratamiento de datos, que 15 entrega unos datos de salida (30) en función de datos de entrada (20), comprendiendo dichos medios de tratamiento unos medios de puesta en práctica de un programa informático principal (11), habiendo sido objeto dicho programa principal (11) de una fase de control durante la cual ha sido sometido a una serie de estímulos con el fin de detectar una eventual anomalía, y hallándose en fase de producción, 20

y unos medios de puesta en práctica de un programa informático secundario de control (12), diferente de dicho programa principal (11) y apto para entregar los mismos datos de salida (30) que al menos una porción, llamada porción crítica, de dicho programa principal (11), en presencia de datos de entrada (20) idénticos,

poniendo en práctica dicho dispositivo (D1,..., Dn), al menos cuando se activa, 25 una de dichas porciones críticas de dicho programa principal (11):

- unos medios de ejecución de al menos una de dichas porciones críticas de dicho programa principal (11), que entregan primeros datos de salida (31) en función de datos de entrada (20);

- unos medios de ejecución de dicho programa de control (12), que 30 entregan segundos datos de salida (32) en función de dichos datos de entrada (20);

- unos medios de comparación (13) de dichos datos de salida primeros y segundos (31, 32) y de generación de una información de anomalía (35), si dichos datos de salida primeros y segundos (31, 32) son diferentes, correspondiendo dichos datos de entrada (20) a un estímulo atípico, no tratado durante dicha fase de prueba, 35

caracterizado porque comprende:

- medios de transmisión de dicha información de anomalía (35) a un servidor (S) remoto, con vistas a un análisis y a una corrección diferida de dicho programa principal (11);

y porque dichos medios de ejecución de dicho programa principal (11) 5 prosiguen su tratamiento, de manera transparente para un usuario, en función de dichos primeros datos de salida (31) y pese a la detección de dicha anomalía.

7. Dispositivo según la reivindicación 6, caracterizado porque pertenece al grupo que comprende: 10

- los terminales lectores de tarjetas inteligentes, en particular los terminales bancarios;

- los servidores de datos, en particular los servidores bancarios;

- los dispositivos de transacciones financieras o bursátiles;

- los dispositivos de control de aplicaciones médicas, en particular de 15 administración de medicamentos;

- los dispositivos de control de un motor;

- los dispositivos de señalización ferroviaria;

- los dispositivos de pilotaje de los aviones;

- los dispositivos embarcados de automóviles; 20

- los dispositivos de control de emplazamientos industriales, en particular de producción de energía (por ejemplo centrales nucleares);

- los dispositivos de telecomunicaciones;

- los dispositivos puestos en práctica en las aplicaciones militares.

25

8. Procedimiento de actualización, por un servidor remoto (S), de un programa principal (11) que pilota al menos un dispositivo (D1,..., Dn) que recibe y entrega datos, poniendo en práctica dicho dispositivo (D1,..., Dn) el procedimiento de securización de una cualquiera de las reivindicaciones 1 a 5,

caracterizado porque comprende las siguientes etapas, ejecutadas por el 30 servidor remoto:

- recepción de la información de anomalía (211), emitida por uno de dichos dispositivos (D1,..., Dn), cuando los primeros datos (31), entregados por el programa principal (11) en presencia de datos de entrada (20) particulares, difieren de los segundos datos de salida (32) entregados por el programa de control (12); 35

- análisis de dicha anomalía (214A) y realización de un parche (214B); y

- transmisión de dicho parche (216) hacia dicho dispositivo emisor de dicha información de anomalía.

9. Procedimiento de actualización según la reivindicación 8, caracterizado porque 5 dicho parche (40) es transmitido simultáneamente de dicho servidor remoto (S) a un conjunto de dispositivos (D1,..., Dn) que ponen en práctica dicho programa principal (11).

10. Servidor (S) de actualización de un programa principal (11) que pilota al menos 10 un dispositivo (D1,..., Dn) que recibe y entrega datos, poniendo en práctica dicho dispositivo el procedimiento de securización de una cualquiera de las reivindicaciones 1 a 5,

caracterizado porque dicho servidor (S) comprende:

- medios de recepción de la información de anomalía (35), emitida por 15 uno de dichos dispositivos (D1,..., Dn), cuando los primeros datos (31), entregados por el programa principal (11) en presencia de datos de entrada (20) particulares, difieren de los segundos datos de salida (32) entregados por el programa de control (12);

- medios de análisis de dicha anomalía (35) y de realización de un parche (40); y 20

- medios de transmisión de dicho parche (40) a dicho dispositivo (D1,..., Dn) emisor de dicha información de anomalía.


 

Patentes similares o relacionadas:

Imagen de 'SISTEMA DE CONTROL TOLERANTE A FALLOS'SISTEMA DE CONTROL TOLERANTE A FALLOS, del 6 de Noviembre de 2009, de SAAB AB: Un sistema de procesamiento de datos tolerante a fallos para controlar un proceso en tiempo real, siendo dicho sistema tolerante a fallos sistemáticos producidos […]

Procedimiento de parada de emergencia y sistema de seguridad asociado, del 20 de Mayo de 2020, de CLEARSY: Procedimiento de parada de emergencia de un elemento de seguridad de un conjunto de seguridad , comprendiendo el conjunto de seguridad […]

Procedimiento y aparato para la eliminación y la adición de CPU en caliente durante el funcionamiento, del 25 de Marzo de 2020, de HUAWEI TECHNOLOGIES CO., LTD.: Un procedimiento de eliminación de unidades centrales de procesamiento CPU en caliente, donde el procedimiento se puede aplicar a un único servidor con una primera […]

Sistemas críticos de seguridad ferroviaria con redundancia de tareas y capacidad de comunicaciones asimétricas, del 22 de Enero de 2020, de Siemens Mobility, Inc: Sistema de control para un sistema de aplicación crítico de seguridad ferroviaria, que comprende: al menos un controlador, que comprende un procesador […]

Método, aparato, y sistema para determinar y ejecutar en una red inalámbrica una política de distribución de datos, del 8 de Enero de 2020, de HUAWEI TECHNOLOGIES CO., LTD.: Un método de procesamiento de datos de comunicación, que comprende: adquirir , por un aparato de procesamiento, una política de distribución de datos desde […]

Procedimiento, sistema, terminal y servidor de gestión de dispositivos para instalar componentes de software, del 27 de Noviembre de 2019, de HUAWEI TECHNOLOGIES CO., LTD.: Un procedimiento para instalar componentes de software, que comprende: recibir , mediante un terminal, un paquete de componentes de software suministrado directamente […]

Reconfiguración parcial de componentes de aceleración, del 24 de Julio de 2019, de Microsoft Technology Licensing, LLC: Un método para reconfigurar parcialmente un componente de aceleración de hardware programado con un rol y una interfaz de red, […]

Seguimiento de cambios usando redundancia en tiempo lógico, del 4 de Junio de 2019, de Microsoft Technology Licensing, LLC: Un método para mantener el seguimiento de cambios entre porciones unitarias de un sistema de almacenaje, comprendiendo el método: […]

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í. .