ES2866885T3 - Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación - Google Patents

Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación Download PDF

Info

Publication number
ES2866885T3
ES2866885T3 ES17188718T ES17188718T ES2866885T3 ES 2866885 T3 ES2866885 T3 ES 2866885T3 ES 17188718 T ES17188718 T ES 17188718T ES 17188718 T ES17188718 T ES 17188718T ES 2866885 T3 ES2866885 T3 ES 2866885T3
Authority
ES
Spain
Prior art keywords
installation
component
data record
transaction data
transaction
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES17188718T
Other languages
English (en)
Inventor
Rainer Falk
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Application granted granted Critical
Publication of ES2866885T3 publication Critical patent/ES2866885T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3495Performance evaluation by tracing or monitoring for systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/12Detection or prevention of fraud
    • H04W12/128Anti-malware arrangements, e.g. protection against SMS fraud or mobile malware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

Sistema para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, que incluye (BCNF): - medios para proporcionar al menos un segundo miembro (512, 511) de una cadena de bloques (510), que incluye al menos un registro de datos de transacciones, que incluye un estado operativo vigilado de al menos un componente (NW) del aparato (I-oT) o de la instalación, - medios para concatenar el segundo miembro, de los que al menos hay uno, con un primer miembro (513) de la misma o de otra cadena de bloques, - medios para proporcionar una función de verificación, que verifica una transacción (T) a realizar, definida por el registro de datos de la transacción (410), de los que al menos hay uno, en cuanto a integridad y - medios para formar un registro de datos de transacción que tiene una medida asociada al estado operativo en función del resultado de la verificación aportado por la función de verificación, que incluye un valor para una confirmación o para un error y/o para una manipulación o para una ausencia de un registro de datos de transacción esperado, ejecutándose la transacción definida por el registro de datos de transacción mediante un componente (CPU) del aparato o de la instalación e iniciándose y/o ejecutándose la medida mediante el mismo o mediante otro componente (SE) o mediante una estación exterior al aparato (IoT) o a la instalación.

Description

