ES2929810T3 - Sistemas y métodos informáticos de certificación y publicación de documentos - Google Patents

Sistemas y métodos informáticos de certificación y publicación de documentos Download PDF

Info

Publication number
ES2929810T3
ES2929810T3 ES19773812T ES19773812T ES2929810T3 ES 2929810 T3 ES2929810 T3 ES 2929810T3 ES 19773812 T ES19773812 T ES 19773812T ES 19773812 T ES19773812 T ES 19773812T ES 2929810 T3 ES2929810 T3 ES 2929810T3
Authority
ES
Spain
Prior art keywords
document
data
key
issuer
certified
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
ES19773812T
Other languages
English (en)
Inventor
Luc Jarry-Lacombe
Vincent Langard
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.)
Blockchain Certified Data SAS
Original Assignee
Blockchain Certified Data SAS
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 Blockchain Certified Data SAS filed Critical Blockchain Certified Data SAS
Application granted granted Critical
Publication of ES2929810T3 publication Critical patent/ES2929810T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/3218Cryptographic 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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • 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)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (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)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

El método se implementa en un sistema informático desplegado a través de Internet e interactúa con una cadena de bloques (BKC). Los emisores y validadores de documentos están conectados al sistema. El método comprende generar una clave maestra (MK) asignada a un emisor, certificar un documento (DocData) a través de un primer proceso (P2) que incluye generar una clave de persistencia del documento (PK), cifrar los datos del documento (CredData) con un algoritmo de cifrado (AES) y una clave de cifrado (KAES) derivada (∂) de la clave maestra, la clave de persistencia del documento y una clave intermedia (IK), registrando los datos del documento cifrado (EncData) en la cadena de bloques y generando una dirección web (URL) que transporta la recuperación información del documento certificado; leer el documento a través de un segundo proceso (P3) accesible a la dirección web, el segundo proceso que incluye la recuperación de los datos cifrados en la cadena de bloques y el acceso a las tres claves, el descifrado de los datos cifrados utilizando la clave de cifrado derivada de las tres claves, y mostrar el documento; ya petición de un titular legítimo del documento borrar la clave de persistencia. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Sistemas y métodos informáticos de certificación y publicación de documentos
Resumen técnico
La tecnología en cuestión se refiere a sistemas informáticos y métodos informáticos diseñados para garantizar la autenticidad e integridad de documentos, como documentos académicos y diplomas, pero también documentos oficiales, de estado civil, y otros documentos sensibles. Más concretamente, la tecnología en cuestión se refiere a sistemas y procesos informáticos que asocian una cadena de bloques con un alto nivel de criptografía para certificar documentos de forma segura y sostenible, de conformidad con la normativa sobre datos personales y derecho al olvido.
Introducción
Hoy en día, en una sociedad digital y conectada en red, protegerse contra la falsificación de documentos es una necesidad cada vez más crítica. Muchos sectores, instituciones y organizaciones se enfrentan al flagelo de la falsificación de documentos. Por ejemplo, el uso fraudulento de diplomas falsos o calificaciones inventadas en currículos y redes sociales es un hecho que afecta a escuelas, universidades, graduados y empleadores. Los diplomas emitidos por escuelas, universidades que no existen y réplicas de diplomas de alta calidad de instituciones educativas reales se pueden comprar en sitios web. Este es un problema importante para las empresas que confían en la veracidad de los datos proporcionados por sus empleados. Este es un tema importante para los actores del sistema educativo y de formación que tienen que defender su integridad.
Poder acreditar de forma sencilla e irrefutable, idealmente con un simple clic, que uno es graduado universitario, médico titulado o poseedor de un carnet de conducir, por ejemplo, es una necesidad social muy actual.
Así, los modernos sistemas de certificación adaptados al entorno digital y las redes sociales encontrarán numerosas aplicaciones como en la certificación de competencias profesionales, registros de profesiones reguladas, registros internos de empresas, registros administrativos y otros.
Se ha propuesto la tecnología de Cadena de Bloques para los sistemas de certificación de documentos.
La tecnología de Cadena de Bloques, simplemente llamada "blockchain", ha sido descrita por primera vez por Satoshi Nakamoto en el artículo "Bitcoin: A Peer-to-Peer Electronic Cash System" publicado en 2008. Una cadena de bloques es una estructura de datos que almacena una lista de transacciones y puede considerarse como un libro mayor electrónico distribuido que registra las transacciones que se agrupan en bloques vinculados en una cadena. Los nodos informáticos mantienen la cadena de bloques y validan criptográficamente cada nuevo bloque y las transacciones contenidas en el bloque, con un protocolo denominado "prueba de trabajo".
La Escuela Holberton en San Francisco (EE. UU.) y la escuela de ingeniería ESILV en París (Francia) han establecido ambas una certificación de diploma basada en el almacenamiento de una impresión de diploma en una cadena de bloques pública. Se utiliza una llamada "función hash" para producir la impresión del diploma. Este método garantiza la autenticidad del diploma inicialmente cifrado, pero plantea los siguientes problemas:
- 1) No se acredita la identidad del expedidor del título, ni se certifica la autenticidad de los datos. De hecho, ¿cómo estar seguro de que el diploma cifrado es el original y realmente fue emitido por la escuela?
- 2) La impresión del diploma se almacena en la cadena de bloques para siempre y, una vez compartido, el diploma permanece reconocible para siempre.
El punto 2) es problemático para el cumplimiento de la regulación sobre datos personales y el derecho al olvido, en particular, la regulación europea conocida por las siglas "GDPR", de "Reglamento General de Protección de Datos", en vigor desde el 25 de mayo de 2018.
En un comunicado de prensa ""Sony® and Sony Global Education Develop a New System to Manage Students' Learning Data, Built on IBM Blockchain", 9 de agosto de 2017, International Business Machines Corporation® ha anunciado una nueva plataforma, desarrollada utilizando la cadena de bloques de IBM®, para asegurar y compartir credenciales escolares. En esta plataforma se implementará una cadena de bloques privada y un software propietario. Otro estado de la técnica relevante es el documento de patente WO2017/090041 y "EduCTX: A blockchain-based higher education credit platform" de Muhamed Turkanovic et al.
La presente invención pretende dar solución a los problemas de la situación actual antes mencionados. En concreto, es deseable proporcionar un sistema de certificación de documentos que cumpla con la normativa sobre datos personales, con un bajo coste de uso para los emisores de documentos y basado en una tecnología abierta que facilite la confianza y colaboración de los diversos actores y protagonistas del sistema.
Resumen
Según un primer aspecto, la invención proporciona un método informático implementado en un sistema informático de certificación de documentos desplegado a través de la red de internet y que interactúa con una cadena de bloques pública, el sistema informático de certificación de documentos tiene recursos de hardware y software ubicados en al menos un ordenador de tipo servidor y que son accesibles a través de la red de Internet, el sistema informático de certificación de documentos que se comunica a través de mensajes de datos electrónicos con al menos un sistema informático emisor de documentos a través del cual un emisor de documentos gestiona las emisiones de documentos certificados y al menos un sistema informático de validación a través del cual un validador gestiona derechos de acceso y recursos asignados a una cuenta de emisor de documentos del emisor de documentos, el método informático que comprende:
generar una clave maestra permanente del emisor que se asigna a la cuenta del emisor del documento y se almacena en un primer almacén de claves,
certificar y publicar un documento mediante la ejecución de un primer proceso, incluida la generación de una clave de persistencia del documento que se asigna al documento y se almacena en un segundo almacén de claves, los derechos para borrar permanentemente la clave de persistencia del documento que se asigna a la cuenta del emisor del documento, cifrar los datos del documento con un algoritmo de cifrado y una clave de cifrado que se calcula mediante una función de derivación de claves a partir de la clave maestra permanente del emisor, la clave de persistencia del documento y una clave intermedia que se genera y asigna al documento, registrar información que incluye datos del documento cifrado en la cadena de bloques, y generar una dirección web de documento de un documento certificado publicado correspondiente, la dirección web que contiene información de recuperación de la clave intermedia del documento y datos de identificación del documento certificado publicado,
leer el documento certificado publicado a través de la ejecución de un segundo proceso que es accesible a la dirección web, el segundo proceso que incluye recuperar, a partir de los datos de identificación, los datos del documento cifrado en la información registrada en la cadena de bloques y un acceso al primer y segundo almacén de claves, calcular la clave de cifrado con la función de derivación de claves de la clave maestra permanente del emisor, la clave de persistencia del documento y la clave intermedia recuperada de la dirección web, descifrar los datos del documento cifrado utilizando la clave de cifrado y mostrando el documento certificado utilizando los datos del documento descifrado, y
a petición de un legítimo titular del documento certificado publicado, reivindicar un derecho al olvido, operar desde la cuenta del emisor del documento un borrado permanente de la clave de persistencia del documento, dejar de esta manera inoperante la ejecución del segundo proceso y una visualización del documento certificado publicado en la red de internet.
Se apreciará que a diferencia de la técnica anterior que se basa en el uso de una función hash para certificar documentos, la presente invención certifica la autenticidad de los datos y reconstruye los documentos a partir de los datos autenticados.
En una implementación del método informático de la invención, el primer almacén de claves se implementa en un módulo de seguridad de hardware.
En otra implementación del método informático de la invención, el primer y segundo almacenes de claves se implementan en un módulo de seguridad de hardware.
Según otra característica del método informático de la invención, el algoritmo de cifrado es un algoritmo de cifrado de tipo AES, donde la clave de cifrado es simétrica y de una longitud de 256 bits.
Según otra característica más del método informático de la invención, el algoritmo de cifrado funciona en modo contador de tipo GCM.
Según incluso otra característica del método informático de la invención, la función de derivación de claves es una función de derivación de claves de tipo KBKDF.
En otra implementación más del método informático de acuerdo con la invención, los datos del documento comprenden datos específicos predeterminados, los datos específicos predeterminados son datos variables en una categoría de documento a la que pertenece el documento, y el primer proceso incluye además la asociación con los datos específicos predeterminados un identificador de plantilla de una plantilla HTML correspondiente a la categoría del documento y que incluye el identificador de plantilla en la información registrada en la cadena de bloques, y el segundo proceso incluye además recuperar el identificador de plantilla en la información registrada en la cadena de bloques a partir de los datos de identificación y mostrar el documento certificado utilizando los datos del documento descifrado y la plantilla HTML recuperada utilizando el identificador de plantilla.
Según una característica adicional del método informático de la invención, el segundo proceso incluye además la recuperación de pruebas de autenticidad del emisor y/o del validador, donde las pruebas de autenticidad han sido previamente registradas en el almacenamiento de datos en la cadena de bloques y han sido localizadas utilizando al menos los datos de identificación, y mostrando el documento certificado utilizando las pruebas de autenticidad. De acuerdo con otra característica del método informático de la invención, los datos del documento están en forma de un archivo de texto, el archivo de texto incluye un lote de varios datos específicos predeterminados dispuestos de una manera predeterminada y pertenecientes respectivamente a varios documentos.
Según otra característica más del método informático de la invención, los datos específicos predeterminados están escritos en uno o varios idiomas.
Según otra característica más, el método informático de la invención comprende generar al menos una dirección web de documento correspondiente a un documento certificado publicado en varios idiomas.
Según otro aspecto, la invención proporciona un sistema informático de certificación de documentos desplegado a través de la red de internet y que interactúa con una cadena de bloques pública, el sistema informático de certificación de documentos tiene recursos de hardware y software ubicados en al menos un servidor informático y que son accesibles a través de la red de internet, el sistema informático de certificación de documentos que se comunica a través de mensajes de datos electrónicos con al menos un sistema informático emisor de documentos a través del cual un emisor de documentos gestiona la emisión de documentos certificados y al menos un sistema informático de validación a través del cual un validador gestiona los derechos de acceso y los recursos asignados a una cuenta de emisor de documentos del emisor del documento, el servidor informático que comprende un procesador, memorias de trabajo no volátiles y volátiles y que está acoplado al almacenamiento electrónico de datos, donde el procesador está configurado para realizar:
generar una clave maestra permanente del emisor que se asigna a la cuenta del emisor del documento y se almacena en un primer almacén de claves,
certificar y publicar un documento mediante la ejecución de un primer proceso, incluida la generación de una clave de persistencia del documento que se asigna al documento y se almacena en un segundo almacén de claves, los derechos para borrar permanentemente la clave de persistencia del documento que se asigna a la cuenta del emisor del documento, cifrar los datos del documento con un algoritmo de cifrado y una clave de cifrado que se calcula mediante una función de derivación de claves a partir de la clave maestra permanente del emisor, la clave de persistencia del documento y una clave intermedia que se genera y asigna al documento, registrar la información que incluye datos del documento cifrado en la cadena de bloques, y generar una dirección web de documento de un documento certificado publicado correspondiente, la dirección web que contiene información de recuperación de la clave intermedia del documento y datos de identificación del documento certificado publicado,
leer el documento certificado publicado a través de la ejecución de un segundo proceso que es accesible a la dirección web, el segundo proceso que incluye recuperar, a partir de los datos de identificación, los datos del documento cifrado en la información registrada en la cadena de bloques y un acceso al primer y segundo almacén de claves, calculando la clave de cifrado con la función de derivación de claves de la clave maestra permanente del emisor, la clave de persistencia del documento y la clave intermedia recuperada de la dirección web, descifrando los datos del documento cifrado utilizando la clave de cifrado y mostrando el documento certificado utilizando los datos del documento descifrado, y
a petición de un legítimo titular del documento certificado publicado, reivindicando un derecho al olvido, operando desde la cuenta del emisor del documento un borrado permanente de la clave de persistencia del documento, dejando de esta manera inoperante la ejecución del segundo proceso y una visualización del documento certificado publicado en la red de internet.
Según una característica adicional del sistema de la invención, el servidor informático comprende un módulo de seguridad de hardware que está acoplado al procesador de hardware, al menos el primer almacén de claves está implementado en el módulo de seguridad de hardware.
Según otra característica del sistema de la invención, el algoritmo de cifrado es un algoritmo de cifrado de tipo AES, donde la clave de cifrado es simétrica y de una longitud de 256 bits.
Según otra característica más del sistema de la invención, el algoritmo de cifrado opera en modo contador de tipo GCM.
Según otra característica más del sistema de la invención, la función de derivación de claves es una función de derivación de claves de tipo KBKDF.
En una realización del sistema según la invención, los datos del documento comprenden datos específicos predeterminados, donde los datos específicos predeterminados son datos variables en una categoría de documento a la que pertenece el documento, y el primer proceso incluye además asociar con los datos específicos predeterminados una plantilla identificador de una plantilla HTML correspondiente a la categoría del documento y que incluye el identificador de la plantilla en la información registrada en la cadena de bloques, y el segundo proceso incluye además recuperar el identificador de la plantilla en la información registrada en la cadena de bloques a partir de los datos de identificación y mostrar el documento certificado usando los datos del documento descifrado y la plantilla HTML recuperada utilizando el identificador de plantilla.
Según una característica adicional del sistema informático de certificación de documentos de la invención, el segundo proceso incluye además la recuperación de pruebas de autenticidad del emisor y/o del validador, donde las pruebas de autenticidad fueron previamente registradas en el almacenamiento de datos en la cadena de bloques y localizadas utilizando al menos los datos de identificación, y mostrando el documento certificado utilizando las pruebas de autenticidad.
Según otra característica del sistema de la invención, los datos del documento están en forma de archivo de texto, el archivo de texto incluye un lote de varios datos específicos predeterminados dispuestos de manera predeterminada y pertenecientes respectivamente a varios documentos.
Según otra característica más del sistema de la invención, los datos específicos predeterminados están escritos en uno o varios idiomas.
Según otra característica más, el sistema de la invención comprende generar al menos una dirección web de documento correspondiente a un documento certificado publicado en varios idiomas.
Estas pocas características harán evidentes a los expertos las ventajas de la invención sobre que la técnica anterior. Breve descripción de los dibujos
Las características y ventajas mencionadas anteriormente y otras características y ventajas de la invención se entenderán mejor y más completamente haciendo referencia a la siguiente descripción detallada de ejemplos de realizaciones ilustrativas no limitativas junto con los dibujos adjuntos en los que los números de referencia se refieren a elementos idénticos o funcionalmente similares en todas las figuras separadas. Cabe señalar que los dibujos sirven únicamente para ilustrar el texto de la descripción y para explicar varios principios y ventajas de la invención, y de ninguna manera constituyen una limitación del alcance de la invención. En los dibujos adjuntos: - La Figura 1 es una descripción general de ejemplo no limitativa de un sistema informático que interactúa con una cadena de bloques y en el que se implementa una realización de ejemplo del sistema de certificación de documentos de la presente invención;
- La Figura 2 es un diagrama ilustrativo no limitativo de varios archivos de datos involucrados en la visualización de un documento certificado en una implementación de ejemplo del método informático de la invención;
- La Figura 3 es un diagrama de bloques de ejemplo no limitativo de varios procesos implementados en la realización de ejemplo de la Figura 1;
- La Figura 4 es un algoritmo de función de ejemplo no limitativo de un proceso de certificación y publicación de documentos implementado en el método informático de la invención;
- La Figura 5 es un algoritmo de función de ejemplo no limitativo de un proceso de lectura de documentos certificados implementado en el método informático de la invención;
- La Figura 6 ilustra una estructura de datos no limitativa desplegada en una realización de ejemplo del sistema de certificación de documentos de la presente invención; y
- Las Figuras 7-9 ilustran varios archivos no limitativos de datos específicos de documentos correspondientes a varias realizaciones de ejemplo del sistema de certificación de documentos y que se procesan de acuerdo con el método informático de la invención.
Descripción detallada
En la siguiente descripción, con fines explicativos y no limitativos, se establecen detalles específicos, tales como entidades funcionales particulares, técnicas, protocolos, etc. para proporcionar una comprensión de la tecnología descrita. Será evidente para un experto en la técnica que se pueden llevar a la práctica otras realizaciones además de los detalles específicos que se describen a continuación. En otros casos, se omiten descripciones detalladas de métodos, dispositivos, técnicas, etc. bien conocidos para no entorpecer la descripción con detalles innecesarios. Haciendo referencia a la Figura 1, en un sistema informático de certificación de documentos DCS según la invención, diferentes sistemas informáticos y dispositivos se comunican e interactúan mediante el intercambio de mensajes de datos electrónicos a través de la red de Internet IT. Así, las entidades emisoras de documentos y al menos una entidad de validación están conectadas al sistema informático de certificación de documentos DCS a través de sus sistemas o dispositivos informáticos, a saber, VAS y DIS en la Figura 1, respectivamente. Los usuarios, a quienes se destinan documentos certificados, como diplomas, pueden visualizar estos documentos en ordenadores, tabletas y/o teléfonos inteligentes PC. Un usuario es, por ejemplo, un egresado que visualiza su diploma a través de una "URL" (acrónimo de «Uniform Resource Locator»), denominada también "dirección web" en adelante, o un empleador que comprueba la validez de un diploma de un aspirante a un trabajo, con una dirección web del diploma que le fue comunicada por el solicitante.
En particular, las entidades de validación, que en adelante se denominarán simplemente "validadores", son las encargadas de realizar las comprobaciones KYC/KYB (acrónimo de «Know Your Customer»/«Know Your Business») antes de crear e instalar cuentas para las entidades emisoras de documentos.
Las entidades emisoras de documentos, denominadas en adelante "emisores", son los clientes del sistema informático de certificación de documentos DCS. En el ejemplo no limitativo que se considera aquí, los emisores son escuelas y los documentos son diplomas emitidos por estas escuelas.
El sistema informático de certificación de documentos DCS se despliega a través de la red de Internet IT e interactúa con una o varias cadenas de bloques BCK. El sistema informático de certificación de documentos DCS utiliza recursos de hardware y software accesibles a través de la red informática.
En el ejemplo de realización mostrado en la Figura 1, el sistema informático de certificación de documentos DCS utiliza recursos de software y hardware disponibles en un proveedor de servicios en la nube SCP.
En este ejemplo, el software SW del sistema del sistema DCS está alojado completamente en al menos un servidor informático SRC del proveedor de servicios SCP en la nube. Específicamente, el software SW del sistema está alojado en un DS de almacenamiento de datos electrónicos dedicado, como un disco duro. El método informático de la invención se implementa en particular mediante la ejecución de instrucciones de código del software SW del sistema.
El servidor informático SRC comprende un procesador de hardware PU que incluye una o más unidades de procesamiento CPU y está asociado con memorias no volátiles y volátiles (por ejemplo, ROM y RAM) y está acoplado al almacenamiento de datos electrónicos DS y a los dispositivos de hardware convencionales tales como interfaces de red NI y otros dispositivos (no mostrados).
En la Figura 1 se muestra un módulo de seguridad de hardware opcional, denominado HSM por los expertos en la materia. En la presente invención, y como quedará más claro más adelante, este módulo de seguridad de hardware está dedicado al sistema DCS y puede usarse para al menos una almacén de claves.
El software SW del sistema incluye varios módulos de software IM que realizan la comprobación, instalación y gestión de KYC/KYB de las cuentas del emisor de documentos. El software SW del sistema implementa en particular una plataforma web WP en la que los validadores y emisores pueden acceder de forma segura a sus respectivas cuentas y utilizar el sistema DCS. El software SW del sistema incluye también aplicaciones web, CER y REA, que soportan la certificación de documentos y los procesos de publicación y lectura, respectivamente.
Se observará que en otras realizaciones de ejemplo, el sistema DCS puede instalarse en uno o más servidores de validación dedicados SRD y usar los recursos de software y hardware de los mismos. O, como otro ejemplo, el sistema DCS puede instalarse en parte en uno o más servidores SRC de los servicios en la nube y en parte en uno o más servidores dedicados SRD de validador(es).
En cuanto a la cadena de bloques BKC, cabe señalar que el entorno de esta cadena de bloques debe permitir la programación de los llamados "contratos inteligentes", es decir, programas escritos en la cadena de bloques y ejecutados por una máquina virtual. Por lo tanto, el entorno de la cadena de bloques debe proporcionar un conjunto de instrucciones computacionales adaptadas para programar estos contratos inteligentes en la cadena de bloques. Por ejemplo, un entorno de cadena de bloques adecuado para la implementación del sistema DCS de la presente invención es el entorno Ethereum. Los artículos " Ethereum: A Next-Generation Generalized Smart Contract and Decentralized Application Platform" (Vitalik Buterin, Ethereum, 2017) y " Ethereum: A Secure Decentralized Generalized Transaction Ledger" (Gavin Wood, Ethereum, 2014) proporcionan descripciones detalladas de esta tecnología, cuyo contenido completo se incorpora aquí como referencia.
Cabe señalar que el sistema DCS puede interactuar con una o más cadenas de bloques BKC. Por lo tanto, los términos "cadena de bloques BKC" utilizados en esta solicitud de patente deben interpretarse en sentido amplio. Así, por ejemplo, se puede usar una primera cadena de bloques para el almacenamiento de datos cifrados y una segunda cadena de bloques se puede usar para alojar contratos inteligentes dedicados a la autenticación y la gestión de derechos de escritura. O bien, se puede usar una sola cadena de bloques que admita contratos inteligentes para todas las operaciones requeridas.
Los costos están involucrados en el establecimiento de contratos inteligentes y la escritura en la cadena de bloques BKC. El método informático según la invención está diseñado para minimizar estos costes.
En una implementación no limitativa preferida, todos los datos de un documento certificado no se registran en la cadena de bloques BKC. Solo los datos específicos que identifican al documento y que varían de un documento a otro del mismo tipo enviado por un emisor son cifrados antes de ser registrados en la cadena de bloques BKC, con un identificador de plantilla. Los datos de la plantilla estática también se pueden registrar en la cadena de bloques BKC y certificarse pero no cifrarse.
Un ejemplo ilustrativo de las operaciones anteriores se muestra en la Figura 2. En este ejemplo no limitativo, el documento certificado, en forma de diploma, se reconstituye a partir de tres archivos HTML_Template, Template_Def y CredData_file.
El archivo HTML_Template es una plantilla en formato HTML de hipertexto del documento certificado. El archivo HTML Template tiene un identificador TemplatelD. La plantilla HTML del archivo tiene una pluralidad de campos de entrada de datos, etiquetados de la A a la T, cuyos lugares en el documento están definidos por etiquetas/marcadores de posición en la plantilla HTML del archivo.
El archivo Template_Def define los datos que se ingresarán en los campos de ingreso de datos A a la T del archivo Plantilla HTML. Los datos para introducir en los campos A a la T son de tipo "fijo" o de tipo "variable". Los datos de tipo fijo (por ejemplo, "MBA Ejecutivo", correspondiente al campo A) se definen directamente en el archivo Template_Def. Los datos de tipo variable (por ejemplo, "Nombre", "Apellido", correspondientes al campo B) son datos específicos del documento CredData que están contenidos en texto claro en el archivo CredData_file. Para datos de tipo variable, los identificadores (por ejemplo, "| Nombre | ", "| Apellido | ", correspondientes al campo B) se incluyen en el archivo Template_Def para indicar los datos correspondientes en el archivo CredData_file que se insertarán en el archivo HTML .
El método informático de la invención permite así una visualización completa y rica del documento certificado, al tiempo que minimiza los costes relacionados con la cadena de bloques b Kc . Solo los datos específicos del documento CredData se cifran antes de registrarse en la cadena de bloques BKC. Eventualmente, los datos CredData se comprimen antes de registrarlos en la cadena de bloques BKC, lo que minimiza aún más los costos. El identificador TemplatelD se registra con los datos específicos del documento CredData e identifica los archivos HTML_Template y Template_Def. El archivo Template_Def también se puede registrar una vez en la cadena de bloques BKC y se utilizará para muchos documentos certificados de la misma categoría. El archivo de plantilla HTML se puede almacenar en el almacenamiento de datos electrónicos dedicado DS (Figura 1).
El diagrama de bloques de la Figura 3 muestra esquemáticamente diversas funciones y procesos realizados en el sistema DCS de la invención.
Como se muestra en la Figura 3, el sistema DCS comprende un proceso P1 para la validación y registro de emisores. El proceso P1 es ejecutado por el validador. Al comienzo del proceso P1, se recopilan y almacenan varios documentos legales y pruebas de la autenticidad del emisor.
Una vez completada la verificación KYC/KYB, el proceso de validación y registro P1 autoriza la ejecución de los siguientes pasos de procesamiento P10 para organizar una estructura de datos basada en contratos inteligentes en la cadena de bloques BKC y en áreas de seguridad de almacenamiento de datos. Otros pasos de procesamiento P11 también se ejecutan durante el proceso de validación y registro P1 para crear cuentas adjuntas al emisor validado (cuenta de cadena de bloques y cuenta de plataforma web), registrar un administrador con un inicio de sesión otorgado y permitir operaciones de creación y administración de plantillas para la publicación de documentos certificados. Además, el validador otorga al final del proceso de validación y registro P1 una autorización MK_EN para la generación de una clave maestra secreta Mk para el emisor. Esta clave maestra MK se genera y se almacena en un almacén de claves, como se muestra en la Figura 3. La clave maestra MK es una clave secreta permanente adjunta a la cuenta del emisor. Esta clave maestra MK se utiliza para cifrar/descifrar datos de documentos para la publicación de los documentos certificados. En realizaciones particulares, el almacén de claves de la clave maestra MK se implementará en el módulo de seguridad de hardware HSM mencionado anteriormente (ver Figura 1).
Una vez que se crea la cuenta de cadena de bloques del emisor (con una dirección asociada y una clave privada), un contrato inteligente del validador SC0, asociado con la cuenta del emisor, y los contratos inteligentes de emisor SC1 se registran en la cadena de bloques BKC.
El contrato inteligente del de validación SC0 gestiona en particular un almacenamiento de datos del validador ST0 en el que se registran los datos de identificación del emisor.
Con referencia también a la Figura 6, el almacenamiento de datos del validador ST0 comprende, en particular, un identificador del validador ValidatorlD, como un número entero, el nombre del emisor en forma de una cadena de caracteres, o una cadena corta, una dirección de cuenta de cadena de bloques KpubETH de la cuenta del emisor, un identificador, como un número entero, del último bloque válido Last_Block_Validity en la cadena de bloques, un archivo de referencia legal Legal_Reference del emisor, en el formato denominado "json" (acrónimo de «JavaScript Object Notation»), un hash de documento KYC/KYB KYC_Documents_hash, una dirección web Corporate_URL del sitio web del emisor, como una cadena, y una dirección web Logo_URL del logotipo del emisor, como una cadena. Como se muestra en la Figura 3, los contratos inteligentes de emisor SC1 incluyen un contrato inteligente de identificación SC10 y un contrato inteligente de publicación SC11 destinados en particular a la gestión de datos cifrados del documento certificado publicado por el emisor. El contrato inteligente de identificación SC10 gestiona en particular los almacenamientos de datos ST1, ST2 y ST3, y el contrato inteligente de publicación SC11 gestiona en particular un almacenamiento de datos ST4.
Con referencia también a la Figura 6, los almacenamientos de datos ST1, ST2 y ST3 están dedicados respectivamente a datos de identificación del emisor, datos de plantilla y datos de créditos disponibles para el pago de tarifas incurridas (en particular, para los costos de transacción en la cadena de bloques BKC). El almacenamiento de datos ST4 está dedicado en particular al registro de los datos específicos cifrados del documento certificado. Como se muestra en la Figura 6, el almacenamiento de datos de identificación del emisor ST1 incluye, en particular, el identificador del validador ValidatorlD, un identificador del emisor IssuerlD, como un número entero, el nombre del emisor, la dirección de la cuenta de cadena de datos KpubETH, el identificador del último bloque válido Last_Block_Validity, el archivo de referencia legal Legal_Reference, el hash del documento KYC/KYB KYC_Documents_hash, la dirección web Corporate_URL del sitio web del emisor, la dirección web Logo_URL del logotipo del emisor, un archivo de tipo json, un identificador CurrentissuerlD del emisor conectado, como un número entero, y una dirección web Server_URL de un servidor del emisor, como una cadena.
La duplicación de los datos de identificación en los almacenamientos de datos ST0 y ST1, como datos ValidatorlD, Name, KpubETH, Last_Block_Validity, Legal_Reference, KYC_Document_hash, Corporate_URL y Logo_URL, permite verificar la validez de una cuenta de emisor durante ciertas transacciones consideradas críticas y validar las pruebas de autenticidad del emisor y/o de validación que pueden estar disponibles al exhibir el documento certificado.
El almacenamiento de datos de la plantilla ST2 incluye el identificador del emisor IssuerlD, un identificador de plantilla TemplatelD, como un número entero, el último bloque válido Last_Block_Validity, una dirección web UR_HTML_Template, como una cadena, del archivo de hipertexto HTML_Template que es la plantilla HTML correspondiente al documento certificado publicado, el archivo de definición de plantilla Template_Def, como un archivo de tipo json, y un identificador DefaultLanguage que informa de un idioma a utilizar por defecto para el documento certificado publicado.
El almacenamiento de datos de crédito ST3 incluye el identificador IssuerlD y una cantidad de crédito Créditos. Por ejemplo, el monto del crédito se puede indicar en tokens. En el caso del uso de tokens, la operación de la cuenta puede, en particular, estar diseñada para que los tokens sean completamente transparentes para el usuario que manipula solo monedas fiduciarias legales.
Como también se muestra en la Figura 6, el almacenamiento de datos ST4, gestionado por el contrato inteligente de publicación SC11, incluye datos cifrados EncData resultantes del cifrado de datos específicos del documento CredData y el identificador TemplatelD de la plantilla HTML para el documento certificado publicado, así como la dirección de la cuenta de cadena de bloques KpubETH .
Haciendo referencia de nuevo a la Figura 3, el sistema DCS también incluye un proceso de certificación y publicación de documentos P2 y un proceso de lectura de documentos certificados P3. Estos procesos P2 y P3 son implementados en particular por las aplicaciones web CER y REA, mencionadas anteriormente en relación con la Figura 1. Los procesos P2 y P3 utilizan para sus operaciones el entorno seguro que brindan los almacenes de claves, así como los contratos inteligentes y los registros en la cadena de bloques BKC. De acuerdo con las realizaciones de la invención, se pueden utilizar almacenes de claves implementados por software y/o hardware. Con referencia también a la Figura 4, la certificación de documentos realizada en el proceso P2 utiliza un algoritmo de cifrado que requiere tres claves, a saber, la clave maestra permanente MK, una clave de persistencia PK que se adjunta al documento y una clave intermedia IK también dedicada al documento. En una implementación particular, las claves MK y PK se almacenan de forma segura en almacenes de claves de software. En otra implementación particular, la clave MK se almacena en el módulo de seguridad de hardware HSM para una mayor seguridad y la clave PK se almacena en una almacén de claves de software. En otra implementación particular más, las claves MK y PK se almacenan ambas en el módulo de seguridad de hardware HSM.
Preferiblemente, las claves MK, PK e IK serán generadas por un generador de números aleatorios de alto rendimiento, por ejemplo, un generador de números aleatorios de alto rendimiento incluido en el módulo de seguridad de hardware HSM si corresponde.
La clave de persistencia PK puede ser borrada por el emisor a petición de un titular legítimo del documento, alegando su "derecho al olvido", y/o por el titular legítimo del documento a quien se le ha proporcionado un código de autorización de borrado, por ejemplo, un código único ha sido asignado por el sistema DCS. La eliminación de la clave de persistencia PK imposibilita que el proceso P3 lea el documento certificado publicado, como se aclarará más adelante.
La Figura 4 completa el diagrama de bloques simplificado de la Figura 3, mostrando en detalle diferentes pasos de procesamiento S2-0 a S2-14 que son realizados por el proceso P2.
Al comienzo de la certificación del documento, en el paso S2-0, el sistema emisor DIS (Figura 1) proporciona inicialmente al proceso P2 los datos del documento DocData, incluidos los datos específicos del documento CredData y el identificador TemplatelD, así como la dirección de la cuenta de la cadena de bloques KpubETH. En un paso S2-1, el generador de números aleatorios genera tres datos aleatorios IdData, RND1 y RND2. En el paso S2-2, se crea una tabla de almacén de claves identificada por IdData. La clave de persistencia Pk , a la que se asignan datos aleatorios RND1, y la dirección de cuenta de la cadena de bloques KpubETH se registran en el almacén de claves IdData. En el paso S2-3, los datos aleatorios RND2 se asignan a la clave intermedia IK.
En el paso S2-4, se calcula una clave de cifrado KAES con una función de derivación de claves d a partir de las claves MK, PK e IK. La clave de cifrado KAES está destinada a ser utilizada para el cifrado de los datos específicos del documento CredData.
Por ejemplo, una función de derivación de clave de tipo KBKDF (acrónimo de «Key-Based Key Derivation Function») puede utilizarse para la función de derivación de clave d. La clave de cifrado calculada KAES es entonces: KAES = KBKDF (MK, PK || IK).
En el paso S2-5, se calcula un dato aleatorio adicional, llamado "nonce" en la técnica y designado aquí como Nonce, sumando el valor de un contador de derivación DCTR a un nonce maestro MNonce (datos aleatorios).
En el paso S2-6, en esta realización de ejemplo, se usa un algoritmo de cifrado simétrico AES (acrónimo de " Advanced Encryption Standard") para cifrar los datos específicos del documento CredData. En concreto, en este ejemplo de realización, el algoritmo de cifrado se utiliza en modo contador, es decir, el modo contador denominado GCM (acrónimo de "Galois/Counter Mode") y la clave de cifrado tiene una longitud de 256 bits. Las entradas CredData, MK, IK y Nonce se proporcionan al algoritmo de cifrado AES_256_GCM_Encrypt, que entrega los datos específicos del documento cifrado EncData.
En los pasos S2-7 y S2-8, la clave de cifrado KAES se borra de la memoria de trabajo y el contador de derivación DCTR se incrementa y almacena en un registro, respectivamente.
En el paso S2-9, se genera una dirección web, «URL = https//Reader/ldData || IK», para el documento certificado. La información necesaria para un acceso a la tabla IdData y la clave intermedia IK está integrada en esta dirección web «URL = https//Reader/ldData || IK». Esta dirección web conduce a la aplicación web REA que implementa el proceso de lectura de documentos certificados P3.
En los pasos S2-10 y S2-11, la clave intermedia IK se borra de la memoria de trabajo y los datos aleatorios Nonce y un índice de contador "i" se almacenan en la tabla IdData.
En el paso S2-12, se realiza una transacción para publicar los datos específicos del documento cifrado EncData y el identificador de plantilla TemplatelD en la cadena de bloques BKC. La dirección de cuenta de la cadena de bloques KpubETH se utiliza para esta transacción. El registro de esta transacción en un bloque de la cadena de bloques BKC corresponde al almacenamiento de datos específicos del documento ST4 descrito anteriormente en relación con las Figuras 3 y 6. Con el identificador de transacción EthTxId, también mostrado en la Figura 6, la transacción se puede encontrar en la cadena de bloques BKC y se pueden recuperar EncData y TemplatelD.
En el paso S2-13, el identificador de transacción EthTxId se almacena en la tabla IdData. Esto permitirá que el proceso de lectura de documentos certificados P3 recupere EncData y TemplatelD. Después de ejecutar el paso S2-13, la tabla del almacén de claves IdData está completa, con todos los datos necesarios.
En la Figura 6 se muestra un ejemplo de la tabla del almacén de claves IdData, como un archivo de tipo json. Como se ve en la Figura 6, la tabla del almacén de claves IdData y un almacén de claves de la clave maestra permanente MK están asociados con la dirección de cuenta de la cadena de bloques KpubETH, la dirección KpubETH permite una ruta de acceso al almacén de claves de la clave maestra MK.
En el paso S2-14, el proceso P2 ha completado la certificación y publicación del documento y la dirección web, «URL = https//Reader/ldData || IK», del documento certificado se puede comunicar al destinatario, por ejemplo, en forma de código QR (acrónimo de “Quick Response Code”).
Con referencia ahora más particularmente a las Figuras 3 y 5, el proceso de lectura de documentos certificados P3 es implementado por la aplicación web de lectura de documentos certificados REA. El proceso P3 está diseñado para mostrar un documento certificado al que se puede acceder a través de la dirección web «URL = https//Reader/ldData || IK» como entrada. Para ello, el proceso P3 debe recuperar los datos específicos del documento CredData a partir de los datos cifrados EncData registrados en la cadena de bloques BKC y los archivos HTML_Template y Template_Def utilizando el identificador TemplatelD registrado en la cadena de bloques BKC. Las pruebas de autenticidad del emisor y/o de validación también deberán recuperarse del almacenamiento del validador ST0 y del almacenamiento del emisor ST1 (Figura 6) en la cadena de bloques BKC.
La Figura 5 completa el diagrama de bloques simplificado de la Figura 3, mostrando en detalle diferentes pasos de procesamiento S3-0 a S3-12 realizados por el proceso P3.
En el paso S3-0, el usuario a través de su navegador de internet y la dirección web «URL = https//Reader/ldData || IK» se conecta al servidor que aloja la aplicación web REA. La aplicación web REA implementa el proceso de lectura de documentos certificados P3.
En el paso S3-1, el proceso P3 recupera el identificador de la tabla IdData de la dirección web «URL = https//Reader/ldData || IK».
En el paso S3-2, el identificador de transacción EthTxId y la dirección de cuenta de la cadena de bloques KpubETH se recuperan de la tabla IdData.
En el paso S3-3, los datos cifrados EncData y el ID de la plantilla se recuperan en la cadena de bloques BKC, en el almacenamiento de datos específicos del documento ST4, utilizando el identificador EthTxId.
En los pasos S3-4 y S3-5, la clave de persistencia PK se lee en la tabla IdData y la clave intermedia IK se recupera de la dirección web «URL = https//Reader/ldData || IK», respectivamente.
En el paso S3-6, la clave de cifrado KAES se calcula con la función de derivación de claves d de tipo KBKDF, KAES = KBKDF (MK, PK || IK). La dirección de cuenta de la cadena de bloques KpubETH permite una ruta de acceso a la almacén de claves de la clave maestra permanente MK.
En el paso S3-7, el identificador de transacción EthTxId y las claves PK e IK se borran de la memoria de trabajo. En el paso S3-8, los datos aleatorios Nonce que se aplicarán para el descifrado se leen en la tabla IdData.
En el paso S3-9, los datos EncData, MK, IK y Nonce se proporcionan como entradas para el algoritmo de descifrado, AES_256_GCM_Decrypt, que genera los datos específicos del documento CredData, en texto claro. A continuación, la clave de cifrado KAEs se borra de la memoria de trabajo en el paso S3-10.
En el paso S3-11, la dirección de cuenta de la cadena de bloques KpubETH y el identificador TemplatelD brindan acceso al almacenamiento de datos ST0, ST1 y ST2 (Figura 6) en la cadena de bloques BKC.
La dirección web URL_HTML_Template del archivo HTML_Template y el archivo Template_Def se recuperan del almacenamiento de datos ST2, usando el identificador TemplatelD. La dirección web URL_HTML_Template proporciona un acceso al archivo HTML_Template que se almacena, por ejemplo, en un servidor de un proveedor de servicios en la nube (Figura 6, SRC, CSP). Tenga en cuenta que uno o más archivos de definición de estilo de tipo CSS (acrónimo de "Cascading Style Sheets") pueden estar asociados con el archivo de plantilla HTML.
Se puede acceder al almacenamiento de datos del validador ST0 y al almacenamiento de datos del emisor ST1 con los identificadores IssuerlD y ValidatorlD y se pueden recuperar pruebas de autenticidad del emisor y/o del validador. En el paso S3-12, el proceso P3 utiliza los datos específicos del documento CredData, el archivo HTML _Template y otros datos recuperados del almacenamiento de datos SC0-SC2 para formar un archivo HTML completo que corresponde al documento certificado. El proceso P3 finaliza sus operaciones con la visualización del archivo HTML completo del documento certificado en la pantalla del dispositivo informático del usuario.
En otras realizaciones de ejemplo de la invención, los documentos certificados pueden visualizarse en varios idiomas. Las Figuras 7 y 8 muestran ejemplos de archivos bilingües Template_Def_en/fr y CredData_file_en/fr para una visualización en inglés (en) y en francés (fr) de un documento. Por ejemplo, se pueden proporcionar varios archivos de plantilla HTML en diferentes idiomas, cada plantilla incluye datos en su idioma correspondiente. O bien, solo se puede utilizar una plantilla multilingüe, por ejemplo, en el caso de dos idiomas. De acuerdo con las realizaciones, se comunicarán al usuario una o más URL de direcciones web de un documento certificado multilingüe. En el caso de múltiples URL de direcciones web, cada URL de dirección web podría corresponder al documento certificado en un idioma. Preferiblemente, solo se comunicará al usuario una URL de dirección web para acceder a todo el documento certificado multilingüe.
En otras realizaciones de ejemplo de la invención, se puede formar un archivo de datos específicos de documentos certificados, CredData_file, para el cifrado y registro en la cadena de bloques, con un lote de conjuntos de datos específicos de varios documentos, CredData1, CredData2, ..., correspondientes a varios documentos certificados, respectivamente. Esta implementación es ventajosa para reducir el número de transacciones con la cadena de bloques y el volumen de datos registrados, y por lo tanto se reducen los costes económicos. Una compresión del archivo CredData_file reducirá aún más los costos. La Figura 9 muestra un ejemplo, CredData_file_batch_en/fr, de dicho archivo. Este archivo de texto incluye un lote de dos conjuntos CredData1, CredData2, de datos específicos de documentos bilingües, en inglés (en) y en francés (fr).
En la descripción anterior de varias realizaciones de ejemplo no limitativas de la presente invención, cada vez que se describe que una acción "pudiera", "puede" o "podría" realizarse, que una característica, elemento o componente "pudiera", "puede" o "podría" incluirse o es aplicable a un contexto dado, que un elemento dado "pudiera", "puede" o "podría" poseer un atributo dado, o cuando cualquier frase similar que involucre el término "pudiera," "puede" o "podría", debe entenderse que la acción dada, característica, elemento, componente, atributo, etc. está presente en al menos una realización, aunque no está necesariamente presente en todas las realizaciones.
Los términos y frases utilizados en esta descripción, y sus variaciones, a menos que se indique expresamente lo contrario, deben interpretarse como abiertos en lugar de limitantes. Como ejemplos de lo anterior: "y/o" incluye cualquiera y todas las combinaciones de uno o más de los elementos enumerados asociados; las formas singulares "un/una" y "el/la" deben leerse en el sentido de "al menos uno", "uno o más" o similares; el término "ejemplo" se utiliza para proporcionar ejemplos del tema en discusión, no una lista exhaustiva o limitante de los mismos; los términos "comprenden" e "incluyen" (y otras conjugaciones y otras variaciones de los mismos) especifican la presencia de los elementos enumerados asociados, pero no excluyen la presencia o la adición de uno o más elementos; y si un elemento se describe como "opcional", no debe entenderse que dicha descripción indica que otros elementos tampoco son opcionales.
Aunque los pasos del proceso, los algoritmos o similares pueden describirse o reivindicarse en un orden secuencial particular, dichos procesos pueden configurarse para funcionar en diferentes órdenes. En otras palabras, cualquier secuencia u orden de pasos que pueda describirse o reivindicarse explícitamente en este documento no indica necesariamente un requisito de que los pasos se realicen en ese orden; más bien, los pasos de los procesos descritos en este documento pueden realizarse en cualquier orden posible. Además, algunos pasos se pueden realizar simultáneamente o en paralelo, a pesar de que se describen o implican que no ocurren simultáneamente (por ejemplo, porque un paso se describe después del otro). Además, la ilustración de un proceso mediante su representación en un dibujo no implica que el proceso ilustrado sea exclusivo de otras variaciones y modificaciones del mismo, no implica que el proceso ilustrado o cualquiera de sus pasos sean necesarios, y no implica que se prefiere el proceso ilustrado.
Aunque se han mostrado y descrito en detalle varias realizaciones de ejemplo no limitativas, las reivindicaciones no se limitan a ninguna realización o ejemplo en particular. Ninguna de las descripciones anteriores debe interpretarse como que implica que algún elemento, paso o función en particular sea esencial. Todos los equivalentes estructurales y funcionales de los elementos de la realización preferida descrita anteriormente que son conocidos por los expertos en la técnica están destinados a ser abarcados. Además, no es necesario que un dispositivo o método aborde todos y cada uno de los problemas que pretende resolver la presente invención, para que esté abarcado por la invención.

