ES2854289T3 - Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida - Google Patents

Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida Download PDF

Info

Publication number
ES2854289T3
ES2854289T3 ES19152115T ES19152115T ES2854289T3 ES 2854289 T3 ES2854289 T3 ES 2854289T3 ES 19152115 T ES19152115 T ES 19152115T ES 19152115 T ES19152115 T ES 19152115T ES 2854289 T3 ES2854289 T3 ES 2854289T3
Authority
ES
Spain
Prior art keywords
data
cryptographic
individual characteristics
checksum
module
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
ES19152115T
Other languages
English (en)
Inventor
Thomas Jetzfellner
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 ES2854289T3 publication Critical patent/ES2854289T3/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/3247Cryptographic 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 involving digital signatures
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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

Landscapes

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

Abstract

Aparato para calcular una suma de verificación criptográfica para una estructura de datos, que incluye: - un módulo detector (110) para captar características individuales (M) de un objeto físico (O) mediante un aparato detector (A); - un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales; - un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica, tal que - se comparan las características individuales con un valor de referencia predeterminado, - sí hay una coincidencia suficientemente exacta del valor de referencia predeterminado con las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía.

Description

DESCRIPCIÓN
Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida
La invención se refiere a procedimientos, a equipos y a un sistema para proporcionar registros de datos con seguridad protegida, incluyendo los registros de datos por ejemplo datos de sensores.
Una interconexión cada vez más intensa de aparatos inteligentes (por ejemplo teléfonos móviles, relojes inteligentes) o instalaciones fabriles conduce a una captación de más y más datos de sensores de estos aparatos inteligentes e instalaciones fabriles. En particular debe vigilarse mediante estos datos por ejemplo una fabricación o también el transporte de objetos (por ejemplo piezas de trabajo, alimentos, etc). El documento EP2887333 representa el estado relevante de la técnica.
La invención se define mediante las reivindicaciones independientes. A continuación se describirán aspectos de la invención.
La tecnología de cadenas de bloques (en inglés blockchains) y/o “Distributed Ledgers” (de Libro Mayor distribuido) es actualmente una tecnología muy debatida, que en particular puede estar realizada como sistema de base de datos distribuida. Además de aplicaciones para sistemas de pago descentralizados (por ejemplo bitcoin), se están desarrollando nuevas posibilidades de aplicación en la industria de las finanzas. En particular pueden realizarse así transacciones protegidas frente a manipulaciones entre empresas sin intermediarios ni cámara de compensación (clearing). Esto posibilita nuevos modelos de negocio sin un intermediario digno de confianza, reduce los costes de transacción y se pueden ofrecer con flexibilidad nuevos servicios digitales sin tener que establecer para ello una infraestructura especialmente configurada ni relaciones de confianza. Un registro de datos de transacción (o abreviadamente transacción) protegido por una cadena de bloques incluye por ejemplo un código de programa, que también puede denominarse “Smart Contract” (contrato inteligente).
Según un primer aspecto, se refiere la invención a un aparato para calcular una suma de verificación criptográfica para una estructura de datos, que incluye:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto en base a las características individuales;
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica.
Salvo que se indique lo contrario en la descripción que sigue se refieren los términos "ejecutar", "calcular", "asistido por ordenador", "realizar cálculos", "determinar", "generar", "configurar", "reconstruir" y similares con preferencia a operaciones y/o procesos y/o etapas de procesamiento que modifican y/o generan 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 el término ordenador debe interpretarse de la forma más amplia posible, para abarcar en particular todos los aparatos electrónicos con características de procesamiento de datos. Los ordenadores pueden ser por lo tanto por ejemplo ordenadores personales (Personal Computer), servidores, controladores lógicos programables (PLC), sistemas de ordenador de mano, aparatos de PC de bolsillo, aparatos de telefonía móvil y otros aparatos de comunicación, que pueden procesar datos con la asistencia de ordenadores, procesadores y otros aparatos electrónicos para el procesamiento de datos.
Bajo "asistido por ordenador" puede entenderse en el contexto de la invención por ejemplo una implementación del procedimiento, en el que en particular un procesador ejecuta al menos una etapa del procedimiento. Por ejemplo bajo "asistido por ordenador" ha de entenderse también "implementado en ordenador".
Bajo un procesador puede entenderse en el contexto de la invención por ejemplo una máquina o un circuito electrónico. Un procesador puede ser en particular un procesador principal (en inglés 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 digital, que puede estar combinado con una unidad de memoria para almacenar órdenes de programa, etc. Un procesador puede ser por ejemplo también un IC (circuito integrado, en inglés Integrated Circuit), en particular un FPGA (en inglés Field Programmable Gate Array, matriz de puertas lógicas programable en campo) o un ASIC (circuito integrado específico de la aplicación, en inglés Application-Specific Integrated Circuit) o un DSP (procesador de señales digital, en inglés Digital Signal Processor) o un procesador gráfico GPU (en inglés Graphic Processing Unit). También puede entenderse como un procesador un procesador virtualizado, una máquina virtual o una CPU de software. Puede tratarse por ejemplo también de un procesador programable, que se equipa con etapas de configuración para ejecutar el procedimiento mencionado correspondiente a la invención o bien que está configurado con etapas de configuración de tal forma que el procesador programable realiza las características correspondientes a la invención del procedimiento, de los componentes, de los módulos o de otros aspectos y/o aspectos parciales de la invención.
Bajo una "unidad de memoria" o "módulo de memoria" y similares puede entenderse en el contexto de la invención por ejemplo una memoria volátil en forma de memoria de trabajo (en inglés Random-Access Memory, RAM) o una memoria permanente, como un disco duro o un soporte de datos.
Bajo un "módulo" puede entenderse en el contexto de la invención por ejemplo un procesador y/o una unidad de memoria para memorizar órdenes de programa. Por ejemplo el procesador puede estar especialmente configurado para ejecutar órdenes de programa tal que el procesador ejecute funciones para implementar o realizar el procedimiento correspondiente a la invención o una etapa del procedimiento correspondiente a la invención. Un módulo puede ser por ejemplo también un nodo del sistema de base de datos distribuida, que por ejemplo realiza las funciones/características de un módulo correspondiente. Los respectivos módulos pueden estar configurados por ejemplo también como módulos separados o independientes. Para ello pueden incluir los módulos correspondientes por ejemplo otros elementos. Estos elementos son por ejemplo una o varias interfaces (por ejemplo interfaces de bases de datos, interfaces de comunicación, por ejemplo interfaz de red, interfaz WLAN) y/o una unidad de evaluación (por ejemplo un procesador) y/o una unidad de memoria. Mediante las interfaces pueden por ejemplo intercambiarse datos (por ejemplo recibirse, transmitirse, enviarse o proporcionarse). Mediante la unidad de evaluación pueden compararse, verificarse, procesarse, asociarse o calcularse datos por ejemplo de forma asistida por ordenador y/o automatizadamente. Mediante la unidad de memoria pueden memorizarse, descargarse o proporcionarse datos por ejemplo de forma asistida por ordenador y/o automatizadamente.
Bajo “incluir”, “presentar” y similares, en particular en relación con datos y/o informaciones, puede entenderse en el contexto de la invención por ejemplo una memorización (asistida por ordenador) de una información correspondiente o de un dato correspondiente en una estructura de datos/registro de datos (que por ejemplo a su vez está almacenada/o en una unidad de memoria).
Bajo “asociar”, en particular en relación con datos y/o informaciones, puede entenderse en el contexto de la invención por ejemplo una asociación asistida por ordenador de datos y/o informaciones. Por ejemplo se asocia al respecto a un primer dato, mediante una dirección de memoria o un identificador inequívoco (en inglés Unique Identifier (UID)), un segundo dato, memorizándose por ejemplo en un registro de datos el primer dato junto con la dirección de memoria o del identificador inequívoco del segundo dato.
Bajo "proporcionar", en particular en relación con datos y/o informaciones, puede entenderse en el contexto de la invención por ejemplo una aportación asistida por ordenador. La aportación se realiza por ejemplo a través de una interfaz (por ejemplo una interfaz de base de datos, una interfaz de red, una interfaz hacia una unidad de memoria). Por ejemplo, al realizar la aportación a través de esta interfaz, pueden transmitirse y/o enviarse y/o descargarse y/o recibirse los correspondientes datos y/o informaciones.
Bajo “proporcionar” puede entenderse en el contexto de la invención por ejemplo también el cargar o almacenar por ejemplo una transacción con los datos correspondientes. Esto puede realizarse por ejemplo sobre un módulo de memoria o desde el mismo. Bajo “proporcionar” puede entenderse por ejemplo también una transmisión (o un envío o una transferencia) de los datos correspondientes desde un nodo hasta otro nodo de la cadena de bloques o del sistema de base de datos distribuida (por ejemplo su infraestructura).
Bajo una "suma de verificación", por ejemplo una suma de verificación de bloque de datos, una suma de verificación de datos, una suma de verificación de nodos, una suma de verificación de transacciones, una suma de verificación de concatenación o similares, puede entenderse en el contexto de la invención por ejemplo una suma de verificación criptográfica o hash o valor hash criptográfico, que se forman o calculan en particular mediante una función hash criptográfica por medio de un registro de datos y/o datos y/o una o varias de las transacciones y/o una subzona de un bloque de datos (por ejemplo el block-header o cabecera de bloque de un bloque de una cadena de bloques o cabecera de un bloque de datos del sistema de base de datos distribuida o sólo una parte de las transacciones de un bloque de datos). Una suma de verificación puede ser en particular una suma o sumas de verificación o valor/es hash de un árbol hash (por ejemplo árbol de Merkle o árbol de Patricia). Además, puede entenderse bajo este concepto en particular también una firma digital o un código criptográfico de autentificación de mensajes. Mediante las sumas de verificación puede realizarse por ejemplo a distintos niveles del sistema de base de datos una protección/protección frente a manipulación criptográficas para las transacciones y los (registros de) datos allí almacenados. Cuando por ejemplo se exige una elevada seguridad, se generan y verifican por ejemplo las sumas de verificación a nivel de transacción. Cuando se exige menos seguridad, se generan y comprueban por ejemplo las sumas de verificación a nivel de bloque (por ejemplo en toda la extensión del bloque de datos o sólo en una parte del bloque de datos y/o una parte de las transacciones).
Bajo una “suma de verificación de bloque de datos” puede entenderse en el contexto de la invención una suma de verificación que por ejemplo se calcula sobre una parte o sobre todas las transacciones de un bloque de datos. Un nodo puede entonces por ejemplo verificar/determinar la integridad/autenticidad de la parte correspondiente de un bloque de datos mediante la suma de verificación del bloque de datos. Adicional o alternativamente puede haberse formado la suma de verificación de un bloque de datos en particular también en transacciones de un bloque de datos anterior/bloque de datos precedente del bloque de datos. La suma de verificación de un bloque de datos puede realizarse entonces en particular también mediante un árbol hash, por ejemplo un árbol de Merkle [1] o un árbol de Patricia, siendo la suma de verificación de un bloque de datos en particular una suma de verificación raíz del árbol de Merkle y/o de un árbol de Patricia y/o de un árbol hash binario. En particular se aseguran transacciones (por ejemplo utilizando las sumas de verificación de transacción) mediante otras sumas de verificación del árbol de Merkle o árbol de Patricia, siendo en particular las otras sumas de verificación hojas en el árbol de Merkle y/o árbol de Patricia. La suma de verificación de un bloque de datos puede así asegurar por ejemplo las transacciones formando la suma de verificación de raíz a partir de las otras sumas de verificación. La suma de verificación de un bloque de datos puede calcularse en particular para transacciones de un determinado bloque de datos de los bloques de datos. En particular puede incidir una tal suma de verificación de un bloque de datos en un bloque de datos siguiente del bloque de datos determinado, para concatenar este siguiente bloque de datos por ejemplo con sus bloques de datos precedentes y en particular para que pueda verificarse así una integridad del sistema de base de datos distribuida. De esta manera puede asumir la suma de verificación de un bloque de datos por ejemplo la función de la suma de verificación de concatenación o bien puede intervenir en la suma de verificación de concatenación. La cabecera del bloque de datos (por ejemplo de un nuevo bloque de datos o del bloque de datos para el que se ha formado la suma de verificación del bloque de datos) puede incluir por ejemplo la suma de verificación del bloque de datos.
Bajo "suma de verificación de transacción" puede entenderse en el contexto de la invención una suma de verificación que en particular se forma mediante una transacción de un bloque de datos. Adicionalmente puede por ejemplo acelerarse un cálculo de una suma de verificación de un bloque de datos para un bloque de datos correspondiente, ya que para ello pueden utilizarse por ejemplo sumas de verificación de transacción ya calculadas directamente como hojas por ejemplo de un árbol de Merkle.
Bajo una "suma de verificación de concatenación" puede entenderse en el contexto de la invención una suma de verificación que en particular indica o referencia un bloque de datos correspondiente del sistema de base de datos distribuida del bloque de datos precedente del sistema de bases de datos distribuida (en la literatura especializada se denomina en particular con frecuencia "previous block hash" [1]. Para ello se forma en particular para el bloque de datos precedente correspondiente una suma de verificación de concatenación correspondiente. Como suma de verificación de concatenación puede utilizarse por ejemplo una suma de verificación de transacción o bien la suma de verificación del bloque de datos correspondiente a un bloque de datos (es decir, un bloque de datos existente del sistema de base de datos distribuida), para concatenar un nuevo bloque de datos con un bloque de datos (existente) del sistema de base de datos distribuida. Pero por ejemplo es posible también formar una suma de verificación mediante una cabecera del bloque de datos precedente o mediante el bloque de datos precedente completo y utilizarlo como suma de verificación de concatenación. Esto puede calcularse por ejemplo también para varios bloques de datos precedentes o para todos ellos. Por ejemplo también puede realizarse la formación de la suma de verificación de concatenación mediante la cabecera de un bloque de datos y la suma de verificación del bloque de datos. No obstante, un bloque de datos correspondiente del sistema de base de datos distribuida incluye con preferencia en cada caso una suma de verificación de concatenación que se calculó para un bloque de datos precedente, en particular con más preferencia aún el bloque de datos inmediatamente precedente, del bloque de datos respectivo o bien que se refiere a éste. Por ejemplo es posible también formar una suma de verificación de concatenación correspondiente también sólo en una parte del correspondiente bloque de datos (por ejemplo bloque de datos precedente). De esta manera puede realizarse por ejemplo un bloque de datos que incluya una parte de integridad protegida y una parte desprotegida. Así podría realizarse por ejemplo un bloque de datos cuya parte de integridad protegida sea invariable y cuya parte desprotegida pueda modificarse incluso posteriormente. Bajo de integridad protegida ha de entenderse al respecto en particular que una modificación de datos de integridad protegida puede detectarse mediante una suma de verificación.
Los datos, que por ejemplo se almacenan en una transacción de un bloque de datos, pueden proporcionarse en particular de diferentes formas. En lugar de los datos, por ejemplo datos útiles como datos de medida o datos/relaciones de propiedad de activos (Assets), puede incluir por ejemplo una transacción de un bloque de datos sólo una suma de verificación para estos datos. La correspondiente suma de verificación puede realizarse entonces de diferentes formas. Puede tratarse por ejemplo de una suma de verificación del bloque de datos correspondiente a un bloque de datos (con los datos correspondientes) de otra base de datos o del sistema de base de datos distribuida, una suma de verificación de transacción de un bloque de datos con los datos correspondientes (del sistema de base de datos distribuida o de otra base de datos) o bien una suma de verificación de datos formada en base a los datos.
Adicionalmente puede incluir la transacción correspondiente una referencia o una indicación relativa a un lugar de almacenamiento (por ejemplo una dirección de un servidor de archivos e indicaciones relativas a dónde pueden encontrarse los datos correspondientes en un servidor de archivos; o bien una dirección de otra base de datos distribuida, que incluya los datos). Los datos correspondientes podrían proporcionarse entonces por ejemplo también en otra transacción de otro bloque de datos del sistema de base de datos distribuida (por ejemplo cuando los datos correspondientes y las sumas de verificación asociadas están incluidos/as en distintos bloques de datos). Por ejemplo también es plausible que estos datos se proporcionen a través de otro canal de comunicación (por ejemplo a través de otra base de datos y/o de un canal de comunicación asegurado criptográficamente).
También puede por ejemplo estar archivado en las correspondientes transacciones, adicionalmente a la suma de verificación, un registro de datos adicional (por ejemplo una referencia o una indicación relativa a un lugar de almacenamiento), que indica en particular un lugar de almacenamiento de donde pueden descargarse los datos. Esto es ventajoso en particular para mantener lo más reducido posible el tamaño en cuanto a datos de la cadena de bloques o del sistema de base de datos distribuida.
Bajo "de seguridad protegida" o "protegido criptográficamente" puede entenderse en el contexto de la invención por ejemplo una protección que en particular se realiza mediante un procedimiento criptográfico. Por ejemplo ello puede realizarse mediante una utilización del sistema de base de datos distribuida para la aportación o transmisión o envío de datos/transacciones correspondientes. Esto se logra con preferencia mediante una combinación de las diversas sumas (criptográficas) de verificación, interactuando las mismas en particular en sinergia, para por ejemplo mejorar la seguridad o la seguridad criptográfica para los datos de las transacciones. En otras palabras, en particular puede entenderse bajo "de seguridad protegida" en el contexto de la invención también "protegido criptográficamente" y/o "protegido frente a manipulación", pudiendo denominarse "protegido frente a manipulación" también "de integridad protegida".
Bajo una "concatenación de los/de bloques de datos de un sistema de base de datos distribuida" puede entenderse en el contexto de la invención por ejemplo que unos bloques de datos incluyen en cada caso una información (por ejemplo suma de verificación de concatenación) que remiten a otro bloque de datos u otros varios bloques de datos del sistema de base de datos distribuida o bien que referencian el mismo [1] [4] [5].
Bajo "inserción en el sistema de base de datos distribuida" y similares puede entenderse por ejemplo en el contexto de la invención que en particular se transfiere una transacción o bien las transacciones o un bloque de datos con sus transacciones a uno o varios nodos de un sistema de base de datos distribuida. Si por ejemplo se validan estas transacciones con éxito (por ejemplo por parte del/de lo/s nodo/s), se concatenan estas transacciones en particular como nuevo bloque de datos con al menos un bloque de datos existente en el sistema de base de datos distribuida [1] [4] [5]. Para ello se almacenan las correspondientes transacciones por ejemplo en un nuevo bloque de datos. En particular puede realizarse esta validación y/o concatenación mediante un nodo confiable (por ejemplo un mining node (nodo de minería), un oráculo de cadenas de bloques o una plataforma de cadenas de bloques). En particular puede entenderse entonces bajo una plataforma de cadenas de bloques una cadena de bloques como servicio (en inglés blockchain as service), tal como proponen por ejemplo Microsoft o IBM. En particular pueden archivar un nodo confiable y/o un nodo una respectiva suma de verificación de nodos (por ejemplo una firma digital) en un bloque de datos (por ejemplo en el bloque de datos que han validado y generado, que a continuación se concatena), para hacer posible en particular la identificación de quien ha generado el bloque de datos y/o hacer posible una identificación del nodo. Al respecto indica esta suma de verificación de nodos qué nodo por ejemplo ha concatenado el bloque de datos correspondiente con al menos otro bloque de datos del sistema de base de datos distribuida.
Bajo "transacción" o "transacciones" puede entenderse en el contexto de la invención por ejemplo un contrato inteligente (Smart-contract) [4] [5], una estructura de datos o un registro de datos de transacción, que en particular incluye en cada caso una de las transacciones o varias transacciones. Bajo "transacción" o "transacciones" pueden entenderse en el contexto de la invención por ejemplo también los datos de una transacción de un bloque de datos de una cadena de bloques (en inglés blockchain). Una transacción puede incluir en particular un código de programa, que por ejemplo realiza un smart contract. Por ejemplo en el contexto de la invención puede entenderse bajo transacción también una transacción de control y/o transacción de confirmación. Alternativamente puede ser una transacción por ejemplo una estructura de datos que memoriza datos (por ejemplo las órdenes de control y/o datos de contrato y/u otros datos como datos de vídeo, datos de usuario, datos de medida, etc.). Una "transacción" puede ser en el contexto de la invención por ejemplo también un mensaje o un mensaje de comunicación o bien denominarse como tal. Correspondientemente es por ejemplo un mensaje una transacción, incluyendo el mensaje por ejemplo órdenes de control para controlar los aparatos y/o también requisitos (por ejemplo exigencias prescritas) para la ejecución de las órdenes de control.
En particular ha de entenderse bajo "almacenamiento de transacciones en bloques de datos", “almacenamiento de transacciones” y similares un almacenamiento directo o almacenamiento indirecto. Bajo un almacenamiento directo puede entenderse por ejemplo entonces que el bloque de datos correspondiente (el sistema de base de datos distribuida) o la correspondiente transacción (del sistema de base de datos distribuida) incluyen los datos respectivos. Bajo un almacenamiento indirecto puede entenderse entonces por ejemplo que el correspondiente bloque de datos o la correspondiente transacción incluye una suma de verificación y opcionalmente un registro de datos adicional (por ejemplo una referencia o una indicación relativa a un lugar de memoria) para los datos correspondientes, no estando almacenados los correspondientes datos por lo tanto directamente en el bloque de datos (o la transacción); es decir, en lugar de ello sólo una suma de verificación para estos datos. En particular al almacenar transacciones en bloques de datos, pueden validarse por ejemplo estas sumas de verificación, tal como se explica por ejemplo bajo "inserción en el sistema de base de datos distribuida".
Bajo un “código de programa” (por ejemplo llamado también smart contract o también chain-code) puede entenderse en el contexto de la invención por ejemplo una orden de programa o varias órdenes de programa que en particular están almacenadas en una o varias transacciones. El código de programa es en particular ejecutable y se ejecuta por ejemplo mediante el sistema de base de datos distribuida. Esto puede realizarse por ejemplo mediante un entorno de ejecución (por ejemplo una máquina virtual), siendo el entorno de ejecución y/o el código de programa con preferencia Turing completo. El código de programa se ejecuta con preferencia mediante la infraestructura del sistema de base de datos distribuida [4] [5]. Entonces se realiza por ejemplo una máquina virtual mediante la infraestructura del sistema de base de datos distribuida.
Bajo un "Smart Contract" (también llamado chain-code) puede entenderse en el contexto de la invención por ejemplo un código de programa ejecutable [4][5] (véase en particular la definición de “Program-code”). El Smart Contract está almacenado con preferencia en una transacción de un sistema de base de datos distribuida (por ejemplo una cadena de bloques), por ejemplo en un bloque de datos del sistema de base de datos distribuida. Por ejemplo puede ejecutarse el Smart Contract tal como se ha descrito en la definición de “Program-code”, en particular en el contexto de la invención.
Bajo “Smart-Contract-Process” o bien un “Smart-Contract” puede entenderse en el contexto de la invención en particular también una ejecución de un código de programa o de un Smart-Contract en un proceso mediante el sistema de base de datos distribuida o bien su infraestructura.
Bajo “Acreditación Proof-of-Work” (prueba de trabajo) puede entenderse en el contexto de la invención por ejemplo la solución a una tarea intensiva en cálculo, que en particular ha de resolverse en función del contenido del bloque de datos/ contenido de una determinada transacción [1] [4] [5]. Una tal tarea intensiva en cálculo también se denomina por ejemplo puzzle criptográfico.
Bajo un "sistema de base de datos distribuida", que por ejemplo también puede denominarse base de datos distribuida, puede entenderse en el contexto de la invención por ejemplo un base de datos distribuida descentrizadamente, una cadena de bloques (en inglés blockchain), un libro mayor (ledger) distribuido, un sistema de memoria distribuido, un sistema (DLTS) basado en la tecnología de libro mayor distribuido (DLT), un sistema de base de datos a prueba de revisiones, una nube (cloud), un servicio en la nube, una cadena de bloques en una nube, un sistema de memoria distribuida o una base de datos punto a punto (peer-to-peer). También se pueden utilizar por ejemplo diferentes implementaciones de una cadena de bloques o de un DLTS, como por ejemplo una cadena de bloques o un DLTS que utilizan un gráfico acíclico dirigido (Directed Acyclic Graph, DAG), un puzzle criptográfico, un gráfico hash o una combinación de las variantes de implementación mencionadas [6] [7]. También pueden implementarse por ejemplo distintos procedimientos de consenso (en inglés, consensus algorithms). Esto puede ser, por ejemplo, un procedimiento de consenso mediante un puzzle criptográfico, Gossip about Gossip (chismes sobre chismes), Virtual Voting (votación virtual) o una combinación de los citados procedimientos (por ejemplo Gossip about Gossip combinado con Virtual Voting) [6] [7]. Si por ejemplo se utiliza una cadena de bloques, se puede implementar la misma en particular mediante una realización basada en Bitcoin o una realización basada en Ethereum [1] [4] [5]. Bajo un "sistema de base de datos distribuida" puede entenderse por ejemplo también un sistema de base de datos distribuida del cual al menos una parte de sus nodos y/o aparatos y/o infraestructura están realizados mediante una nube (cloud). Por ejemplo están realizados los componentes correspondientes como nodos/aparatos en la nube (por ejemplo como nodo virtual en una máquina virtual). Esto se puede realizar por ejemplo mediante WM-Ware Amazon Web Services o Microsoft Azure. Debido a la gran flexibilidad de las variantes de implementación explicadas, se pueden combinar entre sí en particular también aspectos parciales de las variantes de implementación citadas, utilizándose por ejemplo un gráfico hash como cadena de bloques, pudiendo también por ejemplo carecer de bloques la propia cadena de bloques.
Si por ejemplo se utiliza un Directed Acyclic Graph (DAG), por ejemplo IOTA o Tangle, entonces están conectadas en particular transacciones o bloques o nodos del gráfico entre sí a través de bordes orientados. Esto significa en particular que unos bordes (con preferencia todos los bordes) tienen la misma dirección (con preferencia siempre la misma dirección), similarmente por ejemplo a como sucede con el tiempo. En otras palabras, en particular no es posible iniciar o saltar hacia atrás (es decir, en contra de la misma dirección común) en las transacciones o los bloques o los nodos del gráfico. Acíclico significa aquí en particular que no existe ningún bucle cuando se recorre el gráfico.
El sistema de base de datos distribuida puede ser, por ejemplo, un sistema público de base de datos distribuida (por ejemplo, una cadena de bloques pública) o un sistema de base de datos distribuida cerrado (o privado), por ejemplo, una cadena de bloques privada.
Si se trata por ejemplo de un sistema público de base de datos distribuida, esto significa que al sistema de base de datos distribuida pueden acceder o bien puede aceptar el mismo nuevos nodos y/o aparatos sin acreditación o sin autentificación o sin informaciones al anunciarse o sin credenciales. En tal caso, en particular, los operadores de los nodos y/o aparatos pueden permanecer en el anonimato.
Si el sistema de base de datos distribuida es por ejemplo un sistema de base de datos distribuida cerrado, los nuevos nodos y/o aparatos necesitan por ejemplo una acreditación válida y/o informaciones de autentificación válidas y/o credenciales válidas y/o informaciones válidas al anunciarse para poder acceder al sistema de base de datos distribuida y/o para ser aceptado por el mismo.
Un sistema de base de datos distribuida también puede ser, por ejemplo, un sistema de comunicación distribuido para el intercambio de datos. Puede tratarse por ejemplo de una red o una red peer-2-peer (punto a punto). Alternativa o adicionalmente puede realizarse la invención por ejemplo también mediante una aplicación peer-to-peer en lugar del sistema de base de datos distribuida.
Correspondientemente, puede utilizarse por ejemplo un protocolo de comunicación peer-to-peer en lugar del sistema de base de datos distribuida. Entonces son por ejemplo los citados mensajes/transacciones del sistema de base de datos distribuida mensajes correspondientes del protocolo de comunicación peerto-peer o bien se almacenan los correspondientes datos en mensajes correspondientes. Al respecto ha de entenderse por ejemplo bajo memorización de las transacciones en el sistema de base de datos distribuida una transferencia de un mensaje correspondiente a la infraestructura de comunicación peer-topeer, que implementa el protocolo de comunicación peer-to-peer. También puede utilizarse por ejemplo para ello o bien en lugar del sistema de base de datos distribuida una interfaz peer-to-peer o una aplicación peer-to-peer, para memorizar y/o transferir las correspondientes transacciones y/o mensajes.
Bajo "bloque de datos", que también puede denominarse "miembro" o "bloque", en particular según el contexto y la realización, puede entenderse en el contexto de la invención por ejemplo un bloque de datos de un sistema de base de datos distribuida (por ejemplo una cadena de bloques o una base de datos peer-to-peer), que está realizado en particular como estructura de datos y que preferiblemente incluye en cada caso una de las transacciones o varias de las transacciones. En una implementación, la base de datos (o el sistema de base de datos) puede ser por ejemplo un sistema basado en DLT (DLTS) o una cadena de bloques y un bloque de datos puede ser un bloque de la cadena de bloques o del DLTS. Un bloque de datos puede incluir por ejemplo informaciones sobre el tamaño (tamaño de datos en bytes) del bloque de datos, una cabecera de bloque de datos (en inglés block-header), un contador de transacciones y una o varias transacciones [1]. La cabecera del bloque de datos puede incluir por ejemplo una versión, una suma de verificación de concatenación, una suma de verificación del bloque de datos, una marca de tiempo, una acreditación de Proof-of-Work y un nonce (valor para una sola vez, valor aleatorio o contador, que se utiliza para la acreditación de Proof-of-Work) [1] [4] [5]. Un bloque de datos también puede ser por ejemplo sólo una determinada zona de memoria o zona de direcciones del conjunto de datos que están memorizados en el sistema de base de datos distribuida. Con ello pueden realizarse por ejemplo sistemas de base de datos distribuidas sin bloques (en inglés blockless), como por ejemplo la cadena de IoT (ITC), IOTA y Byteball. Entonces se combinan entre sí en particular las funcionalidades de los bloques de una cadena de bloques y de las transacciones de tal manera que, por ejemplo las propias transacciones aseguran la secuencia o cadena de transacciones (del sistema de base de datos distribuida), memorizándose por lo tanto en particular con seguridad protegida. Para ello pueden por ejemplo concatenarse las propias transacciones entre sí con una suma de verificación de concatenación, en el sentido de que con preferencia una suma de verificación separada o la suma de verificación de la transacción de una o varias transacciones sirve como suma de verificación de concatenación, que al memorizar una nueva transacción en el sistema de base de datos distribuida se memoriza a la vez en la correspondiente nueva transacción. En una tal forma de realización, un bloque de datos también puede incluir por ejemplo una o varias transacciones, por ejemplo en el caso más simple un bloque de datos de una transacción.
Bajo "nonce" puede entenderse en el contexto de la invención por ejemplo un nonce criptográfico (abreviatura de: "used only once” o usado sólo una vez [2] o "number used once”, número usado una vez) [3]). En particular un nonce designa una combinación individual de números o una combinación de letras que se utiliza preferiblemente sólo una vez en el contexto correspondiente (por ejemplo transacción, transmisión de datos).
Bajo "bloques de datos anteriores a un (determinado) bloque de datos del sistema de base de datos distribuida" puede entenderse en el contexto de la invención por ejemplo el bloque de datos del sistema de base de datos distribuida que en particular precede directamente a un (determinado) bloque de datos. Alternativamente, bajo "bloques de datos anteriores a un (determinado) bloque de datos del sistema de base de datos distribuida" también pueden entenderse en particular todos los bloques de datos del sistema de base de datos distribuida que preceden al bloque de datos determinado. De esta manera puede formarse por ejemplo la suma de verificación de concatenación o la suma de verificación de la transacción en particular sólo sobre el bloque de datos (o sus transacciones) que precede directamente al bloque de datos determinado o sobre todos los bloques de datos (o sus transacciones) anteriores al primer bloque de datos.
Bajo un "nodo de cadena de bloques", "nodo", "nodo de un sistema de base de datos distribuida" y similares, pueden entenderse en el contexto de la invención por ejemplo aparatos (por ejemplo aparatos de campo, teléfonos móviles), ordenadores, teléfonos inteligentes, clientes o participantes, que realizan operaciones (con) el sistema de base de datos distribuida (por ejemplo una cadena de bloques) [1] [4] [5]. Tales nodos pueden por ejemplo ejecutar transacciones de un sistema de base de datos distribuida o de sus bloques de datos o insertar o concatenar nuevos bloques de datos con nuevas transacciones en el sistema de base de datos distribuida mediante nuevos bloques de datos. En particular, esta validación y/o concatenación puede realizarse mediante un nodo confiable (por ejemplo un Mining Node o nodo de minería) o exclusivamente mediante nodos confiables. Un nodo confiable es por ejemplo un nodo que dispone de medidas de seguridad adicionales (por ejemplo firewalls, limitaciones de acceso al nodo o similares), para impedir una manipulación del nodo. Alternativa o adicionalmente, un nodo confiable puede por ejemplo, cuando se concatena un nuevo bloque de datos con el sistema de base de datos distribuida, memorizar una suma de verificación de nodo (por ejemplo una firma digital o un certificado) en el nuevo bloque de datos. Con ello puede aportarse en particular una acreditación que indica que el bloque de datos correspondiente ha sido insertado por un nodo determinado o bien indica su origen. Los aparatos (por ejemplo el aparato correspondiente) son por ejemplo aparatos de un sistema técnico y/o instalación industrial y/o de una red de automatización y/o de una instalación fabril, que son en particular también un nodo del sistema de base de datos distribuida. Entonces pueden ser los aparatos por ejemplo aparatos de campo o aparatos en Internet de las Cosas, que en particular también son un nodo del sistema de base de datos distribuida. Los nodos también pueden por ejemplo incluir al menos un procesador para por ejemplo realizar su funcionalidad implementada en ordenador.
Bajo un "oráculo de cadena de bloques" y similares puede entenderse en el contexto de la invención por ejemplo nodos, aparatos u ordenadores, que por ejemplo tienen un módulo de seguridad, que por ejemplo dispone de mecanismos de protección de software (por ejemplo procedimientos criptográficos), equipos de protección mecánicos (por ejemplo una carcasa que puede cerrarse) o equipos de protección eléctricos (por ejemplo protección tamper (antimanipulación) o un sistema de protección que borra los datos del módulo de seguridad en caso de utilización/tratamiento inadmisible del oráculo de cadena de bloques). El módulo de seguridad puede incluir entonces por ejemplo claves criptográficas o un secreto (por ejemplo una secuencia de caracteres) que se necesitan para calcular las sumas de verificación (por ejemplo sumas de verificación de transacciones o sumas de verificación de nodo).
Bajo un "ordenador" o un "aparato" puede entenderse en el contexto de la invención por ejemplo, un (sistema de) ordenador, un cliente, un teléfono inteligente, un aparato o un servidor, cada uno de los cuales está dispuesto fuera de la cadena de bloques y que no son parte de la infraestructura del sistema de base de datos distribuida o bien que forman una infraestructura separada. Un aparato es por ejemplo un aparato de fabricación y/o un aparato electromecánico y/o un aparato electrónico y/o un aparato de una red de automatización (por ejemplo para instalaciones técnicas industriales, instalaciones de fabricación, instalaciones de energía o de distribución de recursos), no siendo estos aparatos en particular capaces de comunicar (directamente) con el sistema de base de datos distribuida. Correspondientemente, puede ser por ejemplo un nodo un aparato, un ordenador, un aparato virtual o un ordenador virtualizado.
Bajo un “canal de comunicación separado y/o directo” puede entenderse en el contexto de la invención por ejemplo una transmisión de datos (por ejemplo un envío, una recepción, una transmisión, una aportación o una transferencia) mediante un canal de comunicación. Por ejemplo a través de ese canal pueden enviarse con más rapidez transacciones/mensajes y almacenarse una confirmación sobre ese intercambio de datos en el sistema de base de datos distribuida. Con ello pueden transmitirse por ejemplo transacciones y/o mensajes (por ejemplo órdenes de control y/o transacciones de control) importantes y/o críticas/os en el tiempo con mayor velocidad a un destino correspondiente (por ejemplo a un aparato), evitándose así por ejemplo la más lenta transmisión de datos del sistema de base de datos distribuida (por ejemplo al replicarse los bloques de datos/transacciones). Por ejemplo puede establecerse para la invención y los aspectos citados, ejemplos de realización, formas de realización de la invención y sus variantes para una transmisión de datos entre un aparato (y/o nodo), un canal de comunicación separado y/o directo. Por ejemplo en un canal de comunicación directo se intercambian las transacciones/los mensajes directamente entre un emisor (por ejemplo el (primero) y un receptor/destino (por ejemplo el aparato que ha de ejecutar, procesar o evaluar las órdenes de control) sin implicar a otros nodos y/o aparatos del sistema de base de datos distribuida en ese intercambio de datos. Por el contrario, en un canal de comunicación separado pueden estar implicados nodos y/o aparatos del sistema de base de datos distribuida por ejemplo en el intercambio de datos. Cuando se ha establecido el canal de comunicación separado y/o directo con éxito entre el emisor y el receptor (habiéndose establecido por lo tanto a su través en particular un enlace de comunicación), entonces pueden intercambiarse datos por ejemplo en forma de transacciones o mensajes entre el emisor y el receptor. Si por ejemplo se cierra/ finaliza el canal de comunicación (es decir, finaliza en particular un enlace de comunicación), entonces se almacena por ejemplo un resultado de la transmisión de datos por ejemplo en forma de transacciones (por ejemplo como una transacción de confirmación de la transmisión o transacción de confirmación) en el sistema de base de datos distribuida (por ejemplo en bloques de datos del sistema de base de datos distribuida). El resultado de la trasmisión de datos puede ser por ejemplo una confirmación de la transmisión o de la recepción de las correspondientes transacciones/mensajes y/o un resultado del análisis y/o la última transacción/mensaje transmitida/o que se transmitió a través del canal de comunicación separado y/o directo antes de que se cerrase el canal de comunicación. La memorización de la transacción con el resultado puede realizarse por ejemplo mediante el emisor y/o el receptor. El resultado del análisis puede ser por ejemplo la confirmación de la recepción del mensaje/transacción y/o que el mensaje/transacción y por ejemplo sus órdenes de control pueden ser procesados en el destino/receptor (por ejemplo una confirmación de que puede ejecutarse mediante el destino). Esto puede memorizarse por ejemplo a su vez en una transacción (por ejemplo en una transacción de confirmación de la viabilidad de la ejecución). Alternativa o adicionalmente se memoriza la transacción de confirmación de la viabilidad de la ejecución en el sistema de base de datos distribuida. La transacción de confirmación de la viabilidad de la ejecución incluye entonces por ejemplo un identificador inequívoco para el aparato, que es capaz de ejecutar las órdenes de control y/o que puede por ejemplo indicar cuándo se ejecutarán como muy tarde las órdenes de control del mensaje/transacción. Alternativa o adicionalmente incluye la transacción de confirmación de la viabilidad de la ejecución por ejemplo datos sobre la ejecución, por ejemplo sobre la calidad del procesamiento de órdenes de control o en qué grado se procesan (por ejemplo con qué rapidez se procesan las órdenes de control, cuándo las mismas están procesadas con seguridad, con qué exactitud o precisión se ejecutan las órdenes de control, por ejemplo al ejecutar órdenes de control de la fabricación, para documentar por ejemplo un mecanizado de una pieza.
Alternativa o adicionalmente incluye la transacción de confirmación de la viabilidad de la ejecución por ejemplo datos específicos del aparato (por ejemplo tipo del aparato; estado actual del aparato, como por ejemplo preparado para funcionar, necesario mantenimiento, estado de falta del aparato correspondiente; número de serie del aparato, emplazamiento del aparato; una suma de verificación/hash de las órdenes de control ejecutadas, calculada por ejemplo con ayuda de la citada invención; herramientas utilizadas: materiales utilizados o una combinación de los datos indicados) del correspondiente aparato (por ejemplo del destino/receptor) que son relevantes para la ejecución de las órdenes de control, habiendo determinado el aparato por ejemplo los datos específicos del aparato correspondientes al respectivo aparato en el instante de la confirmación de la viabilidad de la ejecución. Entonces se realiza por ejemplo la confirmación de la viabilidad de la ejecución y la determinación de los datos específicos del aparato (aproximadamente) en el mismo instante, por ejemplo dentro de una ventana de tiempo de unos pocos segundos o minutos. Por ejemplo pueden haberse intercambiado también los datos de la transacción de confirmación de la viabilidad de la ejecución entre el emisor y el receptor antes de que se memorice la transacción de confirmación de la viabilidad de la ejecución por ejemplo en el sistema de base de datos distribuida. La transacción de confirmación de la viabilidad de la ejecución puede además estar por ejemplo protegida criptográficamente (por ejemplo la misma puede estar encriptada o bien estar protegida por una suma de verificación de la transacción). También puede memorizarse por ejemplo el último mensaje intercambiado a través del canal de comunicación en la transacción de confirmación de la transmisión (por ejemplo cuando se interrumpe el canal de comunicación) y la transacción de confirmación de la transmisión por ejemplo se memoriza entonces en el sistema de base de datos distribuida. Este último mensaje intercambiado puede utilizarse por ejemplo para continuar con el intercambio de datos y/o la transmisión de datos cuando se establece de nuevo el canal de comunicación. La transacción de confirmación de la transmisión puede por ejemplo estar también protegida criptográficamente. La transacción de confirmación de la transmisión puede incluir por ejemplo las órdenes de control y/o la transacción de control y/o el último mensaje intercambiado entre el emisor y el receptor. También puede utilizarse una prosecución del intercambio de datos y/o de la transmisión de datos por ejemplo para otras transmisiones de datos y no queda limitada especialmente a la transmisión de datos y/o el intercambio de datos correspondiente a un único mensaje.
El canal de comunicación separado y/o directo es ventajoso para mejorar una velocidad de transmisión y/o tiempo de latencia de la transmisión. También es posible por ejemplo un procedimiento híbrido, en el que por ejemplo se utiliza un canal de comunicación correspondiente para órdenes de control críticas en el tiempo (por ejemplo con prioridad alta o crítica). Por ejemplo puede determinarse en base a las exigencias de ejecución (siendo por ejemplo críticas en el tiempo órdenes de control, teniendo prioridad las órdenes para una aplicación de tiempo real) si se trata de las correspondientes órdenes de control que deben transmitirse a través de un canal de comunicación separado correspondiente y/o canal de comunicación directo. Alternativa o adicionalmente puede determinar el módulo de determinación, por ejemplo al determinar el registro de datos de control del mensaje, las correspondientes instrucciones para una transmisión de datos del mensaje.
Bajo un "objeto" pueden entenderse en el contexto de la invención por ejemplo un objeto físico, productos físicos, una pieza (por ejemplo una pieza de un motor o una pieza de mecanismo de propulsión o componente electrónico o una placa de circuitos con elementos electrónicos), un producto semielaborado en la fabricación, materias primas (por ejemplo diamantes, petróleo), alimentos (por ejemplo leche o plátanos) o aparatos (por ejemplo aparatos eléctricos, aparatos electromecánicos, aparatos electrónicos o aparatos mecatrónicos).
Bajo "características individuales" (o por ejemplo sólo como características) pueden entenderse en el contexto de la invención por ejemplo características (por ejemplo en forma de datos) que pueden captarse mediante un sensor en el objeto o sobre el mismo y que por ejemplo pueden corresponder a una magnitud física (por ejemplo longitud de onda de la luz). Las características individuales son entonces por ejemplo características individuales del objeto, es decir, por ejemplo corresponden estas características y/o datos a una combinación única de una secuencia de unos y ceros (huella dactilar digital u otra clase de identificador único (Unique Identifier)) en forma de datos codificados en binario, que por ejemplo pueden asociarse fijamente a un objeto correspondiente o bien al objeto. Las características individuales pueden ser por ejemplo características de la superficie (por ejemplo arañazos, irregularidades de la superficie) del objeto. Alternativa o adicionalmente pueden ser las características individuales por ejemplo datos espectroscópicos sobre el objeto (por ejemplo espectros medidos, imágenes hiperespectrales). Por ejemplo puede ser el objeto piedras preciosas, petróleo o alimentos, de los cuales se capta, por ejemplo mediante un aparato detector en forma de un espectroscopio, un espectro para el objeto o una posición predeterminada (por ejemplo una superficie y/o posición predeterminada) del objeto. En este sentido pueden ser las características individuales por ejemplo características espectroscópicas individuales. Las características individuales pueden ser también por ejemplo características que por ejemplo no se pueden eliminar del objeto sin a la vez dañar o modificar el objeto. Las características correspondientes pueden denominarse por ejemplo características intrínsecas individuales del objeto.
Las características individuales pueden ser por ejemplo también características individuales de una señal de ruido, que capta por ejemplo el aparato detector (por ejemplo un osciloscopio). Si el objeto es por ejemplo un componente electrónico, entonces puede captarse por ejemplo a través de una interfaz del objeto una señal de ruido individual del objeto o una señal individual del objeto (por ejemplo un transmisor de señales que genera una señal específica invariable, que por ejemplo puede configurarse una sola vez). En esta señal de ruido pueden captarse y/o tenerse en cuenta por ejemplo amplitudes de la señal de ruido para determinadas resistencias y/o atenuaciones. También puede proporcionarse por ejemplo una señal de prueba predeterminada por el objeto y tenerse en cuenta entonces dado el caso distorsiones de la señal para las características individuales. Alternativa o adicionalmente puede enviar por ejemplo el aparato detector una señal de prueba que se trasmite/envía por ejemplo a través de circuitos predeterminados del objeto. Por ejemplo genera el objeto o bien los correspondientes circuitos del objeto una respuesta que incluye por ejemplo la señal de prueba, transmitiéndose la respuesta al aparato detector. Se detecta entonces por ejemplo la influencia individual de los circuitos eléctricos sobre la señal de prueba mediante el aparato detector como las características individuales. Esta influencia individual puede ser por ejemplo una distorsión de la señal de prueba. Correspondientemente pueden ser las características individuales por ejemplo características electrónicas individuales. También pueden ser por ejemplo las características individuales características acústicas del objeto (por ejemplo ruidos de un motor, ruidos del funcionamiento). Para que por ejemplo el aparato detector pueda captar las características individuales lo más fácilmente posible, se predetermina la clase y el lugar (por ejemplo puede denominarse configuración) en el objeto por ejemplo mediante un registro de datos del objeto. Este registro de datos del objeto puede proporcionarse por ejemplo mediante una base de datos (por ejemplo un sistema de base de datos distribuida) o bien este registro de datos del objeto puede descargarse en el objeto mediante una memoria de datos anexa al objeto para el módulo detector o para el aparato detector. El objeto puede incluir por ejemplo también la memoria de datos. El registro de datos del objeto puede incluir entonces por ejemplo informaciones sobre qué clase de medición (por ejemplo óptica, espectral, acústica, eléctrica, optoacústica, multiespectral optoacústica) con qué clase de sensor (por ejemplo micrófono, sensor de ultrasonido, sensor de infrasonido, sistema de medición espectral, sistemas de medida optoacústicos), en qué lugar, a lo largo de qué periodo de tiempo y con qué parámetros de medida (por ejemplo atenuación, filtro de señales como pasoalto, pasobajo, pasabanda, frecuencias, longitudes de onda) han de realizarse para captar las características individuales.
Alternativamente pueden predeterminarse fijamente por ejemplo para objetos similares (por ejemplo piezas del mismo tipo) las correspondientes informaciones necesarias para captar las características individuales. Por ejemplo en un objeto en forma de una pieza de trabajo se capta la parte inferior del objeto o bien están realizadas marcas en el objeto para que el objeto encuentre las correspondientes posiciones en el objeto y pueda captar las características individuales. Estas informaciones fijamente predeterminadas pueden estar almacenadas por ejemplo para objetos correspondientemente similares en un sistema de base de datos (por ejemplo el sistema de base de datos distribuida) o bien pueden estar fijamente preconfiguradas en aparatos correspondientes.
Bajo una "curva característica individual del objeto" (o por ejemplo sólo denominada curva característica) pueden entenderse en el contexto de la invención por ejemplo características individuales procesadas (por ejemplo mediante un procesamiento de datos), que entonces se procesan en particular tal que la característica individual puede generarse de manera reproducible para las mismas características individuales. En particular pueden tenerse en cuenta entonces valores de tolerancia para compensar por ejemplo tolerancias de medida o inexactitudes de medida del aparato detector. La característica individual es por ejemplo una huella digital para el objeto. La huella digital se calcula por ejemplo mediante un algoritmo para huellas digitales (por ejemplo algoritmo de Rabin para huella digital). Si las características individuales son por ejemplo una señal o señal de ruido, entonces pueden utilizarse la relación señal/ruido, fase de la señal, frecuencias, informaciones de longitud de onda, amplitudes de frecuencia. También pueden por ejemplo evaluarse las características individuales por ejemplo en cuanto a longitudes de onda y amplitudes en espectros. Cuando se trata de imágenes hiperespectrales, puede evaluarse por ejemplo para las correspondientes longitudes de onda de las imágenes la intensidad de las longitudes de onda en una o varias posiciones de la imagen o bien posiciones en el objeto (por ejemplo en las correspondientes imágenes captadas).
Antes de calcular la correspondiente curva característica para las correspondientes características individuales, pueden preelaborarse por ejemplo las características individuales para compensar inexactitudes de medición. Por ejemplo pueden encontrarse los valores de medida de las características individuales en una posible gama de valores (por ejemplo de 1 a 100). Esta gama de valores se divide por ejemplo en intervalos predeterminados, por ejemplo 5 intervalos de valores (1 - 20, 21 - 40, 41 -60, 61 -80, 81 - 100). A los distintos intervalos de valores se asignan entonces valores específicos del intervalo (por ejemplo 1 - 20: A, 21 - 40: B, 41 - 60: C, 61 - 80: D; 81 - 100: E). Cuando se evalúa o preelabora por ejemplo un valor de medida de las características individuales, se comprueba por ejemplo en qué intervalo de valores se encuentra el valor de medida concreto y se utilizan los valores específicos del intervalo para calcular la huella digital. Para los valores 1 y 100, el resultado sería por ejemplo “AE”. También pueden utilizarse por ejemplo otros procedimientos. Éstos son por ejemplo procedimientos de valores medios o procedimientos de valores medios deslizantes. Las características individuales correspondientes, dado el caso preelaboradas, se utilizan a continuación por ejemplo como parámetros de entrada para un algoritmo para calcular la huella dactilar digital. Alternativa o adicionalmente puede por ejemplo utilizarse una de las variantes mencionadas del procesamiento previo/procesamiento en los datos (características individuales y/o características individuales del objeto), que sirven para determinar o aportar o calcular la primera clave criptográfica. Alternativamente puede por ejemplo utilizarse el procesamiento previo/procesamiento descrito para los datos correspondientes (por ejemplo las características individuales y/o características individuales del objeto), antes de utilizar las mismas también para otros fines. Por ejemplo puede calcularse la suma de verificación criptográfica en base a estos datos así procesados, utilizando esos datos por ejemplo como secreto en el cálculo de la suma de verificación criptográfica (por ejemplo esto puede utilizarse para el aparato o aparato de verificación).
Bajo "mensajes” pueden entenderse en el contexto de la invención por ejemplo mensajes de un protocolo de comunicación y/o transacciones de un sistema de base de datos (por ejemplo un sistema de base de datos distribuida). Un mensaje puede corresponder por ejemplo a una estructura de datos o bien incluir un mensaje la estructura de datos. El correspondiente mensaje puede incluir por ejemplo también la correspondiente suma de verificación criptográfica.
Bajo una “estructura de datos” puede entenderse en el contexto de la invención por ejemplo un mensaje o una transacción. Alternativamente incluye por ejemplo un mensaje o una transacción una estructura de datos correspondiente. Por ejemplo incluyen dado el caso la estructura de datos, el mensaje o la transacción una correspondiente suma de verificación criptográfica para la estructura de datos.
Bajo una "clave criptográfica", por ejemplo la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica, puede entenderse en el contexto de la invención por ejemplo una clave criptográfica simétrica o una clave privada de un par de claves criptográficas asimétricas o una clave pública de un par de claves criptográfico asimétrico.
Bajo "destino" puede entenderse en el contexto de la invención por ejemplo un aparato o un receptor al que debe transmitirse un mensaje mediante un protocolo de comunicación.
Bajo "prioridad de un mensaje" puede entenderse en el contexto de la invención por ejemplo la forma y/o en qué secuencia se procesa y/o retransmite un mensaje correspondiente por parte de un nodo/aparato. Una elevada prioridad significa entonces por ejemplo que un mensaje correspondiente debe procesarse con la mayor rapidez y/o eficiencia posible en comparación con mensajes con inferior prioridad. En otras palabras, se da preferencia a un mensaje con una elevada prioridad frente a un mensaje con una prioridad inferior.
Por ejemplo la estructura de datos utilizada por la invención puede incluir otros datos adicionales, como por ejemplo órdenes de control, a fin de controlar por ejemplo un transporte a continuación o un procesamiento a continuación del objeto cuando por ejemplo se ha detectado mediante la invención que el objeto es auténtico o bien que corresponde al objeto para el que por ejemplo ya se ha memorizado una estructura de datos correspondiente (por ejemplo con una suma de verificación) por ejemplo en un sistema de base de datos distribuida.
Con la invención es posible en particular realizar una infraestructura descentralizada (basada en cadenas de bloques), que gestiona productos (por ejemplo objetos) reales y/o físicos mediante una infraestructura digital, así como su procesamiento (por ejemplo fabricación, transporte y confirmación de su autenticidad). A menudo se generan por ejemplo para los objetos físicos gemelos digitales, para controlar por ejemplo el procesamiento a continuación de un objeto (por ejemplo de una pieza de trabajo) y/o documentar su transporte y etapas de trabajo. Por ejemplo pueden almacenarse datos mediante el gemelo digital en la estructura de datos. Cuando por ejemplo se suministra un tal objeto, existe una demanda o una necesidad de poder comprobar si el objeto es realmente el objeto que está asociado al gemelo digital. Para resolver este problema, se captan por ejemplo mediante el aparato detector las características individuales del objeto. Las características individuales pueden ser por ejemplo estructuras de la superficie del objeto, cuando el objeto es por ejemplo una pieza de trabajo fabricada mediante mecanización. Entonces pueden por ejemplo captarse las características individuales en posiciones predeterminadas del objeto mediante el aparato detector (por ejemplo un aparato detector de superficies, como por ejemplo un escáner de superficies en 3D o una cámara de superficie) pudiéndose tratar por ejemplo en un tal caso, en cuanto a las características individuales, de características individuales de la superficie del objeto. También es plausible por ejemplo que se haya incorporado al objeto una huella dactilar digital en forma de las características individuales. Esta huella dactilar o bien las características digitales no pueden detectarse, o sólo con un coste técnico considerable, por ejemplo a simple vista y/o sin conocimientos sobre la clase y la posición. Correspondientemente pueden por ejemplo tenerse las informaciones para captar las características individuales en una memoria protegida del aparato, tal que no puedan acceder a estas informaciones personas no autorizadas. La huella dactilar incorporada puede ser por ejemplo irregularidades de la superficie, generadas durante la fabricación del objeto. Alternativa o adicionalmente puede tratarse de la huella dactilar en base a la aplicación de tintas o partículas, aplicándose por ejemplo las tintas o partículas tal que se genera un espectro individual para el objeto. Para ello pueden distribuirse por ejemplo distintas tintas/partículas por la superficie del objeto, con lo que por ejemplo se genera un espectro geométrico para que por ejemplo en determinadas posiciones del objeto pueda medirse un espectro predeterminado. El espectro o bien las tintas/partículas están elegidos/as por ejemplo tal que no se encuentren en el espectro visible para el ojo humano. Puede tratarse entonces por ejemplo de un espectro que se encuentre más allá de los 800 nm (por ejemplo longitudes de onda > 800 nm, como una gama de longitudes de onda entre 800 nm y 1000 nm).
Las características individuales pueden ser por ejemplo también otras características distintas de las características de la superficie. Por ejemplo pueden ser las características individuales datos espectroscópicos sobre el objeto. Por ejemplo puede ser el objeto piedras preciosas, petróleo o alimentos, de los cuales se capta por ejemplo mediante un aparato detector en forma de un espectroscopio un espectro para el objeto o una posición predeterminada (por ejemplo una superficie y/o posición predeterminada) del objeto. En este sentido pueden ser las características individuales por ejemplo características espectroscópicas individuales. Las características individuales pueden ser por ejemplo también características individuales de una señal de ruido que por ejemplo se capta mediante el aparato detector (por ejemplo un osciloscopio). Si el objeto es por ejemplo un componente electrónico, entonces puede captarse por ejemplo a través de una interfaz del objeto una señal de ruido individual del objeto o bien una señal del objeto (por ejemplo un transmisor de señales que genera una señal específica invariable, que por ejemplo puede configurarse una sola vez). En esta señal de ruido pueden captarse y/o tenerse en cuenta por ejemplo amplitudes de la señal de ruido para determinadas resistencias y/o atenuaciones. También puede proporcionarse por ejemplo una señal de prueba predeterminada mediante el objeto y entonces tenerse en cuenta dado el caso distorsiones de la señal para las características individuales. Alternativa o adicionalmente puede enviar por ejemplo el aparato detector una señal de prueba, que se transmite/envía por ejemplo mediante circuitos eléctricos del objeto predeterminados. Por ejemplo puede generar el objeto o bien los correspondientes circuitos eléctricos del objeto una respuesta, que por ejemplo incluye la señal de prueba, transfiriéndose la respuesta al aparato detector. Se capta entonces por ejemplo la influencia individual de los circuitos eléctricos sobre la señal de prueba mediante el aparato detector como las características individuales. Esta influencia individual puede ser por ejemplo una distorsión de la señal de prueba. Correspondientemente pueden ser las características individuales por ejemplo características electrónicas individuales.
En función del objeto y/o de una correspondiente configuración/determinación, pueden ser por lo tanto las características individuales por ejemplo características de la superficie individuales y/o características espectroscópicas individuales y/o características electrónicas individuales. Las características individuales pueden ser por ejemplo también características acústicas, características optoacústicas o características optoacústicas multiespectrales. Las correspondientes características individuales pueden captarse por ejemplo para el objeto de forma reproducible.
Las características individuales pueden ser por ejemplo también una combinación de los ejemplos citados de características individuales.
Utilizando las características individuales puede calcularse por ejemplo la curva característica individual del objeto. Entonces pueden tenerse en cuenta por ejemplo valores de tolerancia para las características individuales, para generar por ejemplo una curva característica individual del objeto reproducible para el objeto. La curva característica individual del objeto es ventajosa por ejemplo para compensar inexactitudes de medida al captar las características individuales.
La primera clave criptográfica puede calcularse por ejemplo en base a las características individuales y/o la curva característica individual del objeto, sirviendo las características individuales y/o la curva característica individual del objeto como parámetro de entrada para deducir una clave criptográfica (por ejemplo la primera clave criptográfica). Alternativa o adicionalmente pueden compararse las características individuales y/o la curva característica individual del objeto con un valor de referencia predeterminado y liberarse la primera clave criptográfica cuando existe una coincidencia suficiente con el valor de referencia predeterminado, mediante el módulo de criptografía. En este proceso la primera clave criptográfica está con preferencia protegida frente a accesos mediante el módulo de criptografía (por ejemplo mediante una memoria de claves del módulo de criptografía o mediante una codificación criptográfica) hasta que las características individuales y/o una curva característica individual del objeto hayan sido captadas por el aparato detector o bien el módulo de cálculo, que contienen el valor de referencia predeterminado. El correspondiente valor de referencia está por ejemplo igualmente protegido frente a accesos.
Con la primera clave criptográfica puede firmarse por ejemplo entonces digitalmente la estructura de datos o bien en una variante de implementación puede verificarse la firma digital de una estructura de datos mediante la primera clave criptográfica.
Es posible también por ejemplo que una entidad (por ejemplo un aparato de procesamiento/nodo que genera la estructura de datos para el objeto y la almacene en el sistema de base de datos distribuida, o bien el operador del aparato de procesamiento/nodo) proteja la estructura de datos adicionalmente con otra suma de verificación criptográfica, siendo la otra suma de verificación criptográfica por ejemplo la suma de verificación de transacción y utilizándose la suma de verificación criptográfica por ejemplo para determinar si el objeto es realmente el objeto asociado a la estructura de datos. La otra suma de verificación criptográfica se ha generado por ejemplo mediante claves criptográficas, que pueden asociarse a la entidad, proporcionando por ejemplo la entidad una clave pública, para poder verificar la otra suma de verificación criptográfica.
La invención es ventajosa por cuanto por ejemplo sólo puede firmarse digitalmente una estructura de datos cuando existe físicamente el correspondiente objeto. Para que por ejemplo no puedan extraer del aparato para la firma digital la primera clave criptográfica personas no autorizadas (por ejemplo cuando existe el objeto y se realiza una firma digital) puede incluir el aparato por ejemplo las correspondientes medidas de aseguramiento. Ésta puede ser por ejemplo una carcasa estable, que impida un acceso a los componentes y a la memoria del aparato. Alternativa o adicionalmente puede estar protegido el aparato por ejemplo mediante una lámina protectora (por ejemplo una lámina de protección frente a perforación), que por ejemplo cuando se manipula el aparato (por ejemplo al romper/perforar la carcasa) borra dado el caso datos sensibles, como la primera clave criptográfica o valores de referencia.
Por ejemplo la estructura de datos puede ser un mensaje o bien un mensaje puede incluir la estructura de datos, debiendo memorizarse el mensaje por ejemplo mediante un sistema de base de datos distribuida, siendo por ejemplo el sistema de base de datos distribuida por ejemplo una cadena de bloques y la estructura de datos una transacción del sistema de base de datos distribuida y la suma de verificación criptográfica por ejemplo una suma de verificación de la transacción. Por ejemplo se anexa la suma de verificación criptográfica a la estructura de datos, con lo que puede verificarse la integridad y/u origen y/o autenticidad de la estructura de datos y su pertenencia al objeto.
En una primera forma de realización del aparato, se calcula la curva característica individual del objeto teniendo en cuenta valores de tolerancia predeterminados de las características individuales.
El aparato es ventajoso para por ejemplo compensar inexactitudes de medida al calcular la curva característica, para calcular para el objeto correcto, dado el caso de forma reproducible, la curva característica individual del objeto. Por ejemplo pueden elegirse los valores de tolerancia tal que con las características espectroscópicas individuales de un objeto, por ejemplo en forma de alimentos, no se aporte ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida) cuando el objeto o bien los alimentos ya no estén suficientemente frescos. Si el objeto son por ejemplo plátanos, puede elegirse el valor de tolerancia para el espectro de las superficies de los plátanos tal que cuando se amarronan los plátanos en una gran superficie (por ejemplo existe en el espectro una proporción de verde y/o una proporción de amarillo claramente reducida, con lo que resulta un valor inferior al correspondiente valor de referencia) no se aporte para esos plátanos ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida). Correspondientemente, ya no pueden confirmarse/almacenarse los plátanos o un suministro de plátanos con estos plátanos en un punto de transporte o en un intermediario como “frescos” en una cadena de suministro mediante un mensaje con la estructura de datos o la estructura de datos en el sistema de base de datos distribuida. De la misma manera pueden vigilarse por ejemplo otros objetos en forma de mercancías perecederas mediante mensajes/estructuras de datos en un sistema de base de datos distribuida. Los correspondientes valores de tolerancia se eligen entonces correspondientemente tal que dado el caso no se aporte ninguna primera clave criptográfica cuando las mercancías perecederas por ejemplo están demasiado degeneradas (por ejemplo ha caducado la conservación de los alimentos o los alimentos se han estropeado). Alternativamente, por ejemplo al sobrepasarse los valores de tolerancia puede proporcionarse una clave criptográfica alternativa, en base a la cual pueda completarse la búsqueda de en qué lugar al documentar el transporte del objeto se han sobrepasado los valores de tolerancia. En otras palabras, puede fijarse por ejemplo mediante los valores de tolerancia un valor de umbral al sobrepasar el cual en particular no se proporcione ninguna primera clave criptográfica válida correspondiente y/o no se genere ninguna suma de verificación criptográfica. En particular puede corresponder en un tal caso por ejemplo un valor de tolerancia a un valor de umbral.
En otras formas de realización del aparato, se calcula por ejemplo la primera clave criptográfica en base a la curva característica individual del objeto y/o a las características individuales y/o a una secuencia de caracteres. Alternativamente puede calcularse por ejemplo, en lugar de la primera clave criptográfica, por ejemplo la suma de verificación criptográfica.
El aparato es ventajoso para generar por ejemplo la primera clave criptográfica con más seguridad aún, por ejemplo en combinación con la secuencia de caracteres (que también puede denominarse cadena de caracteres). Por ejemplo se utiliza la curva característica individual del objeto en combinación con la secuencia de caracteres para proporcionar la primera clave criptográfica (por ejemplo para calcular la misma mediante una función de derivación de clave). La secuencia de caracteres puede entonces ser secreta y sólo ser legible y/o accesible dentro del aparato y/o del módulo de criptografía, con lo que con preferencia la secuencia de caracteres no está disponible fuera del aparato. Alternativa o adicionalmente puede elegirse la secuencia de caracteres tal que la misma esté predeterminada por ejemplo mediante otra clave criptográfica o bien sea la otra clave criptográfica. Al respecto puede haber predeterminado por ejemplo la otra clave criptográfica un operador o una máquina, que procesa o elabora el objeto. Ésta puede ser por ejemplo una clave pública o también una clave privada, dependiendo la elección de la clave por ejemplo de la relación de confianza de los participantes en la elaboración/gestión del objeto. También puede elegirse la secuencia de caracteres en dependencia de la función, para generar una clave criptográfica en dependencia de la función (véase por ejemplo a continuación forma de realización). Por ejemplo puede generarse de esta manera una clave criptográfica que puede utilizarse para desencriptar la primera clave criptográfica al realizar la aportación.
En otras formas de realización del aparato se calcula por ejemplo en base a la curva característica y/o a las características individuales y/o a una secuencia de caracteres una segunda clave criptográfica, que por ejemplo desencripta la primera clave criptográfica.
Esto es por ejemplo ventajoso para asegurar que está disponible la primera clave criptográfica. La primera clave criptográfica está por ejemplo al principio encriptada y sólo se desencripta, volviéndose en particular útil, mediante la segunda clave criptográfica.
En otras formas de realización del aparato se comparan por ejemplo la curva característica y/o las características individuales con un correspondiente valor de referencia y por ejemplo, si hay una coincidencia suficientemente exacta de los valores de referencia con la curva característica y/o las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía. En otras formas de realización del aparato incluye la estructura de datos un registro de datos del objeto, indicando el registro de datos del objeto en qué posiciones geométricas y/o interfaces puede captar el aparato detector las características individuales.
El aparato es ventajoso para determinar por ejemplo ciertas zonas elegidas del objeto o también las interfaces a través de las cuales puede captar el aparato detector las características individuales. Las interfaces pueden ser por ejemplo interfaces del objeto, cuando el objeto es por ejemplo un componente electrónico.
En otras formas de realización del aparato incluye el registro de datos del objeto por ejemplo las características individuales y/o la curva característica individual del objeto en forma codificada, pudiendo por ejemplo decodificarse las características individuales codificadas y/o la curva característica individual del objeto mediante la primera clave criptográfica o una tercera clave criptográfica.
El aparato es ventajoso para hacer que un receptor (por ejemplo en el sentido de un suministro de mercancías) pueda verificar la curva característica, para detectar por ejemplo la intensidad con la que han variado las características individuales y/o la curva característica individual del objeto durante el procesamiento del objeto. Esto es relevante por ejemplo cuando el objeto ha transportado a lo largo de una trayectoria de transporte larga o durante la fabricación del objeto, cuando se han ejecutado varias etapas de la fabricación. En estos casos indicados, así como en otros casos, se genera para el objeto una estructura de datos y se almacena por ejemplo en un sistema de base de datos distribuida (como por ejemplo ya se ha indicado antes). La estructura de datos puede incluir entonces por ejemplo adicionalmente informaciones sobre la etapa de fabricación, condiciones de fabricación (temperatura en la fabricación), herramientas utilizadas y materiales utilizados. En un transporte puede incluir la estructura de datos por ejemplo informaciones sobre las condiciones de transporte (temperatura para cadenas de frío, informaciones de posición, etc.). Estas informaciones adicionales pueden denominarse por ejemplo otros datos referidos al objeto. Por ejemplo puede ser el objeto, en el caso de un transporte, un recipiente de transporte que contiene los correspondientes sensores y/o el aparato. El recipiente de transporte puede ser por ejemplo un recipiente de transporte para leche, piedras preciosas u otros alimentos/materiales. El recipiente de transporte podría contener por ejemplo un aparato correspondiente a la invención y un aparato detector correspondiente.
En otras formas de realización del aparato incluye el registro de datos del objeto por ejemplo otros datos referidos al objeto, como por ejemplo valores de medida del objeto, valores de medida sobre el objeto, indicaciones de fabricación del objeto, lugares de estancia del objeto, siendo captados los otros datos del objeto por ejemplo por sensores del aparato para el objeto o por sensores del objeto, siendo los sensores por ejemplo un módulo GPS y/o sensores de temperatura y/o sensores ópticos y/o sensores acústicos y/o sensores optoacústicos, que por ejemplo captan las correspondientes características del objeto.
Por ejemplo pueden captarse los valores de sensor durante la fabricación o durante el transporte del objeto y por ejemplo memorizarse en el sistema de base de datos distribuida (por ejemplo mediante la estructura de datos con preferencia en relación con la suma de verificación criptográfica).
En otras formas de realización del aparato se calcula la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica adicionalmente teniendo en cuenta una cadena de caracteres secreta y/o siendo la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica una clave privada de un par de claves asimétricas o bien es una clave simétrica.
En otras formas de realización del aparato la estructura de datos es una transacción de un sistema de base de datos distribuida y la suma de verificación criptográfica es la suma de verificación de la transacción, siendo el sistema de base de datos distribuida por ejemplo una cadena de bloques, estando configurado el aparato por ejemplo como nodo u oráculo del sistema de base de datos distribuida, siendo la suma de verificación criptográfica por ejemplo una firma digital.
Según otro aspecto se refiere la invención a un aparato de verificación para comprobar una suma de verificación criptográfica de una estructura de datos, que incluye:
- un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- un módulo de cálculo (120) para calcular una curva característica individual del objeto (I) en base a las características individuales;
- un módulo de criptografía (130) para proporcionar una clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- un módulo de verificación (130) para comprobar la suma de verificación criptográfica mediante la clave criptográfica, proporcionándose por ejemplo datos de control en función del resultado de la verificación.
Las formas de realización del aparato pueden transmitirse por ejemplo igualmente al aparato de verificación.
Por ejemplo puede elegirse también para verificar la estructura de datos otra estructura de datos, que se ha protegido con una suma de verificación criptográfica, por ejemplo procedente de un sistema de base de datos distribuida. Esta otra estructura de datos se había protegido por ejemplo con una clave criptográfica, generada en base a las características individuales y/o a la curva característica individual del objeto, generando así en particular la misma clave criptográfica. Si por ejemplo el contenido de la estructura de datos y el de la otra estructura de datos son idénticos, entonces coinciden con preferencia las respectivas sumas de verificación criptográfica de las estructuras de datos. Para esta verificación puede elegirse por ejemplo el correspondiente contenido de estructura de datos que corresponde a la otra estructura de datos para proporcionar el correspondiente contenido de la estructura de datos.
Con la invención es posible en particular realizar una infraestructura descentralizada (basadas en cadenas de bloques), que gestiona mercancías reales o físicas (por ejemplo objetos) mediante una infraestructura digital, así como su procesamiento (por ejemplo fabricación, transporte y confirmación de su autenticidad). A menudo se generan por ejemplo para los objetos físicos gemelos digitales, para por ejemplo documentar el procesamiento a continuación de un objeto (por ejemplo de una pieza de trabajo) y/o su transporte y etapas de trabajo. Por ejemplo están memorizados datos sobre el gemelo digital en la estructura de datos. Si por ejemplo se suministra un tal objeto, existe una exigencia o una necesidad de poder verificar si el objeto es realmente el objeto que está asociado al gemelo digital. Para solucionar este problema, se captan por ejemplo mediante el aparato detector las características individuales del objeto. Las características individuales pueden ser por ejemplo estructuras de superficie del objeto, cuando por ejemplo el objeto es una pieza de trabajo, fabricada mediante mecanizado. Al respecto pueden captarse, por ejemplo en posiciones predeterminadas del objeto mediante el aparato detector (por ejemplo un aparato detector de superficies, como por ejemplo un escáner de superficies en 3D o una cámara de superficie), las características individuales, siendo por ejemplo en un tal caso las características individuales características individuales de la superficie del objeto. También es plausible por ejemplo que se haya incorporado al objeto una huella dactilar digital en forma de las características individuales. Esta huella dactilar o bien las características digitales no pueden detectarse por ejemplo a simple vista y/o sin conocimientos sobre la clase y la posición, o solamente pueden detectarse con un considerable coste técnico. Correspondientemente pueden por ejemplo tenerse las informaciones para captar las características individuales en una memoria protegida del aparato de verificación, tal que no puedan acceder a estas informaciones personas no autorizadas. La huella dactilar incorporada puede ser por ejemplo irregularidades de la superficie, generadas durante la fabricación del objeto. Alternativa o adicionalmente puede tratarse de la huella dactilar en base a la aplicación de tintas o partículas, aplicándose por ejemplo las tintas o partículas tal que se genera un espectro individual para el objeto. Para ello pueden distribuirse por ejemplo distintas tintas/partículas por la superficie del objeto, con lo que por ejemplo se genera un espectro geométrico, para que por ejemplo en determinadas posiciones del objeto pueda medirse un espectro predeterminado. El espectro o bien las tintas/partículas están elegidos/as por ejemplo tal que no se encuentran en el espectro visible para el ojo humano. Puede tratarse entonces por ejemplo de un espectro que se encuentra más allá de los 800 nm. Es posible por ejemplo que las características individuales, que se incorporan en forma de la huella dactilar en el objeto, proporcionen una clave pública o los datos para calcular una clave pública. La clave pública puede ser por ejemplo la primera clave criptográfica. También es plausible que estén interconectados entre sí circuitos electrónicos tal que se generen una huella dactilar configurable y/o características individuales para el objeto, cuando el objeto es por ejemplo un componente electrónico o el objeto incluye un componente electrónico.
Las características individuales pueden ser por ejemplo también otras características distintas de las características de la superficie. Por ejemplo pueden ser las características individuales datos espectroscópicos sobre el objeto. Por ejemplo puede ser el objeto piedras preciosas, petróleo o alimentos, de los cuales por ejemplo se capta mediante un aparato detector en forma de un espectroscopio un espectro para el objeto o una posición predeterminada (por ejemplo una superficie y/o posición predeterminada) del objeto. En este sentido pueden ser las características individuales características individuales espectroscópicas. Las características individuales pueden ser por ejemplo también características individuales de una señal de ruido, que por ejemplo se capta mediante el aparato detector (por ejemplo un osciloscopio). Si el objeto es por ejemplo un componente electrónico, entonces puede captarse por ejemplo a través de una interfaz del objeto una señal de ruido individual del objeto. En esta señal de ruido pueden captarse y/o tenerse en cuenta por ejemplo amplitudes de la señal de ruido para determinadas resistencias y/o atenuaciones. También puede proporcionarse por ejemplo una señal de prueba predeterminada mediante el objeto y entonces tenerse en cuenta dado el caso distorsiones de la señal para las características individuales. Alternativa o adicionalmente puede enviar por ejemplo el aparato detector una señal de prueba, que se transmite/envía por ejemplo a través de circuitos eléctricos del objeto predeterminados. Por ejemplo genera el objeto o bien los correspondientes circuitos eléctricos del objeto una respuesta, que por ejemplo incluye la señal de prueba, transmitiéndose la respuesta al aparato detector. Se capta entonces por ejemplo la influencia individual de los circuitos eléctricos sobre la señal de prueba mediante el aparato detector como las características individuales. Esta influencia individual puede ser por ejemplo una distorsión de la señal de prueba. Correspondientemente pueden ser las características individuales por ejemplo características electrónicas individuales.
En función del objeto y/o de una correspondiente configuración/determinación, pueden ser las características individuales por ejemplo características de la superficie individuales y/o características espectroscópicas individuales y/o características electrónicas individuales. Las características individuales pueden ser por ejemplo también características acústicas, características optoacústicas o características optoacústicas multiespectrales. Las correspondientes características individuales pueden captarse por ejemplo para el objeto de forma reproducible para el objeto.
Utilizando las características individuales puede calcularse por ejemplo la curva característica individual del objeto. Entonces pueden tenerse en cuenta por ejemplo valores de tolerancia para las características individuales, para generar por ejemplo una curva característica individual del objeto reproducible para el objeto. La curva característica individual del objeto es ventajosa por ejemplo para compensar inexactitudes de medida al captar las características individuales.
La primera clave criptográfica puede calcularse por ejemplo en base a las características individuales y/o a la curva característica individual del objeto, sirviendo las características individuales y/o la curva característica individual del objeto como parámetro de entrada para deducir una clave criptográfica (por ejemplo la primera clave criptográfica). Alternativa o adicionalmente pueden compararse las características individuales y/o la curva característica individual del objeto con un valor de referencia predeterminado y liberarse la primera clave criptográfica cuando existe una coincidencia suficiente con el valor de referencia predeterminado, mediante el módulo de criptografía. En este proceso la primera clave criptográfica está con preferencia protegida frente al acceso mediante el módulo de criptografía (por ejemplo mediante una memoria de claves del módulo de criptografía o mediante una clave de codificación criptográfica) hasta que se hayan captado características individuales y/o una curva característica individual del objeto por el aparato detector o bien el módulo de cálculo, que contienen el valor de referencia predeterminado. El correspondiente valor de referencia está por ejemplo igualmente protegido frente a accesos.
Con la primera clave criptográfica puede tenerse por ejemplo la suma de verificación criptográfica (por ejemplo una firma digital) de una estructura de datos y esa clave o bien la generación/aportación de la clave está ligada al objeto, con lo que puede confirmarse implícitamente también que se trata del objeto que ha protegido la estructura de datos con la suma de verificación. Para ello se calcula por ejemplo la suma de verificación criptográfica para la estructura de datos mediante una clave criptográfica (por ejemplo la primera clave criptográfica del aparato o aparato de verificación antes descrito con los correspondientes ejemplos de realización). En función de la implementación, se transfiere por ejemplo una clave pública al aparato de verificación y esa clave se memoriza a continuación en el aparato de verificación protegida frente a accesos. La clave pública pertenece por ejemplo a una clave privada con la que se ha calculado la suma de verificación criptográfica. En una tal variante puede liberarse por ejemplo la clave pública de forma ligada al objeto, mediante la comparación con los valores de referencia o bien aportando la huella dactilar al objeto. También es plausible por ejemplo que para la generación y comprobación de la suma de verificación criptográfica de la estructura de datos, se trate de la clave criptográfica generada mediante un procedimiento criptográfico simétrico.
Es posible también por ejemplo que una entidad (por ejemplo un aparato/nodo de procesamiento genere la estructura de datos para el objeto y la almacene en el sistema de base de datos distribuida, o bien el operador del aparato/nodo de procesamiento) proteja la estructura de datos adicionalmente con otra suma de verificación criptográfica, siendo la otra suma de verificación criptográfica por ejemplo la suma de verificación de transacción y utilizándose la suma de verificación criptográfica por ejemplo para determinar si el objeto es realmente el objeto asociado a la estructura de datos. La otra suma de verificación criptográfica se ha generado por ejemplo mediante clave criptográfica, que puede asociarse a la entidad, proporcionando por ejemplo la entidad una clave pública, para poder verificar la otra suma de verificación criptográfica.
La invención es ventajosa por cuanto por ejemplo puede verificarse una firma digital de la estructura de datos cuando existe físicamente el correspondiente objeto. En particular se logra así una asociación más fuerte de un objeto a las estructuras de datos pertenecientes al respectivo objeto. Para que por ejemplo no puedan extraer del aparato de verificación para la firma digital la primera clave criptográfica personas no autorizadas, puede incluir el aparato de verificación por ejemplo las correspondientes medidas de seguridad. Éstas pueden ser por ejemplo una carcasa estable, que impida un acceso a los componentes y a la memoria del aparato de verificación. Alternativa o adicionalmente puede estar protegido el aparato de verificación por ejemplo mediante una lámina protectora (por ejemplo una lámina de protección frente a perforación), que por ejemplo cuando se manipula el aparato de verificación (por ejemplo al romper/perforar la carcasa) borra dado el caso datos sensibles, como la primera clave criptográfica o valores de referencia. Mediante el resultado de la verificación correspondiente a la prueba de la suma de verificación criptográfica o bien de los datos de control, puede confirmarse a continuación por ejemplo que la estructura de datos pertenece al objeto correspondiente o bien los datos de la estructura de datos que se refieren al objeto.
Por ejemplo la estructura de datos puede ser un mensaje o un mensaje puede incluir la estructura de datos, debiendo memorizarse el mensaje por ejemplo mediante un sistema de base de datos distribuida, siendo el sistema de base de datos distribuida por ejemplo una cadena de bloques y la estructura de datos una transacción del sistema de base de datos distribuida y la suma de verificación criptográfica por ejemplo una suma de verificación de la transacción. Por ejemplo se añade la suma de verificación criptográfica a la estructura de datos, con lo que puede verificarse la integridad y/o u origen y/o autenticidad de la estructura de datos y su pertenencia al objeto.
En una primera forma de realización del aparato de verificación, se calcula la curva característica individual del objeto teniendo en cuenta valores de tolerancia predeterminados de las características individuales.
El aparato de verificación es ventajoso para por ejemplo compensar inexactitudes de medida al calcular la curva característica, para calcular para el objeto correcto, dado el caso de forma reproducible, la curva característica individual del objeto. Por ejemplo pueden elegirse los valores de tolerancia tal que en las características espectroscópicas individuales de un objeto, por ejemplo en forma de alimentos, no se aporte ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida) ni se genere cuando el objeto o los alimentos ya no estén suficientemente frescos. Si el objeto son por ejemplo plátanos, entonces puede elegirse el valor de tolerancia para el espectro de las superficies de los plátanos tal que cuando se amarronan los plátanos en una gran superficie, no se aporte para esos plátanos ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida). Correspondientemente, ya no pueden confirmarse los plátanos o un suministro de plátanos con estos plátanos en un punto de transporte o en un intermediario como “frescos” en una cadena de suministro, mediante un mensaje con la estructura de datos o la estructura de datos en el sistema de base de datos distribuida, puesto que ya no puede generarse o proporcionarse ninguna clave válida para comprobar la suma de verificación criptográfica. De la misma manera pueden vigilarse por ejemplo otros objetos en forma de mercancías perecederas mediante mensajes/estructuras de datos en un sistema de base de datos distribuida. Los correspondientes valores de tolerancia se eligen entonces correspondientemente tal que dado el caso no se aporte ninguna primera clave criptográfica cuando las mercancías perecederas por ejemplo están demasiado degeneradas (por ejemplo ha caducado la conservación de los alimentos o los alimentos se han estropeado). En otras palabras, puede fijarse por ejemplo mediante los valores de tolerancia un valor de umbral, al sobrepasar el cual en particular no se proporcione ninguna primera clave criptográfica válida correspondiente y/o no se genere ninguna suma de verificación criptográfica válida. En particular puede ser en un tal caso por ejemplo un valor de tolerancia un valor de umbral.
En otras formas de realización del aparato de verificación, se calcula la primera clave criptográfica por ejemplo en base a la curva característica individual del objeto y/o a las características individuales y/o a una secuencia de caracteres. Alternativamente puede calcularse por ejemplo, en lugar de la primera clave criptográfica, por ejemplo la suma de verificación criptográfica.
El aparato de verificación es ventajoso para generar por ejemplo la primera clave criptográfica con más seguridad aún, por ejemplo en combinación con la secuencia de caracteres (que también puede denominarse cadena de caracteres). Por ejemplo se utiliza la curva característica individual del objeto en combinación con la secuencia de caracteres para proporcionar la primera clave criptográfica (por ejemplo para calcular la misma mediante una función de derivación de claves). La secuencia de caracteres puede entonces ser secreta y sólo ser legible y/o accesible dentro del aparato de verificación y/o del módulo de criptografía, con lo que con preferencia la secuencia de caracteres no está disponible fuera del aparato. Alternativa o adicionalmente puede elegirse la secuencia de caracteres tal que la misma esté predeterminada por ejemplo mediante otra clave criptográfica o bien sea la otra clave criptográfica. Al respecto puede estar predeterminada por ejemplo la otra clave criptográfica por un operador o una máquina que procesa o elabora el objeto. Ésta puede ser por ejemplo una clave pública o también una clave privada, dependiendo la elección de la clave por ejemplo de la relación de confianza de los participantes en la elaboración/gestión del objeto. También puede elegirse la secuencia de caracteres por ejemplo en dependencia de la función, para generar una clave criptográfica en dependencia de la función (véase por ejemplo a continuación forma de realización). Por ejemplo puede generarse de esta manera una clave criptográfica que puede utilizarse para desencriptar la primera clave criptográfica al realizar la aportación.
En otras formas de realización del aparato de verificación, se calcula por ejemplo en base a la curva característica y/o a las características individuales y/o a una secuencia de caracteres una segunda clave criptográfica, que por ejemplo desencripta la primera clave criptográfica.
En otras formas de realización del aparato de verificación, se comparan por ejemplo la curva característica y/o las características individuales con un correspondiente valor de referencia y por ejemplo, si hay una coincidencia suficientemente exacta de los valores de referencia con la curva característica y/o las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía.
En otras formas de realización del aparato de verificación, incluye la estructura de datos un registro de datos del objeto, indicando el registro de datos del objeto en qué posiciones geométricas y/o interfaces puede captar el aparato detector las características individuales.
El aparato de verificación es ventajoso para determinar por ejemplo ciertas zonas elegidas del objeto o también las interfaces a través de las cuales puede captar el aparato detector las características individuales. Las interfaces pueden ser por ejemplo interfaces del objeto, cuando el objeto es por ejemplo un componente electrónico.
En otras formas de realización del aparato de verificación, incluye el registro de datos del objeto por ejemplo las características individuales y/o la curva característica individual del objeto en forma codificada, pudiendo por ejemplo decodificarse las características individuales codificadas y/o la curva característica individual del objeto mediante la primera clave criptográfica o una tercera clave criptográfica.
El aparato de verificación es ventajoso para por ejemplo hacer que un receptor (por ejemplo en el sentido de un suministro de mercancías) pueda verificar la curva característica, para determinar por ejemplo la intensidad con la que han variado las características individuales y/o la curva característica individual del objeto durante el procesamiento del objeto. Esto es relevante por ejemplo cuando el objeto se ha transportado a lo largo de una trayectoria de transporte larga o cuando durante la fabricación del objeto, se han ejecutado varias etapas de la fabricación. En estos casos indicados, así como en otros casos, se genera para el objeto una estructura de datos y se memoriza por ejemplo en un sistema de base de datos distribuida (como por ejemplo ya se ha indicado antes). La estructura de datos puede incluir entonces por ejemplo adicionalmente informaciones sobre la etapa de fabricación, condiciones de fabricación (temperatura en la fabricación), herramientas utilizadas y materiales utilizados. En un transporte puede incluir la estructura de datos por ejemplo informaciones sobre las condiciones de transporte (temperatura para cadenas de frío, informaciones de posición, etc.). Estas informaciones adicionales pueden denominarse por ejemplo otros datos referidos al objeto. Por ejemplo puede ser el objeto, en el caso de un transporte, un recipiente de transporte, que contiene los correspondientes sensores y/o el aparato de verificación. El recipiente de transporte puede ser por ejemplo un recipiente de transporte para leche, piedras preciosas u otros alimentos/materiales. El recipiente de transporte podría contener por ejemplo un aparato correspondiente a la invención y/o un aparato de verificación correspondiente a la invención y/o un aparato detector correspondiente.
En otras formas de realización del aparato de verificación, incluye el registro de datos del objeto por ejemplo otros datos referidos al objeto, como por ejemplo valores de medida del objeto, valores de medida sobre el objeto, indicaciones de fabricación del objeto, lugares de estancia del objeto, siendo captados los otros datos del objeto por ejemplo por sensores del aparato de verificación para el objeto o por sensores del objeto, siendo los sensores por ejemplo un módulo GPS y/o sensores de temperatura y/o sensores ópticos y/o sensores acústicos y/o sensores optoacústicos, que por ejemplo captan las correspondientes características del objeto.
En otras formas de realización del aparato de verificación, se calcula la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica adicionalmente teniendo en cuenta una cadena de caracteres secreta y/o siendo la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica una clave privada de un par de claves asimétricas o bien siendo una clave simétrica.
En otras formas de realización del aparato de verificación, la estructura de datos es una transacción de un sistema de base de datos distribuida y la suma de verificación criptográfica es la suma de verificación de la transacción, siendo el sistema de base de datos distribuida por ejemplo una cadena de bloques, estando configurado el aparato de verificación por ejemplo como nodo u oráculo del sistema de base de datos distribuida, siendo la suma de verificación criptográfica por ejemplo una firma digital.
Según otro aspecto se refiere la invención a un módulo de control de escritura, que presenta:
- una interfaz de comunicación para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida;
- un módulo de verificación,
- cargando el módulo de verificación una configuración de escritura de datos, que indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida, - comprobando el módulo de verificación si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida;
- un módulo de control de la transmisión,
- controlando el módulo de control de la transmisión, en función de un resultado de la verificación del módulo de verificación, una transmisión de un mensaje al sistema de base de datos distribuida mediante la interfaz de comunicación.
Con la invención es posible en particular realizar una infraestructura descentralizada (basada en cadenas de bloques), en la que por ejemplo puede determinarse y controlarse bajo qué condiciones se escribe un mensaje en el sistema de base de datos distribuida. De esta manera puede evitarse por ejemplo que se escriba en un sistema de base de datos distribuida que por ejemplo se encuentra en ese momento en un estado de falta o estado de funcionamiento limitado. Para ello se evalúa por ejemplo la configuración de escritura de datos, que puede prescribir por ejemplo que mensajes y/o transacciones de otro nodo predeterminado existan igualmente en el sistema de base de datos distribuida, para que los mismos sean relativamente actuales. Esto puede prescribirse por ejemplo mediante la configuración de escritura de datos por medio de una ventana de tiempo, que con preferencia prescribe una antigüedad máxima permitida de los mensajes y/o de las transacciones de los otros nodos. Los mensajes y/o las transacciones de los otros nodos están dotados para esta verificación por ejemplo de una marca de tiempo y de una suma de verificación (por ejemplo una suma de verificación de transacción, en particular en forma de una firma digital) o bien incluyen una tal suma de verificación. Mediante la suma de verificación puede detectarse, dado el caso mediante una clave pública, si los correspondientes mensajes/transacciones proceden efectivamente de los correspondientes nodos predeterminados.
En otras formas de realización del módulo de control de escritura, prescribe la configuración de escritura de datos que uno o varios nodos predeterminados ya hayan escrito mensajes en el sistema de base de datos distribuida, prescribiendo por ejemplo las condiciones de la configuración de escritura de datos que ya existan mensajes de los nodos en el sistema de base de datos distribuida.
En otras formas de realización del módulo de control de escritura, al comprobar las condiciones de la configuración de escritura de datos se comprueban las sumas de verificación de mensajes de uno o varios nodos, estando memorizados por ejemplo los mensajes para la verificación en el sistema de base de datos distribuida, estando fijadas por ejemplo las condiciones que deben cumplir los mensajes para la verificación mediante la configuración de escritura de datos.
En otras formas de realización del módulo de control de escritura, elige el módulo de control de escritura uno o varios mensajes protegidos con una suma de verificación del sistema de base de datos distribuida, memorizándose por ejemplo los datos correspondientes mediante los respectivos mensajes por parte del equipo emisor.
El módulo de control de escritura es ventajoso para por ejemplo detectar mediante los mensajes elegidos si el sistema de base de datos distribuida ha sido manipulado o si la dirección de destino ha sido modificada mediante una manipulación en la tabla de enrutamiento. También puede detectarse así una modificación de una cadena de bloques, por ejemplo mediante una bifurcación. Para ello incluyen los datos por ejemplo las transacciones con los mensajes, números de bloque de los mensajes y las sumas de verificación del bloque y/o de las transacciones con los mensajes, pudiendo ser por ejemplo un mensaje también una transacción.
En otras formas de realización del módulo del control de escritura, comprueba el módulo de control de escritura, al verificar las condiciones de la configuración de escritura de datos, los mensajes elegidos o una parte de los mensajes elegidos en base a los mensajes memorizados.
En otras formas de realización del módulo de control de escritura. incluyen las condiciones de la configuración de escritura de datos uno, varios o una combinación de los siguientes parámetros:
- Una ventana de tiempo que ha de mantenerse para los mensajes a verificar y/o elegidos, - los nodos están predeterminados mediante las correspondientes informaciones de nodos, - los mensajes de los correspondientes nodos deben incluir un contenido predeterminado, - las sumas de verificación de los mensajes a comprobar deben corresponder a condiciones criptográficas predeterminadas.
Según otro aspecto, se refiere la invención a un equipo de transferencia para controlar una transferencia de un mensaje, que incluye:
- un módulo detector de datos de mensajes, tal que
- el módulo detector de datos de mensajes elige un registro de datos de prioridad con una prioridad en un mensaje,
- el módulo detector de datos de mensajes elige un destino del mensaje,
- están asociados a la prioridad parámetros de transferencia para la transferencia de mensajes; - un módulo de determinación, tal que
- el módulo de determinación, en base al destino y a la prioridad, genera un registro de datos de control de mensajes para controlar la transmisión del mensaje,
- el registro de datos de control de mensajes se asocia al mensaje,
- un módulo de transmisión, tal que
- el módulo de transmisión transfiere el mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida,
- el nodo está predeterminado mediante el registro de datos de control de mensajes.
Con la invención es posible en particular realizar una infraestructura descentralizada (basada en cadenas de bloques), en la que por ejemplo mensajes o transacciones que tienen una elevada prioridad se transmiten aceleradamente a su destino dentro de la infraestructura descentralizada. Esto es necesario por ejemplo para que en aplicaciones industriales mensajes y/o transacciones que hayan de ser procesadas rápidamente por un nodo determinado o predeterminado (también denominado destino) se transmitan también rápidamente al mismo. Cuando por ejemplo se transmite mediante una infraestructura descentralizada a un nodo por ejemplo un mensaje para la desconexión en emergencia de una instalación de fabricación o bien una alarma de un sensor (por ejemplo un detector de humo o un sensor de calor en una máquina de fabricación) que controla esta desconexión de emergencia, es necesario entonces que se transfiera un correspondiente mensaje lo más rápidamente posible mediante la infraestructura descentralizada al nodo que lo procesa. Para lograr esto, puede darse prioridad por ejemplo a mensajes con una elevada prioridad mediante la infraestructura descentralizada o bien el sistema de base de datos distribuida en la replicación de mensajes y/o en la transmisión de mensajes. Para ello pueden prescribirse por ejemplo rutas para la infraestructura descentralizada o bien establecerse canales de comunicación separados, para garantizar por ejemplo las exigencias de una transmisión rápida al destino. Para poder lograr esto, pueden estar dotadas del equipo de transferencia correspondiente a la invención por ejemplo interfaces para la entrada de datos para el sistema de base de datos distribuida (por ejemplo oráculo de cadenas de datos). A través de estas interfaces pueden estar conectados comunicativamente por ejemplo sensores de alarma, tal como antes se ha indicado, para que dado el caso pueda realizarse la ya descrita desconexión en emergencia de una instalación.
En otras formas de realización del equipo de transferencia, incluye el registro de datos de control de mensajes una ruta a través de varios nodos del sistema de base de datos distribuida, transmitiéndose por ejemplo para determinar la ruta el tiempo de transferencia de mensajes entre los nodos a través de los nodos al equipo de transferencia y en particular teniéndose en cuenta los correspondientes tiempos de transferencia al determinar el bloque de datos de control de mensajes, determinándose por ejemplo la ruta en función del resultado de la verificación (de la prioridad).
En otras formas de realización del equipo de transferencia, incluye el registro de datos del control de mensajes datos de configuración, determinándose por ejemplo los datos de configuración en función del resultado de la verificación, configurándose por ejemplo el módulo de transmisión tal que se establece un canal de comunicación separado y/o directo hacia el destino, para transmitir el mensaje.
El equipo de transferencia es ventajoso para hacer posible por ejemplo una transmisión rápida de un mensaje correspondiente al destino, sin utilizar el mecanismo de replicación del sistema de base de datos distribuida y por ejemplo sólo documentando la recepción del mensaje mediante una transacción de confirmación y/o documentando el envío del mensaje mediante una correspondiente transacción de envío. Esto es ventajoso para transmitir por ejemplo el mensaje con la mayor rapidez posible al destino, pero documentando con la transacción de confirmación y/o la transacción de envío no obstante la transmisión y la recepción con seguridad mediante el sistema de base de datos distribuida. Para ello incluye la transacción de envío por ejemplo la fecha de envío y/u hora de envío y/o destino (por ejemplo la dirección de destino), una confirmación relativa al establecimiento del enlace con el destino y/o una confirmación de la transmisión al destino, habiéndose confirmado la transmisión por ejemplo desde el destino mediante una suma de verificación como una firma digital mediante un correspondiente mensaje de confirmación al equipo de transferencia (también puede estar memorizado este mensaje de confirmación dado el caso en la transacción de envío). Análogamente puede estar establecida por ejemplo la transacción de confirmación. Ésta incluye por ejemplo una fecha de recepción y/o una hora de recepción y/o dirección de envío (por ejemplo la dirección del equipo de transmisión), una confirmación del establecimiento del enlace desde el emisor y/o una confirmación de la transmisión desde el emisor, habiéndose confirmado la transmisión (por ejemplo desde el emisor mediante una suma de verificación, como una firma digital) mediante un correspondiente mensaje de confirmación al equipo de transferencia (también puede estar memorizado este mensaje de confirmación dado el caso en la transacción de envío). El propio mensaje puede por ejemplo estar protegido a su vez mediante una suma de verificación de transacción. El contenido del mensaje puede por ejemplo estar memorizado igualmente en la transacción de confirmación.
En otras formas de realización del equipo de transferencia, se memoriza tras recibirse el mensaje en el destino una transacción de confirmación en el sistema de base de datos distribuida.
El equipo de transferencia es ventajoso por ejemplo para documentar con qué rapidez se realiza la transmisión de datos para mensajes hacia el destino. Entonces pueden documentarse por ejemplo los correspondientes tiempos de transmisión entre los distintos nodos del sistema de base de datos distribuida. Mediante las transacciones de confirmación puede entonces calcular el equipo de transferencia qué ruta a través de la infraestructura del sistema de base de datos distribuida es adecuada para la prioridad.
En otras formas de realización del equipo de transferencia, incluye el registro de datos de control de mensajes adicionalmente un registro de datos preconfigurado, que prescribe la vía de transmisión del mensaje hacia el destino, al menos parcialmente.
El equipo de transferencia es ventajoso para prescribir por ejemplo una ruta, al menos parcialmente. También pueden tenerse en cuenta aquí por ejemplo otros parámetros que deben considerarse en una transmisión entre los nodos o bien en la ruta. Así puede estar prescrito mediante estos parámetros que los nodos de una región determinada/predeterminada (por ejemplo países predeterminados como Corea del Norte, Andorra, Eritrea o Irán) no sean admitidos para la transmisión y por ejemplo no tengan autorización para ser utilizados en la ruta. Alternativamente puede estar predeterminado que sólo deban utilizarse para la ruta nodos que se encuentren en una determinada región (por ejemplo Unión Europea, USA, Kazajstan). También pueden fijarse por ejemplo prescripciones para que sólo deban utilizarse para la ruta los nodos correspondientes que dispongan de un determinado equipamiento de hardware (por ejemplo componentes redundantes, conexión a red de banda ancha, mecanismos de seguridad criptográficos, protección de acceso frente a no autorizados). En particular puede así lograrse que hasta la validación de la transacción de confirmación no esté validado el correspondiente mensaje y con ello por ejemplo no sea necesaria una resolución que lleva mucho tiempo de una Proof-of-Work (puzle criptográfico) para la transmisión al destino, lo cual es ventajoso para mensajes con elevada prioridad a transmitir rápidamente. La confirmación del intercambio de datos mediante la transacción de confirmación y/o la transacción de emisión es a su vez no critica en el tiempo y esas transacciones pueden validarse también regularmente.
En otras formas de realización del equipo de transferencia incluye por ejemplo el equipo de transferencia un módulo de control de escritura por ejemplo según una de las reivindicaciones 7 - 11, prescribiéndose por ejemplo mediante el módulo de control de escritura el registro de datos de prioridad con la prioridad e incluyendo por ejemplo el mensaje una estructura de datos (por ejemplo con datos de sensor), siendo sumas de verificación por ejemplo sumas de verificación de transacciones y/o siendo por ejemplo el sistema de base de datos distribuida una cadena de bloques y/o el mensaje una transacción validada o invalidada de un sistema de base de datos distribuida.
Según otro aspecto, se refiere la invención a un sistema que incluye
- Módulo de generación para generar mensajes para un objeto, incluyendo el mensaje por ejemplo un registro de datos de prioridad con una prioridad y una estructura de datos;
- un aparato para calcular una suma de verificación criptográfica para la estructura de datos, que tiene:
- un módulo detector (110) para captar características individuales (M) del objeto (O) mediante un aparato detector (A);
- un módulo de cálculo (120) para calcular una característica individual del objeto (I) en base a las características individuales;
- un módulo de criptografía (130) para proporcionar una clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- un módulo de protección (130) para proteger criptográficamente la estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la clave criptográfica;
- un módulo de control de escritura, que presenta:
- una interfaz de comunicación para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida;
- un módulo de verificación, tal que
- el módulo de verificación carga una configuración de escritura de datos, que indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida, - el módulo de verificación comprueba si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida;
- un módulo de control de la transmisión, tal que
- el módulo de control de la transmisión controla, en función de un resultado de la verificación del módulo de verificación, una transmisión de un mensaje al sistema de base de datos distribuida mediante la interfaz de comunicación.,
- un equipo de transferencia para controlar una transferencia del mensaje a lo largo de varios nodos, que incluye:
- un módulo detector de datos de mensajes, tal que
- el módulo detector de datos de mensajes elige un registro de datos de prioridad con una prioridad en un mensaje,
- el módulo detector de datos de mensajes elige un destino del mensaje,
- están asociados a la prioridad parámetros de transferencia para la transferencia de mensajes;
- un módulo de determinación tal que
- el módulo de determinación, en base al destino y a la prioridad, genera un registro de datos de control de mensajes para controlar la transmisión del mensaje,
- el registro de datos de control de mensajes se asocia al mensaje,
- un módulo de transmisión, tal que
- el módulo de transmisión transfiere el mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida,
- el nodo está predeterminado por el registro de datos de control de mensajes.
- por ejemplo la interfaz de comunicación transfiere el mensaje mediante el equipo de transferencia. Según otro aspecto, se refiere la invención a un procedimiento para calcular, asistido por ordenador, una suma de verificación criptográfica con las siguientes etapas del procedimiento:
- captación de características individuales (M) de un objeto (O) mediante un aparato detector (A);
- cálculo de una curva característica individual del objeto en base a las características individuales; - aportación de una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante la primera clave criptográfica.
En otras formas de realización del procedimiento, incluye el procedimiento otras etapas del procedimiento para realizar las características funcionales o para realizar otras características del aparato de verificación y/o de sus formas de realización.
Según otro aspecto, se refiere la invención a un procedimiento para la verificación asistida por ordenador de una suma de verificación criptográfica con las siguientes etapas del procedimiento:
- recepción de una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- captación de características individuales (M) de un objeto (O) mediante un aparato detector (A);
- cálculo de una curva característica individual del objeto en base a las características individuales; - aportación de una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- comprobación de la suma de verificación criptográfica mediante la primera clave criptográfica.
En otras formas de realización del procedimiento, incluye el procedimiento otras etapas del procedimiento para realizar las características funcionales o para realizar otras características del aparato de verificación y/o de sus formas de realización.
Según otro aspecto, se refiere la invención a un procedimiento para el control asistido por ordenador de una transmisión de datos con las siguientes etapas del procedimiento:
- transmisión de mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida;
- verificación de una configuración de escritura de datos, tal que
- la configuración de escritura de datos indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida,
- se verifica si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida;
- transmisión de los mensajes a un sistema de base de datos distribuida mediante una interfaz de comunicación, tal que
- se controla la transmisión en función de un resultado de la verificación de la configuración de estructura de datos.
En otras formas de realización del procedimiento, incluye el procedimiento otras etapas del procedimiento para realizar las características funcionales o para realizar otras características del módulo de control de escritura y/o sus formas de realización.
Según otro aspecto, se refiere la invención a un procedimiento para el control asistido por ordenador de una transferencia de mensajes a lo largo de varios nodos, con las siguientes etapas del procedimiento: - Elección de un mensaje de un registro de datos de prioridad con una prioridad de un mensaje, tal que - se elige un destino del mensaje,
- están asociados a la prioridad parámetros de transferencia para la transferencia del mensaje; - determinación de un registro de datos de control de mensajes para controlar la transmisión del mensaje en base a la prioridad y al destino, tal que
- el registro de datos de control de mensajes se asocia al mensaje,
- Transferencia del mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida, tal que
- el nodo está predeterminado por ejemplo por el registro de datos de control de mensajes.
En otras formas de realización del procedimiento, incluye el procedimiento otras etapas del procedimiento para realizar las características funcionales o para realizar otras características del equipo de transferencia y/o de sus formas de realización.
Además se reivindica un producto de programa informático con órdenes de programa para ejecutar el citado procedimiento correspondiente a la invención, pudiendo realizarse mediante el producto de programa informático en cada caso uno de los procedimientos correspondientes a la invención, todos los procedimientos correspondientes a la invención o una combinación de los procedimientos correspondientes a la invención.
Adicionalmente se reivindica una variante del producto de programa informático con órdenes de programa para configurar un aparato generador, por ejemplo una impresora en 3D, un sistema de ordenador o una máquina de fabricación adecuada para generar procesadores y/o aparatos, configurándose el aparato generador con las órdenes de programa tal que se genere el citado aparato correspondiente a la invención y/o el módulo de control de escritura y/o el aparato de verificación y/o el equipo de transferencia.
Además se reivindica un equipo de aportación, para almacenar y/o aportar el producto de programa informático. El equipo de aportación es por ejemplo un soporte de datos, que almacena y/o proporciona el producto de programa informático. Alternativa y/o adicionalmente, el equipo de aportación es por ejemplo un servicio de red, un sistema de ordenador, un sistema de servidor, en particular un sistema de ordenador distribuido, un sistema de ordenador basado en la nube y/o sistema de ordenador virtual, que almacena y/o proporciona el producto de programa informático con preferencia 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 órdenes, con preferencia como fichero, en particular como fichero 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 realizarse por ejemplo también como descarga parcial, que está compuesta por varias partes y que en particular se descarga a través de una red peer-topeer 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 órdenes del programa, con lo que el procedimiento correspondiente a la invención se ejecuta en un ordenador o bien el aparato generador se configura tal que genera el aparato correspondiente a la invención y/o el módulo de control de escritura y/o el aparato de verificación y/o el equipo de transferencia.
Las particularidades, características y ventajas antes descritas para la invención, así como la forma como se logran las mismas, quedarán más claras y serán más comprensibles en el contexto de la siguiente descripción de los ejemplos de realización, que se describirán más en detalle en relación con las figuras. Al respecto muestran en representación esquemática:
figura 1 un primer ejemplo de realización de la invención;
figura 2 otro ejemplo de realización de la invención;
figura 3 otro ejemplo de realización de la invención;
figura 4 otro ejemplo de realización de la invención;
figura 5 otro ejemplo de realización de la invención;
figura 6 otro ejemplo de realización de la invención y
figura 7 otro ejemplo de realización de la invención.
En las figuras se han dotado de las mismas referencias los elementos que tienen la misma función, siempre que no se indique otra cosa.
Los siguientes ejemplos de realización muestran, si no se indica o se ha indicado ya otra cosa, al menos un procesador y/o una unidad de memoria, para implementar o ejecutar el procedimiento.
También en particular un especialista (del ramo) que conozca la/las reivindicación/reivindicaciones del procedimiento conoce evidentemente todas las posibilidades usuales según el estado de la técnica para realizar productos o posibilidades de implementación, por lo que ello no necesita en particular una publicación autónoma en la descripción. En particular pueden realizarse esas variantes de realización usuales y conocidas por el especialista exclusivamente mediante (componentes de) hardware o exclusivamente mediante (componentes de) software. Alternativa y/o adicionalmente, puede elegir el especialista, en el marco de su conocimiento especializado, con amplia libertad, cualesquiera combinaciones correspondientes a la invención de (componentes de) hardware y (componentes de) software para llevar a cabo variantes de realización correspondientes a la invención.
Una combinación correspondiente a la invención de (componentes de) hardware y (componentes de) software puede presentarse en particular cuando una parte de los efectos correspondientes a la invención con preferencia se provocan exclusivamente mediante un hardware especial (por ejemplo un procesador en forma de un ASIC o FPGA) y/u otra parte se provoca mediante el software apoyado por procesador y/o por memoria).
En particular y dada la gran cantidad de posibilidades de realización distintas, no es posible ni tampoco conduce al objetivo ni es necesario para comprender la invención citar todas estas posibilidades de realización. Por lo tanto, en particular todos los ejemplos de realización que siguen muestran solamente a modo de ejemplo algunas vías sobre cómo podrían ser en particular tales realizaciones de las enseñanzas correspondientes a la invención.
En consecuencia en particular las características de los distintos ejemplos de realización no quedan limitadas al respectivo ejemplo de realización, sino que se refieren en particular a la invención en general. Correspondientemente pueden con preferencia servir características de un ejemplo de realización también como características de otro ejemplo de realización, en particular sin que esto se indique explícitamente en el correspondiente ejemplo de realización.
Las figuras 1 a 7 muestran respectivos ejemplos de realización de los distintos aspectos de la invención. La figura 1 muestra al respecto un sistema que se utiliza para memorizar por ejemplo datos de sensor en un sistema de base de datos distribuida.
El sistema puede incluir entonces por ejemplo las siguientes características:
- Módulo generador para generar mensajes para un objeto, incluyendo el mensaje por ejemplo un registro de datos de prioridad con una prioridad y una estructura de datos;
- un aparato para calcular una suma de verificación criptográfica para la estructura de datos, que contiene:
- un módulo detector para captar características individuales del objeto mediante un aparato detector;
- un módulo de cálculo para calcular una curva característica individual del objeto en base a las características individuales;
- un módulo de criptografía para proporcionar una clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- un módulo de protección para la protección criptográfica de la estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la clave criptográfica;
- un módulo de control de escritura, que tiene
- una interfaz de comunicación para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida;
- un módulo de verificación, tal que
- el módulo de verificación carga una configuración de escritura de datos, que indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida;
- el módulo de verificación comprueba si se cumplen las condiciones para escribir los mensajes en del sistema de base de datos distribuida,
- un módulo de control de la transmisión, tal que
- el módulo de control de la transmisión, en función de un resultado de verificación del módulo de verificación, controla una transmisión de un mensaje al sistema de base de datos distribuida mediante la interfaz de comunicación,
- un equipo de transferencia para controlar una transferencia del mensaje a lo largo de varios nodos que presenta:
- un módulo detector de datos de mensajes, tal que
- el módulo detector de datos de mensajes elige un registro de datos de prioridad con una prioridad de un mensaje,
- el módulo detector de datos de mensajes elige un destino del mensaje,
- están asignados a la prioridad parámetros de transferencia para la transferencia de los mensajes;
- un módulo de determinación, tal que
- el módulo de determinación genera, en base al destino y a la prioridad, un registro de datos de control de mensajes para controlar la transmisión del mensaje,
- el registro de datos de control de mensajes se asocia al mensaje,
- un módulo de transmisión, tal que
- el módulo de transmisión transfiere el mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida,
- el nodo viene predeterminado por el registro de datos del control de mensajes,
- por ejemplo la interfaz de comunicación transmite el mensaje mediante un equipo de transferencia.
En la figura 1 se muestran un primer nodo N1, un segundo nodo N2, un tercer nodo N3 y un cuarto nodo N4, que forman los nodos de la cadena de bloques BC del sistema de base de datos distribuida, incluyendo uno de los nodos, por ejemplo el primer nodo N1, el aparato y/o el módulo de control de escritura y/o el equipo de transferencia. Alternativamente pueden incluir en cada caso distintos nodos N1 -N4 los distintos componentes, es decir, el aparato y/o el módulo de control de escritura y/o el equipo de transferencia. Los nodos están entonces conectados entre sí por ejemplo mediante una primera red de comunicación NW1.
Además, la figura 1 muestra bloques B, por ejemplo un primer bloque B1, un segundo bloque B2 y un tercer bloque B3, de una cadena de bloques BC, mostrándose aquí como ejemplo un detalle de la cadena de bloques BC.
Cada uno de los bloques B incluye varias transacciones T. Las transacciones T pueden incluir entonces transacciones de control y/o transacciones de confirmación.
El primer bloque B1 incluye por ejemplo una primera transacción T1a, una segunda transacción T1b, una tercera transacción T1c y una cuarta transacción T1d.
El segundo bloque B2 incluye por ejemplo una quinta transacción T2a, una sexta transacción T2b, una séptima transacción T2c y una octava transacción T2d.
El tercer bloque B3 incluye por ejemplo una novena transacción T3a, una décima transacción T3b, una undécima transacción T3c y una duodécima transacción T3d.
Cada uno de los bloques B incluye adicionalmente una de las sumas de comprobación de concatenación CRC, que se forma en función del bloque directamente precedente. Por lo tanto, el primer bloque B1 incluye una primera suma de verificación de concatenación CRC1 de su bloque precedente, el segundo bloque B2, una segunda suma de verificación de concatenación CRC2 del primer bloque B1, y el tercer bloque B3 una tercera suma de verificación de concatenación CRC3 del segundo bloque B2.
La respectiva suma de verificación de concatenación CRC1, CRC2, CRC3 se forma preferiblemente mediante la cabecera de bloque del correspondiente bloque precedente. Las sumas de verificación de concatenación CRC se pueden formar preferiblemente usando una función hash criptográfica, como por ejemplo SHA-256, KECCAK - 256 o SHA-3. Por ejemplo, la suma de verificación de concatenación se puede calcular adicionalmente utilizando la suma de verificación del bloque de datos o la cabecera incluye la suma de verificación del bloque de datos (la suma de verificación del bloque de datos se explica a continuación).
Además, cada uno de los bloques puede incluir una suma de verificación del bloque de datos. Esto puede realizarse por ejemplo mediante un árbol hash.
Para formar el árbol hash, se calcula para cada transacción de un (bloque de) datos una suma de verificación de transacción (por ejemplo igualmente un valor hash). Alternativa o adicionalmente, puede reutilizarse para ello una suma de verificación de transacción, que fue creada preferiblemente por el generador de la transacción con preferencia al generar la transacción.
Usualmente se utiliza para un árbol hash por ejemplo un árbol de Merkle o árbol de Patricia, cuyo valor raíz de hash/suma de verificación raíz se almacena preferiblemente como la suma de verificación del bloque de datos correspondiente en los bloques respectivos.
En una variante se utiliza la suma de verificación del bloque de datos como suma de verificación de concatenación.
Un bloque puede tener además un sello de tiempo, una firma digital, una acreditación de prueba de trabajo, como se explica en las formas de realización de la invención.
La propia cadena de bloques BC se realiza mediante una infraestructura de cadena de bloques con varios nodos de cadena de bloques (nodos N1, N2, N3, N4 y otros bloques). Los nodos pueden ser por ejemplo oráculos de cadena de bloques o bien nodos confiables.
Los nodos están conectados comunicativamente entre sí a través de la red NW1 (por ejemplo, una red de comunicación como Internet o una red Ethernet). Por ejemplo, al menos una parte de los bloques de datos B o todos los bloques de datos B de la cadena de bloques BC se replican mediante la infraestructura de cadenas de bloques para una parte o todos los nodos de la cadena de bloques.
El aparato y/o el módulo de control de escritura y/o el equipo de transferencia y/o el aparato de verificación pueden ser por ejemplo componentes del sistema de base de datos distribuida o en variantes de una infraestructura de comunicación (por ejemplo, un sistema peer-2-peer, de una infraestructura de comunicación distribuida). El aparato y/o el módulo de control de escritura y/o el equipo de transferencia y/o el aparato de verificación pueden por ejemplo comunicar entre sí mediante el sistema de base de datos distribuida o en variantes mediante una infraestructura de comunicación (por ejemplo un sistema peer-2-peer, de una infraestructura de comunicación distribuida).
La figura 2 muestra a modo de ejemplo, en otro ejemplo de realización, la forma de funcionamiento del aparato y también, en variantes del ejemplo de realización, la forma de funcionar del aparato de verificación. El aparato y/o el aparato de verificación pueden denominarse por ejemplo equipo.
La muestra un aparato 100 para calcular una suma de verificación criptográfica CRC para una estructura de datos DS, incluyendo la estructura de datos DS por ejemplo datos específicos del objeto para un objeto O. La estructura de datos DS y la suma de verificación criptográfica CRC están por ejemplo en un registro de datos D, memorizándose el registro de datos D por ejemplo como transacción en el sistema de base de datos distribuida. Para ello, la transacción puede incluir una suma de verificación adicional (por ejemplo, una suma de verificación de transacción), que se generó por ejemplo mediante una clave criptográfica (por ejemplo una clave criptográfica privada) que se asocia a una entidad o que es utilizada por ésta. La entidad puede ser por ejemplo un operador, una estación de medición o una estación de procesamiento, que controlan, procesan o gestionan el objeto O. El registro de datos D también puede ser por ejemplo un mensaje o una transacción, en función de la implementación.
En función de la variante de implementación, la estructura de datos DS también puede corresponder al registro de datos D cuando por ejemplo la estructura de datos DS incluye un campo de datos, para almacenar la suma de verificación criptográfica CRC o la suma de verificación criptográfica se añade a la estructura de datos. Como ya se explicó, en particular la estructura de datos DS y/o el registro de datos D pueden estar almacenados o incluidos en un mensaje o una transacción. Alternativamente, la estructura de datos DS y/o el registro de datos D pueden ser por ejemplo un mensaje o una transacción.
Los nodos del sistema de base de datos distribuida (por ejemplo nodos de cadena de bloques) y/o el sistema de base de datos distribuida pueden incluir cada uno adicionalmente, por ejemplo, uno o más componentes adicionales, como por ejemplo un procesador, una unidad de memoria, otras interfaces de comunicación (por ejemplo, Ethernet, WLAN, USB, bus de campo, PCI), un aparato de entrada, en particular un teclado de ordenador o un ratón de ordenador y un aparato de visualización (por ejemplo, un monitor). El procesador puede incluir por ejemplo varios procesadores adicionales, que se pueden utilizar en particular para realizar otros ejemplos de realización.
Un nodo de la figura 1 puede incluir por ejemplo el aparato 100 o estar constituido como el aparato 100 o un nodo de la figura 1 está conectado con el aparato 100 a través de una línea de datos o red de comunicación. Análogamente a ello, puede estar constituido por ejemplo también un aparato de verificación para comprobar la suma de verificación criptográfica CRC para una estructura de datos DS. Para generar la suma de verificación criptográfica CRC, el aparato incluye un módulo detector 110, un módulo de cálculo 120, un módulo de criptografía 130 y un módulo de protección 130 y un módulo de comunicación (por ejemplo, un interfaz de red) 101, que están conectados comunicativamente entre sí a través de un bus (por ejemplo, un bus PCI, bus CAN, USB o línea de datos) 102.
El módulo detector 110 está diseñado para captar características individuales M del objeto O por medio de un aparato detector A. Para ello está conectado el aparato detector A a través de una conexión de datos (inalámbrica o por cable) (por ejemplo con USB, LAN, W-LAN, Bluetooth, Firewire) C con el aparato detector A. Por ejemplo capta/mide el aparato detector A por medio de un rayo de exploración S irregularidades de la superficie como características individuales del objeto O.
El módulo de cálculo 120 está configurado para calcular una curva característica individual del objeto en base a las características individuales M. Al calcular la curva característica individual del objeto, pueden tenerse en cuenta por ejemplo valores de tolerancia, para tener en cuenta por ejemplo inexactitudes de medición del aparato detector A en la que a continuación se denomina determinación de la primera clave criptográfica. Por ejemplo en unas variantes de implementación en las que se aporta la clave criptográfica en base a las características individuales, puede renunciarse al módulo de cálculo.
El módulo de criptografía 130 está diseñado para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto.
La aportación puede realizarse entonces de diferentes formas. Por ejemplo pueden compararse las características individuales y/o la curva característica individual del objeto con valores de referencia, teniéndose en cuenta aquí por ejemplo los correspondientes valores de tolerancia. Si coinciden las características individuales y/o la curva característica individual del objeto con los valores de referencia (por ejemplo una vez tenidos en cuenta los valores de tolerancia), entonces se carga la primera clave criptográfica por ejemplo desde una memoria de datos segura. El valor de referencia puede captarse o memorizarse por ejemplo durante una fase de inicialización y/o fase de instalación del aparato. Con preferencia la fase de inicialización y/o fase de instalación para el aparato sólo pueden ejecutarse una sola vez.
Alternativamente se calcula la primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto, utilizándose las características individuales y/o la curva característica individual del objeto como datos de entrada para una función de derivación de claves. Entonces pueden utilizarse también otros datos. Por ejemplo puede combinarse una secuencia de caracteres (por ejemplo una palabra de paso secreta) con las características individuales y/o la curva característica individual del objeto, utilizándose entonces por ejemplo estos datos combinados para calcular mediante una función de derivación de claves (por ejemplo PBKDF2) la primera clave criptográfica.
El módulo de protección 140 está preparado para la protección criptográfica de una estructura de datos mediante la suma de verificación criptográfica CRC, calculando el módulo de protección la suma de verificación criptográfica CRC mediante la primera clave criptográfica. La suma de verificación criptográfica puede dotarse entonces por ejemplo de un Keyed-Hash Message Authentication Code (HMAC, por ejemplo utilizando MD5, SHA1, SHA256). En otras variantes de implementación puede estar realizada la suma de verificación criptográfica como firma digital o como certificado digital, funcionando entonces, en función del procedimiento criptográfico utilizado (procedimiento simétrico o asimétrico), la primera clave criptográfica por ejemplo como clave privada, para generar la firma digital. Para comprobar la firma digital se deduce por ejemplo la clave pública de la primera clave criptográfica y se proporciona mediante una instancia confiable (por ejemplo un servidor confiable), pudiendo así acceder el mismo, en variantes del aparato de verificación, a la correspondiente clave. Si se ha generado por ejemplo la clave privada y por ejemplo se ha almacenado en una memoria del módulo de criptografía 130, entonces pueden modificarse o inutilizarse por ejemplo las correspondientes características individuales del objeto, con lo que la primera clave criptográfica ya no puede deducirse. Esto puede realizarse por ejemplo puliendo en características de superficie la posición correspondiente en la superficie del objeto, eliminando por lavado tintas/partículas del objeto (por ejemplo mediante disolvente) o aplicando adicionalmente tintas/partículas sobre el objeto, para inutilizar o para modificar las correspondientes características individuales. Por ejemplo también es posible inutilizar las características individuales tal que la primera clave criptográfica no pueda calcularse ya en base a las mismas, pero pueda calcularse aún la curva característica individual del objeto en base a las características individuales modificadas teniendo en cuenta valores de tolerancia, para por ejemplo aportar y/o calcular la clave pública mediante el módulo de criptografía del aparato de verificación.
Alternativa o adicionalmente puede incorporarse/introducirse la clave pública también como una huella dactilar (digital) en forma de las características individuales (por ejemplo irregularidades de la superficie, un colorante con un espectro específico, que por ejemplo se descompone después de un tiempo predeterminado, para codificar en particular así una durabilidad) en el objeto o bien aplicarse sobre el objeto. Esta huella dactilar o bien las características individuales no pueden detectarse/leerse, o sólo con un coste técnico considerable, por ejemplo a simple vista y/o sin conocimientos sobre la clase y la posición. Correspondientemente pueden por ejemplo encontrarse las informaciones para captar las características individuales en una memoria protegida del aparato, de modo que no puedan acceder a estas informaciones personas no autorizadas. La huella dactilar/las características individuales incorporada/s puede/n ser por ejemplo irregularidades de la superficie, generadas durante la fabricación del objeto o la elaboración posterior del objeto. Alternativa o adicionalmente puede estar realizada la huella dactilar mediante la aplicación de tintas o partículas, aplicándose por ejemplo las tintas o partículas tal que se genera un espectro individual para el objeto. Para ello pueden distribuirse por ejemplo distintas tintas/partículas por la superficie del objeto, con lo que por ejemplo se genera un espectro geométrico para que por ejemplo en determinadas posiciones del objeto pueda medirse un espectro predeterminado. El espectro o bien las tintas/partículas están elegidos/as por ejemplo tal que no se encuentren en el espectro visible para el ojo humano. Puede tratarse entonces por ejemplo de un espectro que se encuentra más allá de los 800 nm.
La utilización de valores de tolerancia es ventajosa para por ejemplo tener en cuenta (o compensar) inexactitudes de medida al calcular la curva característica, o al captar las características individuales, para calcular para el objeto correcto, dado el caso de forma reproducible, la curva característica individual del objeto o las características individuales.
Por ejemplo pueden elegirse los valores de tolerancia tal que en las características espectroscópicas individuales de un objeto, por ejemplo en forma de alimentos, no se aporte ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida) cuando el objeto o los alimentos ya no estén suficientemente frescos. Si el objeto son por ejemplo plátanos, puede elegirse el valor de tolerancia para el espectro de las superficies de los plátanos tal que cuando se amarronan los plátanos en una gran superficie, no se aporte para esos plátanos ninguna primera clave criptográfica (o no pueda aportarse ninguna primera clave criptográfica válida) ni se genere. Correspondientemente, ya no pueden confirmarse/almacenarse los plátanos o un suministro de plátanos con estos plátanos en un punto de transporte o en un intermediario como “frescos” en una cadena de suministro mediante un mensaje con la estructura de datos o la estructura de datos en el sistema de base de datos distribuida. De la misma manera pueden vigilarse por ejemplo otros objetos en forma de mercancías perecederas mediante mensajes/estructuras de datos en un sistema de base de datos distribuida. Los correspondientes valores de tolerancia se eligen entonces correspondientemente tal que dado el caso no se aporte ninguna primera clave criptográfica cuando las mercancías perecederas por ejemplo están demasiado degeneradas (por ejemplo ha caducado la conservación de alimentos o los alimentos se han estropeado). Alternativamente, por ejemplo al sobrepasarse los valores de tolerancia, puede proporcionarse una clave criptográfica alternativa, en base a la cual pueda completarse la búsqueda de en qué lugar, al documentar el transporte del objeto, se han sobrepasado los valores de tolerancia.
Correspondientemente pueden utilizarse los citados valores de tolerancia no sólo en la curva característica individual del objeto, sino que pueden utilizarse igualmente cuando en base a las características individuales ha de proporcionarse la primera clave criptográfica. Esto puede ser necesario por ejemplo cuando han de compararse las características individuales (que también pueden denominarse características individuales del objeto) con un valor de referencia, para liberar la primera clave criptográfica si se da la correspondiente coincidencia o bien cuando deben servir las características individuales como parámetros de entrada para una función de derivación de claves y por ejemplo deben evitarse faltas en cuanto a una derivación de claves reproducible debidas a inexactitudes de medida.
La invención puede utilizarse ventajosamente por ejemplo en el Supply-Chain-Management (gestión de la cadena de suministro) o bien al vigilar una cadena de suministro. En particular cuando por ejemplo en un transporte de objetos (por ejemplo mercancías como alimentos, componentes electrónicos, piedras preciosas, etc.) se generan datos referidos al objeto desde las distintas entidades (por ejemplo fabricante, varias firmas de logística, distribución, comprador), que participan por ejemplo en la fabricación, transporte o en la venta del objeto, por razones de documentación en distintos lugares del procesamiento/elaboración del objeto y/o instantes. La invención es entonces especialmente ventajosa cuando las entidades participantes no confían, ya que los datos correspondientes están protegidos por ejemplo por la suma de verificación criptográfica y/o una suma de verificación de una entidad correspondiente. El aparato puede ser por ejemplo parte de un receptáculo de transporte, para transportar por ejemplo alimentos como plátanos o leche o bien existen varios objetos similares en los distintos lugares del procesamiento/elaboración del objeto o bien en distintos instantes, cuando esto sucede.
Por ejemplo se captan en un lugar de procesamiento (por ejemplo transferencia del objeto a la empresa de logística) datos específicos del objeto (por ejemplo qué clase de objeto es, tipo, fabricante, identificador inequívoco/UID, etc., instante de llegada a la empresa logística) y se memorizan en un registro de datos del objeto o registro de datos de documentación. El registro de datos del objeto/registro de datos de documentación puede entonces por ejemplo memorizarse a su vez en la estructura de datos y, tal como ya se ha descrito, protegerse con la suma de verificación criptográfica, proporcionándose la primera clave criptográfica según las explicaciones. También es plausible que se generen dos grupos distintos de datos específicos del objeto para un objeto, memorizándose para ello por ejemplo un primer grupo de datos y un segundo grupo de datos en respectivas estructuras (por ejemplo en una primera estructura de datos y una segunda estructura de datos). Una estructura de datos correspondiente puede incluir por ejemplo una clave criptográfica, para comprobar la suma de verificación criptográfica (que también puede denominarse primera suma de verificación criptográfica). En función de la variante de implementación, puede incluir la estructura de datos DS y/o el registro de datos D el registro de datos del objeto y/o el registro de datos de la documentación. También es posible por ejemplo en unas variantes que el registro de datos del objeto se corresponda con el registro de datos de la documentación.
Los grupos de datos incluyen por ejemplo datos variables, que se refieren al objeto y datos invariables, que se refieren al objeto. Por ejemplo el primer grupo de datos/estructura de datos incluye datos invariables para el objeto, pudiendo indicar los mismos por ejemplo clase de objeto (componente electrónico, alimentos, materias primas como diamantes), tipo, fabricante, identificador inequívoco/UID, etc.
Por ejemplo el segundo grupo de datos/estructura de datos incluye datos variables para el objeto. Estos datos variables pueden ser por ejemplo los datos (nombre, dirección, firma digital) de la entidad que procesa el objeto, instante del procesamiento, etapas de trabajo, condiciones de elaboración (por ejemplo temperaturas al transportar/fabricar/elaborar el objeto), duración del procesamiento (por ejemplo duración del transporte, duración de la realización de las etapas de elaboración, por ejemplo en la fabricación del objeto).
La primera estructura de datos y/o la segunda estructura de datos se protegen criptográficamente mediante la primera clave criptográfica, por ejemplo generando la suma de verificación criptográfica por ejemplo en forma de una firma digital para la correspondiente estructura de datos. Las correspondientes estructuras de datos pueden memorizarse entonces por parte de la correspondiente entidad que realiza el procesamiento en un mensaje o una transacción en el sistema de base de datos distribuida (por ejemplo una cadena de bloques), generando por ejemplo la correspondiente entidad, mediante una clave criptográfica de la entidad, una suma de verificación de transacción para el mensaje o la transacción. La suma de verificación de la transacción puede ser entonces en particular igualmente una firma digital.
Este proceso de la documentación digital lo llevan a cabo por ejemplo distintas entidades en distintos momentos, cuando se realiza un procesamiento/elaboración/transporte para el objeto. También es posible que durante un transporte, en instantes predeterminados, se protejan los correspondientes mensajes/transacciones con datos correspondientes que se refieren al objeto, según el procedimiento descrito o una de sus variantes mediante la suma de verificación criptográfica y por ejemplo se escriban en el sistema de base de datos distribuida. Para ello puede incluir el aparato por ejemplo un módulo de comunicación (por ejemplo un módulo de telefonía móvil como UMTS, LTE o 5G). Esta aplicación es ventajosa para por ejemplo documentar la temperatura de transporte del objeto (por ejemplo leche o pescado) durante el transporte mediante los datos que se refieren al objeto. Las características individuales del objeto pueden ser entonces por ejemplo estructuras de la superficie del receptáculo de transporte o bien datos espectrales o un espectro del objeto.
Mediante la utilización de las características individuales para aportar la primera clave criptográfica, puede relacionarse más intensamente un objeto correspondiente, en particular un objeto físico, mediante el "mundo digital". Si se transporta el objeto por ejemplo durante demasiado tiempo o se modifica mediante el procesamiento/elaboración/transporte de tal forma que por ejemplo ya no pueden mantenerse los correspondientes valores de tolerancia, puede documentarse el desbordamiento de los valores de tolerancia o un tratamiento inadecuado del objeto sin discontinuidades, por ejemplo mediante el sistema de base de datos distribuida. También puede documentarse entonces si el objeto se ha sustituido por ejemplo por otro objeto, lo cual es relevante por ejemplo cuando se falsea el producto.
Cuando se ha sustituido el objeto por un objeto falsificado, varían entonces las correspondientes características individuales. Esto puede ser relevante para productos medicinales, para averiguar si por ejemplo un implante de silicona es realmente el implante de silicona de un fabricante y no un implante que se ha falsificado. Para ello se escriben por ejemplo durante la fabricación del objeto (implante) los correspondientes datos para el objeto según una de las variantes antes citadas en el sistema de base de datos distribuida. Las empresas de logística, empresas distribuidoras y clínicas, que transportan, manejan e implantan el objeto, documentan en cada caso según el citado procedimiento las correspondientes etapas del procedimiento que realizan las mismas, los instantes y otros datos relevantes (indicaciones relativas a la entidad correspondiente). Las características individuales de un implante pueden ser por ejemplo características de la superficie del implante (por ejemplo superficie del cojín de silicona o la superficie de un implante metálico). El cojín de silicona puede ser por ejemplo también, en cuanto a las características individuales, un espectro medido del contenido (silicona) del cojín de silicona. La invención no queda limitada sólo a cojines de silicona. También pueden comprobarse igualmente otros implantes con otros rellenos. También es posible de esta manera comprobar la autenticidad de otros productos medicinales como medicamentos (por ejemplo sobre espectros) o aparatos de la técnica médica, como MRTs, CTs y sus componentes electrónicos (por ejemplo mediante señales de prueba o señales de ruido).
De esta manera puede documentarse cuándo y dónde se ha realizado una manipulación del objeto, ya que en un caso así se modifican las características individuales y esto dado el caso ha originado una modificación de la primera clave criptográfica. Si existe por ejemplo una primera estructura de datos con datos invariables del objeto, variaría entonces aquí la firma digital. Por ejemplo la firma digital sería la misma para las tres primeras inscripciones. Si por ejemplo intenta la cuarta entidad en la cadena de suministro sustituir el implante por una falsificación con material de inferior valor, esto quedaría documentado por ejemplo mediante la invención. La cuarta entidad puede ciertamente generar además una inscripción concreta en el sistema de base de datos distribuida, pero a lo más tardar cuando el objeto falsificado se elabora en la quinta entidad, ya no puede generarse para una primera estructura de datos correspondiente una firma digital/suma criptográfica correcta. Las correspondientes entidades generan en cada caso con preferencia también una correspondiente segunda estructura de datos, para almacenar por ejemplo datos variables.
Puesto que las correspondientes entidades generan para su/s transacción/transacciones con las correspondientes estructuras de datos respectivas sumas de verificación de transacción con su propia clave criptográfica (la clave de la entidad), puede detectarse dado el caso qué entidad ha engañado. Ciertamente es deseable que se almacene con seguridad tanta información como sea posible sobre fabricación/procesamiento/distribución/elaboración/transporte en estructuras de datos y transacciones, pero también puede ser suficiente que por ejemplo esto lo haga sólo el fabricante. Para ello no ha de utilizarse forzosamente una base de datos distribuida. También puede utilizar una instancia confiable otras bases de datos (por ejemplo bases de datos SQL jerárquicas) o un servicio de nube.
Mediante la invención, por ejemplo cuando se hace el pedido de un objeto, puede el fabricante/vendedor directamente transferir una estructura de datos correspondiente al comprador o bien se transmite una estructura de datos correspondiente al comprador después de fabricarse el objeto. Entonces la correspondiente estructura de datos o bien las correspondientes estructuras de datos (si se utiliza una primera y una segunda estructura de datos) está/n protegida/s tal como se ha descrito con una suma de verificación criptográfica correspondiente. Las correspondientes estructuras de datos pueden bien transferirse directamente al comprador o bien aportarse al comprador mediante un sistema de base de datos (por ejemplo un sistema de base de datos distribuida). Cuando se suministra el objeto al comprador, puede el mismo verificar, en base al objeto y a las estructuras de datos, si se trata efectivamente del objeto para el que el vendedor/fabricante ha aportado las correspondientes estructuras de datos o las ha almacenado en el sistema de base de datos.
Para ello él puede formar por ejemplo para los datos de la primera estructura de datos una suma de verificación correspondiente, captando las características individuales del objeto - tal como ya se ha explicado - y aportando en base a esas características individuales la primera clave criptográfica, para que pueda generarse la correspondiente suma de verificación criptográfica. Si coinciden las correspondientes sumas de verificación criptográfica, entonces se trata efectivamente del objeto suministrado por el fabricante/vendedor y en el camino de transporte y/o distribución intermedia no ha existido ninguna manipulación.
Por ejemplo es posible que las características individuales codifiquen una clave criptográfica, que por ejemplo puede utilizarse para comprobar la suma de verificación criptográfica de la estructura de datos del fabricante/vendedor. Para verificar la estructura de datos puede utilizarse un aparato de verificación que a continuación se describe brevemente, estando realizada la funcionalidad similarmente a en el aparato ya descrito.
Aparato de verificación para comprobar una suma de verificación criptográfica de una estructura de datos, que incluye:
- por ejemplo un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto en base a las características individuales;
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo un módulo de verificación (140) para comprobar la suma de verificación criptográfica mediante la primera clave criptográfica.
Por ejemplo, en función de la verificación pueden proporcionarse datos de control, que dado el caso, cuando es correcta la suma de verificación criptográfica, confirman la autenticidad del objeto y por ejemplo dan lugar a que una máquina de fabricación continúe elaborando el objeto o bien dar lugar a que un sistema logístico transporte el objeto a continuación.
Los lugares y/o indicaciones sobre dónde y cómo por ejemplo puede encontrar el aparato detector las características individuales para el aparato, pueden fijarse aleatoriamente durante la fabricación o en otro momento (por ejemplo para dificultar una manipulación de las características en el objeto). La correspondiente configuración con las indicaciones sobre cómo y dónde han de captarse las características individuales, incluye entonces datos sobre los lugares geométricos y/o interfaces donde el aparato detector puede captar las características individuales. Esta configuración está con preferencia protegida frente a accesos en el aparato o bien en el aparato de verificación. Protegida frente a accesos significa aquí por ejemplo que a los datos/configuración sólo puede acceder una persona autorizada, superando la misma dado el caso una protección criptográfica y/o mecánica y/o electromecánica por ejemplo mediante la introducción de una palabra de paso/pin. Si alguien quisiera leer mediante una manipulación inadecuada del aparato la configuración, entonces podría captar esto el correspondiente aparato (o aparato de verificación) por ejemplo con los correspondientes sensores (por ejemplo lámina de protección frente a perforación, sensores de temperatura, sensores de luz) y dado el caso borrar la configuración de la memoria del aparato.
También podría utilizar el aparato y/o el aparato de verificación distintas características individuales, codificando las características individuales para el aparato de verificación con preferencia una clave predeterminada (por ejemplo como huella dactilar). Las distintas características individuales se encuentran entonces por ejemplo en distintas posiciones en el objeto.
Alternativamente no pueden fijarse aleatoriamente las características individuales, sino que se encuentran en un objeto correspondiente en una posición conocida/asignada (por ejemplo en el zócalo del objeto o en zonas no lisas de un implante).
En una variante puede renunciar el aparato de cálculo de una suma de verificación criptográfica también a la curva característica individual del objeto y/o a su cálculo. Un tal aparato incluye entonces por ejemplo las siguientes características:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales;
- por ejemplo un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica.
El aparato podría por ejemplo utilizarse también como Hardware-Wallet para cadenas de bloques o aplicaciones Distributed Ledger, cuando por ejemplo el objeto es un aparato electrónico, que protege transacciones mediante la suma de verificación criptográfica (por ejemplo como firma digital). Para ello incluye por ejemplo el objeto el aparato y el aparato detector capta las características individuales (por ejemplo señal de ruido individual del objeto o bien una señal individual del objeto) y genera la primera clave criptográfica, para que pueda generarse la firma digital. La estructura de datos puede ser por ejemplo el mensaje y/o la transacción que ha de protegerse. Si está creada la estructura de datos y/o la transacción que incluye, genera y protege mediante la firma digital los datos de transacción deseados por el usuario, se transfiere la firma digital al Distributed Ledger/a la base de datos distribuida. Éste/ésta puede validar entonces por ejemplo la correspondiente transacción (que incluye la estructura de datos, los datos de la transacción y la firma digital). El aparato y/o el objeto dispone/n para ello por ejemplo de una interfaz de entrada, para introducir las transacciones y/o una interfaz de salida, para transferir la transacción al sistema de base de datos distribuida.
En una variante del aparato de verificación pueden utilizarse las características individuales y/o la curva característica individual del objeto para comprobar una suma de verificación criptográfica. Un tal aparato de verificación incluye entonces las siguientes características:
- por ejemplo un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto (I) en base a las características individuales;
- por ejemplo un módulo de verificación (140) para comprobar la suma de verificación criptográfica mediante las características individuales y/o la curva característica individual del objeto, tal que - por ejemplo en función del resultado de la verificación se proporcionan datos de control, - por ejemplo en base a las características individuales y/o a la curva característica individual del objeto, se genera otra suma de verificación criptográfica para la estructura de datos,
- por ejemplo cuando coincide la otra suma de verificación criptográfica con la suma de verificación criptográfica, se acepta/n la estructura de datos y/o el objeto como auténtica/o y/o correcta/o.
También en esta variante pueden utilizarse los correspondientes procedimientos para compensar inexactitudes de medida, por ejemplo mediante valores de tolerancia. Esto se realiza, tal como ya se ha descrito, mediante un correspondiente procesamiento previo.
Las características individuales y/o la curva característica individual se utiliza/n por ejemplo como secreto, para calcular por ejemplo una suma de verificación criptográfica, como por ejemplo un Message Authentication Code (MAC, código de autentificación de mensajes).
Por ejemplo puede elegirse en esta variante para verificar la estructura de datos otra estructura de datos que se haya protegido con una suma de verificación criptográfica, por ejemplo procedente de un sistema de base de datos distribuida. Esta otra estructura de datos se había protegido por ejemplo utilizando las características individuales y/o la curva característica individual del objeto (del mismo objeto), al haberse generado para la otra estructura de datos, en base a las características individuales y/o a la curva característica individual del objeto, la suma de verificación criptográfica. Si por ejemplo son idénticos el contenido de la estructura de datos y el de la otra estructura de datos, entonces coinciden con preferencia las respectivas sumas de verificación criptográfica de las estructuras de datos. Para esta comprobación puede elegirse por ejemplo el correspondiente contenido de la estructura de datos de la otra estructura de datos, para proporcionar el correspondiente contenido de la estructura de datos. Alternativa o adicionalmente puede proporcionarse por ejemplo sólo una suma de verificación criptográfica para la estructura de datos (por ejemplo desde el sistema de base de datos distribuida). Esta suma de verificación criptográfica se verifica entonces formando sobre la estructura de datos de nuevo una suma de verificación criptográfica.
Si coinciden por ejemplo las sumas de verificación criptográfica, entonces se acepta el objeto como auténtico o como original y/o la estructura de datos se acepta como auténtica. Si no coinciden las sumas de verificación, entonces se rechaza el objeto y/o la estructura de datos y dado el caso se aportan órdenes de control y/o una señal de control, para por ejemplo reaccionar al rechazo (por ejemplo no se procesa el objeto, no se sigue transportando o bien se informa a una persona para que compruebe manualmente el objeto). La decisión de si por ejemplo el objeto y/o la estructura de datos se aceptan como auténticos, depende por ejemplo de la relación de confianza en la situación de verificación. Si se presupone que el objeto es confiable o es un original, se determina con ayuda del objeto por ejemplo la autenticidad de la estructura de datos. Si por ejemplo la estructura de datos con su suma de verificación criptográfica es confiable, entonces puede determinarse la autenticidad del objeto.
Correspondientemente puede estar establecido un módulo de verificación para comprobar la suma de verificación criptográfica mediante la primera clave criptográfica, aceptándose por ejemplo, cuando tiene éxito la comprobación de la suma de verificación criptográfica, la estructura de datos y/o el objeto como auténtico y/o correcto y/o integro.
Una variante del aparato de verificación incluye por ejemplo las siguientes características:
- por ejemplo un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de verificación (140) para comprobar la suma de verificación criptográfica mediante las características individuales, tal que
- por ejemplo en función del resultado de la verificación, se proporcionan datos de control, - por ejemplo en base a las características individuales, se genera otra suma de verificación criptográfica para la estructura de datos,
- por ejemplo cuando coincide la otra suma de verificación criptográfica con la suma de verificación criptográfica, se acepta/n la estructura de datos y/o el objeto como auténtica/o y/o correcta/o y/o íntegra/o.
En una variante del aparato, pueden utilizarse las características individuales y/o la curva característica individual del objeto para calcular una suma de verificación criptográfica para una estructura de datos. Un tal aparato incluye entonces las siguientes características:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto (I) en base a las características individuales;
- por ejemplo un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante las características individuales y/o la curva característica individual del objeto.
También en esta variante pueden utilizarse los correspondientes procedimientos para compensar inexactitudes de medida por ejemplo mediante valores de tolerancia. Esto se realiza, tal como ya se ha explicado, mediante el correspondiente procesamiento previo.
Las características individuales y/o la curva característica individual del objeto se utiliza/n por ejemplo como secreto, para calcular por ejemplo una suma de verificación criptográfica como por ejemplo un Message Authentication Code (MAC; código de autentificación de mensajes).
Una variante del aparato puede incluir entonces las siguientes características:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante las características individuales.
Es posible por ejemplo utilizar un equipo de asociación o un sistema de asociación que por ejemplo incluya otra memoria para almacenar datos ordenadamente, para dado el caso encontrar en el sistema de base de datos distribuida, si es necesario con rapidez, las correspondientes transacciones que memorizan registros de datos para el objeto. Por ejemplo puede incluir el aparato y/o el aparato de verificación en las correspondientes variantes un equipo de asociación o un sistema de asociación (también los otros ejemplos de realización de las figuras 3 y 4 pueden incluir en las correspondientes variantes un equipo de asociación o un sistema de asociación).
El equipo de asociación y/o la otra memoria pueden ser por ejemplo una tabla hash, mapa hash o tabla Lookup (de consulta). También puede implementar el equipo de asociación y/o el sistema de asociación una Distributed Hash Table o bien la otra memoria corresponde a una memoria distribuida, por ejemplo en forma de la Distributed Hash Table.
Si se escribe por ejemplo una estructura de datos con una suma de verificación criptográfica mediante un mensaje o transacción en el sistema de base de datos distribuida o bien se memoriza en el mismo, entonces se escribe por ejemplo una inscripción en el equipo de asociación. La inscripción incluye una clave y un registro de datos específico de la transacción. Como clave pueden utilizarse por ejemplo los siguientes datos o una combinación de los siguientes datos:
- características individuales
- curva característica individual del objeto
- datos invariables referidos al objeto (primer grupo de datos)
- la primera clave criptográfica
- la suma de verificación criptográfica
- un hash relativo a los citados datos
- un valor hash relativo a la estructura de datos.
La clave puede denominarse en este contexto también clave de asociación.
El registro de datos específico de la transacción puede incluir por ejemplo los siguientes datos o bien incluir una combinación de los siguientes datos:
- número de bloque correspondiente a un bloque de una cadena de bloques/de un sistema de base de datos distribuida, que incluye la transacción con la correspondiente estructura de datos
- número de transacción correspondiente a una transacción que incluye la transacción con la correspondiente estructura de datos
- lugar de la memoria o dirección de memoria de un mensaje, que incluye el mensaje con la estructura de datos correspondiente
- sumas de verificación del correspondiente bloque y/o transacción y/o mensaje
- datos sobre la entidad que ha realizado la inscripción
- otros datos que pueden parecer relevantes.
El registro de datos específico de la transacción puede también denominarse entonces metadatos relativos a la transacción o bien a la inscripción en la base de datos distribuida. Una inscripción puede ser por ejemplo una transacción, mensaje, bloque de datos, bloque o dirección de memoria, que memoriza por ejemplo la estructura de datos con la correspondiente suma de verificación criptográfica.
Si por ejemplo se escribe una inscripción en el sistema de base de datos distribuida y aún no existe ninguna inscripción para una clave, se genera por ejemplo una inscripción y se inscribe el correspondiente registro de datos específico de la transacción.
Si ya existe una inscripción para una clave correspondiente, puede por ejemplo sobreescribirse el correspondiente registro de datos específico de la transacción mediante el registro de datos actual específico de la transacción. En otras palabras, se sobreescribe la inscripción ya existente mediante el registro de datos específico de la transacción que ha de inscribirse. Alternativamente puede añadirse el registro de datos actual/nuevo específico de la transacción al registro de datos específico de la transacción ya existente, estando realizado en una tal variante el registro de datos específico de la transacción como una lista o un vector con registros de datos específicos de la transacción. Los registros de datos específicos de la transacción pueden escribirse por ejemplo en la lista o el vector ordenados o clasificados, con lo que el registro de datos actual/más nuevo específico de la transacción es por ejemplo la primera inscripción o la última inscripción. Correspondientemente está clasificada la lista/vector por ejemplo en función del instante de la inscripción. También son entonces posibles otras clasificaciones o colocaciones. Por ejemplo las inscripciones pueden estar ordenadas en función de los lugares, códigos postales, posiciones de GPS, etc. El registro de datos específico de la transacción o bien los registros de datos específicos de la transacción pueden denominarse por ejemplo también metadatos para estructuras de datos correspondientes, que por ejemplo pueden almacenarse y/o proporcionarse mediante un sistema de base de datos distribuida.
Con el equipo de asociación es posible encontrar rápidamente dentro del sistema de base de datos distribuida las correspondientes inscripciones que están asociadas a un objeto. Primeramente se genera la correspondiente clave para un objeto, captando y/o calculando por ejemplo las características individuales y/o la curva característica individual del objeto. En base a estos datos pueden entonces calcularse los correspondientes datos para determinar la clave.
Si la clave está disponible o se ha proporcionado, entonces puede leerse mediante el equipo de asociación o el sistema de asociación el correspondiente registro de datos específico de la transacción. En base a este registro de datos específico de la transacción, pueden entonces elegirse dado el caso las correspondientes inscripciones/transacciones en el sistema de base de datos distribuida. Por ejemplo de esta manera puede encontrarse muy rápidamente las correspondientes transacciones con una estructura de datos que se inscribieron para el objeto por parte de otra entidad o bien en un momento anterior. Esto es ventajoso cuando ha de comprobarse la autenticidad del objeto y/o de la estructura de datos (actual) con el aparato de verificación mediante una estructura de datos anterior/más antigua (por ejemplo una estructura de datos escrita por otra entidad en el sistema de base de datos distribuida). Tal como ya se ha indicado, las correspondientes estructuras de datos están protegidas con las respectivas sumas de verificación criptográficas, tal como se ha descrito ya en base a este o a otros ejemplos de realización. Un equipo de asociación o un sistema de asociación puede entonces incluir lo siguiente:
- por ejemplo un módulo de aportación de claves, tal que
- por ejemplo el módulo de aportación de claves está diseñado para aportar una clave,
- por ejemplo la clave se calcula en base a datos de entrada o bien
- por ejemplo se descarga la clave a través de una interfaz de datos o se transmite al módulo de aportación de claves,
- por ejemplo un módulo de aportación de metadatos, tal que
- por ejemplo el módulo de aportación de metadatos está diseñado para proporcionar metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida), - por ejemplo se calculan los metadatos mediante el módulo de aportación de metadatos, transfiriéndose por ejemplo una referencia o un enlace a la inscripción en el módulo de aportación de metadatos y eligiendo por ejemplo el módulo de aportación de metadatos los correspondientes metadatos para la inscripción desde la base de datos o bien
- por ejemplo se descargan los metadatos a través de una interfaz de datos del módulo de aportación de metadatos o bien se transmiten al módulo de aportación de metadatos,
- por ejemplo un módulo de memoria tal que
- el módulo de memoria está diseñado para memorizar un par de datos formado por una clave y los correspondientes metadatos.
A continuación se describirá un aparato y un aparato de verificación, cada uno de los cuales incluye un equipo de asociación o un sistema de asociación correspondiente. “Incluye” puede entenderse aquí por ejemplo en sentido amplio, tal que un correspondiente aparato de asociación o un sistema de asociación está conectado con un aparato o un aparato de verificación también a través de una interfaz de comunicación/interfaz de datos (por ejemplo Internet, LAN, interfaz de telefonía móvil). Alternativamente incluye el aparato y/o aparato de verificación un correspondiente equipo de asociación o un sistema de asociación como componente integrado. Alternativamente está constituido un equipo de asociación o un sistema de asociación correspondiente como uno o varios nodos del sistema de base de datos distribuida. Un aparato incluye en esta variante lo siguiente:
- por ejemplo un módulo de captación para captar características individuales de un objeto mediante un aparato detector;
- por ejemplo un módulo de cálculo para calcular una curva característica individual del objeto en base a las características individuales;
- por ejemplo un módulo de criptografía para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo un módulo de protección para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica;
- por ejemplo un módulo de escritura, tal que
- por ejemplo el módulo de escritura está diseñado para escribir la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida),
- por ejemplo el módulo de escritura forma una clave (por ejemplo denominada también clave de asociación) para una inscripción en la base de datos, que por ejemplo incluye la estructura de datos (en esta inscripción se memorizó la estructura de datos),
- por ejemplo el módulo de escritura escribe en un equipo de asociación metadatos sobre la inscripción en la base de datos mediante la clave.
Un aparato incluye en otra variante lo siguiente:
- por ejemplo un módulo de captación para captar características individuales de un objeto mediante un aparato detector;
- por ejemplo un módulo de criptografía para proporcionar una primera clave criptográfica en base a las características individuales y/o a una curva característica individual del objeto;
- por ejemplo un módulo de protección para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica;
- por ejemplo un módulo de escritura, tal que
- por ejemplo el módulo de escritura está diseñado para escribir la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida),
- por ejemplo el módulo de escritura forma una clave (por ejemplo denominada también clave de asociación) para una inscripción en el base de datos, que por ejemplo incluye la estructura de datos (en esta inscripción se memorizó la estructura de datos),
- por ejemplo el módulo de escritura escribe en un equipo de asociación metadatos sobre la inscripción en la base de datos mediante la clave.
Un aparato incluye en otra variante lo siguiente:
- por ejemplo un módulo de captación para captar características individuales de un objeto mediante un aparato detector;
- por ejemplo un módulo de protección para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante las características individuales y/o características individuales del objeto,
- por ejemplo un módulo de escritura, tal que
- por ejemplo el módulo de escritura está diseñado para escribir la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida),
- por ejemplo el módulo de escritura forma una clave (por ejemplo denominada también clave de asociación) para una inscripción en la base de datos, que por ejemplo incluye la estructura de datos,
- por ejemplo el módulo de escritura escribe en un equipo de asociación metadatos sobre la inscripción en la base de datos mediante la clave.
Un aparato de verificación incluye en esta variante lo siguiente:
- por ejemplo un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto en base a las características individuales;
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo un módulo de verificación (130) para comprobar la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- por ejemplo el módulo de verificación forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo el módulo de verificación está diseñado para cargar, en base a la clave, metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación,
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo la verificación se realiza comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Por ejemplo se acepta la estructura de datos y/o el objeto como auténtico/s cuando coinciden las correspondientes sumas de verificación.
Un aparato de verificación Incluye en otra variante lo siguiente:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales;
- por ejemplo un módulo de verificación (130) para comprobar una suma de verificación criptográfica de una estructura de datos mediante la primera clave criptográfica.
Un aparato de verificación incluye en otra variante lo siguiente:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales;
- por ejemplo un módulo de verificación (130) para comprobar una suma de verificación criptográfica de una estructura de datos mediante la primera clave criptográfica, tal que
- por ejemplo el módulo de verificación forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo el módulo de verificación está diseñado para cargar, en base a la clave, metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación,
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo la verificación se realiza comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Un aparato de verificación incluye en otra variante lo siguiente:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de verificación (130) diseñado para comprobar una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo el módulo de verificación forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo el módulo de verificación está diseñado para cargar, en base a la clave, metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación,
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo la verificación se realiza comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Un aparato de verificación incluye en otra variante lo siguiente:
- por ejemplo un módulo de verificación (130) diseñado para comprobar una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo el módulo de verificación forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo el módulo de verificación está diseñado para cargar, en base a la clave, metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación,
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo la verificación se realiza comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Un aparato de verificación incluye en otra variante lo siguiente:
- por ejemplo un módulo detector (110) para captar características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de verificación (130) diseñado para comprobar una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo el módulo de verificación forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto, en base a las características individuales (M) y/o a una curva característica individual del objeto,
- por ejemplo el módulo de verificación está diseñado para cargar, en base a la clave, metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación,
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo la verificación se realiza comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
En las citadas formas de realización y variantes, puede escribirse por ejemplo en función de la implementación elegida, en vez de la estructura de datos, la correspondiente suma de verificación criptográfica. La estructura de datos puede estar almacenada entonces en otro sistema de memoria, para por ejemplo almacenar un volumen de datos lo más pequeño posible en el sistema de base de datos distribuida. En otras palabras, puede estar almacenada la estructura de datos por ejemplo también i indirectamente en el sistema de base de datos distribuida, teniendo por ejemplo la transacción en el sistema de base de datos la suma de verificación criptográfica y una correspondiente referencia al lugar de la memoria en el otro sistema de memoria (por ejemplo una base de datos).
Por ejemplo pueden utilizarse, en lugar del sistema de base de datos distribuida, procedimientos que permiten una memorización confiable de mensajes/transacciones.
Por ejemplo con la invención y los ejemplos de realización pueden utilizarse en este contexto formas de realización y sus variantes, bases de datos confiables, servicios de nube, sistemas de memoria seguros ante revisiones (por ejemplo bases de datos seguras ante revisiones), sistemas de comunicación de red (por ejemplo sistemas de comunicación de Ethernet, sistemas de comunicación TCP-IP, sistemas de comunicación de telefonía móvil), sistemas distribuidos, sistemas de memoria distribuida o sistemas Peer-2-Peer, para almacenar y/o para transmitir y/o intercambiar entre nodos con fiabilidad las transacciones/los mensajes correspondientes. También podría utilizarse una memoria protegida frente a escritura, en la que se memoriza de forma invariable una transacción o mensaje escritos una sola vez, para memorizar por ejemplo una transacción o un mensaje con el procedimiento descrito, incluyendo el mensaje correspondiente una respectiva estructura de datos con la suma de verificación criptográfica y estando protegida/o la transacción/mensaje opcionalmente con una suma de verificación de la transacción.
También pueden utilizarse por ejemplo para las distintas sumas de verificación o sumas de verificación criptográficas diversos procedimientos. Así puede estar realizada por ejemplo la suma de verificación de la transacción (o en el caso de un mensaje la suma de verificación del mensaje) como firma digital y la suma de verificación criptográfica para la estructura de datos es por ejemplo un Message Authentication Code (MAC, código de autentificación de mensajes). Alternativamente puede realizar la estructura de datos con la suma de verificación criptográfica un certificado digital para el objeto, estando memorizadas por ejemplo informaciones/datos específicos del objeto en la estructura de datos y/o estando memorizadas en la estructura de datos las características individuales y/o la curva característica individual del objeto.
En particular en combinación con el aparato de verificación, puede lograrse por medios criptográficos una ligazón con el objeto o bien con características individuales del objeto (en particular un objeto físico, que también puede denominarse objeto no digital) y de un gemelo digital o reproducción del objeto.
Puesto que el mensaje o bien la estructura de datos que está protegido/a mediante el aparato por medio de la suma de verificación criptográfica, por ejemplo mediante una transacción se memoriza de forma invariable en un sistema de memoria correspondiente (por ejemplo sistema de base de datos distribuido o una de las citadas alternativas), puede comprobar el aparato de verificación, dado el caso de manera sencilla, mediante la primera clave criptográfica determinada si se trata realmente del objeto utilizado por el aparato.
El aparato y/o el aparato de verificación y/o el equipo de asociación y/o el sistema de asociación puede incluir por ejemplo en cada caso adicionalmente otro u otros varios componente/s, como por ejemplo un procesador, una unidad de memoria, otras interfaces de comunicación (por ejemplo Ethernet, LAN, USB, Feldbus, PCI), un aparato de entrada, en particular un teclado de ordenador o un ratón de ordenador y un aparato de visualización (por ejemplo un monitor). El procesador puede por ejemplo incluir otros varios procesadores, que en particular pueden utilizarse para implementar otros ejemplos de realización.
Un ejemplo de realización no mostrado en una figura se refiere a un sistema que incluye un aparato y un aparato de verificación. El correspondiente aparato y/o el correspondiente aparato de verificación pueden ser por ejemplo también una forma de realización, ejemplo de realización o una variante del respectivo aparato y/o del respectivo aparato de verificación.
La figura 3 muestra un ejemplo de realización que se refiere a un módulo de control de escritura. El módulo de control de escritura puede utilizarse por ejemplo para garantizar que la estructura de datos descrita en la figura 2 se escribe en un sistema de base de datos distribuida o sistema de base de datos que responde a los requisitos de seguridad prescritos, que por ejemplo están predeterminados en una configuración de escritura de datos. El ejemplo de realización de la invención se describirá en particular utilizando la figura 1 y correspondientemente son válidas las explicaciones de las referencias de la figura 1 también para la figura 3.
El módulo de control de escritura incluye una interfaz de comunicación (por ejemplo una tarjeta de red), un módulo de verificación y un módulo de control de la transmisión, que están conectados entre sí comunicando a través del bus.
La interfaz de comunicación está diseñada para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida.
El módulo de verificación está diseñado para cargar una/la configuración de escritura de datos, indicando la configuración de escritura de datos bajo qué condiciones se escribirán los mensajes en el sistema de base de datos distribuida. El módulo de verificación comprueba entonces por ejemplo si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida. La configuración de escritura de datos puede estar memorizada por ejemplo en el módulo de control de escritura o en el sistema de base de datos distribuida.
El módulo de control de la transmisión está diseñado para, en función de un resultado de comprobación del módulo de verificación, controlar una transmisión de un mensaje al sistema de base de datos distribuida mediante la interfaz de comunicación.
En variantes de la citada invención puede sustituirse por ejemplo el sistema de base de datos distribuida por una de las alternativas citadas en la figura 2.
A continuación se describirá cómo pueden utilizarse las condiciones de la configuración de escritura de datos para garantizar que por ejemplo sólo se escribe el mensaje correspondiente cuando otro nodo correspondiente ya ha escrito un mensaje en el sistema de base de datos distribuida.
Para ello prescribe por ejemplo la configuración de escritura de datos que uno o varios nodos predeterminados ya hayan escrito mensajes en el sistema de base de datos distribuida, prescribiendo por ejemplo las condiciones de la configuración de escritura de datos que ya existen mensajes de los nodos en el sistema de base de datos distribuida.
Los mensajes pueden ser transacciones con una estructura de datos que por ejemplo se describen en la figura 2. Los nodos pueden ser entidades u oráculos de cadenas de bloques, para los cuales existe, mediante la configuración de escritura de datos, una dependencia, que por ejemplo también existe en el mundo físico. Por ejemplo en el transporte del objeto de la figura 2 debe observarse una secuencia de puntos de verificación (checkpoints), escribiendo cada punto de verificación en el sistema de base de datos distribuida una correspondiente transacción/mensaje por ejemplo con una estructura de datos que está protegida mediante la suma de verificación criptográfica.
Un primer nodo A escribe por ejemplo una transacción (por ejemplo transacción T1a) en el sistema de base de datos distribuida en una primera etapa de procesamiento S31. El primer nodo A puede ser entonces un nodo que confirma el envío y/o fabricación y/o realización de una etapa de procesamiento/elaboración (el objeto fue generado por ejemplo por un subcontratista y transferido al suministrador) para el objeto. Un segundo nodo B con un módulo de control de escritura lee durante el procesamiento del objeto en un segundo subcontratista (por ejemplo el objeto es una pieza de trabajo) la transacción T1a o bien busca en el sistema de base de datos distribuida una transacción que escribió el primer nodo con una referencia al objeto. Esto se realiza entonces en la etapa del procesamiento S32. La configuración de escritura de datos indica por ejemplo qué datos deben existir en el sistema de base de datos distribuida y de qué nodos, para que el segundo nodo o bien el módulo de control de escritura permita escribir otro mensaje en el sistema de base de datos distribuida. La configuración de escritura de datos puede prescribir alternativa o adicionalmente una ventana de tiempo que deben respetar los mensajes de un nodo predeterminado. Por ejemplo se prescribe mediante la configuración de escritura de datos que los correspondientes mensajes de un nodo no deben ser más antiguos de 24 horas (alternativamente también 1 hora y 5 minutos). En base a esta información puede a continuación el segundo nodo B buscar las correspondientes inscripciones/ transacciones en el sistema de base de datos distribuida, incluyendo la correspondiente inscripción/transacción con preferencia un sello de tiempo. Alternativa o adicionalmente puede incluir también un bloque un sello de tiempo. En base al correspondiente sello de tiempo, se averigua entonces qué bloques/transacciones se investigan y/o si se ha respetado la condición de la configuración de escritura de datos. Pueden utilizarse además otras informaciones en la búsqueda de los mensajes correspondientes. Éstas son por ejemplo datos específicos del objeto o los datos de las estructuras de datos de la figura 2.
Si se cumplen las condiciones o exigencias de la configuración de escritura de datos, entonces escribe por ejemplo el segundo nodo B en una etapa de procesamiento S33 un mensaje correspondiente, por ejemplo un mensaje y/o transacción con una estructura de datos que está protegida mediante una suma de verificación criptográfica en el sistema de base de datos distribuida. El mensaje puede ser entonces por ejemplo la transacción T3a.
El módulo de control de escritura puede incluir por ejemplo en cada caso adicionalmente otro u otros componentes, como por ejemplo un procesador, una unidad de memoria, otras etapas de comunicación (por ejemplo Internet, WLAN, USB, Feldbus, BCI), un aparato de entrada, en particular un teclado de ordenador o un ratón de ordenador y un aparato de visualización (por ejemplo un monitor). El procesador puede por ejemplo incluir otros varios procesadores, que en particular se pueden utilizar para realizar otros ejemplos de realización.
La figura 4 muestra un ejemplo de realización que se refiere a un equipo de transferencia. Un nodo del sistema de base de datos distribuida de la figura 1 o un nodo de la figura 2 ó 3 pueden incluir por ejemplo, según el escenario de aplicación, el equipo de transferencia. Un nodo u otro equipo autónomo puede incluir por ejemplo el aparato y/o el módulo de control de escritura y/o el aparato de verificación y/o el equipo de verificación. Por ejemplo puede incluir un tal nodo y/o equipo también las correspondientes variantes, formas de realización y ejemplos de realización de estas invenciones ya descritos (aparato y/o el módulo de control de escritura y/o el aparato de verificación y/o el equipo de transferencia).
El equipo de transferencia incluye un módulo detector de datos de mensajes (por ejemplo una tarjeta de red conectada con una tarjeta de red), un módulo de determinación y un módulo de transmisión, que están unidos comunicativamente entre sí a través de un bus.
El módulo detector de datos de mensajes está diseñado para leer un registro de datos de prioridad con una prioridad de un mensaje. El mensaje puede ser en particular un mensaje o una transacción que incluye una estructura de datos con una suma de verificación criptográfica, tal como se ha descrito por ejemplo en la figura 2. La prioridad o bien el registro de datos de prioridad pueden entonces estar prescritos por el aparato de la figura 2. Alternativa o adicionalmente se generó el mensaje mediante otro aparato. El aparato puede ser por ejemplo una máquina de fabricación o bien un aparato de control o vigilancia de un sistema técnico (por ejemplo una instalación generadora, una red de distribución de la energía, un aparato de campo). El mensaje o la estructura de datos puede incluir por ejemplo órdenes de control para controlar otros aparatos, para por ejemplo controlar en base a valores de sensor de un aparato de vigilancia una señal de interruptor de un aparato de control u otras etapas de procesamiento para el objeto (por ejemplo una pieza de trabajo como un álabe de turbina, pieza de generador, un aparato de campo, etc.) durante su fabricación y/o mantenimiento. Las citadas variantes del generador de mensajes pueden denominarse por ejemplo emisor X.
El módulo detector de datos de mensajes elige un destino NR para el mensaje (por ejemplo un nodo de un sistema de base de datos distribuida, tal como el que se representa por ejemplo en la figura 1 u otro aparato que procesa el mensaje para el mensaje), incluyendo para ello el mensaje con preferencia una dirección de destino (una UID o una dirección de red) u otras informaciones (nombre, tipo de aparato para el mensaje), para determinar una dirección de destino ZR (que también puede denominarse receptor). Adicionalmente están asociados por ejemplo a la prioridad parámetros de transferencia para la transferencia de mensajes. Esto significa por ejemplo lo siguiente:
Prioridad 0: baja prioridad, no tiene que observarse ningún tiempo de transferencia para el mensaje y/o una entrega con éxito no es forzosamente necesaria. La transmisión puede realizarse por ejemplo como broadcast (difusión masiva) o multicast (punto a multipunto).
Prioridad 1: prioridad normal, el mensaje debe transferirse dentro de un tiempo de transferencia predeterminado (por ejemplo 5 minutos, 1 hora, 5 horas) al destino NR.
Prioridad 2: alta prioridad, el mensaje debe transferirse al destino NR más rápidamente que mensajes con prioridad normal o baja (por ejemplo dentro de 5 segundos o 10 segundos). Para ello interrumpe el nodo si es necesario un procesamiento de un mensaje con una prioridad inferior (por ejemplo en un proceso de replicación dentro del sistema de base de datos distribuida) y se elabora el mensaje con la alta prioridad.
Prioridad 3: prioridad crítica, un mensaje así debe transmitirse al destino NR tan rápidamente como sea posible.
La asociación de los parámetros de transferencia puede entonces prescribirse mediante el sistema de base de datos distribuida, configurando esto por ejemplo mediante un Smart Contract/Chain-Code (contrato inteligente/código de concatenación).
La asociación o bien la configuración de los parámetros de transferencia puede realizarse por ejemplo localmente, estando memorizada una configuración correspondiente en el equipo de transferencia. Alternativa o adicionalmente puede realizarse la asociación y/o la configuración de los parámetros de transferencia por ejemplo mediante el sistema de base de datos distribuida, estando realizado por ejemplo un correspondiente control mediante un Smart Contract, que por ejemplo está memorizado en una transacción del sistema de base de datos distribuida.
El módulo de determinación está diseñado para ello en base al destino y a la prioridad de un registro de datos de control de mensajes para controlar la transmisión del mensaje, asociándose el registro de datos de control de mensajes al mensaje. Al realizar la determinación se tienen en cuenta en particular los parámetros de transferencia.
Alternativa o adicionalmente está diseñado el módulo de determinación para verificar, en base al destino y a la prioridad, si puede determinarse una ruta válida, generándose por ejemplo en función del resultado de la verificación un registro de datos de control de mensajes para controlar la transmisión del mensaje. Al realizar la determinación se tienen en cuenta en particular igualmente los parámetros de transferencia. Al mensaje puede por ejemplo adjuntársele el registro de datos de control de mensajes y con ello formar entonces con preferencia una parte de ese mensaje y/o el registro de datos de control de mensajes se asocia al mensaje mediante una UID (por ejemplo un número aleatorio, un valor hash, un número de mensaje, la primera clave criptográfica de la figura 2, la suma de verificación criptográfica de la figura 2, etc.) y se almacena separadamente en el sistema de base de datos distribuida (por ejemplo hashmap, hahstable o como lookup-table).
El módulo de transmisión está diseñado para transferir el mensaje en función de un registro de datos de control de mensajes a un nodo del sistema de base de datos distribuida (por ejemplo el sistema de base de datos distribuida ya descrito en los ejemplos de realización precedentes), estando predeterminado el nodo mediante el registro de datos de control de mensajes.
Por ejemplo incluye el registro de datos de control de mensajes una ruta a través de varios nodos del sistema de base de datos distribuida, transmitiéndose por ejemplo para determinar la ruta el tiempo de transferencia de mensajes entre los nodos a través de los nodos al equipo de transferencia y teniéndose en cuenta en particular los correspondientes tiempos de transferencia al determinar el registro de datos de control de mensajes. Entonces se determina la ruta por ejemplo en función del resultado de la verificación de la prioridad y de los tiempos de transferencia mediante el módulo de determinación al averiguarse el registro de datos de control de mensajes.
Tal como se representa en la figura 4, se transmite el mensaje a través de un sistema distribuido (por ejemplo el sistema de base de datos distribuida) y sus nodos (por ejemplo nodos N1 - N6) al destino NR. Si se trata por ejemplo de un mensaje con baja prioridad, se calcula la ruta C (X, N1, N2, N3, N6, N5, NR) mediante el módulo de determinación para el mensaje y se fija o calcula mediante el registro de datos de control de mensajes. Para elegir la ruta pueden utilizarse distintos parámetros, conociéndose por ejemplo los tiempos de transmisión entre los nodos, captándose estos tiempos de transmisión para transmisiones entre los nodos e intercambiándose entre los nodos. También puede elegirse una tal ruta lenta para mensajes de inferior prioridad, para mantener libre una ruta rápida para mensajes de mayor prioridad. Los nodos de la ruta C pueden ser por ejemplo nodos lentos con peor conexión a la red.
El nodo al que transfiere el módulo de transmisión el mensaje en función del registro de datos de control de mensajes, es con preferencia el correspondiente siguiente nodo en la ruta calculada. Partiendo del emisor X se trataría del siguiente nodo N1 para la ruta C. Partiendo del nodo N1, sería el siguiente nodo N2 para la ruta C, cuando el nodo N1 procesa en ese momento el mensaje y/o ha determinado la ruta y/o la ha determinado de nuevo y/o la ha comprobado.
Si se envía otro mensaje con alta prioridad, entonces puede fijarse para el mismo por ejemplo la ruta D (X, N2, N5, NR). Si entran mensajes por ejemplo en el nodo N2 simultáneamente, elabora el nodo N2 dado el caso primeramente el mensaje con mayor prioridad.
También pueden incluir un nodo (por ejemplo el nodo N2, varios nodos (por ejemplo los nodos N1 a N3), todos los nodos (N1 a N6) el destino NR y/o el emisor X un correspondiente equipo de transferencia. Esto es ventajoso para adaptar dado el caso la ruta del mensaje, cuando por ejemplo empeora el tiempo de transmisión de la ruta elegida tal que el mismo no llega al destino NR a tiempo en función de su prioridad. También pueden comprobar los correspondientes nodos la ruta, para detectar si la misma sigue cumpliendo las exigencias de los parámetros de transferencia de la prioridad del mensaje. Si se detecta entonces que la ruta actual ya no cumple estas exigencias de la prioridad o bien los parámetros de transferencia, entonces un nodo correspondiente puede adaptar la ruta, para que la misma responda de nuevo a las exigencias (y por ejemplo incluso utilizar un canal de comunicación separado y/o directo, si no puede determinarse ninguna ruta válida). Si sigue cumpliendo la ruta actual las exigencias, entonces el nodo no adapta la ruta.
El registro de datos de control de mensajes puede incluir por ejemplo también un registro de datos de configuración. Entonces se comprueba por ejemplo si el mensaje se transmite de tal forma que se mantienen estas prescripciones de la prioridad y/o parámetros de transferencia (por ejemplo si se transmite a tiempo). En función de este resultado de la comprobación se generan entonces los datos de configuración, que bien prescriben una ruta o por ejemplo, cuando se trata de una prioridad crítica de un mensaje (por ejemplo un mensaje de control para una desconexión de emergencia de un aparato de fabricación), generan un canal de comunicación HPC directo y el mensaje se transmite dado el caso directamente al destino NR. Mediante el registro de datos de configuración se configura por ejemplo el módulo de transmisión tal que para la transmisión del mensaje se establece el canal de comunicación HPC separado y/o directo hacia el destino NR.
El registro de datos de control de mensajes puede incluir por ejemplo un registro de datos preconfigurado, que prescribe, al menos parcialmente, la vía de transmisión o la ruta del mensaje hacia el destino.
Si el sistema de base de datos distribuida es por ejemplo una cadena de bloques o Distributed Ledger, puede adaptarse entonces, en función de la prioridad, por ejemplo el proceso de validación de los mensajes, que por ejemplo pueden ser transacciones invalidadas. Por ejemplo en una implementación mediante un algoritmo Proof-of-Work, puede adaptarse la dificultad del puzle criptográfico en función de la prioridad. Para mensajes con alta prioridad, se adapta entonces por ejemplo la dificultad para resolver el puzle criptográfico del algoritmo Proof-of-Work por ejemplo de tal forma que no se sobrepasan las prescripciones en cuanto al tiempo de la prioridad para la transmisión al destino. Para ello puede adaptarse la duración de la solución del puzle criptográfico tal que los tiempos de transferencia/tiempos de transmisión a través de los nodos (por ejemplo nodos N1-N6) del sistema de base de datos distribuida al destino NR el tiempo necesario para resolver el puzle criptográfico no sobrepase la prescripción en cuanto a tiempo. Por ejemplo puede tenerse en cuenta para ello también adicionalmente un tiempo de buffer o colchón.
La dificultad del puzle criptográfico está prescrita así mediante el tiempo para resolver ese puzle. El tiempo se determina como sigue:
Tiempo para resolver el puzle = (prescripción de tiempo correspondiente a la prioridad) - (tiempo de transmisión previsible hasta el destino tiempo de buffer)
El tiempo de buffer puede estar determinado entonces por la máxima desviación esperable en el tiempo de transmisión. El mismo puede ser por ejemplo 0 si no se utiliza ningún buffer. Esta desviación puede captarse por ejemplo mediante los nodos en transmisiones de mensajes e intercambiarse entre los nodos. Mediante la reducción de la dificultad del puzle criptográfico, se proporciona más rápidamente dado el caso el mensaje, que por ejemplo es una transacción, como transacción validada del sistema de base de datos distribuida.
Adicional o alternativamente puede transmitirse un mensaje con una prioridad critica por ejemplo a través del canal de comunicación h P c separado y/o directo al destino NR.
El equipo de transferencia es ventajoso para permitir por ejemplo una transmisión rápida del correspondiente mensaje al destino, sin utilizar el mecanismo de replicación del sistema de base de datos distribuida y por ejemplo sólo documentar la recepción del mensaje mediante una transacción de confirmación y/o documentar el envío del mensaje mediante una correspondiente transacción de envío. Esto es ventajoso para transmitir por ejemplo el mensaje al destino con la mayor rapidez posible (por ejemplo cuando la prioridad es crítica), pero no obstante documentar con la transacción de confirmación y/o la transacción de envío la transmisión y la recepción con seguridad mediante el sistema de base de datos distribuida. Para ello incluye la transacción de envío por ejemplo la fecha de envío y/o la hora de envío y/o el destino (por ejemplo la dirección de destino), una confirmación del establecimiento del enlace hacia el destino y/o una confirmación de la transmisión al destino, habiéndose confirmado la transmisión por ejemplo desde el destino mediante una suma de verificación como una firma digital mediante un mensaje de confirmación correspondiente al equipo de transferencia (también puede estar memorizado este mensaje de confirmación dado el caso en la transacción de envío). Análogamente puede estar establecida por ejemplo la transacción de confirmación. Ésta incluye por ejemplo una fecha de recepción y/o una hora de recepción y/o dirección de envío (por ejemplo la dirección del equipo de transferencia), una confirmación sobre el establecimiento del enlace desde el emisor y/o una confirmación de la transmisión desde el emisor, habiéndose confirmado la transmisión por ejemplo desde el emisor mediante una suma de verificación como una firma digital mediante un mensaje de confirmación correspondiente al equipo de transmisión (también este mensaje de confirmación puede estar dado el caso memorizado en la transacción de envío). El propio mensaje puede estar protegido por ejemplo a su vez mediante una suma de verificación de transacción. El contenido del mensaje puede por ejemplo estar memorizado igualmente en la transacción de confirmación.
En variantes del ejemplo de realización se memoriza tras la recepción del mensaje por parte del destino una transacción de confirmación en el sistema de base de datos distribuida.
El equipo de transferencia es ventajoso por ejemplo para documentar con qué rapidez se realiza la transmisión de los datos para mensajes a un destino. Entonces pueden documentarse por ejemplo los correspondientes tiempos de transmisión entre los distintos nodos del sistema de base de datos distribuida. Mediante las transacciones de confirmación puede entonces calcular el equipo de transferencia qué ruta a través de la infraestructura del sistema de base de datos distribuida es adecuada para la prioridad.
El equipo de transferencia puede incluir por ejemplo adicionalmente otro u otros varios componente/s, como por ejemplo un procesador, una unidad de memoria, otras interfaces de comunicación (por ejemplo Ethernet, W l a N , USB, Feldbus, PCI), un aparato de entrada, en particular un teclado de ordenador o un ratón de ordenador y un aparato de visualización (por ejemplo un monitor). El procesador puede por ejemplo incluir otros varios procesadores, que en particular pueden utilizarse para implementar otros ejemplos de realización.
La invención es ventajosa para por ejemplo realizar un sistema de control para aparatos de fabricación, infraestructura (por ejemplo obras hidráulicas, control de aguas residuales, control de edificios) o instalaciones de generación mediante un sistema de base de datos distribuida, siendo los mensajes dado el caso transacciones del sistema de base de datos distribuida. Especialmente ventajoso es entonces que dado el caso puede adaptarse a mensajes con distinto grado de prioridad el tiempo de transmisión y/o el tiempo para resolver la acreditación Proof-of-Work. De esta manera puede en particular memorizarse o bien proporcionarse un mensaje con prioridad crítica con más rapidez que el mensaje/la transacción validados mediante el sistema de base de datos distribuida. Si por ejemplo se acciona un interruptor de emergencia para una central generadora, envía entonces ese interruptor un mensaje correspondiente con órdenes de mando para la desconexión en emergencia al sistema de control de la central generadora, con lo que éste desconecta a través de una red de comunicación todas las máquinas y aparatos relevantes de la instalación generadora. Si está realizado el sistema de control de la central generadora mediante un sistema de base de datos distribuida, entonces se transmite con la invención ese correspondiente mensaje bastante más rápidamente a las máquinas y aparatos relevantes.
De manera análoga puede realizarse por ejemplo un sistema de control de una red de suministro de energía, cuando por ejemplo pueden medirse puntas de tensión o caídas de tensión en la red mediante un emisor X o bien un aparato con la correspondiente dotación sensórica. El emisor X envía entonces un mensaje con las correspondientes órdenes de mando y/o valores de medida a aparatos de campo y/o aparatos de control y/o centrales generadoras de reserva de la red de suministro de energía, para compensar en la mayor medida posible las correspondientes oscilaciones de tensión en la red de suministro de energía mediante un sistema de control por medio de los aparatos de campo y/o de los aparatos de control y/o de las centrales generadoras de reserva. Estos mensajes incluyen entonces con preferencia un registro de datos de prioridad con una prioridad alta o crítica, determinándose la magnitud de la prioridad por ejemplo mediante la magnitud de la oscilación de la tensión en la red de suministro de energía.
En una variante incluye el equipo de transferencia para controlar una transferencia de un mensaje lo siguiente:
- Por ejemplo un módulo de captación de datos de mensajes, tal que
- por ejemplo el módulo de captación de datos de mensajes elige un registro de datos de prioridad con una prioridad de un mensaje,
- por ejemplo el módulo de captación de datos de mensajes elige un destino del mensaje,
- por ejemplo la prioridad lleva asociados parámetros de transferencia para la transferencia de mensajes;
- por ejemplo un módulo de determinación, tal que
- por ejemplo el módulo de determinación genera, en base al destino y a la prioridad, un registro de datos de control de mensajes para controlar la transmisión del mensaje,
- por ejemplo el registro de datos de control de mensajes se asocia al mensaje,
- por ejemplo un módulo de transmisión, tal que
- por ejemplo el módulo de transmisión transfiere el mensaje, en función de un registro de datos de control de mensajes, a un nodo del sistema de base de datos distribuida,
- por ejemplo el nodo está predeterminado mediante el registro de datos de control de mensajes. En variantes de la citada invención, puede sustituirse el sistema de base de datos distribuida por ejemplo por una de las alternativas mostradas en la figura 2.
El aparato y/o el módulo de control de escritura y/o el equipo de transferencia de las figuras 2 - 4 puede/n combinarse en un equipo integrado o en un sistema.
El sistema incluye entonces por ejemplo adicionalmente un módulo de generación para generar mensajes para un objeto, incluyendo el mensaje por ejemplo un registro de datos de prioridad con una prioridad y/o una estructura de datos, tal como se han descrito los mismos en los ejemplos de realización y sus variantes en las figuras 2 - 4.
El módulo de generación puede incluir por ejemplo adicionalmente un sensor o acceder al aparato detector del aparato, para captar datos de sensor. Los datos de sensor pueden ser captados por ejemplo del objeto y por ejemplo memorizados en la estructura de datos (segundo grupo de datos/datos variables o primer grupo de datos/datos invariables). Por ejemplo mediante la clase de valores de sensor (por ejemplo accionamiento de un interruptor de emergencia) se determina el destino para el mensaje y en particular se memoriza en un mensaje correspondiente. Alternativa o adicionalmente determina el aparato de generación el destino del mensaje.
El sistema puede entonces incluir lo siguiente:
- por ejemplo un módulo de generación para generar mensajes para un objeto, incluyendo el mensaje por ejemplo un registro de datos de prioridad con una prioridad y/o una estructura de datos;
- por ejemplo un aparato para calcular una suma de verificación criptográfica para la estructura de datos, que tiene:
- por ejemplo un módulo detector (110) para captar características individuales (M) del objeto (O) mediante un aparato detector (A);
- por ejemplo un módulo de cálculo (120) para calcular una curva característica individual del objeto en base a las características individuales;
- por ejemplo un módulo de criptografía (130) para proporcionar una clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo un módulo de protección (130) para proteger criptográficamente la estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la clave criptográfica;
- por ejemplo un módulo de control de escritura, que tiene:
- por ejemplo una interfaz de comunicación para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida;
- por ejemplo un módulo de verificación, tal que
- por ejemplo el módulo de verificación carga una configuración de escritura de datos, que indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida,
- por ejemplo el módulo de verificación comprueba si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida;
- por ejemplo un módulo de control de la transmisión, tal que
- por ejemplo el módulo de control de la transmisión, en función de un resultado de la verificación del módulo de verificación, controla una transmisión de un mensaje al sistema de base de datos distribuida mediante la interfaz de comunicación,
- por ejemplo un equipo de transferencia para controlar una transferencia del mensaje a través de varios nodos, que tiene
- por ejemplo un módulo detector de datos de mensajes, tal que
- por ejemplo el módulo detector de datos de mensajes elige un registro de datos de prioridad con una prioridad en un mensaje,
- por ejemplo el módulo detector de datos de mensajes elige un destino del mensaje, - por ejemplo están asociados a la prioridad parámetros de transferencia para la transferencia de mensajes;
- por ejemplo un módulo de determinación, tal que
- por ejemplo el módulo de determinación genera, en base al destino y a la prioridad, un registro de datos de control de mensajes para controlar la transmisión del mensaje, - por ejemplo el registro de datos de control de mensajes se asocia al mensaje,
- por ejemplo un módulo de transmisión, tal que
- por ejemplo el módulo de transmisión transfiere el mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida,
- por ejemplo el nodo está predeterminado mediante el registro de datos de control de mensajes,
- por ejemplo la interfaz de comunicación transfiere un mensaje mediante el equipo de transferencia.
La figura 5 muestra otro ejemplo de realización de la invención como diagrama secuencial para un procedimiento.
El procedimiento está realizado con preferencia asistido por ordenador.
En detalle, se muestra en ese ejemplo de realización un procedimiento para el cálculo asistido por ordenador de una suma de verificación criptográfica.
El procedimiento incluye una primera etapa del procedimiento 510 para captar características individuales de un objeto mediante un aparato detector.
El procedimiento incluye una segunda etapa del procedimiento 520 opcional para calcular una curva característica individual del objeto en base a las características individuales.
El procedimiento incluye una tercera etapa del procedimiento 530 para proporcionar una primera clave criptográfica en base a las características individuales y/o o a la curva característica individual del objeto; El procedimiento incluye una cuarta etapa del procedimiento 540 para la protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante la primera clave criptográfica.
Otro ejemplo de realización de la invención, que no se muestra en una figura, se refiere a un procedimiento para la verificación asistida por ordenador de una suma de verificación criptográfica.
El procedimiento está realizado con preferencia asistido por ordenador.
El procedimiento incluye una primera etapa del procedimiento para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica.
El procedimiento incluye una segunda etapa del procedimiento para captar características individuales de un objeto mediante un aparato detector.
El procedimiento incluye una tercera etapa del procedimiento opcional para calcular una curva característica individual del objeto en base a las características individuales.
El procedimiento incluye una cuarta etapa del procedimiento para proporcionar una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto. El procedimiento incluye una quinta etapa del procedimiento para comprobar la suma de verificación criptográfica mediante la primera clave criptográfica.
La figura 6 muestra otro ejemplo de realización de la invención con un diagrama secuencial para un procedimiento.
El procedimiento está realizado con preferencia asistido por ordenador.
En detalle se representa en este ejemplo de realización un procedimiento para el control asistido por ordenador de una transmisión de datos.
El procedimiento incluye una primera etapa del procedimiento 610 para transmitir mensajes, transmitiéndose los mensajes por ejemplo a un sistema de base de datos distribuida.
El procedimiento incluye una segunda etapa del procedimiento 620 para verificar una configuración de escritura de datos, tal que
- la configuración de escritura de datos indica bajo qué condiciones se escriben los mensajes en el sistema de base de datos distribuida,
- se comprueba si se cumplen las condiciones para escribir los mensajes en el sistema de base de datos distribuida.
El procedimiento incluye una tercera etapa del procedimiento 630 para transmitir los mensajes a un sistema de base de datos distribuida mediante una interfaz de comunicación, tal que
- la transmisión se controla en función de un resultado de la comprobación de la configuración de escritura de datos.
La figura 7 muestra otro ejemplo de realización de la invención como un diagrama secuencial para un procedimiento.
El procedimiento está realizado con preferencia asistido por ordenador.
En detalle se presenta en este ejemplo de realización un procedimiento para el control asistido por ordenador de una transferencia de mensajes a través de varios nodos.
El procedimiento incluye una primera etapa del procedimiento 710 para elegir un mensaje de un registro de datos de prioridad con una prioridad de un mensaje, tal que
- se elige un destino del mensaje,
- se asocian a la prioridad parámetros de transferencia para transferir mensajes.
El procedimiento incluye una segunda etapa del procedimiento 720 para determinar un registro de datos de control de mensajes para controlar la transmisión del mensaje en base a la prioridad y al destino, asociándose el registro de datos de control de mensajes al mensaje.
El procedimiento incluye una tercera etapa del procedimiento 730 para transferir el mensaje en función del registro de datos de control de mensajes a un nodo de un sistema de base de datos distribuida, estando predeterminado el nodo por el registro de datos de control de mensajes.
Los módulos citados en los ejemplos de realización pueden realizarse por ejemplo como nodos autónomos y estar unidos comunicativamente entre sí mediante una infraestructura de comunicación (por ejemplo del sistema distribuido o del sistema de base de datos distribuida). Correspondientemente pueden estar previstos varios módulos de la misma clase constructiva, por ejemplo para garantizar una elevada seguridad frente a fallos de los módulos correspondientes.
Otros ejemplos de realización no mostrados en las figuras se describen brevemente en el siguiente párrafo.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo aportación de una clave, tal que
- por ejemplo la clave se calcula en base a datos de entrada, o bien
- por ejemplo la clave se descarga o transmite o recibe a través de una interfaz de datos;
- por ejemplo aportación de metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida), tal que
- por ejemplo los metadatos se calculan transfiriendo o recibiendo por ejemplo una referencia o un enlace a la inscripción y por ejemplo eligiendo los correspondientes metadatos para la inscripción a partir de la base de datos, o bien
- por ejemplo se descargan o transmiten o reciben los metadatos a través de una interfaz de datos; - por ejemplo memorización de un par de datos a partir de la clave y de los metadatos.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo un cálculo de una curva característica individual del objeto en base a las características individuales;
- por ejemplo una aportación de una primera clave criptográfica en base a las características individuales y/o a la curva característica individual del objeto;
- por ejemplo una protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante la primera clave criptográfica;
- por ejemplo una escritura de la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida), tal que
- por ejemplo se forma una clave (por ejemplo también denominada clave de asociación) para una inscripción en la base de datos, que por ejemplo incluye la estructura de datos (en esta inscripción se memorizó la estructura de datos),
- por ejemplo se escriben metadatos sobre la inscripción de la base de datos mediante la clave en un equipo de asociación.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo una aportación de una primera clave criptográfica en base a las características individuales y/o a una curva característica individual del objeto;
- por ejemplo una protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante la primera clave criptográfica;
- por ejemplo una escritura de la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida), tal que
- por ejemplo se forma una clave (por ejemplo también denominada clave de asociación) para una inscripción en la base de datos, que por ejemplo incluye la estructura de datos (en esta inscripción se memorizó la estructura de datos),
- por ejemplo se escriben metadatos sobre la inscripción de la base de datos mediante la clave en un equipo de asociación.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo una protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante las características individuales y/o características individuales del objeto;
- por ejemplo una escritura de la estructura de datos en una base de datos (por ejemplo un sistema de base de datos distribuida), tal que
- por ejemplo se forma una clave (por ejemplo también denominada clave de asociación) para una inscripción en la base de datos, que por ejemplo incluye la estructura de datos (en esta inscripción se memorizó la estructura de datos),
- por ejemplo se escriben metadatos sobre la inscripción de la base de datos mediante la clave en un equipo de asociación.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una recepción de una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo un cálculo de una curva característica individual del objeto en base a las características individuales;
- por ejemplo una aportación de una primera clave criptográfica en base a las características individuales y/o o a la curva característica individual del objeto;
- por ejemplo una comprobación de la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- por ejemplo se forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo en base a la clave se cargan metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación;
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo se realiza la verificación comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo una aportación de una primera clave criptográfica en base a las características individuales y/o o a una curva característica individual del objeto;
- por ejemplo una comprobación de la suma de verificación criptográfica mediante la primera clave criptográfica.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales de un objeto mediante un aparato detector; - por ejemplo una aportación de una primera clave criptográfica en base a las características individuales y/o o a una curva característica individual del objeto;
- por ejemplo una comprobación de la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- por ejemplo se forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo en base a la clave se cargan metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación;
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo se realiza la verificación comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo una verificación de una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo se forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo en base a la clave se cargan metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación;
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo se realiza la verificación comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una verificación de una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo se forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto,
- por ejemplo en base a la clave se cargan metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación;
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo se realiza la verificación comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Otra forma de realización se refiere a un procedimiento asistido por ordenador con las siguientes etapas del procedimiento:
- por ejemplo una captación de características individuales (M) de un objeto (O) mediante un aparato detector (A);
- por ejemplo una verificación de una suma de verificación criptográfica de una estructura de datos, tal que
- por ejemplo se forma una clave (por ejemplo denominada también clave de asociación) para la estructura de datos y/o para el objeto, en base a las características individuales (M) y/o o a una curva característica individual del objeto;
- por ejemplo en base a la clave se cargan metadatos para una inscripción en una base de datos (por ejemplo un sistema de base de datos distribuida) desde un equipo de asociación;
- por ejemplo en base a los metadatos para la inscripción se carga otra estructura de datos y/u otra suma de verificación criptográfica desde la base de datos,
- por ejemplo se realiza la verificación comparando la otra suma de verificación criptográfica con la suma de verificación criptográfica.
Los citados ejemplos de realización, formas de realización y otras variantes pueden incluir por ejemplo, adicionalmente interfaces de comunicación (por ejemplo Ethernet, telefonía móvil como 5G) o interfaces de radio, para dado el caso recibir, enviar y escribir los datos necesarios (por ejemplo en el sistema de base de datos distribuida).
La invención se refiere a un ecosistema de aparatos, que interactúan autónomamente entre sí mediante una cadena de bloques. En particular se realiza mediante la invención con una infraestructura de cadena de bloques un procesamiento de datos de seguridad protegida de datos de sensor o datos de medida para un objeto. Los campos de aplicación son aquí escenarios de la cadena de suministro (supply-chain) o aplicaciones industriales de control de cadenas de bloques.
Aún cuando la invención se ha ilustrado y descrito más en detalle mediante los ejemplos de realización, la invención no queda limitada por los ejemplos publicados y el experto puede deducir otras variantes de los mismos sin abandonar el ámbito de protección de la invención.
[1] Andreas M. Antonopoulos "Mastering Bitcoin: Unlocking Digital Cryptocurrencies", O'Reilly Media, Diciembre 2014
[2] Roger M. Needham, Michael D. Schroeder "Using encryption for authentication in large networks of":
Communications of the ACM. volumen 21, núm.12 diciembre 1978,
[3] Ross Anderson "Security Engineering. A Guide to Building Dependable Distributed Systems" Wiley, 2001
[4] Henning Diedrich "Ethereum: Blockchains, Digital Assets, Smart Contracts, Decentralized Autonomous Organizations", CreateSpace Independent Publishing Platform, 2016
[5] "The Ethereum Book Project/Mastering Ethereum" https://github.com/ethereumbook/ethereumbook, estado al 5.10.2017
[6] Leemon Baird "The Swirlds Hashgraph Consensus Algorithm: Fair, Fast, Byzantine Fault Tolerance", Swirlds Tech Report SWIRLDS-TR-2016-01, 31.5.2016
[7] Leemon Baird "Overview of Swirlds Hashgraph", 31.5.2016
[8] Blockchain Oracles https://blockchainhub.net/blockchain-oracles/ estado al 14.03.2018