DESCRIPCIÓN
Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación
La invención se refiere a un sistema y a un procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, así como a un correspondiente (producto de) programa informático.
Antecedentes
Los componentes de hardware y software de un aparato o de una instalación pueden funcionar mal o estar manipulados intencionadamente. Las funciones críticas deben entonces estar implementadas de manera fiable.
La seguridad de Internet de las Cosas (Internet of Things) y de aparatos (de campo) o también sistemas y/o aparatos embebidos, que se pueden utilizar en una instalación industrial, así como la evitación de ataques deliberados, juegan un papel cada vez más importante. Cuando la manipulación tiene éxito, pueden llegar a funcionar mal las funciones de control de los (componentes de) aparatos antes mencionados. Por lo tanto, también existe la necesidad de proteger la integridad de funciones de control, en particular para un funcionamiento autónomo o asistido y para un control de robots basado en la nube (Cloud Robotics) en el entorno de la Industria 4.0.
Mediante funciones de protección criptográfica pueden lograrse objetivos como la integridad, la confidencialidad o la autenticidad de la transmisión de datos de objetos. De esta manera se rechazan ataques deliberados, selectivos a la transmisión de datos.
El concepto "seguridad" se refiere esencialmente a la seguridad, confidencialidad y/o integridad de datos, así como a su transmisión y también a la seguridad, confidencialidad y/o integridad al acceder a los datos correspondientes. También la autentificación durante la transmisión de datos o al acceder a los datos pertenece, entre otras cosas, al concepto de "seguridad”. Bajo una funcionalidad criptográfica, se entiende en general por ejemplo una función para la codificación, para proteger la confidencialidad, para proteger la integridad y/o para autentificar datos (por ejemplo datos de usuario, datos de control, datos de configuración o datos administrativos) y/o para autentificar usuarios u objetos. La funcionalidad de protección criptográfica puede incluir entonces, por ejemplo, una o varias de las funcionalidades que se enumeran a continuación:
- Almacenamiento de claves
- autentificación del sistema y/o usuario
- atestación
- codificación
- decodificación
- cálculo de una suma de verificación criptográfica (por ejemplo, código de autentificación de mensajes o firma digital)
- comprobación de una suma de verificación criptográfica (por ejemplo, código de autentificación de mensajes o firma digital)
- acuerdo sobre claves
- generación de claves
- generación de números aleatorios (por ejemplo, generación de semillas, seeds)
- licenciamiento
- asistencia a funciones de vigilancia sistémicas (por ejemplo, protección tamper o contra manipulaciones, integridad del sistema, gestión de incidentes y eventos de seguridad SIEM, Security Incident and Event Management)
- vigilar o vigilancia de datos
- validación de datos
- filtrado de datos.
Las funcionalidades criptográficas enumeradas pueden estar realizadas entonces en cada caso a su vez con otros procedimientos o procedimientos adicionales o combinaciones de esos procedimientos.
Para vigilar un mal funcionamiento de componentes del sistema y/o de los aparatos, pueden utilizarse los llamados watchdogs (perros guardianes) https://de.wikipedia.org/wiki/Watchdog. Con ellos pueden detectarse por ejemplo bucles sin fin de tecnología de software y dado el caso se puede reiniciar automáticamente un aparato. Sin embargo, los watchdogs son más bien adecuados para detectar faltas aleatorias pero no para detectar una manipulación selectiva (seguridad). El documento US 2017/163733 A describe una cadena de bloques de auditoría para verificar aparatos IoT (Internet de las cosas) con datos de auditoría en la cadena de bloques.
Es por lo tanto un objetivo mejorar la integridad de sistemas (por ejemplo aparatos de campo, aparatos de control, PC industriales, servidores, máquina virtual, contenedores de software) como un objetivo de protección esencial. Debe evitarse, o al menos detectarse, un cambio (manipulación) inadmisible en un tal sistema eventualmente basado en software.
Es un objetivo de la presente invención proporcionar un procedimiento y un sistema y/o equipo y/o configuración que ofrezcan tal mejora.
El objetivo se logra mediante las características especificadas en las reivindicaciones independientes. En las reivindicaciones dependientes se presentan perfeccionamientos ventajosos de la invención
La invención reivindica un sistema (o equipo/configuración) para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, que incluye:
- medios para proporcionar al menos un segundo miembro (BCNF) de una cadena de bloques que incluye al menos un registro de datos de transacciones, que incluye un estado operativo vigilado de al menos un componente del aparato o de la instalación,
- medios para concatenar un segundo miembro, de los que al menos hay uno, con un primer miembro de la misma o de otra cadena de bloques,
- medios para proporcionar una función de verificación constituida con preferencia criptográficamente que verifica una transacción a realizar, definida por el registro de datos de la transacción, de los que al menos hay uno, en cuanto a integridad y/o admisibilidad y/o validez y
- medios para formar un registro de datos de transacción que tiene una medida asociada al estado operativo en función del resultado de la verificación aportado por la función de verificación, pudiendo ejecutarse la transacción definida por el registro de datos de transacción mediante un componente del aparato o de la instalación y pudiendo iniciarse y/o ejecutarse la medida mediante el mismo o mediante otro componente o mediante una estación exterior al aparato o a la instalación.
La estación que se encuentra fuera puede ser un sistema de conducción o un ordenador (de control) para los componentes y/o la instalación. La formación del registro de datos de transacción con respecto a la medida puede ser diferente al registro de datos de transacción antes citado (relativo al estado operativo) o puede estar integrado en él como parte del registro de datos de transacción mencionado anteriormente. La medida puede tener la forma de un código de programa o simplemente ser una señal para transmitirla a los citados componentes o la citada estación. La medida puede estar constituida como una transacción de confirmación de vigilancia (por ejemplo, OK, error, falta de información de vigilancia del estado operativo o manipulación) que es adecuada al estado operativo que se vigila con la ayuda del registro de datos de transacción antes citado o que está asociada al mismo o bien que resulta del mismo o se deriva de él. En particular, mediante una transacción de confirmación de vigilancia puede activarse automáticamente una medida (medida de protección) cuando se detecta una manipulación de un aparato o de una instalación. Mediante la medida pueden evitarse daños en el aparato y/o la instalación o en su entorno en caso de manipulación. Esto se realiza con gran fiabilidad, ya que la vigilancia del estado operativo y la formación de la transacción de confirmación de vigilancia están criptográficamente protegidos mediante una cadena de bloques.
La tecnología de cadenas de bloques (en inglés Blockchains o Block Chains) o bien Distributed Ledgers (de libro mayor distribuido) es una tecnología actualmente muy debatida.
Bajo una cadena de bloques o blockchain se entiende en general una base de datos cuya integridad (protección frente a manipulación posterior) está asegurada almacenando el valor de la función unidireccional, también llamado valor hash, del registro de datos o bloque o miembro anterior en cada caso en el siguiente, es decir mediante concatenación criptográfica. La protección se crea mediante una pluralidad de nodos fiables en una red de cadenas de bloques, que realizan lo que se conoce como minería (mining) o validación de bloques. En la red de los nodos que participan en una cadena de bloques, se forma un nuevo bloque a intervalos regulares, por ejemplo, cada 10 minutos y se almacena entonces a la vez el valor hash de un bloque existente. Una vez que se introducen las transacciones en la cadena, ya no se pueden modificar inadvertidamente. En este proceso de minería, se verifica la validez de las transacciones a almacenar en el bloque. Además de un proceso de minería como "Proof of Work” (prueba de trabajo), también se conocen alternativas, en particular una “Proof-of-Stake” (prueba de participación), en la que se confirma un bloque mediante un nodo de cadena de bloques pseudoaleatorio pero seleccionado de forma determinista, o bien una cadena de bloques de acceso controlado (permissioned blockchain).
Son sistemas blockchain conocidos Bitcoin y Ethereum. Mientras Bitcoin se creó inicialmente para transferencias de criptomonedas, Ethereum se basa en la integración de los llamados Smart Contracts (contratos inteligentes). Las condiciones acordadas en un contrato inteligente se aseguran mediante la cadena de bloques y el contrato en sí se desarrolla a través de la red. La implementación de las condiciones contractuales se controla mediante las transacciones asociadas realizadas: Las acciones de seguimiento previstas en un contrato inteligente programado se pueden llevar a cabo en función de la transacción que se haya realizado. Son posibles otras realizaciones de cadenas de bloques, por ejemplo, Hyperledger.
Un registro de datos de transacciones protegido en la cadena de bloques incluye en general un código de programa. Bajo el concepto "contrato inteligente" se entiende un código de programa en el que se pueden definir condiciones en el momento de la generación y pueden evaluarse durante su vigencia, con lo que determinadas transacciones se pueden realizar o pueden no realizarse en una determinada cantidad (cantidad de dinero) a un destinatario o varios destinatarios determinado/s.
La transacción se puede realizar con la ayuda del registro de datos de la transacción. Se entiende por una transacción una transferencia mutua de bienes virtuales o reales y/o un pago u otras informaciones de un remitente a un destinatario. Bitcoin utiliza un entorno de tiempo de ejecución basado en pilas relativamente simple. Una transacción incluye entonces la suma de comprobación para verificar la validez o integridad de la transacción. La plataforma de cadenas de bloques Ethereum apoya un entorno de tiempo de ejecución libremente programable, con lo que puede realizarse flexiblemente el código de programa de una cadena de bloques. Entonces se almacena por ejemplo una lógica empresarial como código de programa en el registro de datos de la transacción y por lo tanto en la cadena de bloques. Visto de esta manera, está almacenada la transacción a realizar en un miembro (de una cadena) de la cadena de bloques. En consecuencia, en este contexto es casi imposible distinguir entre la transacción a realizar y el registro de datos de la transacción que está diseñado para realizar la transacción. También la plataforma de cadenas de bloques Hyperledger apoya un entorno de tiempo de ejecución libremente programable para ejecutar contratos inteligentes.
La función de verificación puede estar integrada en el primer miembro de la cadena de bloques, en particular en el primer registro de datos de transacción. Sin embargo, la función de verificación también puede estar situada fuera de una cadena de bloques en un entorno de tiempo de ejecución para ejecutar la transacción. Esta función de verificación por lo general realiza una verificación de integridad. En la seguridad de la información, integridad significa corrección, totalidad y datos no manipulados.
En función de ello, un estado operativo de un aparato o instalación puede ser admisible o válido. La función de verificación puede estar implementada mediante un llamado contrato inteligente de una cadena de bloques.
Para realizar una forma de función de vigilancia protegida criptográficamente, por ejemplo en forma de un watchdog, se representa el estado operativo de al menos un componente (por ejemplo, NW) del aparato (IoT) o de la instalación en al menos un registro de datos de transacción. Por lo tanto, la invención proporciona una función de vigilancia criptográfica basada en blockchain, en particular un watchdog (para aparatos, contenedores, máquinas virtuales (VM).
Las cadenas de bloques generalmente sólo pueden intercambiar datos dentro de su propia infraestructura. Los llamados Oracles (oráculos) pueden establecer una conexión con el “entorno exterior". Los llamados Integrity-Oracles (oráculos de integridad) de un aparato ajustan datos de medición de integridad del aparato en una cadena de bloques. Es decir, se forman transacciones y se alojan en una estructura de datos de transacciones de cadenas de datos, que incluyen datos de medición de integridad, que pueden contener informaciones y/o datos de la siguiente manera:
- Informaciones sobre la integridad del aparato de una máquina virtual, de un contenedor (de software) (Docker), de un aparato embebido, de un servidor), que puede referirse a firmware cargados y a programas cargados (por ejemplo, información sobre versiones, valor hash), listas de procesos, sumas de verificación de contenidos de memoria, datos de configuración.
- Datos de medición de sensores, datos de control de actuadores (es decir, datos de una interfaz de entrada/salida)
- se puede ejecutar sobre diferentes plataformas de hardware, de modo que se Introspección de datos de una máquina virtual o de un contenedor (introspección de memoria, procesos dentro de la máquina/contenedor virtual, valores hash de los datos de código de programa, de los procesos ejecutados).
Una ventaja de la invención es que la integridad de la ejecución está protegida no sólo frente a errores accidentales, sino también frente a una manipulación selectiva mediante la ejecución basada en blockchain. Además, la plataforma de cadenas de bloques evita o al menos se dificulta el aprovechamiento de un troyano de hardware de una plataforma de hardware. Igualmente se puede ejecutar la plataforma de cadena de bloques sobre distintas plataformas de software, por ejemplo, distinto firmware y distintos sistemas operativos, con lo que se evita o al menos se dificulta un aprovechamiento de una función no documentada (backdoor o puerta trasera) de una plataforma de firmware/software. En particular puede detectarse con fiabilidad un intento de aprovechamiento de un troyano de hardware o de una función no documentada.
Un perfeccionamiento de la invención prevé que el primer miembro incluya otro estado operativo vigilado de al menos otro componente del aparato o de la instalación.
Un perfeccionamiento de la invención prevé que un resultado de verificación negativo incluya un valor para un error y/o para una manipulación o para una ausencia o carencia de un registro de datos de transacción esperado.
Un perfeccionamiento de la invención prevé que un resultado de verificación positivo incluya un valor para una confirmación (por ejemplo, "integridad en tiempo de ejecución comprobada" o "safe for use, seguro para su utilización").
Un perfeccionamiento de la invención prevé que la vigilancia de al menos uno y/u otro componente esté implementada mediante un llamado Smart Contract (contrato inteligente).
Un perfeccionamiento de la invención prevé que el estado operativo se refiera a un estado interno del aparato o de la instalación.
Un perfeccionamiento de la invención prevé que el estado operativo se refiera a un estado de sensores, actuadores y/o equipos de control para el aparato o la instalación dispuestos fuera del aparato o de la instalación.
Otro aspecto de la invención es un procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, que tiene las siguientes etapas:
- Aportación de al menos un segundo miembro de una cadena de bloques que incluye al menos un registro de datos de transacciones, representándose en el registro de datos de transacciones un estado operativo vigilado de al menos un componente del aparato o de la instalación,
- concatenación del segundo miembro, de los que al menos hay uno, con un primer miembro de la misma o de otra cadena de bloques,
- aportación de una función de verificación constituida con preferencia criptográficamente, que verifica el registro de datos de la transacción en cuanto a integridad/admisibilidad y
- formación de un registro de datos de la transacción que tiene una medida asociada al estado operativo en función del resultado de la verificación aportado por la función de verificación, realizándose la transacción definida por el registro de datos de la transacción mediante un componente del aparato o de la instalación y la medida se inicia y/o ejecuta mediante el mismo u otro componente o mediante una estación externa al aparato o a la instalación.
El proceso puede repetirse. Se pueden proporcionar, formar o generar varios miembros comenzando con un miembro de inicio, pudiendo contener cada miembro por sí mismo correspondientemente una función de verificación del tipo antes mencionado o funciones parciales de la misma. Esto significa que la cadena de bloques tiene una secuencia de transacciones, cada una de las cuales vigila el estado operativo de un componente (del aparato o de la instalación). Así puede vigilarse continuamente el funcionamiento de un aparato o de una instalación.
El procedimiento se puede perfeccionar de acuerdo con los perfeccionamientos y formas de realización del sistema o configuración antes citados.
Preferiblemente, el procedimiento se realiza apoyado por ordenador. Salvo que se indique lo contrario en la siguiente descripción, los términos "ejecutar", "calcular", "asistido por computadora", "calcular", "determinar", "generar", "configurar", "reconstruir" y similares se refieren preferiblemente a operaciones y/o procesos y/o etapas de procesamiento que modifican y/o generan datos y/o convierten los datos en otros datos, representándose o pudiendo existir los datos en particular como magnitudes físicas, por ejemplo como impulsos eléctricos. En particular, debe interpretarse el término "computadora" de la manera más amplia posible, en particular para abarcar todos los aparatos electrónicos con características de procesamiento de datos. Así pueden ser computadoras por ejemplo los ordenadores personales (Personal Computer), servidores, controladores programables en memoria (SPS), sistemas Hand-Held-Computer (ordenadores de mano), aparatos Pocket-PC (PC de bolsillo), aparatos de telefonía móvil y otros aparatos de comunicación, que pueden procesar datos asistidos por ordenador, procesadores y otros aparatos electrónicos para procesar datos.
En el contexto de la invención, puede entenderse que "asistido por ordenador" significa por ejemplo una implementación del procedimiento, en la que en particular un procesador ejecuta al menos una etapa del procedimiento.
En el contexto de la invención, puede entenderse que un procesador significa, por ejemplo, una máquina o un circuito electrónico. Un procesador puede ser en particular una unidad central de procesamiento (Central Processing Unit, CPU), un microprocesador o un microcontrolador, por ejemplo un circuito integrado específico de la aplicación o un procesador de señales digitales, posiblemente en combinación con una unidad de memoria para almacenar instrucciones de programa, etc. Un procesador también puede ser por ejemplo un IC (Integrated Circuit, circuito integrado), en particular un FPGA (Field Programmable Gate Array, matriz de puertas programables en campo) o un ASIC (Application-Specific Integrated Circuit, circuito integrado específico de la aplicación), o un DSP (Digital Signal Processor, procesador de señales digitales) o un procesador de gráficos GPU (Graphic Processing Unit, Unidad de procesamiento gráfico). Como procesador también puede entenderse un procesador virtualizado, una máquina virtual o una CPU de software. También puede tratarse por ejemplo de un procesador programable, que se equipa con etapas de configuración para ejecutar el procedimiento antes citado de acuerdo con la invención o que está configurado con etapas de configuración tal que el procesador programable realiza las características del procedimiento de acuerdo con la invención, del componente, de los módulos, de los medios o de otros aspectos y/o aspectos parciales de la invención.
En el contexto de la invención, se puede entender por una "unidad de memoria" por ejemplo una memoria en forma de memoria de trabajo (Random-Access Memory, memoria de acceso aleatorio o RAM) o un disco duro.
Los medios antes citados pueden constituir una funcionalidad de nodos de cadena de bloques. En el contexto de la invención, también se puede entender bajo medios por ejemplo un procesador y/o una unidad de memoria para almacenar instrucciones de programa. Por ejemplo, el procesador está especialmente configurado para ejecutar las instrucciones del programa de tal manera que el procesador ejecuta funciones para implementar o realizar el procedimiento de acuerdo con la invención o una etapa del procedimiento de acuerdo con la invención.
En el contexto de la invención, puede entenderse que "proporcionar" o "aportar” significa, por ejemplo, crear, cargar o almacenar el registro de datos de transacciones en o desde un soporte de datos o plataforma.
Además, se tiene un (producto de) programa informático con instrucciones de programa para el sistema del tipo antes mencionado, que se configura mediante las instrucciones del programa, que son adecuadas para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación según una de las reivindicaciones de procedimiento precedentes y que forman al menos un miembro de una cadena de bloques, cuyo registro de datos de transacción incluye un estado operativo vigilado de al menos un componente del aparato o de la instalación.
El (producto de) programa informático puede formar un entorno de ejecución del tipo antes citado.
Además, se reivindica una variante del producto de programa informático con instrucciones de programa para configurar un aparato generador, por ejemplo una impresora en 3D, un sistema de computadora o una máquina de producción adecuada para crear procesadores y/o aparatos.
Las aplicaciones, aparatos y (productos de) programas informáticos pueden estar configurados de acuerdo con los perfeccionamientos/las formas de realización del procedimiento antes citado y sus perfeccionamientos/formas de realización.
Además, es posible un equipo de aportación para almacenar y/o proporcionar el producto de programa informático. El aparato de aportación es, por ejemplo, un soporte de datos que almacena y/o proporciona el producto de programa informático. Alternativamente y/o adicionalmente, el aparato de aportación es, por ejemplo, un servicio de red, un sistema informático, un sistema servidor, en particular un sistema informático distribuido, un sistema informático basado en la nube y/o un sistema informático virtual, que almacena y/o proporciona el producto de programa informático preferiblemente en forma de un flujo de datos.
Esta aportación se realiza por ejemplo como descarga (download) en forma de un bloque de datos de programa y/o bloque de datos de instrucciones, preferiblemente como archivo, en particular como archivo de descarga, o como flujo de datos, en particular como flujo de datos de descarga del producto de programa informático completo. No obstante, esta aportación puede tener lugar por ejemplo también como descarga parcial, que consta de varias partes y que en particular se descarga a través de una red Peer-to-Peer (de igual a igual) o se proporciona como flujo de datos. Un tal producto de programa informático se lee en un sistema, por ejemplo utilizando el equipo de aportación en forma del soporte de datos y ejecuta las instrucciones del programa, de forma que el procedimiento de acuerdo con la invención se ejecuta en un ordenador o el aparato generador se configura de tal manera que realiza el equipo y/o el miembro y/o la cadena de bloques de acuerdo con la invención.
Las propiedades, características y ventajas de esta invención antes descritas, así como la forma en que se logran, quedarán más claras y comprensibles en relación con la siguiente descripción de los ejemplos de realización, que se explicarán con más detalle en relación con las figuras. Estas muestran en representación esquemática:
Figura 1 un ejemplo de realización de un registro de datos de transacción de un miembro de una cadena de bloques;
figura 2 un ejemplo de realización de una cadena de bloques;
figura 3 ejemplo de realización de la invención, que muestra cómo puede estar integrada una funcionalidad de cadena de bloques en un sistema y/o aparato;
figura 4 esquemáticamente un diagrama de flujo del procedimiento de acuerdo con la invención.
En las figuras se han dotado los elementos funcionalmente iguales de las mismas referencias, salvo que se indique lo contrario.
En detalle, la figura 2 muestra los miembros, por ejemplo un primer miembro 511, un segundo miembro 512 y un tercer miembro 513, de una cadena de bloques 510.
Tal cadena de bloques se conoce por ejemplo por https://de.bitcoin.it/wiki/Blockkette.
Cada uno de los miembros incluye varias transacciones T. Cada uno de los miembros incluye adicionalmente un valor hash criptográfico CRC1, CRC2, CRC3, que está formado en función del miembro precedente. Así incluye el primer miembro 511 un primer valor hash CRC1 de su miembro precedente, el segundo miembro 512 un valor hash CRC2 del primer miembro 511 y el tercer miembro 513 un valor hash CRC3 del segundo miembro 512. El valor hash puede ser en particular un valor hash criptográfico, que puede determinarse por ejemplo mediante SHA2-256, SHA2-384, SHA-3, BLAKE2. La figura 1 muestra un ejemplo de realización de un registro de datos de transacciones.
Con ayuda del registro de datos de transacción 410 puede realizarse una transacción T. Los miembros 513, 512, 511 pueden incluir para sus transacciones T respectivos valores (de función) hash, que se forman en función de los registros de datos de transacción 410. Usualmente se utiliza un árbo1Hash, por ejemplo un árbol de Merkle o árbol de Patricia, cuyo valor hash de raíz se almacena en un bloque o miembro.
Además, un bloque o miembro puede tener un sello de tiempo, una firma digital, una acreditación de Proof-of-Work (prueba de trabajo). En este contexto, se puede entender que acreditación de "prueba de trabajo" significa por ejemplo resolver una tarea de cálculo complejo que debe resolverse en particular en función del contenido del miembro/contenido de un registro de datos de transacción. Tal tarea de cálculo complejo también se conoce por ejemplo como puzzle criptográfico.
El código de programa 460 es entonces por ejemplo un contrato inteligente (Smart Contract). El registro de datos de transacción 410 también puede incluir otros datos, tales como por ejemplo un sujeto 420 (por ejemplo, Siemens Siemens A-BC), una clave pública 430 (por ejemplo 3A76E21876EFA03787FD629A65E9E990 ...), el algoritmo 440 utilizado de la clave pública 430 (por ejemplo ECC) y una indicación de parámetro 450 para el algoritmo (por ejemplo Curve: brainpoolPl 60rl). El registro de datos de la transacción 410 contiene un valor hash (por ejemplo, SHA256) para el contrato inteligente 460. Con ello ya no puede modificarse posteriormente el contrato inteligente sin ser detectado. La figura 3 muestra una forma de realización de cómo puede estar integrada una funcionalidad de cadenas de bloques en un sistema o en un aparato.
Tales aparatos pueden ser por ejemplo vehículos, sistemas de transporte sin conductor, robots, aparatos de prueba u otros componentes de una planta industrial.
La figura 3 muestra un aparato IoT, en particular un aparato de campo, con una unidad de cálculo CPU, un circuito digital programable FPGA, CPLD, un elemento seguro (Secure Element) SE y varias interfaces de entrada/salida E/S para conectar sensores y actuadores, una interfaz de red NW y una interfaz USB, USB. También se tienen módulos de memoria RAM y Flash.
El elemento seguro puede tener una función de control con medidas relevantes para la seguridad, como por ejemplo detener un vehículo o robot antes de que ocurra una colisión. Las medidas de seguridad y/o de protección para una función de control se aseguran mediante un Watchdog. Así pueden protegerse en cuanto a los "fallos de funcionamiento" críticos para la seguridad y evitarse con protección frente a la manipulación.
De acuerdo con la invención, los componentes del aparato de campo contienen una funcionalidad BCNF de nodo de cadena de bloques. Esto significa que los nodos, en este ejemplo los componentes, realizan conjuntamente una cadena de bloques 510 (de aparato). Los mismos pueden configurar transacciones T, verificar transacciones y formar miembros 513, 512, 511 o bloques con transacciones verificadas.
Las transacciones T se refieren por ejemplo a un autotest del aparato y/o un autotest de un componente del aparato, a un cambio en el modo de funcionamiento (por ejemplo mantenimiento, operación regular, modo de falta, modo de funcionamiento en emergencia restringido), un autotest de integridad del aparato, watchdog de seguridad (por ejemplo verificación de integridad de datos del firmware, de datos de configuración, verificación de procesos o tareas en curso), vigilancia de sensores del aparato (temperatura, fuente de alimentación, interruptores de carcasa, sensores tamper o de manipulación).
Un contrato inteligente de la cadena de bloques analiza datos y puede emitir una transacción de confirmación de watchdog (por ejemplo OK, fallo, manipulación o ausencia de una transacción esperada). El propio aparato IoT, otro aparato (por ejemplo, una computadora de control de seguridad) y/o un centro de control pueden evaluar la información de la cadena de bloques, por ejemplo una transacción de confirmación o una transacción de error (alarma, reinicio, parada de emergencia, desactivación de interfaces de salida, bloqueo de interfaces de red). La cadena de bloques puede estar implementada localmente dentro del aparato. El aparato de IoT puede ser aquí un aparato de control, un aparato de campo, un aparato de IoT. Un aparato también puede tener una funcionalidad de servidor, por ejemplo, una funcionalidad de servidor Edge Cloud o una pasarela (Gateway) de IoT con Apps recargables. Sobre tales aparatos puede estar implementado un hipervisor o un Container Runtime (tiempo de ejecución de contenedor), pare ejecutar varios Executables (programas que pueden ejecutarse como Apps, contenedores) en estos aparatos.
En particular, la cadena de bloques puede estar realizada en varios procesadores o núcleos de procesador o en varias máquinas/contenedores virtuales de un aparato. En el contexto de la invención, una cadena de bloques no se utiliza para realizar una base de datos de transacciones distribuida de acuerdo con el citado estado de la técnica, sino que la cadena de bloques se realiza mediante varios componentes dentro de un aparato. La cadena de bloques para realizar el Watchdog de integridad puede estar realizada en un aparato o distribuirse entre varios aparatos o sus componentes. Esto permite que varios aparatos se vigilen mutuamente en cuanto a la integridad. Además puede determinarse y verificarse una información de integridad del sistema, en la que se verifica la información de integridad del aparato conjuntamente para varios aparatos. En particular es posible verificar la información de integridad de varios aparatos de estructura idéntica en cuanto a la coincidencia. Tal realización es ventajosa por ejemplo para aparatos de IoT.
La realización de una cadena de bloques interna del aparato también tiene la ventaja de que pueden realizarse en el aparato con gran fiabilidad funciones como una función de autotest, una autocomprobación de la integridad del aparato y un watchdog. Dado que no vigila el aparato un solo componente, se dificulta una manipulación por parte de un atacante. Los componentes individuales de un aparato pueden vigilarse entre sí protegidos frente a manipulaciones o realizar conjuntamente una vigilancia de la integridad del aparato con ayuda de la funcionalidad de cadena de bloques. Se puede volver a formar una cadena de bloques interna del aparato cuando se inicia el aparato. Es decir, cuando se inicia el aparato (rearranque), se forma un bloque o miembro génesis como miembro de inicio de la cadena de bloques del aparato. El bloque génesis se almacena en los componentes del aparato, que realizan la cadena de bloques del aparato. En otra forma de realización, el bloque génesis de la cadena de bloques del aparato se establece al configurar o cambiar la configuración de un aparato. En otra forma de realización, el bloque génesis de la cadena de bloques del aparato se establece cuando se sella una configuración del aparato. Sellar significa que una configuración del aparato ya no se puede modificar una vez finalizado el proceso de sellado, sino que sólo se puede eliminar. En otra forma de realización, el bloque génesis de la cadena de bloques del aparato se forma cuando se fabrica el aparato y se introduce en el aparato. El bloque génesis de la cadena de bloques del aparato se almacena en los componentes del aparato que realizan la cadena de bloques del aparato. Con preferencia se establece en cada uno de varios ejemplares de un aparato un bloque génesis individual del aparato.
Además, sólo se puede mantener en el aparato un cierto número de miembros de la cadena de bloques interna del aparato. Es decir, cuando se forma un nuevo bloque en la cadena de bloques, se elimina el bloque que está más atrás. Esto es ventajoso para limitar el espacio de almacenamiento de la cadena de bloques. Esto es en particular procedente en aparatos de control y aparatos IoT con espacio de almacenamiento limitado. Esto también puede entenderse en el sentido de que el bloque génesis es dinámico, es decir, que un miembro de la cadena de bloques, situado por ejemplo 10000 bloques más atrás, se utiliza como bloque génesis. Es posible entonces que cada uno de los distintos nodos de la cadena de bloques del aparato utilice el mismo bloque como bloque génesis dinámico. Para ello se puede utilizar un procedimiento determinista a través de los distintos componentes (por ejemplo 10000 bloques más atrás), para que el componente identifique el mismo bloque como bloque génesis dinámico común. En otra forma de realización, puede determinarse a través de los nodos de la cadena de bloques, mediante transacciones de la cadena de bloques, un bloque génesis dinámico común. Para ello, por ejemplo cada nodo puede emitir un voto con un índice y el bloque con el índice más pequeño (es decir, el nodo que está más atrás) se utiliza como nuevo bloque génesis dinámico común. Sin embargo, también es posible que cada nodo de la cadena de bloques interna del aparato determine un bloque génesis dinámico específico del componente.
Un aparato en el sentido de la invención puede ser un componente o una pieza integrante o varios componentes que se encuentra/n en una carcasa. Sin embargo, un aparato también puede tener varios componentes. Por ejemplo el mismo puede incluir módulos de ampliación, que se pueden insertar o enchufar en el aparato (por ejemplo módulos de E/S para un módulo principal). El aparato también puede estar compuesto internamente por varios módulos, por ejemplo placas de circuitos, que por ejemplo están conectados a través de un bus de fondo.
En otra forma de realización, se realiza una cadena de bloques que abarca varios aparatos. Entonces, un aparato que realiza una cadena de bloques de aparatos puede verificar registros de datos de transacciones de otros aparatos y, si el resultado de la verificación es positivo, alojarlos en la cadena de bloques del aparato. Esto tiene la ventaja de que un aparato que asiste a una cadena de bloques de aparatos, puede verificar datos de transacciones de otros aparatos que no asisten a ninguna cadena de bloques de aparatos y alojarlos en su cadena de bloques de aparatos.
En otra forma de realización, el aparato de campo contiene varios núcleos de cálculo (núcleos de cálculo físicos o núcleos de cálculo virtuales) que realizan un sistema redundante. Para ello, pueden estar previstas por ejemplo dos CPU separadas y se puede realizar un cálculo doble (por ejemplo con datos codificados regularmente y codificados modificados), dos núcleos de cálculo de CPU, dos o más máquinas virtuales, dos o más contenedores. Para detectar errores (por ejemplo, errores transitorios, averías de hardware), se realiza una verificación de coherencia basada en la cadena de datos (arquitectura Lock-Step o paso a paso, basada en cadenas de datos). Para ello, se comprueba la corrección o la coincidencia de los datos de salida o estados de procesamiento intermedios de los núcleos de cálculo, de los que al menos hay dos, en momentos predeterminados.
Para ello se genera para cada núcleo de cálculo una transacción, las cuales incluyen los datos de salida y/o datos intermedios de los respectivos núcleos de cálculo (directamente o como suma de verificación, por ejemplo valor CRC o valor hash criptográfico). Mediante la realización de una cadena de bloques distribuida, se verifican los registros de datos de transacciones de los distintos núcleos de cálculo en cuanto a corrección/coincidencia, por ejemplo mediante un contrato inteligente (código de programa) de las cadenas de datos.
Si no hay coincidencia, puede detenerse el aparato o bloquearse sus interfaces de E/S. Para ello, un componente puede desactivarse por sí mismo cuando su función de nodos de cadena de bloques detecta un error en el aparato. I gualmente es posible que un componente, por ejemplo el elemento seguro, proporcione una señal de control cuando detecta un error del aparato. La señal de control puede por ejemplo desactivar la interfaz de E/S (por ejemplo, conmutar las interfaces a alta resistencia, bloquear la interfaz de red) o reiniciar la CPU o la FPGA o mantenerla en un estado básico (reset). La cadena de bloques del aparato realiza aquí por lo tanto un watchdog del aparato. Mediante la lógica de cadena de bloques esto se puede realizar con un alto nivel de confiabilidad. Mediante la cadena de bloques del aparato o bien el watchdog de seguridad realizado mediante la cadena de bloques del aparato, se realiza una vigilancia en cuanto a coincidencia y/o corrección. Así se puede realizar un sistema redundante y crítico para la seguridad en hardware convencional y protegido frente a manipulación.
Tal como ya se ha indicado antes y se muestra esquemáticamente en la figura 3, son posibles las siguientes realizaciones de la invención:
La integridad de la realización no sólo está protegida frente a errores accidentales, sino también frente a una manipulación selectiva mediante la realización basada en cadenas de bloques.
La figura 4 muestra a modo de ejemplo un diagrama de flujo del procedimiento de acuerdo con la invención, en el que las etapas se identifican mediante S01 a S04.
En las etapas S01 y S02 se forman o proporcionan y concatenan entre sí un primer y un segundo miembros de una cadena de bloques. Así incluye un miembro uno o varios registros de datos de transacciones, por ejemplo del tipo ya antes explicado. El registro de datos de transacciones incluye por ejemplo un código de programa que es adecuado para vigilar un estado operativo de un aparato, por ejemplo de un aparato loT o de sus componentes o de componentes de una instalación. La función (funcionalidad) de supervisión mencionada, por ejemplo watchdog de integridad o watchdog de manipulación queda así integrada en el registro de datos de transacción. En la etapa S03 se proporciona una función de verificación criptográfica, que verifica la transacción definida por un registro de datos de transacción en cuanto a integridad y/o admisibilidad y/o validez.
Según la condición B, que depende del resultado de la verificación, el procedimiento finaliza o continúa con la etapa S01 si el resultado de la verificación es negativo (inadmisibilidad o invalidez de la transacción). Es decir, se forma otro miembro adicional con un registro de datos de la transacción que dado el caso supera la verificación como admisible. Si el resultado de la verificación citado (positivo) dictamina que la transacción es admisible o válida, entonces se forma en S04 un registro de datos de la transacción que tiene una medida adecuada al estado operativo o asociada al estado operativo o que se deriva del estado operativo. Esta medida puede ser una corrección de errores, un reinicio, una parada de emergencia/ desconexión de emergencia, una activación de un modo de funcionamiento en emergencia o también simplemente un aviso de error o de alarma. La transacción definida por el registro de datos de la transacción puede realizarse mediante un componente del aparato o de la instalación. La medida puede ser iniciada o retransmitida y/o llevada a cabo por el mismo o por otro componente o por una estación exterior al aparato o a la instalación. A continuación finaliza el procedimiento o continúa con la etapa S01. Por tanto, el procedimiento puede repetirse. Las etapas S01 y S02 pueden repetirse para formar una cadena de bloques hasta que se alcance un número de miembros de la cadena de bloques que puede predeterminarse o hasta que ya no sea necesario realizar más transacciones. La formación del registro de datos de transacción según S04 puede, conducir, en función de la medida, a una transacción de confirmación o transacción de error ya antes mencionada.
Aunque la invención se ha ilustrado y descrito con más detalle mediante el ejemplo de realización preferido, la invención no queda restringida por los ejemplos descritos y el experto en la técnica puede derivar de ellos otras variaciones sin abandonar el alcance de protección de la invención.
Los procesos o secuencias de procedimientos antes descritos se pueden implementar en base a instrucciones, que existen en medios de almacenamiento legibles por computadora o en memorias de computadora volátiles (reunidas a continuación bajo el concepto de memorias legibles por computadora). Son memorias legibles por computadora por ejemplo memorias volátiles como cachés, buffers o RAM, así como memorias no volátiles, como soportes de datos extraíbles, discos duros, etc. Las funciones o etapas antes descritas pueden existir entonces en forma de al menos un conjunto de instrucciones en/sobre una memoria legible por computadora. Las funciones o etapas no están vinculadas entonces a un determinado conjunto de instrucciones ni a una forma determinada de conjuntos de instrucciones ni a un medio de almacenamiento determinado ni a un procesador determinado ni a esquemas de ejecución determinados y pueden ejecutarse mediante software, firmware, microcódigo, hardware, procesadores, circuitos integrados, etc., aisladamente o en cualquier combinación. Se pueden utilizar entonces las más diversas estrategias de procesamiento, por ejemplo procesamiento en serie mediante un único procesador o multiprocesamiento o multitarea o procesamiento en paralelo, etc.
Las instrucciones pueden estar almacenadas en memorias locales, pero también es posible almacenar las instrucciones en un sistema remoto y acceder a ellas a través de la red.
El término "procesador", "procesamiento central de señales", "unidad de control" o "medios de evaluación de datos”, tal como se utilizan aquí, incluyen medios de procesamiento en el sentido más amplio, es decir, por ejemplo servidores, procesadores universales, procesadores gráficos, procesadores de señales digitales, circuitos integrados de aplicaciones específicas (ASIC), circuitos lógicos programables. como FPGA, circuitos discretos analógicos o digitales y cualquier combinación de los mismos, incluyendo cualquier otro medio de procesamiento conocido por el experto o que se desarrolle en el futuro. Los procesadores pueden entonces estar compuestos por uno o más equipos o dispositivos o unidades. Si un procesador está compuesto por varios equipos, estos pueden estar diseñados o configurados para el procesamiento o ejecución de instrucciones en paralelo o secuencial.