Claims (19)

  1. REIVINDICACIONES
    i. Un método informático implementado en un sistema informático de certificación de documentos desplegado a través de la red de Internet y que interactúa con una cadena de bloques pública, dicho sistema informático de certificación de documentos que tiene recursos de hardware y software ubicados en al menos un servidor informático y que son accesibles a través de dicha red de Internet, dicho sistema informático de certificación de documentos se comunica a través de mensajes de datos electrónicos con al menos un sistema informático emisor de documentos a través del cual un emisor de documentos gestiona las emisiones de documentos certificados y al menos un sistema informático de validación a través del cual un validador gestiona los derechos de acceso y los recursos asignados a una cuenta del emisor de documentos de dicho emisor de documentos, dicho método informático que comprende:
    generar una clave maestra permanente del emisor que se asigna a dicha cuenta del emisor del documento y se almacena en un primer almacén de claves,
    certificar y publicar un documento a través de la ejecución de un primer proceso, incluida la generación de una clave de persistencia del documento que se asigna a dicho documento y se almacena en un segundo almacén de claves, los derechos para borrar permanentemente dicha clave de persistencia del documento se asignan a dicha cuenta del emisor de documentos, cifrar los datos del documento con un algoritmo de cifrado y una clave de cifrado que se calcula mediante una función de derivación de claves a partir de dicha clave maestra permanente del emisor, dicha clave de persistencia del documento y una clave intermedia que se genera y asigna a dicho documento, registrar información que incluye datos del documento cifrado en dicha cadena de bloques, y generar una dirección web de documento de un documento certificado publicado correspondiente, dicha dirección web porta información de recuperación de dicha clave intermedia de documento y datos de identificación de dicho documento certificado publicado,
    leer dicho documento certificado publicado mediante la ejecución de un segundo proceso al que puede acceder dicha dirección web, dicho segundo proceso incluye recuperar, a partir de dichos datos de identificación, dichos datos del documento cifrado en dicha información registrada en dicha cadena de bloques y un acceso a dicho primer y segundo almacenes de claves, calcular dicha clave de cifrado con dicha función de derivación de claves de dicha clave maestra permanente del emisor, dicha clave de persistencia de documentos y dicha clave intermedia recuperada de dicha dirección web, descifrar dichos datos del documento cifrado utilizando dicha clave de cifrado y mostrar dicho documento certificado utilizando dichos datos del documento descifrado, y
    a solicitud de un legítimo titular de dicho documento certificado publicado, alegando un derecho al olvido, operar desde la cuenta del emisor de dicho documento un borrado permanente de dicha clave de persistencia de documento, dejando de esta manera inoperante la ejecución de dicho segundo proceso y la visualización de dicho documento certificado publicado en dicha red de internet.
  2. 2. El método informático de la reivindicación 1, en donde dicho primer almacén de claves se implementa en un módulo de seguridad de hardware.
  3. 3. El método informático de la reivindicación 1, en donde dichos primer y segundo almacenes de claves se implementan en un módulo de seguridad de hardware.
  4. 4. El método informático de la reivindicación 1, en donde dicho algoritmo de cifrado es un algoritmo de cifrado de tipo AES, dicha clave de cifrado es simétrica y tiene una longitud de 256 bits.
  5. 5. El método informático de la reivindicación 4, en donde dicho algoritmo de cifrado opera en un modo contador de tipo GCM.
  6. 6. El método informático de la reivindicación 1, en donde dicha función de derivación de claves es una función de derivación de claves de tipo KBKDF.
  7. 7. El método informático de la reivindicación 1, en donde:
    dichos datos del documento comprenden datos específicos predeterminados, dichos datos específicos predeterminados son datos variables en una categoría de documento a la que pertenece dicho documento, y dicho primer proceso incluye además asociar con dichos datos específicos predeterminados un identificador de plantilla de una plantilla HTML correspondiente a dicha categoría de documento e incluir dicho identificador de plantilla en dicha información registrada en dicha cadena de bloques, y dicho segundo proceso incluye además recuperar dicho identificador de plantilla en dicha información registrada en dicha cadena de bloques a partir de dichos datos de identificación y mostrar dicho documento certificado usando dichos datos de documento descifrados y dicha plantilla HTML recuperada usando dicho identificador de plantilla.
  8. 8. El método informático de la reivindicación 7, en donde dicho segundo proceso incluye además la recuperación de pruebas de autenticidad de dicho emisor y/o de validador, donde dichas pruebas de autenticidad fueron previamente registradas en el almacenamiento de datos en dicha cadena de bloques y localizadas utilizando al menos dichos datos de identificación, y mostrar dicho documento certificado utilizando dichas pruebas de autenticidad.
  9. 9. El método informático de la reivindicación 8, en donde dichos datos de documentos están en forma de un archivo de texto, dicho archivo de texto incluye un lote varios de dichos datos específicos predeterminados ordenados de una manera predeterminada y pertenecientes respectivamente a varios documentos.
  10. 10. El método informático de la reivindicación 9, en donde dichos datos específicos predeterminados están escritos en uno o varios idiomas.
  11. 11. El método informático de la reivindicación 10, que comprende generar al menos una dirección web de documento correspondiente a un documento certificado publicado en varios idiomas.
  12. 12. Un sistema informático de certificación de documentos desplegado a través de la red de internet y que interactúa con una cadena de bloques pública, dicho sistema informático de certificación de documentos que tiene recursos de hardware y software ubicados en al menos un servidor informático y a los que se puede acceder a través de dicha red de internet, dicho sistema informático de certificación de documentos se comunica a través de mensajes de datos electrónicos con al menos un sistema informático emisor de documentos a través del cual un emisor de documentos gestiona las emisiones de documentos certificados y al menos un sistema informático de validación a través del cual un validador gestiona los derechos de acceso y los recursos asignados a una cuenta de emisor de documentos de dicho emisor de documentos, dicho servidor informático que comprende un procesador, memorias de trabajo no volátiles y volátiles y que está acoplado al almacenamiento electrónico de datos y al menos a una interfaz de red, donde el procesador está configurado para:
    generar una clave maestra permanente del emisor que se asigna a dicha cuenta del emisor del documento y se almacena en un primer almacén de claves,
    certificar y publicar un documento a través de la ejecución de un primer proceso, incluida la generación de una clave de persistencia del documento que se asigna a dicho documento y se almacena en un segundo almacén de claves, los derechos para borrar permanentemente dicha clave de persistencia del documento se asignan a dicha cuenta de emisor de documento, cifrar los datos de documentos con un algoritmo de cifrado y una clave de cifrado que se calcula mediante una función de derivación de claves a partir de dicha clave maestra permanente del emisor, dicha clave de persistencia del documento y una clave intermedia que se genera y asigna a dicho documento, registrar información que incluye datos del documento cifrado en dicha cadena de bloques, y generar una dirección web de documento de un documento certificado publicado correspondiente, dicha dirección web porta información de recuperación de dicha clave intermedia de documento y datos de identificación de dicho documento certificado publicado,
    leer dicho documento certificado publicado mediante la ejecución de un segundo proceso al que puede acceder dicha dirección web, dicho segundo proceso incluye recuperar, a partir de dichos datos de identificación, dichos datos del documento cifrado en dicha información registrada en dicha cadena de bloques y un acceso a dicho primer y segundo almacenes de claves, calcular dicha clave de cifrado con dicha función de derivación de claves de dicha clave maestra permanente del emisor, dicha clave de persistencia de documentos y dicha clave intermedia recuperada de dicha dirección web, descifrar dichos datos de documentos cifrados utilizando dicha clave de cifrado y mostrar dicho documento certificado utilizando dichos datos del documento descifrado, y
    a solicitud de un legítimo titular de dicho documento certificado publicado, alegando un derecho al olvido, operar desde la cuenta del emisor de dicho documento un borrado permanente de dicha clave de persistencia de documento, dejando de esta manera inoperante la ejecución de dicho segundo proceso y una visualización de dicho documento certificado publicado en dicha red de internet.
  13. 13. El sistema informático de certificación de documentos de la reivindicación 12, en donde dicho servidor informático comprende un módulo de seguridad de hardware que está acoplado a dicho procesador de hardware, al menos dicho primer almacén de claves está implementado en dicho módulo de seguridad de hardware.
  14. 14. El sistema informático de certificación de documentos de la reivindicación 13, en donde dicho algoritmo de cifrado es un algoritmo de cifrado de tipo AES, dicha clave de cifrado es simétrica y tiene una longitud de 256 bits.
  15. 15. El sistema informático de certificación de documentos de la reivindicación 14, en donde dicho algoritmo de cifrado opera en un modo contador de tipo GCM.
  16. 16. El sistema informático de certificación de documentos 15, en donde dicha función de obtención de claves es una función de obtención de claves de tipo KBKDF.
  17. 17. El sistema informático de certificación de documentos de la reivindicación 12, en donde:
    dichos datos del documento comprenden datos específicos predeterminados, dichos datos específicos predeterminados son datos variables en una categoría de documento a la que pertenece dicho documento, y dicho primer proceso incluye además asociar con dichos datos específicos predeterminados un identificador de plantilla de una plantilla HTML correspondiente a dicha categoría de documento e incluir dicho identificador de plantilla en dicha información registrada en dicha cadena de bloques, y dicho segundo proceso incluye además recuperar dicho identificador de plantilla en dicha información registrada en dicha cadena de bloques a partir de dichos datos de identificación y mostrar dicho documento certificado usando dichos datos de documento descifrados y dicha plantilla HTML recuperada usando dicho identificador de plantilla.
  18. 18. El sistema informático de certificación de documentos de la reivindicación 17, en donde dicho segundo proceso incluye además la recuperación de pruebas de autenticidad de dicho emisor y/o validador, donde dichas pruebas de autenticidad se registraron previamente en el almacenamiento de datos en dicha cadena de bloques y se localizaron utilizando al menos dichos datos de identificación, y mostrar dicho documento certificado utilizando dichas pruebas de autenticidad.
  19. 19. El sistema informático de certificación de documentos de la reivindicación 18, en donde dichos datos de documentos están en forma de un archivo de texto, dicho archivo de texto incluye un lote de varios de dichos datos específicos predeterminados ordenados de una manera predeterminada y pertenecientes respectivamente a varios documentos.