Claims (10)

REIVINDICACIONES
1. Aparato para calcular una suma de verificación criptográfica para una estructura de datos, que incluye: - un módulo detector (110) para captar características individuales (M) de un objeto físico (O) mediante un aparato detector (A);
- un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales;
- un módulo de protección (130) para proteger criptográficamente una estructura de datos mediante una suma de verificación criptográfica, calculando el módulo de protección la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- se comparan las características individuales con un valor de referencia predeterminado, - sí hay una coincidencia suficientemente exacta del valor de referencia predeterminado con las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía.
2. Aparato según la reivindicación 1, en el que
- el aparato incluye un módulo de cálculo (120),
- el módulo de cálculo está diseñado para calcular una curva característica individual del objeto en base a las características individuales y la primera clave criptográfica se calcula en base a la curva característica individual del objeto y/o en base a las características individuales,
- la curva característica se calcula teniendo en cuenta valores de tolerancia predeterminados de las características individuales,
- la primera clave criptográfica se calcula en base a la curva característica y/o a las características individuales y/o a una secuencia de caracteres, o bien
- en base a la curva característica y/o a las características individuales y/o a una secuencia de caracteres se calcula una segunda clave criptográfica que desencripta la primera clave criptográfica, o bien
- la curva característica y las características individuales se comparan con un valor de referencia correspondiente
y en el que si hay una coincidencia suficientemente exacta de los valores de referencia con la curva característica y las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía.
3. Aparato según la reivindicación 1 ó 2, en el que
- la estructura de datos incluye un registro de datos del objeto,
- el registro de datos del objeto indica en qué lugares geométricos y/o interfaces puede captar el aparato detector las características individuales,
- el registro de datos del objeto incluye las características individuales y/o la curva característica individual del objeto en forma codificada,
- las características individuales codificadas y/o la curva característica individual del objeto pueden decodificarse mediante la primera clave criptográfica o una tercera clave criptográfica,
- el registro de datos del objeto incluye otros datos referidos al objeto, como valores de medida del objeto, valores de medida sobre el objeto, indicaciones sobre la fabricación del objeto, lugares de estancia del objeto,
- los otros datos del objeto se captan mediante sensores del aparato para el objeto,
- los sensores son un módulo GPS y/o sensores de temperatura y/o sensores ópticos, que captan características correspondientes del objeto.
4. Aparato según una de las reivindicaciones precedentes, en el que
- la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica se calcula/n adicionalmente teniendo en cuenta una cadena de caracteres secreta y/o
- la primera clave criptográfica y/o la segunda clave criptográfica y/o la tercera clave criptográfica es/son una clave privada de un par de claves asimétricas o bien es una clave simétrica.
5. Aparato según una de las reivindicaciones precedentes, en el que
- la estructura de datos es una transacción de un sistema de base de datos distribuida y la suma de verificación criptográfica es la suma de verificación de la transacción,
- el sistema de base de datos distribuida es una cadena de bloques,
- el aparato está diseñado como nodo u oráculo del sistema de base de datos distribuida,
- la suma de verificación criptográfica es una firma digital.
6. Aparato de verificación para comprobar una suma de verificación criptográfica de una estructura de datos, que incluye:
- un módulo receptor para recibir una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- un módulo detector (110) para captar características individuales (M) de un objeto físico (O) mediante un aparato detector (A);
- un módulo de criptografía (130) para proporcionar una primera clave criptográfica en base a las características individuales;
- un módulo de verificación (130) para comprobar la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- se comparan las características individuales con un valor de referencia predeterminado y si hay una coincidencia suficientemente exacta del valor de referencia predeterminado con las características individuales, se libera la primera clave criptográfica mediante el módulo de criptografía.
7. Procedimiento para calcular, asistido por ordenador, una suma de verificación criptográfica con las siguientes etapas del procedimiento:
- captación de características individuales (M) de un objeto físico (O) mediante un aparato detector (A);
- aportación de una primera clave criptográfica en base a las características individuales;
- protección criptográfica de una estructura de datos mediante una suma de verificación criptográfica, calculándose la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- se comparan las características individuales con un valor de referencia predeterminado, - sí hay una coincidencia suficientemente exacta del valor de referencia predeterminado con las características individuales, se libera la primera clave criptográfica.
8. Procedimiento para la verificación asistida por ordenador de una suma de verificación criptográfica con las siguientes etapas del procedimiento:
- recepción de una estructura de datos, estando protegida la estructura de datos mediante una suma de verificación criptográfica;
- captación de características individuales (M) de un objeto físico (O) mediante un aparato detector (A);
- aportación de una primera clave criptográfica en base a las características individuales;
- comprobación de la suma de verificación criptográfica mediante la primera clave criptográfica, tal que
- se comparan las características individuales con un valor de referencia predeterminado y si hay una coincidencia suficientemente exacta del valor de referencia predeterminado con las características individuales, se libera la primera clave criptográfica.
9. Producto de programa de ordenador con órdenes de programa para realizar el procedimiento según una de las reivindicaciones 7 - 8.
10. Equipo de aportación para el producto de programa de ordenador según la reivindicación 9, memorizando y/o aportando el equipo de aportación el producto de programa de ordenador.
ES19152115T 2019-01-16 2019-01-16 Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida Active ES2854289T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP19152115.2A EP3683713B1 (de) 2019-01-16 2019-01-16 Verfahren, vorrichtungen und system zum sicherheitsgeschützten bereitstellen von datensätzen