Claims (11)

REIVINDICACIONES
1. Sistema para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, que incluye (BCNF):
- medios para proporcionar al menos un segundo miembro (512, 511) de una cadena de bloques (510), que incluye al menos un registro de datos de transacciones, que incluye un estado operativo vigilado de al menos un componente (NW) del aparato (I-oT) o de la instalación,
- medios para concatenar el segundo miembro, de los que al menos hay uno, con un primer miembro (513) de la misma o de otra cadena de bloques,
- medios para proporcionar una función de verificación, que verifica una transacción (T) a realizar, definida por el registro de datos de la transacción (410), de los que al menos hay uno, en cuanto a integridad y
- medios para formar un registro de datos de transacción que tiene una medida asociada al estado operativo en función del resultado de la verificación aportado por la función de verificación, que incluye un valor para una confirmación o para un error y/o para una manipulación o para una ausencia de un registro de datos de transacción esperado, ejecutándose la transacción definida por el registro de datos de transacción mediante un componente (CPU) del aparato o de la instalación e iniciándose y/o ejecutándose la medida mediante el mismo o mediante otro componente (SE) o mediante una estación exterior al aparato (IoT) o a la instalación.
2. Sistema de acuerdo con la reivindicación precedente,
caracterizado porque el primer miembro (513) incluye otro estado operativo vigilado de al menos otro componente (SE) del aparato (IoT) o de la instalación.
3. Sistema de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque la vigilancia de al menos uno y/u otro componente está implementada mediante un llamado Smart Contract (460).
4. Sistema de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque el estado operativo se refiere a un estado interno del aparato o de la instalación.
5. Sistema de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque el estado operativo se refiere a un estado de sensores, actuadores y/o equipos de control para el aparato o la instalación dispuestos fuera del aparato o de la instalación.
6. Procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación, que tiene las siguientes etapas (S01 a S04):
- Aportación (S01) de al menos un segundo miembro (512, 511) de una cadena de bloques (510) que incluye al menos un registro de datos de transacciones (410), representándose en el registro de datos de transacciones un estado operativo vigilado de al menos un componente (NW) del aparato (IoT) o de la instalación,
- concatenación (S02) del segundo miembro, de los que al menos hay uno, con un primer miembro (513) de la misma o de otra cadena de bloques,
- aportación (S03) de una función de verificación, que verifica el registro de datos de la transacción en cuanto a integridad/admisibilidad y
- formación (504) de un registro de datos de la transacción que tiene una medida asociada al estado operativo en función del resultado de la verificación (B) aportado por la función de verificación, que incluye un valor para una confirmación o para un error y/o para una manipulación o para una ausencia de un registro de datos de transacción esperado, ejecutándose la transacción (T) definida por el registro de datos de transacción mediante un componente (CPU) del aparato o de la instalación e iniciándose y/o ejecutándose la medida mediante el mismo o mediante otro componente (SE) o mediante una estación exterior al aparato (IoT) o a la instalación.
7. Procedimiento de acuerdo con la reivindicación precedente,
caracterizado porque el primer miembro incluye otro estado operativo vigilado de al menos otro componente (SE) del aparato (IoT) o de la instalación.
8. Procedimiento de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque la vigilancia del estado operativo de al menos uno y/u otro componente está implementada mediante un llamado Smart Contract (460).
9. Procedimiento de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque el estado operativo se refiere a un estado interno del aparato o de la instalación.
10. Procedimiento de acuerdo con una de las reivindicaciones precedentes,
caracterizado porque el estado operativo se refiere a un estado de sensores, actuadores y/o equipos de control para el aparato o la instalación dispuestos fuera del aparato o de la instalación.
11. Producto de programa informático con instrucciones de programa para el sistema según una de las reivindicaciones de sistema precedentes, que se configura mediante las instrucciones del programa, que son adecuadas para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación de acuerdo con una de las reivindicaciones de procedimiento precedentes y que forman al menos un miembro (511, 512, 513) de una cadena de bloques (510), cuyo registro de datos de transacción (410) incluye un estado operativo vigilado de al menos un componente (SE, NW, FPGA, E/S, USB) del aparato (IoT) o de la instalación.
ES17188718T 2017-08-31 2017-08-31 Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación Active ES2866885T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP17188718.5A EP3451576B1 (de) 2017-08-31 2017-08-31 System und verfahren zur kryptographisch geschützten überwachung wenigstens einer komponente eines geräts oder einer anlage