ES19773812T 2018-09-21 2019-09-23 Sistemas y métodos informáticos de certificación y publicación de documentos Active ES2929810T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/138,082 US10715313B2 (en) 2018-09-21 2018-09-21 Systems and computer-based methods of document certification and publication
PCT/EP2019/075505 WO2020058527A1 (en) 2018-09-21 2019-09-23 Systems and computer-based methods of document certification and publication

Publications (1)

Publication Number Publication Date
ES2929810T3 true ES2929810T3 (es) 2022-12-01

Family

ID=68062940

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19773812T Active ES2929810T3 (es) 2018-09-21 2019-09-23 Sistemas y métodos informáticos de certificación y publicación de documentos

Country Status (9)

Country Link
US (1) US10715313B2 (es)
EP (1) EP3853758B1 (es)
KR (1) KR102357978B1 (es)
CN (1) CN112740216B (es)
CA (1) CA3113543C (es)
ES (1) ES2929810T3 (es)
IL (1) IL281671B2 (es)
SG (1) SG11202102626RA (es)
WO (1) WO2020058527A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10715313B2 (en) * 2018-09-21 2020-07-14 Blockchain Certified Data Sas Systems and computer-based methods of document certification and publication
US10756896B2 (en) * 2018-10-12 2020-08-25 Jeff Pickhardt Trustless account recovery
US11128459B2 (en) * 2018-11-28 2021-09-21 Its, Inc. Mitigating service disruptions in key maintenance
US10795882B2 (en) * 2019-04-30 2020-10-06 Alibaba Group Holding Limited Blockchain-based data compression and searching
JP2021118370A (ja) * 2020-01-22 2021-08-10 キオクシア株式会社 メモリシステム、情報処理装置、および情報処理システム
FR3113751A1 (fr) * 2020-08-28 2022-03-04 Athena Holding Group Procédé de certification et publication en ligne de diplômes et de mises à jour de diplôme
FR3121524A1 (fr) 2021-03-30 2022-10-07 Blockchain Certified Data Procédé et système informatique de stockage decentralisé et de partage de fichiers numériques certifiés

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100675837B1 (ko) * 2004-12-13 2007-01-29 한국전자통신연구원 고속 gcm-aes 블록 암호화 장치 및 방법
US20130227653A1 (en) * 2008-11-29 2013-08-29 Yu Yung Choi System and method for streamlined registration of products over a communication network and for verification and management of information related thereto
CN101271501B (zh) * 2008-04-30 2011-06-15 北京握奇数据系统有限公司 数字媒体文件的加解密方法及装置
US20170149560A1 (en) * 2012-02-02 2017-05-25 Netspective Communications Llc Digital blockchain authentication
US10075298B2 (en) * 2015-06-02 2018-09-11 ALTR Solutions, Inc. Generation of hash values within a blockchain
KR101661930B1 (ko) * 2015-08-03 2016-10-05 주식회사 코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템
US10841082B2 (en) * 2015-11-24 2020-11-17 Adi BEN-ARI System and method for blockchain smart contract data privacy
WO2017171165A1 (ko) * 2015-12-14 2017-10-05 (주)코인플러그 블록체인을 기반으로 하는 공인인증서 발급시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 발급방법
US10063529B2 (en) * 2016-03-28 2018-08-28 Accenture Global Solutions Limited Secure 3D model sharing using distributed ledger
US9774578B1 (en) * 2016-05-23 2017-09-26 Accenture Global Solutions Limited Distributed key secret for rewritable blockchain
US10749681B2 (en) * 2016-10-26 2020-08-18 Black Gold Coin, Inc. Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features
US20180268504A1 (en) * 2017-03-15 2018-09-20 Factom Indexing Mortgage Documents via Blockchains
CN107360156B (zh) * 2017-07-10 2019-10-29 广东工业大学 一种大数据环境下基于区块链的p2p网络云端存储方法
EP3489874A1 (en) * 2017-11-27 2019-05-29 Wipro Limited System and method for dual blockchain based validation of instrument reference data and transaction reporting
US10715313B2 (en) * 2018-09-21 2020-07-14 Blockchain Certified Data Sas Systems and computer-based methods of document certification and publication