Publications (1)

Publication Number Publication Date
ES2854289T3 true ES2854289T3 (es) 2021-09-21

Family

ID=65200589

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19152115T Active ES2854289T3 (es) 2019-01-16 2019-01-16 Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida

Country Status (5)

Country Link
US (1) US20220070006A1 (es)
EP (1) EP3683713B1 (es)
CN (1) CN113646764A (es)
ES (1) ES2854289T3 (es)
WO (1) WO2020148001A1 (es)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3627407A1 (en) * 2018-09-18 2020-03-25 Siemens Aktiengesellschaft Distributed database
EP3716570B1 (en) * 2019-03-29 2022-07-27 Mitsubishi Electric R&D Centre Europe B.V. Computational puzzles against dos attacks
US11687642B2 (en) * 2019-10-23 2023-06-27 Blue Cromos Management AB System and method for identifying and authenticating counterfeiting articles
EP3945480A1 (de) * 2020-07-27 2022-02-02 Siemens Aktiengesellschaft System, gerät und verfahren zur ausführung von programmbefehlen für eine ressource
EP4009207A1 (de) 2020-12-07 2022-06-08 Siemens Aktiengesellschaft Zugriffssteuerung auf ein gerät anhand eines individuellen gerätemerkmals
EP4092539B1 (en) * 2021-05-17 2024-09-18 Elektrobit Automotive GmbH Re-partitioning of a flash memory device
IT202100033086A1 (it) * 2021-12-30 2023-06-30 Sergio Coretti Srl Metodo e relativo impianto per la creazione di un sigillo termo-metallico irreversibile a base metallica
WO2024005805A1 (en) * 2022-06-29 2024-01-04 Emerson Automation Solutions Measurement Systems & Services Llc Forming and validating a message of a measurement device
US11956188B1 (en) * 2022-12-13 2024-04-09 Infineon Technologies Ag Security aware routing in an in-vehicle communication network

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9684887B2 (en) * 2011-03-31 2017-06-20 Loment, Inc. Priority of outbound messages communicated among end user communication devices
US9779284B2 (en) * 2013-12-17 2017-10-03 Conduent Business Services, Llc Privacy-preserving evidence in ALPR applications
US9858569B2 (en) * 2014-03-21 2018-01-02 Ramanan Navaratnam Systems and methods in support of authentication of an item
WO2016164496A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
EP3374945A1 (en) * 2015-11-09 2018-09-19 Innogy Innovation GmbH System and method for transporting an object
ES2794406T3 (es) * 2016-12-21 2020-11-18 Merck Patent Gmbh Marca de seguridad compuesta basada en puf para antifalsificación
US10467586B2 (en) * 2017-03-23 2019-11-05 International Business Machines Corporation Blockchain ledgers of material spectral signatures for supply chain integrity management
EP3382616A1 (de) * 2017-03-31 2018-10-03 Siemens Aktiengesellschaft Verfahren und vorrichtung zum rechnergestützten bereitstellen eines sicherheitsgeschützten digitalen zwillings
US10817852B2 (en) * 2018-01-12 2020-10-27 Bank Of America Corporation System for executing, securing, and non-repudiation of pooled conditional smart contracts over distributed blockchain network
CN108288157A (zh) * 2018-01-25 2018-07-17 青岛闪收付信息技术有限公司 一种基于金融区块链技术的供应链管理方法
EP3564846A1 (en) * 2018-04-30 2019-11-06 Merck Patent GmbH Methods and systems for automatic object recognition and authentication

