ES2871062T3 - Sistema y método para la gestión de datos basada en cadena de bloques - Google Patents
Sistema y método para la gestión de datos basada en cadena de bloques Download PDFInfo
- Publication number
- ES2871062T3 ES2871062T3 ES19725899T ES19725899T ES2871062T3 ES 2871062 T3 ES2871062 T3 ES 2871062T3 ES 19725899 T ES19725899 T ES 19725899T ES 19725899 T ES19725899 T ES 19725899T ES 2871062 T3 ES2871062 T3 ES 2871062T3
- Authority
- ES
- Spain
- Prior art keywords
- blockchain
- authentication information
- login user
- user
- digital
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
- G06F21/46—Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0637—Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic 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)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Power Engineering (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Un método implementado en ordenador para gestión de datos, implementado por un primer sistema de servicio (113, 114), que comprende: obtener (312) información de autenticación de un usuario de inicio de sesión para acceder al primer sistema de servicio; generar un resumen digital de la información de autenticación del usuario de inicio de sesión; transmitir (321) el resumen digital de la información de autenticación del usuario de inicio de sesión a uno o más nodos de una cadena de bloques, en donde la cadena de bloques es accesible para el primer sistema de servicio, un segundo sistema de servicio y un sistema de almacenamiento (111), independientes del primer y del segundo sistemas de servicio; obtener (323) del uno o más nodos de la cadena de bloques un resultado de una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en la cadena de bloques, en donde: la comparación la realizan el uno o más nodos de la cadena de bloques, el uno o más resúmenes digitales comprenden un resumen digital de información de autenticación registrada del usuario de inicio de sesión para acceder al segundo sistema de servicio, comprendiendo dicha información de autenticación registrada al menos una de: i) una identificación de cuenta asociada al usuario de inicio de sesión; y ii) una contraseña asociada a dicha identificación de cuenta, el uno o más resúmenes digitales se almacenan en la cadena de bloques después de verificación de consenso por una pluralidad de nodos de la cadena de bloques, y el usuario de inicio de sesión no está registrado en el primer sistema de servicio; y autenticar al usuario de inicio de sesión para acceder al primer sistema de servicio en respuesta a que el resumen digital de la información de autenticación del usuario de inicio de sesión es el mismo que uno del uno o más resúmenes digitales almacenados en la cadena de bloques de acuerdo con el resultado obtenido, de tal modo que el primer y el segundo sistemas de servicio están configurados para usar de forma cruzada la información de autenticación registrada.
Description
DESCRIPCIÓN
Sistema y método para la gestión de datos basada en cadena de bloques
Campo técnico
Esta solicitud se refiere generalmente a métodos y dispositivos para la gestión de datos basada en cadena de bloques.
Antecedentes
Para muchas aplicaciones basadas en internet, los usuarios a menudo necesitan registrar su información para acceder a ciertas funciones. Por ejemplo, puede requerirse que los usuarios creen una cuenta de usuario y una contraseña para la cuenta de usuario, para proporcionar información de contacto y método de pago, etc. Parte de la información de registro, tal como la cuenta de usuario y contraseña, puede usarse para autenticar la identidad de usuario cuando el usuario intenta acceder a la cuenta. Debido al acceso libre a Internet, a menudo se producen incidentes de violación de datos privados. Para al menos algunos de los incidentes, las violaciones se originaron desde proveedores de servicios en línea, que recopilan y almacenan información de registro de usuario.
En las tecnologías actuales, los proveedores de servicios en línea u otros tenedores de datos privados pueden carecer de un mecanismo de protección adecuado para salvaguardar tales datos privados, lo que ha conducido a frecuentes violaciones de datos. El almacenamiento de datos en múltiples ubicaciones puede aumentar adicionalmente la probabilidad de violaciones de datos. Por ejemplo, los piratas informáticos pueden piratear uno o más de tales lugares de almacenamiento de datos mantenidos por los proveedores de servicios en línea y exportar datos de usuario para usos maliciosos. Además, en las soluciones actuales, los proveedores de servicios en línea a menudo implementan sus propias reglas de almacenamiento y acceso y mantienen un control exclusivo. Los accesos de datos son difíciles de rastrear y dejan detrás poca evidencia para el análisis de seguridad o para que los usuarios reivindiquen sus derechos. Por lo tanto, una seguridad de datos mejorada para la protección de la privacidad es un problema desafiante que queda por resolver.
Además, cada usuario puede tener que registrar cuentas para diferentes aplicaciones en línea, a pesar de que se proporciona una información personal similar. El proceso es repetitivo, tedioso y las combinaciones de cuenta y contraseña pueden mezclarse fácilmente. Tal desventaja para los usuarios resulta ser una ventaja para los piratas informáticos. Los piratas informáticos pueden generar una librería de combinaciones de cuenta y contraseña ficticias basándose en ciertas combinaciones de cuenta y contraseña para una cierta aplicación en línea, y usar las combinaciones ficticias para iniciar sesión en otras aplicaciones en línea mediante ensayo y error. Dado que los usuarios a menudo usan combinaciones de cuenta y contraseña comunes para diferentes aplicaciones en línea, una cadena de violaciones de datos puede extenderse a través de diferentes aplicaciones en línea. Por lo tanto, es deseable tener un sistema que pueda almacenar de forma segura datos privados.
El documento D1 (US2017/0257358) divulga un método para registrar datos de identificación de usuario en una cadena de bloques a través de una plataforma de gestión de identidad. La información de identificación de usuario incluye una forma de identificación de usuario, tal como el carné de conducir o pasaporte, que puede escanearse de tal forma que no se requieren contraseña y nombre de usuario. La identificación de usuario se "sella" en la cadena de bloques troceando y firmando digitalmente los datos de ID de usuario y almacenando los mismos en la cadena de bloques, y se certifica por un certificador.
El documento D2 (US2018/0227130) divulga un método de certificación de datos de usuario almacenados en un sistema de cadena de bloques. La entidad de certificación certifica los datos de usuario y trocea los datos certificados con una sal para crear datos de troceo nuevos. El troceo recientemente generado se firma, a continuación, con una clave privada de la entidad de certificación para crear una certificación firmada de los datos y almacenar la certificación en la cadena de bloques.
El documento D3 (WO2018/069566) divulga un método para validar transacciones de datos de usuario dentro de círculo confiable de nodos. El método incluye: recibir información de usuario sensible por un primer nodo a través de una red pública; publicar la información a un segundo nodo del círculo confiable a través de un sistema de consenso y registrar la transacción en una cadena de bloques privada.
Sumario
Aspectos de las invenciones proporcionan un método implementado por ordenador y sistema y aparato de gestión de datos según se exponen en las reivindicaciones adjuntas.
De acuerdo con un aspecto de la invención según se expone en las reivindicaciones adjuntas, se proporciona un método implementado por ordenador para gestión de datos, implementado por un primer sistema de servicio que comprende: obtener información de autenticación de un usuario de inicio de sesión para acceder al primer sistema de servicio; generar un resumen digital de la información de autenticación del usuario de inicio de sesión; transmitir el
resumen digital de la información de autenticación del usuario de inicio de sesión a uno o más nodos de una cadena de bloques, en donde la cadena de bloques es accesible para el primer sistema de servicio, un segundo sistema de servicio y un sistema de almacenamiento independiente del primer y del segundo sistemas de servicio; obtener del uno o más nodos de la cadena de bloques un resultado de una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en la cadena de bloques, en donde: la comparación se realiza por el uno o más nodos de la cadena de bloques, el uno o más resúmenes digitales comprenden un resumen digital de información de autenticación registrada del usuario de inicio de sesión para acceder al segundo sistema de servicio, comprendiendo dicha información de autenticación registrada al menos una de: i) una información de cuenta de usuario registrada asociada al usuario de inicio de sesión; y ii) una contraseña asociada a dicha información de cuenta de usuario, el uno o más resúmenes digitales se almacenan en la cadena de bloques después de verificación de consenso por una pluralidad de nodos de la cadena de bloques, y el usuario de inicio de sesión no está registrado en el primer sistema de servicio; y autenticar al usuario de inicio de sesión para acceder al primer sistema de servicio en respuesta a que el resumen digital de la información de autenticación del usuario de inicio de sesión es el mismo que uno del uno o más resúmenes digitales almacenados en la cadena de bloques de acuerdo con el resultado obtenido, de tal modo que el primer y el segundo sistemas de servicio están configurados para usar de forma cruzada la información de autenticación registrada.
En algunos ejemplos, la información de autenticación comprende al menos una de: una identificación de cuenta asociada al usuario de inicio de sesión o una contraseña asociada a la identificación de cuenta.
En otros ejemplos, el resumen digital de la información de autenticación comprende un valor de troceo de la información de autenticación.
En otros ejemplos, antes de obtener la información de autenticación del usuario de inicio de sesión, el método comprende adicionalmente: obtener información de autenticación de un usuario para el registro; generar un resumen digital basándose en la información de autenticación del usuario para el registro; y transmitir el resumen digital generado basándose en la información de autenticación del usuario para el registro en uno o más nodos de la cadena de bloques para almacenamiento en la cadena de bloques, en donde el resumen digital transmitido es uno del uno o más resúmenes digitales almacenados en la cadena de bloques.
En aún otros ejemplos, obtener la información de autenticación del usuario para el registro comprende: recibir una petición de registro reenviada desde un sistema de servicio, en donde la petición de registro se solicita por el usuario para el registro; proporcionar una dirección de redireccionamiento al sistema de servicio para que el sistema de servicio presente una página de registro que corresponde a la dirección de redireccionamiento; y recopilar la información de autenticación a través de la página de registro del usuario para el registro.
En algunos ejemplos, obtener la información de autenticación del usuario de inicio de sesión comprende además: obtener un permiso del usuario de inicio de sesión para el registro para usar la información de autenticación para acceder al segundo sistema de servidor para autenticar al usuario para acceder al primer sistema de servidor.
En aún otros ejemplos, el método comprende adicionalmente: obtener una petición para realizar una transacción del usuario de inicio de sesión; recuperar del sistema de almacenamiento información detallada de usuario del usuario de inicio de sesión para realizar la transacción; y ejecutar la transacción basándose al menos en la información detallada de usuario del usuario de inicio de sesión.
En aún otros ejemplos, después de obtener la petición para realizar la transacción y antes de recuperar del sistema de almacenamiento la información detallada de usuario para realizar la transacción, el método comprende adicionalmente: obtener autenticación del usuario de inicio de sesión basándose en otra comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y el uno o más resúmenes digitales almacenados en la cadena de bloques.
En aún otros ejemplos, cada uno del uno o más resúmenes digitales almacenados en la cadena de bloques tiene una identificación de transacción asociada al almacenamiento del correspondiente resumen digital en la cadena de bloques; y el método comprende adicionalmente: en respuesta a autenticar satisfactoriamente al usuario de inicio de sesión, obtener una identificación de transacción asociada al almacenamiento de uno de resúmenes digitales almacenados en la cadena de bloques que coincide con el resumen digital de la información de autenticación.
En otro aspecto de la invención según se expone en las reivindicaciones adjuntas, se proporciona un sistema de gestión de datos que comprende: uno o más procesadores; y una o más memorias legibles por ordenador acopladas al uno o más procesadores y que tienen instrucciones almacenadas en las mismas que son ejecutables por el uno o más procesadores para realizar el método de cualquiera de los ejemplos anteriores.
En otro aspecto de la invención según se expone en las reivindicaciones adjuntas, se proporciona un aparato de gestión de datos que comprende una pluralidad de módulos para realizar el método de cualquiera de los ejemplos anteriores.
De acuerdo con otro ejemplo, un sistema de gestión de datos comprende uno o más procesadores y una o más memorias legibles por ordenador no transitorias acopladas al uno o más procesadores y configuradas con instrucciones ejecutables por el uno o más procesadores para provocar que el sistema realice operaciones que comprenden: obtener información de autenticación de un usuario de inicio de sesión; generar un resumen digital de la información de autenticación del usuario de inicio de sesión; y autenticar al usuario de inicio de sesión basándose en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques.
De acuerdo con otro ejemplo más, un medio de almacenamiento legible por ordenador no transitorio está configurado con instrucciones ejecutables por uno o más procesadores para provocar que el uno o más procesadores realicen operaciones de cualquiera de los ejemplos anteriores.
De acuerdo con aún otro ejemplo, un aparato de gestión de datos puede comprender un módulo de obtención para obtener información de autenticación de un usuario de inicio de sesión; un módulo de generación para generar un resumen digital de la información de autenticación del usuario de inicio de sesión; y un módulo de autenticación para autenticar al usuario de inicio de sesión basándose en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques.
Ejemplos divulgados en la memoria descriptiva tienen uno o más efectos técnicos. En algunos ejemplos, los métodos y sistemas pueden almacenar de forma segura información de autenticación. El almacenamiento en la cadena de bloques permite el mantenimiento de registros preciso de los datos originales. En otros ejemplos, cuando una entidad registra su información, la información de registro (por ejemplo, cuenta y contraseña) puede almacenarse en la cadena de bloques en una transacción de cadena de bloques. Por lo tanto, la información de registro se vuelve inmutable y recuperable para autenticar usuarios. En aún otros ejemplos, los métodos y sistemas pueden permitir el uso de forma cruzada de la información de autenticación. En aún otros ejemplos, realizando un registro en un servicio y permitiendo el uso de forma cruzada de la información de autenticación, el usuario puede usar la misma información de autenticación para acceder a otros servicios. Esto evita la necesidad de repetir el registro en múltiples servicios y disminuye la probabilidad de olvidar la información de autenticación. En aún otros ejemplos, los métodos y sistemas pueden centralizar el almacenamiento de información detallada de usuario (por ejemplo, contacto, dirección, cuenta bancaria) relacionada con el usuario de inicio de sesión en una agrupación de almacenamiento o similar. Cuando el usuario de inicio de sesión se autentica, la correspondiente información detallada de usuario puede recuperarse para verificar adicionalmente operaciones más complejas tales como iniciar transacciones. En algunos ejemplos, los proveedores de servicios en línea no necesitan almacenar localmente los datos de usuario, lo que disminuye el coste de mantenimiento de sistema y mejora la seguridad de datos. En otros ejemplos, la información detallada de usuario o una representación de la misma también puede almacenarse en la cadena de bloques para evitar su manipulación. En general, los datos de usuario se aseguran de forma más segura y se disminuyen las probabilidades de violación de datos.
Estas y otras características de los sistemas, métodos y medios no transitorios legibles por ordenador divulgados en este documento, así como los métodos de operación y funciones de los elementos de estructuras relacionados y la combinación de partes y economías de fabricación, se harán más evidentes tras la consideración de la siguiente descripción y las reivindicaciones adjuntas con referencia a los dibujos adjuntos, todos los cuales forman una parte de esta memoria descriptiva, en donde números de referencia similares designan partes correspondientes en las diversas figuras. Debe entenderse expresamente, sin embargo, que los dibujos son para propósitos de ilustración y descripción únicamente y no pretenden ser limitantes.
Breve descripción de los dibujos
La Figura 1A ilustra un ejemplo de un sistema de gestión de datos basada en cadena de bloques, de acuerdo con diversas realizaciones.
La Figura 1B ilustra un ejemplo de una red de cadena de bloques, de acuerdo con diversas realizaciones.
La Figura 2 ilustra un ejemplo de un método para recopilar y almacenar datos de usuario, de acuerdo con diversas realizaciones.
La Figura 3 ilustra un ejemplo de un método para autenticar una cuenta de usuario, de acuerdo con diversas realizaciones.
La Figura 4 ilustra un ejemplo de un método para recuperar datos de usuario, de acuerdo con diversas realizaciones.
La Figura 5 ilustra un diagrama de flujo de un ejemplo de un método para gestión de datos basada en cadena de bloques, de acuerdo con diversas realizaciones.
La Figura 6 ilustra un diagrama de bloques de un ejemplo de un sistema informático de gestión de datos basada
en cadena de bloques, de acuerdo con diversas realizaciones.
La Figura 7 ilustra un diagrama de bloques de un ejemplo de un sistema informático en el que puede implementarse cualquiera de las realizaciones descritas en este documento.
Descripción detallada
Realizaciones divulgadas en este documento incluyen, pero sin limitación, sistemas, métodos y medios legibles por ordenador no transitorios de gestión de datos basada en cadena de bloques. En diversas realizaciones, ciertos datos de usuario pueden almacenarse o compartirse a través de cadena de bloques. Por ejemplo, una gestión de datos puede gestionar la recopilación de datos de usuario para diversas aplicaciones en línea. En algunas realizaciones, datos de usuario pueden registrarse en un centro de gestión de datos (denominado como un sistema de almacenamiento), que almacena información detallada de usuario y carga resúmenes de la información de autenticación en la cadena de bloques. Mediante este registro de una sola vez, un usuario puede alcanzar acceso a múltiples proveedores de servicios en línea que se han enlazado al centro de gestión de datos, sin tener que repetir el registro en cada uno de los proveedores. En otras realizaciones, los proveedores de servicios en línea no necesitan mantener bases de datos individuales que almacenan datos de usuario. En otras realizaciones, diferentes proveedores de servicios en línea pueden autenticar usuarios accediendo a la cadena de bloques y recuperar información detallada de usuario del centro de gestión de datos para ejecutar transacciones o realizar otras operaciones solicitadas por los usuarios. Almacenando los datos de usuario en una ubicación centralizada, se disminuye la probabilidad de violación de datos ya que los usuarios ya no necesitan enviar datos privados múltiples veces o a múltiples ubicaciones. En aún otras realizaciones, un usuario puede registrarse una vez y autenticarse en diferentes proveedores de servicios en línea que usan de forma cruzada la información de autenticación a través de acceso a la cadena de bloques.
En diversas realizaciones, los sistemas, métodos y medios legibles por ordenador no transitorios de gestión de datos divulgados pueden basarse en diversos tipos de cadenas de bloques dependiendo de a quién se permite participar en la red, ejecutar el protocolo de consenso y mantener el registro de cadena de bloques compartido. Los diversos tipos de cadena de bloques pueden incluir, por ejemplo, cadena de bloques pública, cadena de bloques de consorcio, cadena de bloques privada, etc. La descripción en lo sucesivo se refiere a cadena de bloques de consorcio. No obstante, los sistemas, métodos y medios legibles por ordenador no transitorios de gestión de datos divulgados también pueden aplicarse con respecto a otros tipos de cadena de bloques.
Una cadena de bloques puede considerarse una base de datos descentralizada o parcialmente centralizada, comúnmente denominada como un registro distribuido porque la operación se realiza por diversos nodos (por ejemplo, dispositivos informáticos) en una red. Cualquier información puede escribirse en la cadena de bloques y guardarse o leerse de ella. Los nodos son, por ejemplo, dispositivos informáticos o grandes sistemas informáticos que soportan la red de cadena de bloques y mantienen funcionando la misma sin problemas. Cada nodo puede proporcionar una parte o todas las funciones de la cadena de bloques. Por ejemplo, un nodo que proporciona verificación de consenso puede denominarse como un nodo de participación de consenso (o nodo de consenso). El consenso puede ser un algoritmo de reglas para una red de nodos de cadena de bloques para conseguir resultados de procesamiento comúnmente aceptados. A través de consenso, se añaden continuamente datos en una cadena de bloques. Si se hacen cambios al bloque, su enlace al bloque anterior en la cadena se vuelve inválido y se hace visible a todos los participantes de red que, a través de las reglas de consenso, puede evitar cualquier acción no autorizada adicional.
La cadena de bloques de consorcio se refiere a una cadena de bloques con procedimientos de consenso controlados por nodos prestablecidos. La cadena de bloques puede permitir que cualquiera o únicamente los participantes aprobados accedan o adopten un método de acceso híbrido. Por ejemplo, el troceo de raíz y su API (Interfaz de Programa de Aplicación) puede estar abierto al público; se permite que las partes externas usen la API para hacer un cierto número de consultas y obtengan información relacionada con el estado de cadena de bloques.
Las cadenas de bloques de consorcio pueden entenderse mejor cuando se comparan con su homólogo más popular, cadenas de bloques públicas. Una cadena de bloques pública no posee ninguna restricción de acceso, significando que absolutamente nadie con una conexión de internet puede convertirse en un participante de una cadena de bloques pública. Más específicamente, cualquiera en el mundo es capaz de leer datos que se incluyen en la cadena de bloques, y se permite que cualquiera en el mundo ejecute transacciones de cadena de bloques en una cadena de bloques pública. También, no existe ninguna restricción en cuanto a quién puede participar en el proceso de consenso para cadenas de bloques, que es el proceso que determina el individuo o entidad que puede añadir un bloque a la cadena de bloques. Se considera que las cadenas de bloques públicas están totalmente descentralizadas, no estando el control de la cadena de bloques en las manos de ningún único individuo o entidad.
Las cadenas de bloques de consorcio difieren de sus homólogas públicas en que están autorizadas, por lo tanto, no solo cualquiera con una conexión de internet podría conseguir acceso a una cadena de bloques de consorcio. Estos tipos de cadenas de bloques también podría describirse como que están semidescentralizadas. No se concede el control sobre una cadena de bloques de consorcio a una única entidad, sino a un grupo de individuos aprobados. Con una cadena de bloques de consorcio, es probable que el proceso de consenso difiera del de una cadena de bloques pública. En lugar de que cualquiera sea capaz de participar en el procedimiento, es probable que los participantes de
consenso de una cadena de bloques de consorcio estén en un grupo de nodos preaprobados en la red. Los nodos pueden corresponder a diversos países, empresas u otras entidades. Por lo tanto, las cadenas de bloques de consorcio poseen las características de seguridad que son intrínsecas en cadenas de bloques públicas, mientras que también permiten un mayor grado de control sobre la red.
La Figura 1A muestra un ejemplo de un sistema 110 para realizar diversas etapas y métodos divulgados, de acuerdo con diversas realizaciones. Como se muestra, el sistema 110 puede comprender un sistema de almacenamiento 111, un sistema de cadena de bloques 112 y uno o más sistemas de servicio (por ejemplo, el sistema de servicio 113, el sistema de servicio 114, etc.), cada uno de los cuales puede corresponder a uno o más dispositivos de hardware físicos o dispositivos virtuales acoplados juntos a través de diversos tipos de comunicaciones representados por una red 119. Los sistemas de servicio no se limitan a proporcionar servicios, ya que la palabra "servicio" es solamente para diferenciar los nombres de diversos sistemas. Aunque únicamente se muestran el sistema de servicio 113 y el sistema de servicio 114, muchos otros sistemas de servicio pueden incluirse de forma similar en el sistema 110.
Cada uno del sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 puede implementarse en uno o más dispositivos informáticos tales como servidores, ordenadores, teléfonos móviles, etc. Por ejemplo, cada uno de los sistemas puede implementarse en una agrupación de servidores. La agrupación de servidores puede emplear equilibrio de carga.
Aunque el sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 se muestran como componentes individuales en esta figura, debería apreciarse que estos sistemas pueden implementarse como dispositivos individuales o múltiples dispositivos acoplados juntos. Es decir, dos o más de los sistemas en la Figura 1A pueden integrarse en un único sistema o implementarse como sistemas separados. Por ejemplo, el sistema de almacenamiento 111 y el sistema de servicio 113 pueden integrarse en un sistema de gestión de datos 118 que comprende uno o más dispositivos informáticos. El sistema de gestión de datos 118 puede denominarse como un sistema de gestión de datos basada en cadena de bloques. Si se integran, el sistema de almacenamiento 111 y el sistema de servicio 113 pueden implementarse como diversos módulos o componentes similares del sistema integrado.
En diversas realizaciones, el sistema de almacenamiento 111 puede implementarse como una agrupación de dispositivos de almacenamiento centralizados (por ejemplo, servidores), accesible para los diversos sistemas de servicio. El sistema de almacenamiento 111 puede recopilar y almacenar datos de usuario distintos de información de autenticación. Por ejemplo, la información detallada de usuario puede almacenarse en una base de datos mantenida por el sistema de almacenamiento 111. El sistema de cadena de bloques 112A puede recopilar y almacenar una representación de ciertos datos de usuario tales como los datos de autenticación para cada usuario. Por ejemplo, un resumen digital de los datos de autenticación puede almacenarse en una copia de cadena de bloques local de cada nodo que mantiene la cadena de bloques. Por lo tanto, los diversos sistemas de servicio no necesitan almacenar los datos de usuario.
Cada uno del sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 puede instalarse con software apropiado (por ejemplo, gestión de datos interfaz de programa de aplicación) y/o hardware (por ejemplo, alambres, conexiones inalámbricas) para acceder a otros dispositivos del sistema 110. Cada uno del sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 puede incluir uno o más procesadores y una o más memorias acopladas al uno o más procesadores. Las memorias pueden ser no transitorias y legibles por ordenador y estar configuradas con instrucciones ejecutables por uno o más procesadores para provocar que el uno o más procesadores realicen operaciones descritas en este documento.
En general, el sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 pueden ser capaces de comunicarse entre sí a través de la red 119. Por ejemplo, el sistema de almacenamiento 111, el sistema de cadena de bloques 112, el sistema de servicio 113 y el sistema de servicio 114 pueden ser capaces de comunicarse entre sí a través de una o más redes por cable o inalámbricas (por ejemplo, la Internet) a través de la que pueden comunicarse datos. Diversos aspectos de los componentes de sistema se describen en detalles adicionales a continuación en referencia con la Figura 1B a la Figura 7.
La Figura 1B muestra un ejemplo de una red de cadena de bloques 120, de acuerdo con diversas realizaciones. Como se muestra, la red de cadena de bloques 120 puede comprender el sistema de cadena de bloques 112 descrito anteriormente. El sistema de cadena de bloques 112 puede comprender una pluralidad de nodos de cadena de bloques (por ejemplo, nodo 1, nodo 2, nodo 3, nodo 4, nodo i, etc.). Los nodos de cadena de bloques pueden formar una red (por ejemplo, red par a par) con un nodo de cadena de bloques que se comunica con otro. El orden y el número de los nodos de cadena de bloques como se muestran son simplemente ejemplos y por simplicidad de ilustración. Los nodos de cadena de bloques pueden implementarse en servidores, ordenadores, etc. Cada nodo de cadena de bloques puede corresponder a uno o más dispositivos de hardware físicos o dispositivos virtuales acoplados juntos a través de diversos tipos de métodos de comunicación tales como TCP/IP. Dependiendo de las clasificaciones, los nodos de cadena de bloques pueden comprender nodos totales, nodos Geth, nodos de consenso, etc.
En diversas realizaciones, uno o más nodos del sistema de cadena de bloques 112 pueden interactuar con otros sistemas y dispositivos tales como el sistema de almacenamiento 111, el sistema de servicio 113 y el sistema de servicio 114 descritos anteriormente. Las interacciones pueden implicar la transmisión y/o recepción de datos para el propósito de, por ejemplo, transacciones, certificación, contratación, etc. En un ejemplo, el nodo A (por ejemplo, teléfono móvil, ordenador, etc.) puede corresponder a un dispositivo del sistema de gestión de datos 118 y puede transmitir información al nodo 1 (o una pluralidad de nodos del sistema de cadena de bloques 112) para almacenamiento en la cadena de bloques. Por ejemplo, el nodo A puede ser un servidor del sistema de almacenamiento 111 implementado como una agrupación de servidores. El proceso de almacenamiento puede lograrse a través de una transacción de cadena de bloques. Por ejemplo, la información puede escribirse en un contrato de cadena de bloques (por ejemplo, contrato inteligente), y la transacción de cadena de bloques puede iniciarse por el nodo 1 (o uno o más otros nodos que tienen tal privilegio basándose en las reglas de consenso de cadena de bloques) para desplegar el contrato a la cadena de bloques. Similar a otras transacciones de cadena de bloques, la transacción de cadena de bloques en este punto puede corresponder a un troceo de transacción. El troceo representa un valor de troceo y puede ser un resultado numérico de datos sujetos (por ejemplo, información de identidad, información de transacción asociada a una transacción ejecutada) a una función o algoritmo de troceo. La cadena de bloques puede almacenar el valor de troceo de la transacción de cadena de bloques.
Posteriormente, cuando la información necesita recuperarse (por ejemplo, para verificación), el nodo A/nodo B (por ejemplo, teléfono móvil, ordenador, etc.) puede ordenar al nodo 1/nodo 2 (o una pluralidad de nodos del sistema de cadena de bloques 112) que inicie otra transacción de cadena de bloques para obtener la información de la cadena de bloques. La otra transacción de cadena de bloques puede consultar la dirección para obtener la información de acuerdo con el troceo de transacción. Como alternativa, el nodo A/nodo B puede transmitir cierta información al nodo 1/nodo 2 para ordenar que uno o más nodos de cadena de bloques inicien la otra transacción para verificar la cierta información contra información almacenada en cadena de bloques. El nodo B puede pertenecer al sistema de gestión de datos 118, uno de los sistemas de servicio u otro sistema (no mostrado) acoplado al sistema de cadena de bloques 112. Por ejemplo, el nodo B puede ser un ordenador del sistema de servicio 113 o 114.
En la interacción con el sistema de cadena de bloques 112, el nodo A y el nodo B pueden instalarse con un software de cadena de bloques apropiado para iniciar, reenviar o acceder a la transacción de cadena de bloques. El nodo A puede acceder a la cadena de bloques a través de comunicación con el nodo 1 o uno o más otros nodos de la cadena de bloques, y el nodo B puede acceder a la cadena de bloques a través de comunicación con el nodo 2 o uno o más otros nodos de la cadena de bloques. El nodo A puede enviar la transacción a la cadena de bloques a través de nodo 1 o nodos similares para solicitar la adición de la transacción a la cadena de bloques.
La cadena de bloques puede mantenerse por una pluralidad de nodos de cadena de bloques comprendiendo o acoplándose cada uno a una memoria. En algunas realizaciones, la memoria puede almacenar una base de datos de agrupación. La base de datos de agrupación puede ser accesible para la pluralidad de nodos de cadena de bloques de una manera distribuida. Por ejemplo, la base de datos de agrupación puede almacenarse respectivamente en las memorias de los nodos de cadena de bloques. La base de datos de agrupación puede almacenar una pluralidad de transacciones enviadas por el uno o más dispositivos de usuario similares al nodo A.
En algunas realizaciones, después de recibir una petición de transacción de una transacción no confirmada, el nodo de cadena de bloques receptor puede recibir alguna verificación preliminar de la transacción. Por ejemplo, haciendo referencia a la Figura 1B, el nodo 1 puede realizar la verificación preliminar después de recibir una transacción de nodo A. Una vez verificada, la transacción puede almacenarse en la base de datos de agrupación del nodo de cadena de bloques receptor (por ejemplo, el nodo 1), que también puede reenviar la transacción a uno o más otros nodos de cadena de bloques (por ejemplo, el nodo 3, el nodo 4). El uno o más otros nodos de cadena de bloques pueden repetir el proceso hecho por el nodo de receptor. Una vez que las transacciones en la correspondiente base de datos de agrupación alcanzan un cierto nivel (por ejemplo, una cantidad de umbral), cada uno de los nodos de cadena de bloques puede verificar el lote de transacciones en la correspondiente base de datos de agrupación de acuerdo con reglas de consenso u otras reglas. Si la transacción de cadena de bloques implica un contrato de cadena de bloques (por ejemplo, contrato inteligente), el nodo de cadena de bloques puede ejecutar el contrato de cadena de bloques localmente.
Un contrato de cadena de bloques es un protocolo informático que pretende facilitar digitalmente, verificar o imponer la negociación o realización de un contrato. Los contratos de cadena de bloques permiten la realización de transacciones de cadena de bloques fiables sin terceras partes. Un ejemplo de una transacción de cadena de bloques puede codificar datos en código de contrato para almacenamiento de datos (mediante despliegue de contrato) y recuperación (mediante contrato de acceso o ejecución). El contrato de cadena de bloques puede incluir código de contrato escrito por usuario, tal como la información de autenticación, el valor de troceo de la información de autenticación, etc. Un cierto nodo de cadena de bloques que verifica satisfactoriamente su lote de transacciones de cadena de bloques de acuerdo con reglas de consenso puede meter las transacciones de cadena de bloques a añadir a su copia local de la cadena de bloques y propagar los resultados a otros nodos de cadena de bloques. El cierto nodo de cadena de bloques puede ser un nodo de cadena de bloques que ha completado primero satisfactoriamente la verificación, que ha obtenido el privilegio de verificación, o que se ha determinado basándose en otra regla de consenso, etc. A continuación, los otros nodos de cadena de bloques pueden ejecutar las transacciones de cadena
de bloques localmente, verificar los resultados de ejecución entre sí (por ejemplo, realizando un cálculo de troceo), y sincronizar sus copias de la cadena de bloques con las del cierto nodo de cadena de bloques. Actualizando sus copias locales de la cadena de bloques, los otros nodos de cadena de bloques pueden escribir de forma similar tal información en la transacción de cadena de bloques en respectivas memorias locales. Por lo tanto, se despliega el contrato de cadena de bloques. Un contrato desplegado puede accederse posteriormente a través de su correspondiente dirección en cadena de bloques para su ejecución. Por ejemplo, los datos almacenados en el contrato pueden recuperarse. Si la verificación falla en algún punto, se rechaza la transacción de cadena de bloques. A pesar de lo anterior, otros tipos de sistemas de cadena de bloques y reglas de consenso asociadas pueden aplicarse al sistema de cadena de bloques divulgado.
La Figura 2 ilustra un ejemplo de un método 200 para recopilar y almacenar datos de usuario, de acuerdo con diversas realizaciones. El método 200 puede implementarse mediante uno o más componentes del sistema 110 de la Figura 1A (por ejemplo, el sistema de almacenamiento 111, el sistema de cadena de bloques 112 y uno o más del sistema de servicio 113, el sistema de servicio 114 y similares). Como se ha descrito anteriormente, el sistema de almacenamiento 111 y el sistema de servicio 113, el sistema de servicio 114 y similares pueden integrarse en el sistema de gestión de datos 118 que comprende uno o más dispositivos informáticos. Se pretende que las operaciones que se presentan a continuación sean ilustrativas. Dependiendo de la implementación, el método 200 puede incluir etapas adicionales, menos etapas o etapas alternativas realizadas en diversos órdenes o en paralelo.
En algunas realizaciones, en la etapa 211, una primera identidad puede iniciar registro de información u otra operación a través de uno o más de los sistemas de servicio (por ejemplo, el sistema de servicio 113, el sistema de servicio 114, etc.). En lo sucesivo, el sistema de servicio 113 se usará como un ejemplo. La primera entidad puede denominarse como un usuario. La primera entidad puede asociarse a un individuo, una corporación, una empresa, una organización, etc. Por ejemplo, un usuario individual puede iniciar un registro de cuenta (por ejemplo, registro de cuenta bancaria en línea, registro de cuenta de compras en línea, registro de cuenta de juego en línea, etc.) con un proveedor de servicio en línea del sistema de servicio. Aunque el registro se usa como un ejemplo, pueden realizarse otros tipos de operaciones y pueden recopilarse datos distintos de datos de registro.
En la etapa 212, el sistema de servicio 113 puede redireccionar la petición de operación de la etapa 211 al sistema de almacenamiento 111 para obtener una correspondiente dirección (por ejemplo, URL (localizador de recursos uniforme)) que dirige al sistema de almacenamiento 111 para recopilar datos de usuario. Por lo tanto, los datos de usuario pueden evitar los sistemas de servicio y recopilarse por el sistema de almacenamiento 111. Por ejemplo, el sistema de servicio 113 (por ejemplo, una plataforma de compras en línea) y el sistema de servicio 114 (por ejemplo, una plataforma de banca en línea) pueden haberse unido al sistema de gestión de datos 118. El registro de usuario en cada sistema de servicio puede dirigirse a una dirección proporcionada por el sistema de almacenamiento 111, sin tener que almacenar el mismo en ninguno de los sistemas de servicio. Además, una vez registrados con el sistema de almacenamiento 111, la información de registro de usuario puede compartirse entre todos los sistemas de servicio existentes y futuros que se han unido al sistema de gestión de datos 118 (en forma de un resumen digital consultable almacenado en cadena de bloques) para autenticar al usuario. Para este fin, puede avisarse a los usuarios para autorizar el uso de forma cruzada de registro de usuario entre diferentes sistemas de servicio y proporcionar tal autorización. El uso de forma cruzada significa aplicar el registro en un servicio a otros servicios. Por ejemplo, usando de forma cruzada el registro de una persona en la página web A, la cuenta autenticación de la persona se comparte con otras páginas web y la persona consigue acceso a otros sitios web sin tener que registrarse en cada uno de los otros sitios web. Por lo tanto, los usuarios se ahorran la molestia de repetir el proceso de registro en múltiples sitios.
En la etapa 213, el sistema de almacenamiento 111 puede transmitir la correspondiente dirección al sistema de servicio 113.
En la etapa 221, el sistema de servicio 113 puede redireccionar al usuario a la dirección para recopilar datos de usuario, tales como la información de registro. Por ejemplo, la operación de registro puede requerir que el usuario proporcione cierta información privada (por ejemplo, nombre, número de ID, dirección postal, número de contacto, información de cuenta de pago, etc.) para conseguir acceso al servicio proporcionado. El sistema de servicio 113 puede provocar la representación de información asociada a la dirección para recopilar datos de usuario, tales como una página web directamente enlazada al sistema de almacenamiento 111. Por lo tanto, el sistema de almacenamiento 111 puede obtener los datos de usuario introducidos por el usuario.
En la etapa 231, el sistema de servicio 113 puede transmitir los datos de usuario recopilados al sistema de almacenamiento 111. La transmisión puede realizarse a través de la dirección de redireccionamiento, por ejemplo, una página enlazada al sistema de almacenamiento 111. En algunas realizaciones, los datos de usuario recopilados pueden comprender: cuenta de usuario, contraseña, nombre de usuario, identificación de usuario, contacto de usuario, dirección de usuario, método de pago, etc. La cuenta de usuario y/o la contraseña pueden servir como una identificación del usuario. La contraseña puede asociarse a la cuenta de usuario. La contraseña no se limita una contraseña de texto tradicional y puede incluir diversos tipos de contraseñas tales como contraseña biométrica, contraseña de huella dactilar, contraseña por voz, contraseña de iris, contraseña de gesto, etc.
En la etapa 232, el sistema de almacenamiento 111 puede generar un resumen digital de información de autenticación
(por ejemplo, cuenta de usuario y contraseña) y almacenar información detallada de usuario (por ejemplo, información de contacto, dirección, información de pago o datos de usuario similares distintos de la información de autenticación). El resumen digital y la información detallada de usuario se asocian entre sí. El sistema de almacenamiento 111 puede no almacenar la información de autenticación por problemas de privacidad y seguridad. En algunas realizaciones, el resumen digital puede comprender una representación criptográfica (por ejemplo, un valor de troceo obtenido a través de SHA-256) de la información de autenticación y puede usarse para autenticar la identidad de usuario (por ejemplo, donde alguien intenta iniciar sesión en la cuenta de usuario). La información detallada de usuario puede denominarse como un resumen y puede almacenarse como datos de texto plano. La información detallada de usuario puede personalizarse para cada correspondiente sistema de servicio dependiendo de la configuración. Por ejemplo, cada sistema de servicio puede tener diferentes conjuntos de información requerida a proporcionar por los usuarios.
En la etapa 233, el sistema de almacenamiento 111 puede transmitir el resumen digital al sistema de cadena de bloques 112 a añadir a la cadena de bloques. En la etapa 241, el sistema de cadena de bloques 112 puede meter el resumen digital en la cadena de bloques de acuerdo con su protocolo de consenso.
En diversas realizaciones, el sistema de almacenamiento 111 puede incluir uno o más nodos ligeros (por ejemplo, el nodo A, el nodo B). El sistema de almacenamiento 111 puede iniciar una primera transacción de cadena de bloques (o primera transacción para abreviar) a través de un nodo del sistema de cadena de bloques 112 (por ejemplo, el nodo 1) acoplado al nodo o nodos ligeros. Por ejemplo, el resumen digital puede escribirse en un contrato de cadena de bloques (por ejemplo, contrato inteligente), y la primera transacción de cadena de bloques puede iniciarse para desplegar el contrato a la cadena de bloques. Mediante el despliegue, el contrato es accesible desde la cadena de bloques para una operación de ejecución, de recuperación y otras operaciones. La primera transacción de cadena de bloques en este caso puede corresponder a una primera identificación de transacción (por ejemplo, primer troceo de transacción). Por ejemplo, la primera identificación de transacción de cadena de bloques puede ser un valor de troceo de la primera transacción de cadena de bloques. La primera identificación de transacción puede asociarse también a la entidad de registro. La cadena de bloques puede almacenar el resumen digital (por ejemplo, el valor de troceo de la información de autenticación), pero no almacenar detalles (por ejemplo, texto plano) de la información de autenticación para garantizar seguridad y privacidad, ya que los datos almacenados en cadena de bloques son visibles para diversos nodos de cadena de bloques. La primera identificación de transacción puede enviarse al sistema de servicio 113 y/o al sistema de almacenamiento 111. La cadena de bloques también puede almacenar la primera identificación de transacción. Por lo tanto, se anclan (asocian) la primera identificación de transacción de cadena de bloques y la entidad de registro. Consultando la primera identificación de transacción, puede recuperarse el resumen digital almacenado en cadena de bloques. Por ejemplo, cuando la primera identificación de transacción de cadena de bloques se envía al sistema de cadena de bloques 112 (por ejemplo, un nodo de cadena de bloques), el sistema de cadena de bloques 112 puede ejecutar el contrato de cadena de bloques para recuperar el resumen digital almacenado en cadena de bloques. Existen otras muchas otras formas adecuadas de almacenar y recuperar el resumen digital almacenado en la cadena de bloques. Un experto en la materia debería apreciar que las realizaciones de esta memoria descriptiva no se limitan al ejemplo anterior.
El método 200 puede repetirse para que múltiples usuarios completen el registro. Por lo tanto, la cadena de bloques puede terminar almacenando múltiples resúmenes digitales de datos de autenticación para que múltiples usuarios accedan a uno o más sistemas de servicio.
La Figura 3 ilustra un ejemplo de un método 300 para autenticar una cuenta de usuario, de acuerdo con diversas realizaciones. El método 300 puede implementarse mediante uno o más componentes del sistema 110 de la Figura 1A (por ejemplo, el sistema de cadena de bloques 112 y uno o más del sistema de servicio 113, el sistema de servicio 114 y similares). Como se ha descrito anteriormente, el sistema de servicio 113, el sistema de servicio 114 y similares pueden integrarse en el sistema de gestión de datos 118 que comprende uno o más dispositivos informáticos. Se pretende que las operaciones que se presentan a continuación sean ilustrativas. Dependiendo de la implementación, el método 300 puede incluir etapas adicionales, menos etapas o etapas alternativas realizadas en diversos órdenes o en paralelo.
En algunas realizaciones, en la etapa 311, una segunda entidad (la misma que o diferente de la primera entidad) puede intentar iniciar sesión en uno de los sistemas de servicio (por ejemplo, sistema de servicio 113) del sistema de gestión de datos 118 con la información de usuario descrita anteriormente (por ejemplo, datos de registro tales como combinación de cuenta de usuario y contraseña). La segunda entidad puede denominarse como un usuario.
En la etapa 312, el sistema de servicio puede ensamblar datos de autenticación. Ya que diferentes sistemas de servicio pueden requerir autenticación de diferentes conjuntos de datos. Los datos de autenticación pueden ensamblarse de acuerdo con el sistema de servicio particular. Por ejemplo, el sistema de servicio puede obtener información de autenticación (por ejemplo, cuenta de usuario y contraseña) y generar un resumen digital (por ejemplo, valor de troceo) de la información de autenticación. El sistema de almacenamiento 111 y/o el sistema de cadena de bloques 112 puede haber hecho público el proceso criptográfico (por ejemplo, SHA-256) usado para generar el resumen digital de información de autenticación en la etapa 232. Por lo tanto, el sistema de servicio puede usar el mismo proceso criptográfico para generar el resumen digital de la información de autenticación.
En la etapa 321, el sistema de servicio 113 puede transmitir los datos de autenticación ensamblados (por ejemplo, el resumen digital de la información de autenticación) al sistema de cadena de bloques 112. El sistema de servicio 113 puede generar el resumen digital de la información de autenticación.
Como alternativa, el sistema de cadena de bloques 112 (por ejemplo, un nodo de sistema de cadena de bloques 112) puede obtener directamente información de autenticación del usuario de inicio de sesión y generar el resumen digital de la información de autenticación.
En la etapa 322, el sistema de cadena de bloques 112 puede verificar si existe el usuario de inicio de sesión (si el usuario se ha registrado en el sistema de gestión de datos 118). Al hacer esto, el sistema de cadena de bloques 112 puede obtener uno o más resúmenes digitales almacenados en cadena de bloques de información de autenticación que corresponde a uno o más usuarios de la cadena de bloques. El sistema de cadena de bloques 112 puede determinar si el resumen digital de la información de autenticación del usuario de inicio de sesión coincide con cualquier resumen digital almacenado en cadena de bloques de información de autenticación comparando los correspondientes resúmenes digitales. Los resúmenes digitales pueden ser valores de troceo. Por lo tanto, el sistema de cadena de bloques 112 puede obtener autenticación del usuario de inicio de sesión basándose en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y el uno o más resúmenes digitales almacenados en la cadena de bloques.
En la etapa 323, el sistema de cadena de bloques 112 puede devolver un resultado de autenticación al sistema de servicio 113. Si hay una coincidencia en la etapa 322, el resultado de autenticación puede ser que existe el usuario de inicio de sesión. El usuario de inicio de sesión, por lo tanto, se autentica, y el inicio de sesión tiene éxito. La existencia del usuario de inicio de sesión significa que la cuenta se creó legítimamente y la cuenta de inicio de sesión es válida. Opcionalmente, si existe la coincidencia en la etapa 322, el resultado de autenticación puede incluir la identificación de transacción asociada al almacenamiento de la información de autenticación en la cadena de bloques. Si no hay ninguna coincidencia en la etapa 322, el resultado de autenticación puede ser que no existe el usuario de inicio de sesión, y se rechaza el intento de inicio de sesión.
Alternativa a las etapas 322 y 323, el sistema de servicio 113 puede recuperar el resumen digital almacenado en cadena de bloques de información de autenticación de acuerdo con la primera identificación de transacción. A continuación, el sistema de servicio 113 puede determinar si el resumen digital de la información de autenticación coincide con el resumen digital almacenado en cadena de bloques de la información de autenticación comparando los resúmenes digitales. Por lo tanto, el sistema de servicio 113 puede obtener autenticación del usuario de inicio de sesión basándose al menos en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y el uno o más resúmenes digitales almacenados en la cadena de bloques.
La Figura 4 ilustra un ejemplo de un método 400 para recuperar datos de usuario, de acuerdo con diversas realizaciones. El método 400 puede implementarse mediante uno o más componentes del sistema 110 de la Figura 1A (por ejemplo, el sistema de almacenamiento 111, el sistema de cadena de bloques 112 y uno o más del sistema de servicio 113, el sistema de servicio 114 y similares). Como se ha descrito anteriormente, el sistema de almacenamiento 111, el sistema de servicio 113, el sistema de servicio 114 y similares pueden integrarse en el sistema de gestión de datos 118 que comprende uno o más dispositivos informáticos. Se pretende que las operaciones que se presentan a continuación sean ilustrativas. Dependiendo de la implementación, el método 400 puede incluir etapas adicionales, menos etapas o etapas alternativas realizadas en diversos órdenes o en paralelo.
En algunas realizaciones, en la etapa 411, la segunda entidad puede iniciar una transacción financiera u otra operación a través de uno de los sistemas de servicio (por ejemplo, el sistema de servicio 113). Por ejemplo, después de iniciar sesión en una cuenta de compras en línea, la segunda entidad (por ejemplo, un usuario) puede iniciar una operación de pago para comprar un artículo. Para ejecutar la operación de pago, puede necesitarse que se proporcione cierta información detallada de usuario tal como el nombre, número de contacto y método de pago del usuario.
Las etapas 412, 413 y 414 son opcionales y pueden ser las mismas que las etapas 321, 322 y 323 descritas anteriormente. Pueden cumplirse dos propósitos realizando las etapas 412, 413 y 414. Primero, otra ronda de autenticación de identidad de usuario asegura que el usuario real está llevando a cabo la transacción y no por otra persona, tal como un extraño que se puso en un ordenador público en el que el usuario anterior completó el inicio sesión y olvidó cerrar sesión. Por lo tanto, se mejora adicionalmente la seguridad de datos y se reduce el riesgo de uso no autorizado de fondos personales. Segundo, se notifica al usuario que se recuperará información detallada de usuario. En la etapa 323 y/o etapa 414, el resultado de autenticación devuelto al sistema de servicio incluye la identificación de transacción asociada al almacenamiento de la información de autenticación en la cadena de bloques.
En la etapa 421, el sistema de servicio 113 puede obtener al menos parte de la información detallada de usuario desde el sistema de almacenamiento 111 de acuerdo con la identificación de transacción devuelta. Por ejemplo, ya que el sistema de almacenamiento 111 almacena información de entidad asociada a la identificación de transacción e información detallada de usuario, el sistema de servicio puede obtener información detallada de usuario del usuario de inicio de sesión para llevar a cabo la transacción financiera iniciada desde el sistema de almacenamiento 111 basándose en la identificación de transacción. La información detallada de usuario obtenida puede incluir, por ejemplo,
nombre del destinatario, nombre del pagador, número de contacto, dirección de envío, método de pago, etc.
En la etapa 422, el sistema de almacenamiento 111 puede devolver la al menos parte de información detallada de usuario al sistema de servicio 113.
En la etapa 431, el sistema de servicio 113 puede ejecutar la transacción financiera u otra operación basándose en la al menos parte de información detallada de usuario. Por ejemplo, el sistema de servicio 113 puede finalizar la transacción de compra usando la información detallada de usuario obtenida.
La Figura 5 ilustra un diagrama de flujo de un ejemplo de un método 510 para gestión de datos, de acuerdo con diversas realizaciones. El método 510 puede implementarse por uno o más componentes (por ejemplo, el sistema de gestión de datos 118) del sistema 110 o un nodo del sistema de cadena de bloques 112 de la Figura 1A. El método 510 puede implementarse por un sistema que comprende diversas máquinas de hardware y/o software. Por ejemplo, el sistema de gestión de datos 118 puede implementarse por uno o más sistemas o dispositivos (por ejemplo, ordenadores, servidores). El sistema que implementa el método 510 puede comprender uno o más procesadores y uno o más medios de almacenamiento legible por ordenador no transitorio (por ejemplo, una o más memorias) acoplados al uno o más procesadores y configurados con instrucciones ejecutables por el uno o más procesadores para provocar que el sistema (por ejemplo, el procesador) realice el método 510. Se pretende que las operaciones que se presentan a continuación sean ilustrativas. Dependiendo de la implementación, el método 510 puede incluir etapas adicionales, menos etapas o etapas alternativas realizadas en diversos órdenes o en paralelo. Un ejemplo de una implementación del método 510 se describe anteriormente con referencia a la Figura 2 a la Figura 4.
La etapa 511 incluye obtener información de autenticación de un usuario de inicio de sesión. En algunas realizaciones, la información de autenticación comprende una identificación de cuenta asociada al usuario de inicio de sesión y/o una contraseña asociada a la identificación de cuenta. Por ejemplo, pueden capturarse una cuenta y una contraseña introducidas por un usuario para inicio de sesión o solo la cuenta. Detalles adicionales pueden consultarse en la etapa 311 descrita anteriormente.
La etapa 512 incluye generar un resumen digital de la información de autenticación del usuario de inicio de sesión. En algunas realizaciones, el resumen digital de la información de autenticación comprende un valor de troceo de la información de autenticación. En algunas realizaciones, el resumen digital de la información de autenticación del usuario de inicio de sesión se genera por el mismo proceso criptográfico (por ejemplo, SHA-256) que el de los resúmenes digitales almacenados en la cadena de bloques. En algunas realizaciones, el resumen digital de la información de autenticación comprende un valor de troceo de la información de autenticación. Detalles adicionales pueden consultarse en la etapa 312 descrita anteriormente.
La etapa 513 incluye autenticar al usuario de inicio de sesión basándose en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques.
En algunas realizaciones, autenticar al usuario de inicio de sesión basándose en la comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques comprende: comparar el resumen digital de la información de autenticación del usuario de inicio de sesión con el uno o más resúmenes digitales almacenados en la cadena de bloques; y autenticar al usuario de inicio de sesión en respuesta a que el resumen digital de la información de autenticación es el mismo que uno de los resúmenes digitales almacenados en la cadena de bloques. Es decir, la autenticación del usuario de inicio de sesión puede realizarse por uno o más componentes (por ejemplo, el sistema de gestión de datos 118) del sistema 110.
En otras realizaciones, autenticar al usuario de inicio de sesión basándose en la comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques comprende: obtener un resultado de la comparación del uno o más nodos de la cadena de bloques, la comparación realizada por el uno o más nodos de la cadena de bloques; y autenticar al usuario de inicio de sesión en respuesta a que el resumen digital de la información de autenticación es el mismo que uno de los resúmenes digitales almacenados en la cadena de bloques de acuerdo con el resultado obtenido. Es decir, la autenticación del usuario de inicio de sesión puede realizarse por uno o más nodos del sistema de cadena de bloques 112. Por ejemplo, el sistema de gestión de datos 118 puede ordenar al uno o más nodos de la cadena de bloques que compare el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en la cadena de bloques a través de una consulta. La consulta puede producir un resultado de si el resumen digital de la información de autenticación del usuario de inicio de sesión coincide con cualquiera de los resúmenes digitales almacenados en la cadena de bloques.
Si la autenticación del usuario de inicio de sesión se realiza por el uno o más componentes del sistema 110 o por el uno o más nodos del sistema de cadena de bloques 112, puede obtenerse un resultado de que existe el usuario de inicio de sesión en el sistema (el inicio de sesión es válido) si el resumen digital de la información de autenticación coincide con cualquiera de los resúmenes digitales almacenados en cadena de bloques, y puede obtenerse un
resultado de que el usuario de inicio de sesión no existe en el sistema (el inicio de sesión no es válido) si el resumen digital de la información de autenticación no coincide con ninguno de los resúmenes digitales almacenados en cadena de bloques. Detalles adicionales pueden consultarse en las etapas 311, 312, 321, 322 y 323 descritas anteriormente.
En aún otras realizaciones, cada uno del uno o más resúmenes digitales almacenados en la cadena de bloques tiene una identificación de transacción (por ejemplo, troceo de transacción) asociada al almacenamiento del correspondiente resumen digital en la cadena de bloques; y el método comprende adicionalmente: en respuesta a autenticar satisfactoriamente al usuario de inicio de sesión, obtener una identificación de transacción asociada al almacenamiento de uno de resúmenes digitales almacenados en la cadena de bloques que coincide con el resumen digital de la información de autenticación. Detalles adicionales pueden consultarse en la etapa 323 o 414 descrita anteriormente. Basándose en la identificación de transacción, pueden recuperarse los resúmenes digitales almacenados.
En algunas realizaciones, antes de obtener la información de autenticación del usuario de inicio de sesión en la etapa 511, el método comprende adicionalmente: obtener información de autenticación de un usuario para el registro; generar un resumen digital basándose en la información de autenticación del usuario para el registro; y transmitir el resumen digital generado basándose en la información de autenticación del usuario para el registro en uno o más nodos de la cadena de bloques para almacenamiento en la cadena de bloques, en donde el resumen digital transmitido es uno del uno o más resúmenes digitales almacenados en la cadena de bloques. El usuario para el registro puede referirse a un usuario que se registra en un sistema de servicio. Mediante estas etapas, diversos usuarios pueden registrar su información de autenticación de las cuentas, los resúmenes digitales de los cuales pueden almacenarse de forma segura en la cadena de bloques y ser recuperables para autenticación futura.
En algunas realizaciones, obtener la información de autenticación del usuario para el registro comprende: recibir una petición de registro reenviada desde un sistema de servicio, en donde la petición de registro se solicita por el usuario para el registro; proporcionar una dirección de redireccionamiento (por ejemplo, URL) al sistema de servicio para que el sistema de servicio presente una página de registro que corresponde a la dirección de redireccionamiento; y recopilar la información de autenticación a través de la página de registro del usuario para el registro. Por lo tanto, la información de autenticación de diversos usuarios que intentan registrarse en diversos sistemas de servicios puede recopilarse por un sistema centralizado (por ejemplo, el sistema de almacenamiento 111), mejorando la seguridad para el almacenamiento de datos y liberando a los sistemas de servicio de recopilar y custodiar datos. En una realización, obtener la información de autenticación del usuario para el registro comprende además: obtener un permiso del usuario para el registro para usar la información de autenticación para autenticar al usuario para el registro para uno o más otros sistemas de servicio. Por lo tanto, el usuario no tiene que repetir el registro en múltiples sistemas de servicio. Detalles adicionales pueden consultarse en las etapas 211,212, 213, 221 y 231 descritas anteriormente.
En otras realizaciones, obtener información de autenticación del usuario para el registro comprende: obtener información de autenticación e información detallada de usuario del usuario para el registro; y almacenar la información detallada de usuario en un sistema de almacenamiento. Por ejemplo, la información detallada de usuario puede incluir información de contacto, información de dirección, información de identificación, etc. La información detallada de usuario puede usarse en la realización de diversas transacciones u otras operaciones ofrecidas por los sistemas de servicio. En una realización, el método comprende adicionalmente: obtener una petición para realizar una transacción del usuario de inicio de sesión; recuperar del sistema de almacenamiento información detallada de usuario del usuario de inicio de sesión para realizar la transacción; y ejecutar la transacción basándose al menos en la información detallada de usuario del usuario de inicio de sesión. Detalles adicionales pueden consultarse en las etapas 411, 421, 422 y 431 descritas anteriormente. Después de obtener la petición para realizar la transacción y antes de recuperar del sistema de almacenamiento la información detallada de usuario para realizar la transacción, el método comprende adicionalmente: obtener autenticación del usuario de inicio de sesión basándose en otra comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y el uno o más resúmenes digitales almacenados en la cadena de bloques. Detalles adicionales pueden consultarse en las etapas 412, 413 y 414 descritas anteriormente. Por ejemplo, un usuario puede iniciar sesión en una cuenta introduciendo información de autenticación en un sistema de servicio tal como un sitio de compras en línea. Después de navegar, el usuario puede decidir comparar ciertos bienes e iniciar de este modo una transacción. El sistema de servicio puede avisar opcionalmente al usuario para que introduzca la información de autenticación. A continuación, el sistema de servicio puede recuperar información detallada de usuario tal como dirección de envío, número de contacto e información de pago para realizar la transacción.
En algunas realizaciones, transmitir el resumen digital generado basándose en la información de autenticación del usuario para el registro en el uno o más nodos de la cadena de bloques para almacenamiento en la cadena de bloques comprende: escribir el resumen digital generado basándose en la información de autenticación del usuario para el registro en un contrato de cadena de bloques; y provocar que el uno o más nodos inicien una transacción de cadena de bloques para desplegar el contrato de cadena de bloques. Detalles adicionales pueden consultarse en las etapas 232, 233 y 241 descritas anteriormente.
La Figura 6 ilustra un diagrama de bloques de un ejemplo de un sistema informático de gestión de datos basada en cadena de bloques 610, de acuerdo con diversas realizaciones. El sistema 610 puede ser un ejemplo de una implementación de uno o más componentes (por ejemplo, el sistema de gestión de datos 118) del sistema 110 o un
nodo del sistema de cadena de bloques 112 de la Figura 1A. El método 510 puede implementarse mediante el sistema informático 610. El sistema informático 610 puede comprender uno o más procesadores y uno o más medios de almacenamiento legibles por ordenador no transitorios (por ejemplo, una o más memorias) acoplados al uno o más procesadores, y configurados con instrucciones ejecutables por el uno o más procesadores para hacer que el sistema o dispositivo (por ejemplo, el procesador) realicen el método 510. El sistema informático 610 puede comprender diversas unidades/módulos/submódulos que corresponden a las instrucciones (por ejemplo, instrucciones de software). En algunas realizaciones, el sistema informático 610 puede denominarse como un aparato de gestión de datos. El aparato de gestión de datos puede comprender un primer módulo de obtención 611 para obtener información de autenticación de un usuario de inicio de sesión; un módulo de generación 612 para generar un resumen digital de la información de autenticación del usuario de inicio de sesión; y un módulo de autenticación 613 para autenticar al usuario de inicio de sesión basándose en una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en una cadena de bloques.
Como se muestra, centralizando el almacenamiento de datos de usuario para múltiples sistemas de servicio, la privacidad de usuario puede protegerse apropiadamente con un estándar mejorado. Los datos de registro de usuario se recopilan a través de un sistema de almacenamiento común, que almacena información detallada de usuario, mientras que en la cadena de bloques se almacena un resumen digital de la información de autenticación. Por lo tanto, una representación de la información de autenticación puede mantenerse de forma segura y ser invocable por los sistemas de servicio para autenticar usuarios. La manipulación de la información de autenticación puede impedirse basándose en las reglas de consenso de cadena de bloques que incluye el troceo. La representación de resumen digital de la información de autenticación también puede ocultar información en texto plano para evitar una violación de información de usuario. A través de la consulta del sistema de almacenamiento, puede recuperarse información detallada de usuario para ejecutar transacciones o realizar otras operaciones. Por lo tanto, los usuarios pueden acceder de forma segura a múltiples sistemas de servicio sin experimentar procesos de registro repetitivos y sin temer las violaciones de datos.
Las técnicas descritas en este documento se implementan mediante uno o más dispositivos informáticos de fin especial. Los dispositivos informáticos de fin especial pueden ser sistemas informáticos de escritorio, sistemas informáticos de servidores, sistemas informáticos portátiles, dispositivos portátiles, dispositivos de interconexión en red o cualquier otro dispositivo o combinación de dispositivos que incorporan lógica cableada y/o de programa para implementar las técnicas. Los dispositivos informáticos de fin especial pueden implementarse como ordenadores personales, portátiles, teléfonos celulares, teléfonos de cámara, teléfonos inteligentes, asistentes digitales personales, reproductores de medios, dispositivos de navegación, dispositivos de correo electrónico, consolas de juegos, ordenadores de tableta, dispositivos ponibles o una combinación de los mismos. El dispositivo o dispositivos informáticos generalmente están controlados y coordinados por el software del sistema operativo. Los sistemas operativos convencionales controlan y planifican procesos informáticos para su ejecución, realizan gestión de memoria, proporcionan sistema de archivos, interconexión de redes, servicios de E/S y proporcionan una interfaz de usuario funcionalidad, tal como una interfaz de usuario gráfica ("GUI"), entre otras cosas. Los diversos sistemas, aparatos, medios de almacenamiento, módulos y unidades descritas en este documento pueden implementarse en los dispositivos informáticos de fin especial, o en uno o más chips informáticos del uno o más dispositivos informáticos de fin especial. En algunas realizaciones, las instrucciones descritas en este documento pueden implementarse en una máquina virtual en el dispositivo informático de fin especial. Cuando se ejecutan, las instrucciones pueden provocar que el dispositivo informático de fin especial realice diversos métodos descritos en este documento. La máquina virtual puede incluir un software, hardware o una combinación de los mismos. Por ejemplo, la máquina virtual puede incluir un software de Máquina Virtual de Ethereum (EVM) que proporciona el entorno de tiempo de ejecución para contratos inteligentes en Ethereum.
La Figura 7 es un diagrama de bloques que ilustra un sistema informático 700 en el que puede implementarse cualquiera de las realizaciones descritas en este documento. El sistema 700 puede implementarse en cualquiera de los nodos descritos en este documento y configurarse para realizar correspondientes etapas para implementar el contrato de cadena de bloques. El sistema informático 700 incluye un bus 702 u otro mecanismo de comunicación para comunicar información, y uno o más procesador o procesadores de hardware 704 acoplados con el bus 702 para procesar información. El procesador o procesadores de hardware 704 pueden ser, por ejemplo, uno o más microprocesadores de fin general.
El sistema informático 700 también incluye una memoria principal 706, tal como una memoria de acceso aleatorio (RAM), memoria caché y/u otros dispositivos de almacenamiento dinámico, acoplados al bus 702 para almacenar información e instrucciones ejecutables por el procesador o procesadores 704. La memoria principal 706 también puede usarse para almacenar variables temporales u otra información intermedia durante la ejecución de instrucciones ejecutables por el procesador o procesadores 704. Tales instrucciones, cuando se almacenan en medios de almacenamiento accesibles para el procesador o procesadores 704, representan el sistema informático 700 en una máquina de uso especial que se personaliza para realizar las operaciones especificadas en las instrucciones. El sistema informático 700 incluye adicionalmente una memoria de sólo lectura (ROM) 708 u otro dispositivo de almacenamiento estático acoplado al bus 702 para almacenar información estática e instrucciones para el procesador o procesadores 704. Se proporciona un dispositivo de almacenamiento 710, tal como un disco magnético, un disco óptico o una unidad de memoria USB (unidad flash), etc., y se acopla al bus 702 para almacenar información e
instrucciones.
El sistema informático 700 puede implementar las técnicas descritas en este documento usando lógica cableada personalizada, uno o más ASIC o FPGA, firmware y/o lógica de programa que en combinación con el sistema informático provoca o programa que el sistema informático 700 sea una máquina de fin especial. De acuerdo con una realización, las operaciones, métodos y procesos descritos en este documento son realizados por el sistema informático 700 en respuesta al procesador o procesadores 704 que ejecutan una o más secuencias de una o más instrucciones contenidas en la memoria principal 706. Tales instrucciones pueden leerse en la memoria principal 706 desde otro medio de almacenamiento, tal como el dispositivo de almacenamiento 710. La ejecución de las secuencias de instrucciones contenidas en la memoria principal 706 provoca que el procesador o procesadores 704 realicen las etapas de proceso descritas en este documento. En realizaciones alternativas, puede usarse circuitería cableada en lugar de o en combinación con instrucciones de software.
La memoria principal 706, la ROM 708 y/o el almacenamiento 710 pueden incluir medios de almacenamiento no transitorios. La expresión "medios no transitorios" y expresiones similares, como se usan en este documento, se refieren a medios que almacenan datos y/o instrucciones que provocan que una máquina opere de una manera específica, los medios excluyen las señales transitorias. Tales medios no transitorios pueden comprender medios no volátiles y/o medios volátiles. Los medios no volátiles incluyen, por ejemplo, discos ópticos o magnéticos, tales como el dispositivo 710 de almacenamiento. Los medios volátiles incluyen memoria dinámica, tal como la memoria principal 706. Las formas comunes de medios no transitorios incluyen, por ejemplo, un disquete, un disco flexible, un disco duro, disco de estado sólido, cinta magnética o cualquier otro medio de almacenamiento de datos magnético, un CD-ROM, cualquier otro medio de almacenamiento de datos óptico, cualquier medio físico con patrones de orificios, una RAM, una PROM y EPROM, una FLASH-EPROM, NVRAM, cualquier otro chip o cartucho de memoria y versiones en red de los mismos.
El sistema informático 700 también incluye una interfaz de red 718 acoplada al bus 702. La interfaz de red 718 proporciona un acoplamiento de comunicación de datos bidireccional a uno o más enlaces de red que están conectados a una o más redes locales. Por ejemplo, la interfaz de red 718 puede ser una tarjeta de red digital de servicios integrados (ISDN), módem por cable, módem por satélite o un módem para proporcionar una conexión de comunicación de datos a un correspondiente tipo de línea telefónica. Como otro ejemplo, la interfaz de red 718 puede ser una tarjeta de red de área local (LAN) para proporcionar una conexión de comunicación de datos a una LAN compatible (o componente de WAN para comunicarse con una WAN). También pueden implementarse enlaces inalámbricos. En una implementación cualquiera de este tipo, la interfaz de red 718 envía y recibe señales eléctricas, electromagnéticas u ópticas que transportan flujos de datos digitales que representan diversos tipos de información.
El sistema informático 700 puede enviar mensajes y recibir datos, incluyendo código de programa, a través de la red o redes, el enlace de red y la interfaz de red 718. En el ejemplo de Internet, un servidor podría transmitir un código solicitado para un programa de aplicación a través de la Internet, el ISP, la red local y la interfaz de red 718.
El código recibido puede ejecutarse por el procesador o procesadores 704 tal como se recibe, y/o almacenarse en el dispositivo de almacenamiento 710 u otro almacenamiento no volátil para su ejecución posterior.
Cada uno de los procesos, métodos y algoritmos descritos en las secciones anteriores puede incorporarse en y automatizarse total o parcialmente por módulos de código ejecutados por uno o más sistemas informáticos o procesadores informáticos que comprenden hardware informático. Los procesos y algoritmos pueden implementarse parcial o totalmente en circuitería específica de la aplicación.
Las diversas características y procesos descritos anteriormente pueden usarse de manera independiente unos de otros, o pueden combinarse de diversas formas. Se pretende que todas las posibles combinaciones y subcombinaciones pertenezcan al alcance de la presente memoria descriptiva. Además, en algunas implementaciones pueden omitirse ciertos bloques de método o proceso. Los métodos y procesos descritos en este documento tampoco están limitados a ninguna secuencia particular y los bloques o estados relacionados con los mismos pueden realizarse en otras secuencias que sean apropiadas. Por ejemplo, los bloques y estados descritos pueden realizarse en un orden distinto del específicamente divulgado, o múltiples bloques y estados pueden combinarse en un único bloque o estado. Los ejemplos de bloques o estados pueden realizarse en serie, en paralelo o en alguna otra manera. Los bloques o estados pueden añadirse a o eliminarse de las realizaciones divulgadas. Los ejemplos de sistemas y componentes descritos en este documento pueden configurarse de manera diferente a lo descrito. Por ejemplo, pueden añadirse elementos, eliminarse o reorganizarse en comparación con las realizaciones de divulgadas.
Las diversas operaciones de los métodos descritos en este documento pueden realizarse, al menos parcialmente, por un algoritmo. El algoritmo puede estar comprendido en códigos de programa o instrucciones almacenadas en una memoria (por ejemplo, un medio de almacenamiento legible por ordenador no transitorio descrito anteriormente). Tal algoritmo puede comprender un algoritmo de aprendizaje automático. En algunas realizaciones, un algoritmo de aprendizaje automático puede no programar explícitamente los ordenadores para que realicen una función, sino que puede aprender de los datos de entrenamiento para hacer un modelo de predicciones que realiza la función.
Las diversas operaciones de los métodos descritos en este documento pueden realizarse, al menos parcialmente, por uno o más procesadores que están configurados temporalmente (por ejemplo, por software) o configurados permanentemente para realizar las operaciones pertinentes. Ya estén configurados de forma temporal o permanente, dichos procesadores pueden constituir motores implementados por procesadores que operan para realizar una o más operaciones o funciones descritas en este documento.
De manera similar, los métodos descritos en este documento pueden implementarse al menos parcialmente por un procesador, siendo un procesador o procesadores particulares un ejemplo de hardware. Por ejemplo, al menos algunas de las operaciones de un método pueden realizarse por uno o más procesadores o motores implementados por procesador. Además, el uno o más procesadores también pueden operar para soportar la realización de las operaciones pertinentes en un entorno de "informática en la nube" o como un ''software como un servicio" (SaaS). Por ejemplo, al menos algunas de las operaciones pueden realizarse por un grupo de ordenadores (como ejemplos de máquinas que incluyen procesadores), siendo estas operaciones accesibles a través de una red (por ejemplo, la Internet) y a través de una o más interfaces apropiadas (por ejemplo, una Interfaz de Programa de Aplicación (API)).
La realización de ciertas de las operaciones puede distribuirse entre los procesadores, residiendo no únicamente dentro de una única máquina, sino desplegándose a través de un número de máquinas. En algunas realizaciones, los procesadores o motores implementados por procesador pueden ubicarse en una única ubicación geográfica (por ejemplo, dentro de un entorno doméstico, un entorno de oficina o una granja de servidores). En otras realizaciones, los procesadores o motores implementados por procesador pueden distribuirse a través de un número de ubicaciones geográficas.
A lo largo de esta memoria descriptiva, varias instancias pueden implementar componentes, operaciones o estructuras descritas como una única instancia. Aunque se ilustran y describen operaciones individuales de uno o más métodos como operaciones separadas, una o más de las operaciones individuales pueden realizarse simultáneamente, y nada requiere que las operaciones se realicen en el orden ilustrado. Las estructuras y la funcionalidad presentadas como componentes separados en las configuraciones pueden implementarse como una estructura o componente combinado. De forma similar, las estructuras y la funcionalidad presentadas como un único componente pueden implementarse como componentes separados. Estas u otras variaciones, modificaciones, adiciones y mejoras pertenecen al alcance de la materia objeto en este documento.
Aunque se ha descrito una vista general de la materia objeto con referencia a realizaciones específicas, pueden hacerse diversas modificaciones y cambios a estas realizaciones sin alejarse del alcance más amplio de las realizaciones de esta memoria descriptiva. La descripción detallada no debería tomarse en un sentido limitante, y el alcance de diversas realizaciones se define únicamente por las reivindicaciones adjuntas. Adicionalmente, los términos relacionados (tales como "primero", "segundo", "tercero" etc.) usados en este documento no indican ningún orden, altura o importancia, sino que se usan para distinguir un elemento de otro elemento. Adicionalmente, los términos "un", "una" y "pluralidad" no indican una limitación de cantidad en este documento, sino que indican la presencia de al menos uno de los artículos mencionados.
Claims (13)
1. Un método implementado en ordenador para gestión de datos, implementado por un primer sistema de servicio (113, 114), que comprende:
obtener (312) información de autenticación de un usuario de inicio de sesión para acceder al primer sistema de servicio;
generar un resumen digital de la información de autenticación del usuario de inicio de sesión;
transmitir (321) el resumen digital de la información de autenticación del usuario de inicio de sesión a uno o más nodos de una cadena de bloques, en donde la cadena de bloques es accesible para el primer sistema de servicio, un segundo sistema de servicio y un sistema de almacenamiento (111), independientes del primer y del segundo sistemas de servicio;
obtener (323) del uno o más nodos de la cadena de bloques un resultado de una comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y uno o más resúmenes digitales almacenados en la cadena de bloques, en donde:
la comparación la realizan el uno o más nodos de la cadena de bloques,
el uno o más resúmenes digitales comprenden un resumen digital de información de autenticación registrada del usuario de inicio de sesión para acceder al segundo sistema de servicio, comprendiendo dicha información de autenticación registrada al menos una de: i) una identificación de cuenta asociada al usuario de inicio de sesión; y ii) una contraseña asociada a dicha identificación de cuenta,
el uno o más resúmenes digitales se almacenan en la cadena de bloques después de verificación de consenso por una pluralidad de nodos de la cadena de bloques, y
el usuario de inicio de sesión no está registrado en el primer sistema de servicio; y
autenticar al usuario de inicio de sesión para acceder al primer sistema de servicio en respuesta a que el resumen digital de la información de autenticación del usuario de inicio de sesión es el mismo que uno del uno o más resúmenes digitales almacenados en la cadena de bloques de acuerdo con el resultado obtenido,
de tal modo que el primer y el segundo sistemas de servicio están configurados para usar de forma cruzada la información de autenticación registrada.
2. El método de la reivindicación 1, en el que:
la información de autenticación comprende la identificación de cuenta asociada al usuario de inicio de sesión.
3. El método de la reivindicación 2, en el que:
la información de autenticación comprende la contraseña asociada a la identificación de cuenta.
4. El método de cualquier reivindicación anterior, en el que:
el resumen digital de la información de autenticación comprende un valor de troceo de la información de autenticación.
5. El método de cualquier reivindicación anterior, en el que:
cada uno del uno o más resúmenes digitales almacenados en la cadena de bloques tiene una identificación de transacción asociada al almacenamiento del correspondiente resumen digital en la cadena de bloques; y el método comprende adicionalmente: en respuesta a autenticar satisfactoriamente al usuario de inicio de sesión, obtener una identificación de transacción asociada al almacenamiento de uno del uno o más resúmenes digitales almacenados en la cadena de bloques que coincide con el resumen digital de la información de autenticación.
6. El método de cualquier reivindicación anterior, que comprende además:
obtener del usuario de inicio de sesión una petición para realizar una operación de transacción;
recuperar, de un sistema de almacenamiento, información detallada de usuario del usuario de inicio de sesión de acuerdo con la identificación de transacción; y
ejecutar la transacción basándose al menos en la información detallada de usuario del usuario de inicio de sesión.
7. El método de la reivindicación 6, en el que la información de autenticación registrada del usuario de inicio de sesión comprende tanto la información de la cuenta como la contraseña asociada a la información de la cuenta, y la información detallada de usuario comprende una dirección e información de cuenta de pago.
8. El método de cualquier reivindicación anterior, antes de obtener la información de autenticación del usuario de inicio de sesión, comprendiendo adicionalmente el segundo sistema de servicio:
obtener información de autenticación del usuario de inicio de sesión;
generar un resumen digital basándose en la información de autenticación del usuario de inicio de sesión para el registro; y
transmitir (231) el resumen digital generado basándose en la información de autenticación del usuario de inicio de
sesión para el registro en uno o más nodos de la cadena de bloques para almacenamiento en la cadena de bloques, en donde el resumen digital transmitido es uno del uno o más resúmenes digitales almacenados en la cadena de bloques.
9. El método de la reivindicación 8, en el que obtener la información de autenticación del usuario de inicio de sesión comprende:
recibir (212), por un sistema de almacenamiento, una petición de registro reenviada desde el segundo sistema de servicio, en donde la petición de registro la solicita el usuario de inicio de sesión para el registro con el fin de acceder al segundo sistema de servicio;
proporcionar (213), por el sistema de almacenamiento, una dirección de redireccionamiento al segundo sistema de servicio para que dicho sistema de servicio presente una página de registro que corresponde a la dirección de redireccionamiento; y
recopilar (221), por el segundo sistema de servicio, la información de autenticación a través de la página de registro del usuario de inicio de sesión para el registro.
10. El método de la reivindicación 9, en el que obtener la información de autenticación del usuario de inicio de sesión comprende, además:
obtener un permiso del usuario de inicio de sesión para el registro para usar la información de autenticación para acceder al segundo sistema de servidor para autenticar al usuario de inicio de sesión para acceder al primer sistema de servidor.
11. El método de la reivindicación 6, después de obtener, del usuario de inicio de sesión, la petición para realizar la transacción y antes de recuperar del sistema de almacenamiento la información detallada de usuario del usuario de inicio de sesión para realizar la transacción, que comprende adicionalmente:
obtener autenticación del usuario de inicio de sesión basándose en otra comparación entre el resumen digital de la información de autenticación del usuario de inicio de sesión y el uno o más resúmenes digitales almacenados en la cadena de bloques.
12. Un sistema de gestión de datos, que comprende:
uno o más procesadores; y
una o más memorias legibles por ordenador acopladas a los uno o más procesadores y que tienen instrucciones almacenadas en las mismas que son ejecutables por los uno o más procesadores para realizar el método de cualquiera de las reivindicaciones 1 a 11.
13. Un aparato de gestión de datos, que comprende una pluralidad de módulos para realizar el método de cualquiera de las reivindicaciones 1 a 11.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2019/076473 WO2019101225A2 (en) | 2019-02-28 | 2019-02-28 | System and method for blockchain-based data management |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2871062T3 true ES2871062T3 (es) | 2021-10-28 |
Family
ID=66631220
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES19725899T Active ES2871062T3 (es) | 2019-02-28 | 2019-02-28 | Sistema y método para la gestión de datos basada en cadena de bloques |
Country Status (9)
Country | Link |
---|---|
US (2) | US11258778B2 (es) |
EP (1) | EP3602457B1 (es) |
JP (1) | JP2020511803A (es) |
KR (1) | KR102236341B1 (es) |
CN (1) | CN110753944B (es) |
ES (1) | ES2871062T3 (es) |
PH (1) | PH12019501434A1 (es) |
PL (1) | PL3602457T3 (es) |
WO (1) | WO2019101225A2 (es) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2583738B (en) * | 2019-05-07 | 2021-05-05 | Arm Ip Ltd | Content distribution integrity control |
US11520904B2 (en) * | 2019-08-27 | 2022-12-06 | Accenture Global Solutions Limited | AI-based blockchain hybrid consensus |
US11356460B2 (en) | 2019-12-31 | 2022-06-07 | Equifax Inc. | Secure online access control to prevent identification information misuse |
CN111353903B (zh) * | 2020-02-26 | 2021-07-06 | 广东工业大学 | 一种网络身份保护方法、装置及电子设备和存储介质 |
WO2021183042A1 (en) * | 2020-03-13 | 2021-09-16 | Doxa Holdings International Pte. Ltd. | System and method for managing entity user data |
EP4066475A4 (en) * | 2020-11-25 | 2022-12-21 | Alipay (Hangzhou) Information Technology Co., Ltd. | TRUSTED BLOCKCHAIN-BASED PLATFORM |
CN112950209B (zh) * | 2021-03-31 | 2023-05-09 | 苏州热工研究院有限公司 | 一种基于区块链的核电经验反馈信息管理方法和系统 |
CN113641664A (zh) * | 2021-07-13 | 2021-11-12 | 华中科技大学 | 一种适用于图式区块链的轻量化数据存储装置及方法 |
US20230072866A1 (en) * | 2021-09-03 | 2023-03-09 | Micro Focus Llc | Authentication based on transactions stored in blockchain |
US20230153872A1 (en) * | 2021-11-17 | 2023-05-18 | Net Alpha Financial Systems, Llc | Electronic ledger for decision-influencing factors |
CN114268472B (zh) * | 2021-12-10 | 2023-12-15 | 杭州溪塔科技有限公司 | 基于区块链的应用系统的用户认证方法及系统 |
CN114238866B (zh) * | 2021-12-13 | 2023-03-24 | 天翼爱音乐文化科技有限公司 | 一种数字音乐管理方法、系统、装置及存储介质 |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4657706B2 (ja) * | 2004-12-27 | 2011-03-23 | 株式会社野村総合研究所 | 権限管理システム、認証サーバ、権限管理方法および権限管理プログラム |
US8572704B2 (en) * | 2009-08-14 | 2013-10-29 | Mastercard International Incorporated | Methods and systems for user authentication |
JP2011145754A (ja) * | 2010-01-12 | 2011-07-28 | Nec Corp | シングルサインオンシステムと方法、認証サーバ、ユーザ端末、サービスサーバ、プログラム |
US20170149560A1 (en) | 2012-02-02 | 2017-05-25 | Netspective Communications Llc | Digital blockchain authentication |
JP5485356B1 (ja) | 2012-12-05 | 2014-05-07 | シャープ株式会社 | 情報処理装置、情報処理装置の制御方法、および制御プログラム。 |
US10756906B2 (en) | 2013-10-01 | 2020-08-25 | Kalman Csaba Toth | Architecture and methods for self-sovereign digital identity |
JP2015191508A (ja) * | 2014-03-28 | 2015-11-02 | 株式会社日立ソリューションズ | シングルサインオンシステム、シングルサインオン方法 |
US20160283920A1 (en) | 2015-03-28 | 2016-09-29 | Justin Fisher | Authentication and verification of digital data utilizing blockchain technology |
US10007913B2 (en) * | 2015-05-05 | 2018-06-26 | ShoCard, Inc. | Identity management service using a blockchain providing identity transactions between devices |
US9870562B2 (en) * | 2015-05-21 | 2018-01-16 | Mastercard International Incorporated | Method and system for integration of market exchange and issuer processing for blockchain-based transactions |
US10114970B2 (en) | 2015-06-02 | 2018-10-30 | ALTR Solutions, Inc. | Immutable logging of access requests to distributed file systems |
CA2992458A1 (en) | 2015-07-14 | 2017-01-19 | Fmr Llc | Computationally efficient transfer processing, auditing, and search apparatuses, methods and systems |
US20170091756A1 (en) | 2015-07-14 | 2017-03-30 | Fmr Llc | Point-to-Point Transaction Guidance Apparatuses, Methods and Systems |
EP4375908A1 (en) | 2015-10-17 | 2024-05-29 | Banqu, Inc. | Blockchain-based identity and transaction platform |
KR20170087048A (ko) * | 2016-01-19 | 2017-07-27 | (주) 아이씨티케이 | 식별키 생성 장치 및 그 관리 방법 |
TWI560555B (en) * | 2016-02-05 | 2016-12-01 | Synology Inc | Cloud service server and method for managing cloud service server |
EP3424179B1 (en) * | 2016-03-04 | 2022-02-16 | Ping Identity Corporation | Method and system for authenticated login using static or dynamic codes |
US10212145B2 (en) | 2016-04-06 | 2019-02-19 | Avaya Inc. | Methods and systems for creating and exchanging a device specific blockchain for device authentication |
EP3526721B1 (en) * | 2016-10-14 | 2024-08-14 | Nokia Technologies Oy | Method, device and system for validating sensitive user data transactions within trusted circle |
CN106534160B (zh) * | 2016-12-02 | 2020-02-21 | 江苏通付盾科技有限公司 | 基于区块链的身份认证方法及系统 |
CN107079036A (zh) | 2016-12-23 | 2017-08-18 | 深圳前海达闼云端智能科技有限公司 | 注册及授权方法、装置及系统 |
US10498541B2 (en) | 2017-02-06 | 2019-12-03 | ShocCard, Inc. | Electronic identification verification methods and systems |
KR101816651B1 (ko) * | 2017-02-14 | 2018-01-09 | 주식회사 코인플러그 | Utxo 기반 프로토콜의 블록체인 데이터베이스를 사용하여 서비스 제공 서버에 의하여 제공되는 서비스를 이용하기 위한 사용자의 로그인 요청에 대하여 pki 기반의 인증을 통해 로그인을 대행하는 방법 및 이를 이용한 서버 |
WO2018175666A1 (en) | 2017-03-21 | 2018-09-27 | Dappsters, LLC | Blockchain systems and methods |
US10102526B1 (en) * | 2017-03-31 | 2018-10-16 | Vijay K. Madisetti | Method and system for blockchain-based combined identity, ownership, integrity and custody management |
KR102414732B1 (ko) * | 2017-04-05 | 2022-06-28 | 삼성에스디에스 주식회사 | 블록체인 기반 디지털 아이덴티티 관리 방법 |
US10541806B2 (en) | 2017-07-13 | 2020-01-21 | International Business Machines Corporation | Authorizing account access via blinded identifiers |
CN107370730B (zh) | 2017-07-14 | 2020-06-02 | 创新先进技术有限公司 | 一种登录信息处理方法及设备 |
US10594487B2 (en) | 2017-07-27 | 2020-03-17 | International Business Machines Corporation | Password management and verification with a blockchain |
CN107819770A (zh) | 2017-11-15 | 2018-03-20 | 中国联合网络通信集团有限公司 | 基于区块链的医疗信息共享隐私保护方法及装置 |
US11868995B2 (en) | 2017-11-27 | 2024-01-09 | Nok Nok Labs, Inc. | Extending a secure key storage for transaction confirmation and cryptocurrency |
US10642967B2 (en) | 2017-11-28 | 2020-05-05 | American Express Travel Related Services Company, Inc. | Single sign-on solution using blockchain |
US11159537B2 (en) | 2017-11-30 | 2021-10-26 | Bank Of America Corporation | Multicomputer processing for data authentication and event execution using a blockchain approach |
US10949511B2 (en) | 2017-11-30 | 2021-03-16 | Bank Of America Corporation | Multicomputer processing for data authentication using a blockchain approach |
US9990504B1 (en) | 2017-12-18 | 2018-06-05 | Northern Trust Corporation | Systems and methods for generating and maintaining immutable digital meeting records within distributed network nodes |
CN108551437B (zh) * | 2018-03-13 | 2021-04-02 | 百度在线网络技术(北京)有限公司 | 用于认证信息的方法和装置 |
US10135835B1 (en) | 2018-03-19 | 2018-11-20 | Cyberark Software Ltd. | Passwordless and decentralized identity verification |
WO2019195691A1 (en) | 2018-04-05 | 2019-10-10 | Daniel Maurice Lerner | Discrete blockchain and blockchain communications |
US20190319948A1 (en) | 2018-04-11 | 2019-10-17 | Settleware Secure Services, Inc. | Remote authentication and identification proofing systems and methods |
US20190325431A1 (en) | 2018-04-23 | 2019-10-24 | SYB International Inc. | System and Method of Securely Exchanging Digital Token Currency for Goods and Services |
CN108694585A (zh) | 2018-07-24 | 2018-10-23 | 孔德键 | 复合型身份认证的网络交易系统 |
CN109274652B (zh) | 2018-08-30 | 2021-06-11 | 腾讯科技(深圳)有限公司 | 身份信息验证系统、方法及装置及计算机存储介质 |
CN109359464B (zh) * | 2018-10-29 | 2021-10-15 | 南通大学 | 一种基于区块链技术的无线安全认证方法 |
CN109285256A (zh) | 2018-10-31 | 2019-01-29 | 国网黑龙江省电力有限公司信息通信公司 | 基于区块链身份验证的机房进门权限给定方法 |
KR102237014B1 (ko) | 2019-02-28 | 2021-04-07 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 블록체인-기반 인증을 위한 시스템 및 방법 |
-
2019
- 2019-02-28 PL PL19725899T patent/PL3602457T3/pl unknown
- 2019-02-28 CN CN201980002615.9A patent/CN110753944B/zh active Active
- 2019-02-28 US US16/472,807 patent/US11258778B2/en active Active
- 2019-02-28 WO PCT/CN2019/076473 patent/WO2019101225A2/en unknown
- 2019-02-28 ES ES19725899T patent/ES2871062T3/es active Active
- 2019-02-28 EP EP19725899.9A patent/EP3602457B1/en active Active
- 2019-02-28 JP JP2019533600A patent/JP2020511803A/ja active Pending
- 2019-02-28 KR KR1020197018108A patent/KR102236341B1/ko active IP Right Grant
- 2019-06-20 PH PH12019501434A patent/PH12019501434A1/en unknown
-
2020
- 2020-01-06 US US16/735,499 patent/US20200145406A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
PL3602457T3 (pl) | 2021-10-25 |
EP3602457A4 (en) | 2020-05-27 |
EP3602457A2 (en) | 2020-02-05 |
US11258778B2 (en) | 2022-02-22 |
PH12019501434A1 (en) | 2020-02-10 |
KR20200105998A (ko) | 2020-09-10 |
CN110753944A (zh) | 2020-02-04 |
CN110753944B (zh) | 2023-07-04 |
WO2019101225A3 (en) | 2019-12-26 |
US20200145406A1 (en) | 2020-05-07 |
WO2019101225A2 (en) | 2019-05-31 |
US20200120084A1 (en) | 2020-04-16 |
EP3602457B1 (en) | 2021-04-07 |
KR102236341B1 (ko) | 2021-04-06 |
JP2020511803A (ja) | 2020-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2871062T3 (es) | Sistema y método para la gestión de datos basada en cadena de bloques | |
US11297064B2 (en) | Blockchain authentication via hard/soft token verification | |
US11200340B2 (en) | Method and system for managing personal information within independent computer systems and digital networks | |
US10880089B2 (en) | Methods and systems for universal storage and access to user-owned credentials for trans-institutional digital authentication | |
US11271926B2 (en) | System and method for temporary password management | |
US10735407B2 (en) | System and method for temporary password management | |
US11388174B2 (en) | System and method for securing a communication channel | |
CN110771120B (zh) | 用于基于区块链的认证的系统和方法 | |
US11003760B2 (en) | User account recovery techniques using secret sharing scheme with trusted referee | |
CN110046482A (zh) | 身份核实方法及其系统 | |
US20190303929A1 (en) | Using out-of-band mobile device possession attestation to release verified user identity attributes during internet transactions | |
US20170104748A1 (en) | System and method for managing network access with a certificate having soft expiration | |
Alilwit | Authentication based on blockchain | |
Umar | An Authentication of Significant security for accessing Password through Network System |