Publications (1)

Publication Number Publication Date
ES2866885T3 true ES2866885T3 (es) 2021-10-20

Family

ID=59772426

Family Applications (1)

Application Number Title Priority Date Filing Date
ES17188718T Active ES2866885T3 (es) 2017-08-31 2017-08-31 Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación

Country Status (5)

Country Link
US (1) US20210081546A1 (es)
EP (1) EP3451576B1 (es)
CN (1) CN111264046A (es)
ES (1) ES2866885T3 (es)
WO (1) WO2019042607A1 (es)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3435270B1 (de) * 2017-07-27 2020-09-23 Siemens Aktiengesellschaft Vorrichtung und verfahren zum kryptographisch geschützten betrieb einer virtuellen maschine
EP3627372A1 (en) * 2018-09-18 2020-03-25 Siemens Aktiengesellschaft Sensor data assembly and manufacturing device
US20220012727A1 (en) * 2019-03-14 2022-01-13 Hitachi, Ltd. Personal information management system, personal information management apparatus, personal information management method
DE102019002139A1 (de) * 2019-03-26 2020-10-01 Diehl Defence Gmbh & Co. Kg Verfahren zur Prozessdokumentation
US11658966B2 (en) * 2019-12-17 2023-05-23 Fisher-Rosemount Systems, Inc. Personnel profiles and fingerprint authentication for configuration engineering and runtime applications
US11722324B2 (en) * 2020-03-11 2023-08-08 Pricewaterhousecoopers Llp Secure and accountable execution of robotic process automation
EP3945480A1 (de) * 2020-07-27 2022-02-02 Siemens Aktiengesellschaft System, gerät und verfahren zur ausführung von programmbefehlen für eine ressource
EP4068126A1 (de) * 2021-03-31 2022-10-05 Siemens Aktiengesellschaft Verfahren zur überwachung von containeranwendungen auf einem hostsystem und anlage
EP4246326B1 (de) 2022-03-18 2024-05-08 Process Squad GmbH Verfahren, vorrichtung und systemanordnung zur prozessüberwachung in echtzeit

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2980002A1 (en) * 2015-03-20 2016-09-29 Rivetz Corp. Automated attestation of device integrity using the block chain
US20170109735A1 (en) * 2015-07-14 2017-04-20 Fmr Llc Computationally Efficient Transfer Processing and Auditing Apparatuses, Methods and Systems
US10038743B2 (en) * 2015-07-17 2018-07-31 Cybrook Inc. Method and system for user and device management of an IOT network
US10805393B2 (en) * 2015-12-02 2020-10-13 Olea Networks, Inc. System and method for data management structure using auditable delta records in a distributed environment
US10408647B2 (en) * 2016-02-15 2019-09-10 Olea Networks, Inc. Analysis of pipe systems with sensor devices
CN105809062B (zh) * 2016-03-01 2019-01-25 布比(北京)网络技术有限公司 一种合约构建、执行方法及装置