Also Published As

Publication number Publication date
US20220070006A1 (en) 2022-03-03
CN113646764A (zh) 2021-11-12
WO2020148001A1 (de) 2020-07-23
EP3683713B1 (de) 2020-12-30
EP3683713A1 (de) 2020-07-22

Similar Documents

Publication Publication Date Title
ES2854289T3 (es) Procedimiento, equipos y sistema para proporcionar registros de datos con seguridad protegida
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
JP7385663B2 (ja) 物体認証を準備及び実行するための方法及びシステム
TWI813677B (zh) 用於自動物件辨識及鑑認之方法及系統
US11831710B2 (en) Tracking and certification of digital media via distributed ledger
US10673617B1 (en) Methods, system and point-to-point encryption device microchip for AES-sea 512-bit key using identity access management utilizing blockchain ecosystem to improve cybersecurity
ES2949986T3 (es) Sistema de producción controlable mediante una aplicación de igual a igual
KR20200005629A (ko) 블록체인 아키텍처와 물리적 마킹에 기반한 가상화폐 시스템
EP2999156B1 (en) Device authenticity determination system and device authenticity determination method
CN115349244A (zh) 用于密码标签的存储和通信环境
US20160162897A1 (en) System and method for user authentication using crypto-currency transactions as access tokens
US10999276B2 (en) Industrial internet encryption system
US20160098723A1 (en) System and method for block-chain verification of goods
US20160085955A1 (en) Secure Storing and Offline Transferring of Digitally Transferable Assets
EP3459029A1 (en) Secure and traceable manufactured parts
US11640394B2 (en) Method, apparatuses and system for exchanging data between a distributed database system and devices
Islam et al. IoT security, privacy and trust in home-sharing economy via blockchain
US20230254156A1 (en) Apparatuses, computer-implemented methods and computer program product for granting access to a control function on the basis of an object
CN114830599B (zh) 使用加密锚管理物理对象
EP3895044A1 (en) System, device and method for securely transferring information from a hardware to a blockchain
CN110915163A (zh) 用于传输个人数据的方法和设备
RU2816848C2 (ru) Способы и системы для подготовки и осуществления проверки аутентичности объекта
Divyashree et al. Blockchain-Based Access-Control System for Unused Medicine and Organ Donation Using Enhanced Hybrid Cryptography
Saxena et al. An Efficient Approach for Acquisition of Fake Images using Blockchain and Machine Learning