Also Published As

Publication number Publication date
KR20210044312A (ko) 2021-04-22
CN112740216B (zh) 2022-03-15
CA3113543C (en) 2021-08-24
EP3853758A1 (en) 2021-07-28
IL281671B1 (en) 2023-08-01
KR102357978B1 (ko) 2022-02-08
CA3113543A1 (en) 2020-03-26
US10715313B2 (en) 2020-07-14
SG11202102626RA (en) 2021-04-29
US20200099511A1 (en) 2020-03-26
WO2020058527A1 (en) 2020-03-26
IL281671A (en) 2021-05-31
EP3853758B1 (en) 2022-09-14
IL281671B2 (en) 2023-12-01
CN112740216A (zh) 2021-04-30

Similar Documents

Publication Publication Date Title
ES2929810T3 (es) Sistemas y métodos informáticos de certificación y publicación de documentos
US10742411B2 (en) Generating and managing decentralized identifiers
US11361109B2 (en) Distributed blockchain-based method for the collective signing of a file by several parties
Mishra et al. Privacy protected blockchain based architecture and implementation for sharing of students’ credentials
JP2021502023A (ja) データ共有方法、クライアント、サーバ、コンピューティングデバイス、及び記憶媒体
US20160162897A1 (en) System and method for user authentication using crypto-currency transactions as access tokens
Schär et al. Blockchain diplomas: Using smart contracts to secure academic credentials
Cernian et al. Deploying blockchain technology for storing digital diplomas
Shakila et al. Design and analysis of digital certificate verification and validation using blockchain-based technology
Careja et al. Digital Identity Using Blockchain Technology
Rani et al. Trustworthy Blockchain Based Certificate Distribution for the Education System
Dervishi et al. Transactions privacy on blockchain using web of trust concept
Erbguth et al. Towards distributed trustworthy traceability and accountability
Trivedi et al. Digitally signed document chain (DSDC) blockchain
Abdul Hadi et al. Blockchain for the Authentication and Immutability of Academic Credentials Issued in Brunei Darussalam
Laxmaiah et al. A novel approach for digital online payment system
Hellwig et al. Blockchain Foundations
Nandini et al. Proof of Authentication for Secure and Digitalization of Land Registry Using Blockchain Technology
Mahrt et al. Simple Anti-fraud Document Authentication Concept for Public Services
Murty Digital Gold and Cryptocurrency
TAGLIA et al. Pistis, a credentials management system based on self-sovereign identity
Polemi et al. A secure e-ordering Web service
Jaafar et al. Educational Certificate Verification System: Enhancing Security and Authenticity using Ethereum Blockchain and IPFS
Alba et al. Digital Content Verification Using Hyperledger BESU
Nguyen-Ngoc et al. ZUni: The Application of Blockchain Technology in Validating and Securing Educational Credentials