Also Published As

Publication number Publication date
CN111264046A (zh) 2020-06-09
US20210081546A1 (en) 2021-03-18
EP3451576A1 (de) 2019-03-06
WO2019042607A1 (de) 2019-03-07
EP3451576B1 (de) 2021-03-10

Similar Documents

Publication Publication Date Title
ES2866885T3 (es) Sistema y procedimiento para la vigilancia protegida criptográficamente de al menos un componente de un aparato o de una instalación
ES2866498T3 (es) Procedimiento y sistema de control para el control y/o la supervisión de dispositivos
ES2869256T3 (es) Procedimiento y sistema de control para el control y/o la supervisión de dispositivos
CN110730973A (zh) 用于区块链的计算机辅助测试的方法和装置
CN111095213B (zh) 嵌入式程序的安全引导方法、装置、设备及存储介质
US9953166B2 (en) Method for securely booting target processor in target system using a secure root of trust to verify a returned message authentication code recreated by the target processor
WO2018107595A1 (zh) 一种基于度量机制的可信plc启动方法
TWI606396B (zh) 母板、電腦可讀儲存裝置以及韌體驗證方法
US11843705B2 (en) Dynamic certificate management as part of a distributed authentication system
CN104160403B (zh) 使用单个可信平台模块测量平台部件
CN110785759B (zh) 用于多核处理器的远程认证
CN110334521B (zh) 可信计算系统构建方法、装置、可信计算系统及处理器
CN108573144A (zh) 安全的执行上下文数据
CN105122214B (zh) 对非易失性存储器中损坏的系统数据的修复
CN108885668B (zh) 用于用户数据的完整性检查的方法、处理器和设备
ES2816012T3 (es) Procedimiento, dispositivos y sistema para el intercambio de datos entre un sistema distribuido de base de datos y aparatos
US20210349443A1 (en) Method and apparatus for the computer-aided creation and execution of a control function
CN109840430A (zh) Plc的安全处理单元及其总线仲裁方法
TWI631462B (zh) 確保機板上匯流排交易安全的計算系統和計算設備實現的方法以及非暫時性的電腦可讀取媒體
ES2807605T3 (es) Actualización de software de componentes no críticos en sistemas distribuidos críticos para la seguridad dual
US20200219096A1 (en) Apparatus and method for the cryptographically protected operation of a virtual machine
US20150185268A1 (en) Monitoring Device for Monitoring a Circuit
ES2812282T3 (es) Equipo y procedimiento de formación de bloques, equipo de nodo y procedimiento de confirmación de bloques
CN109922056A (zh) 数据安全处理方法及其终端、服务器
Preschern et al. Built-in security enhancements for the 1oo2 safety architecture