ES2810828T3 - Procedimiento y dispositivo para el procesamiento de una solicitud de servicio - Google Patents
Procedimiento y dispositivo para el procesamiento de una solicitud de servicio Download PDFInfo
- Publication number
- ES2810828T3 ES2810828T3 ES18770564T ES18770564T ES2810828T3 ES 2810828 T3 ES2810828 T3 ES 2810828T3 ES 18770564 T ES18770564 T ES 18770564T ES 18770564 T ES18770564 T ES 18770564T ES 2810828 T3 ES2810828 T3 ES 2810828T3
- Authority
- ES
- Spain
- Prior art keywords
- service
- node
- consensus
- data
- service data
- 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
-
- 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
- H04L9/3239—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 involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- 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/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- 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/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- 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/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- 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/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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
Un procedimiento para el procesamiento de una solicitud de servicio, comprendiendo el procedimiento: recibir (S201), mediante un nodo de consenso, una solicitud de servicio correspondiente a un servicio de destino, en el que la solicitud de servicio comprende datos de servicio del servicio de destino y un resumen de los datos de servicio, en el que el resumen de los datos de servicio comprende una cadena de caracteres generada en base a los datos de servicio, y en el que la solicitud de servicio se recibe desde un nodo sin consenso que inicia el servicio de destino; realizar (S202), mediante el nodo de consenso, una verificación de consenso a la solicitud de servicio en base a los datos de servicio y el resumen para determinar una autenticidad de los datos de servicio, en el que realizar la verificación de consenso verifica si los datos de servicio son consistentes con el resumen; ordenar (S203), mediante el nodo de consenso, a cada nodo sin consenso para almacenar el resumen en una cadena de bloques, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso; y adicionalmente, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso: enviar, mediante el nodo de consenso, los datos de servicio al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar, mediante el nodo de consenso, una instrucción de almacenamiento al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar, mediante el nodo de consenso, una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio, y enviar los datos de servicio a otro nodo de servicio para que el otro nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio, en el que el nodo de servicio es un nodo de cadena de bloques que participa en el servicio de destino; en el que: el nodo de consenso únicamente es responsable de realizar la verificación de consenso en las solicitudes de servicio y no sirve como un nodo de servicio para participar en el servicio de destino y no mantiene una cadena de bloques; y un nodo sin consenso no participa en la verificación de consenso, únicamente puede servir como un nodo de servicio para participar en el servicio de destino y mantiene la cadena de bloques.
Description
DESCRIPCIÓN
Procedimiento y dispositivo para el procesamiento de una solicitud de servicio
Campo técnico
La presente solicitud se refiere al campo de las tecnologías de la información y, en particular, a un procedimiento y a un dispositivo para el procesamiento de una solicitud de servicio.
Antecedentes
Una red de cadena de bloques también es conocida como una red distribuida de registro caracterizada por la descentralización y la transparencia. Una red de cadena de bloques incluye nodos de cadena de bloques, y cada nodo de cadena de bloques se usa para sincronizar una cadena de bloques.
En la tecnología existente, un procedimiento para el procesamiento de una solicitud de servicio es como sigue: Un determinado nodo de cadena de bloques que participa en un determinado servicio difunde una solicitud de servicio del servicio a cada nodo de consenso (un nodo de cadena de bloques responsable de la verificación de consenso) en una red de cadena de bloques. La solicitud de servicio incluye datos de servicio del servicio y un resumen de los datos de servicio. Los datos de servicio incluyen información detallada del servicio (por ejemplo, información privada del nodo de cadena de bloques que participa en el servicio). El resumen de los datos de servicio se genera en función de los datos de servicio y se puede utilizar para verificar la autenticidad de los datos de servicio. Después de que la solicitud de servicio pasa la verificación de consenso realizada por cada nodo de consenso, el nodo de consenso cifra los datos de servicio y almacena los datos de servicio cifrados y el resumen en una cadena de bloques, para evitar que un nodo de cadena de bloques irrelevante para el servicio obtenga cierta información privada en los de servicio del servicio cuando se sincroniza con la cadena de bloques. Sin embargo, no solo la carga computacional en cada nodo de consenso se incrementa en gran medida si cada nodo de consenso encripta datos de servicio incluidos en cada solicitud de servicio que pasa una verificación de consenso, también se reduce la eficiencia de realizar la verificación de consenso a la solicitud de servicio por cada nodo de consenso.
El documento de patente CN 106100981 A de Bubi (Beijing) Network Tech Co Ltd, titulado "Social network data interaction method and device (Procedimiento y dispositivo de interacción de datos de redes sociales)", publicado el 9 de noviembre de 2016, divulga un procedimiento y un dispositivo de interacción de datos de redes sociales. El procedimiento se usa en una red social compuesta de múltiples nodos de red entre pares. El procedimiento incluye las siguientes etapas: un primer nodo de red publica información en uno o más nodos de red en la red social; el primer nodo de red participa en la verificación de consenso de toda la red de la red social sobre la información publicada por los nodos de red en línea en la red social; y el primer nodo de red escribe la información publicada pasando la verificación de consenso de toda la red en una cadena de bloques de la red social.
El documento de patente CN 106 230 851 A de Centrin Cloud Finance & Data Tech Co Ltd, titulado “Data preservation method and system based on blockchain (Procedimiento y sistema de preservación de datos basado en cadena de bloques)", publicado el 14 de diciembre de 2016, divulga un procedimiento y un sistema de preservación de datos basados en una cadena de bloques. El procedimiento incluye: una terminal de usuario específica que envía un archivo de destino a ser preservado a una terminal de servidor central, la terminal de servidor central realiza una operación de preservación de datos en los datos de origen de un archivo de destino para adquirir una huella digital de datos preservados de los datos de origen; la terminal de servidor central almacena un ID de archivo de destino correspondiente al archivo de destino y los datos de origen, envía el ID de archivo de destino correspondiente al archivo de destino y la huella digital de datos conservados a otra terminal de usuario y la terminal de usuario específica se conecta con la cadena de bloques; y la otra terminal de usuario y la terminal de usuario específica se conectan con la cadena de bloques y reciben y almacenan el ID de archivo de destino correspondiente al archivo de destino y la huella digital de datos conservada. Cada terminal de usuario conectada con la cadena de bloques únicamente guarda la información de huella digital y no guarda los datos de origen, y la terminal de servidor central únicamente guarda los datos de origen y no guarda la información de huella digital; por lo tanto, los datos de origen y la huella digital están separados.
El documento de patente CN 102 724 044 A de Dongfang Jindun Technology Co Ltd, titulado “Electronic evidence verification and preservation method (Procedimiento de verificación y preservación de evidencia electrónica)", publicado el 10 de octubre de 2012, divulga un procedimiento de verificación y preservación de evidencia electrónica que incluye: recolectar evidencia electrónica; operar en la evidencia electrónica recopilada para generar una serie de resúmenes digitales que se utiliza para verificar si la evidencia electrónica recopilada fue falsificada; y generar un paquete de evidencia de acuerdo con la evidencia electrónica recolectada y cargar el paquete de evidencia a un servidor de centro de datos especificado para almacenar el paquete de evidencia. Un
usuario puede solicitar al servidor del centro de datos que presente un informe de verificación del paquete de evidencia.
El documento de patente KR 101 712726 B1 de Galaxia Communications Co Ltd, titulado “Method and system for verifying integrity and validity of contents using hash code (Procedimiento y sistema para verificar la integridad y la validez de los contenidos utilizando código hash)", publicado el 14 de marzo de 2017, divulga un procedimiento para verificar la integridad y validez del contenido utilizando un código hash que incluye generar, en un servidor, información adicional relacionada con el contenido basada en datos del contenido en respuesta al contenido que se está cargando; obtener un código hash de referencia correspondiente al contenido basado en la información adicional asociada con el contenido; almacenar el contenido en el que se inserta el código hash de referencia e información adicional relacionada con el contenido en una base de datos incluida en el servidor; distribuir el contenido, con el código hash de referencia insertado, en la terminal de usuario e información adicional relacionada con el contenido en respuesta a una solicitud de contenido recibida de una terminal de usuario en el que está preinstalada una aplicación de reproducción de contenido conectada con el servidor; generar, en la terminal de usuario, un código hash de comparación correspondiente al contenido distribuido basado en la información adicional relacionada con el contenido distribuido; extraer el código hash de referencia insertado en el contenido distribuido y compararlo con el código hash de comparación; y validar la integridad del contenido distribuido y si el contenido distribuido se distribuye a través del servidor en función del resultado de comparación.
Sumario
La invención se define por un procedimiento para el procesamiento de una solicitud de servicio de la reivindicación independiente 1 y un dispositivo correspondiente para el procesamiento de una solicitud de servicio de la reivindicación independiente 5. Detalles adicionales se definen en las reivindicaciones dependientes 2-4.
A partir de las soluciones técnicas proporcionadas en las implementaciones de la presente solicitud, puede apreciarse que, en las implementaciones de la presente solicitud, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, cada nodo de consenso almacena el resumen de los datos de servicio en la cadena de bloques, en lugar de almacenar los datos de servicio en la cadena de bloques. Como tal, el resumen de los datos de servicio se almacena en la cadena de bloques confiable, y la autenticidad de los datos de servicio aún se puede verificar. Además, los datos de servicio no se almacenan en la cadena de bloques, por lo que los datos de servicio no pueden ser obtenidos por un nodo de la cadena de bloques irrelevante para el servicio de destino. Por lo tanto, cada nodo de consenso ya no necesita consumir recursos informáticos para cifrar los datos de servicio, mejorando de esta forma la eficiencia de realizar la verificación de consenso en la solicitud de servicio por cada nodo de consenso.
Breve descripción de los dibujos
Para describir las soluciones técnicas en las implementaciones de la presente solicitud o en la tecnología existente con más claridad, la siguiente describe brevemente los dibujos adjuntos necesarios para la descripción de las implementaciones o la tecnología existente. De forma aparente, los dibujos que se acompañan en la siguiente descripción simplemente muestran algunas implementaciones de la presente solicitud, y una persona de habilidad ordinaria en la técnica todavía puede derivar otros dibujos de estos dibujos que se acompañan sin esfuerzos creativos.
La Figura 1 es un diagrama de flujo que ilustra un procedimiento para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud;
La Figura 2 es un diagrama de flujo que ilustra otro procedimiento para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud;
La Figura 3 es un diagrama esquemático que ilustra un sistema de cadena de bloques, de acuerdo con una implementación de la presente solicitud;
La Figura 4 es un diagrama esquemático que ilustra un dispositivo para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud; y
La Figura 5 es un diagrama esquemático que ilustra otro dispositivo para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud.
Descripción de implementaciones
Las implementaciones de la presente solicitud proporcionar un procedimiento y dispositivo para el procesamiento
de una solicitud de servicio.
Para hacer que una persona experta en la técnica entienda las soluciones técnicas en la presente solicitud mejor, la siguiente descripción describe de forma clara y amplia las soluciones técnicas en las implementaciones de la presente solicitud con referencia a los dibujos adjuntos, en las implementaciones de la presente solicitud. De forma aparente, las implementaciones descritas son simplemente algunas, pero no todas las implementaciones de la presente solicitud.
Las soluciones técnicas proporcionadas en las implementaciones de la presente solicitud se describen en detalle a continuación con referencia a los dibujos que se acompañan.
La Figura 1 es un diagrama de flujo que ilustra un procedimiento para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud. El procedimiento para el procesamiento de una solicitud de servicio incluye las siguientes etapas:
5101. Recibir una solicitud de servicio correspondiente a un servicio de destino.
El procedimiento puede ser ejecutado por un nodo de consenso. En una red de cadena de bloques, cada nodo de consenso es un nodo de cadena de bloques responsable de la verificación de consenso. Para el servicio de destino, un nodo de cadena de bloques que participa en el servicio de destino es un nodo de servicio. El nodo de servicio puede servir como un nodo de consenso para participar en la verificación de consenso en el servicio de destino.
En conclusión, el procedimiento es ejecutado por al menos un nodo de consenso responsable de la verificación de consenso, y el nodo de consenso puede ser además un nodo de servicio que participa en el servicio de destino. Esto no está limitado en la presente solicitud.
El nodo de consenso puede recibir una solicitud de servicio de radiodifusión por un nodo de servicio determinado (que puede ser un nodo de servicio que inicia un servicio de destino), o puede recibir una petición de servicio de difusión adicional mediante otro nodo de consenso (que es un nodo de manipulación para una solicitud de servicio) después de recibir la solicitud de servicio.
Vale la pena hacer notar que los nodos de consenso que participan en la verificación de consenso pueden recibir la solicitud de servicio de diferentes maneras. Algunos nodos de consenso pueden servir como nodos de manipulación para recibir directamente la solicitud de servicio enviada por el nodo de servicio, y algunos nodos de consenso pueden recibir la solicitud de servicio transmitida por el nodo de manipulación. Alternativamente, cada nodo de consenso puede recibir directamente una solicitud de servicio transmitida por un nodo de servicio. Esto no está limitado en la presente solicitud.
En esta implementación de la presente solicitud, la solicitud de servicio incluye datos de servicio del servicio de destino y un resumen de los datos de servicio.
La solicitud de servicio correspondiente al servicio de destino es solicitar cada nodo de consenso para realizar la verificación de consenso sobre los datos de servicio del servicio de destino y el resumen de los datos de servicio, específicamente, para verificar si los datos de servicio fueron falsificados (si los datos de servicio son consistentes con el resumen) y si los datos de servicio que no fueron falsificados son auténticos y confiables (por ejemplo, si el saldo de una cuenta es suficiente para el pago, por ejemplo, si existen gastos duplicados).
En el campo de las tecnologías de cadena de bloques, un resumen es una cadena de caracteres generados sobre la base de datos de servicio, un resumen se puede utilizar como una "huella digital de datos" de los datos de servicio y los datos de servicio y del resumen de los datos de servicio son siempre estrictamente consistentes entre sí. En otras palabras, los datos de servicio de texto sin formato no se pueden inferir en función del resumen, un ligero cambio en los datos de servicio provoca un cambio correspondiente en el resumen generado en función de los datos de servicio. El resumen de los datos de servicio se puede generar en función de una función hash unidireccional (por ejemplo, MD5 o SHA-1), o se puede generar en función de otra función, siempre que los datos de servicio no se puedan inferir en función del resumen.
5102. Realizar una verificación de consenso en la solicitud de servicio.
5103. Almacenar un resumen en una cadena de bloques en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso.
En esta implementación de la presente solicitud, cada nodo de consenso realiza una verificación de consenso a la solicitud de servicio después de recibir la solicitud de servicio. En respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso (en otras palabras, los datos de servicio no son falsificados
y los datos de servicio son auténticos y confiables), cada nodo de consenso almacena el resumen incluido en la solicitud de servicio en la cadena de bloques, en lugar de almacenar los datos de servicio en la cadena de bloques.
En esta implementación de la presente solicitud, cada nodo de consenso almacena el resumen verificado de los datos de servicio en la cadena de bloques. En otras palabras, la cadena de bloques respalda que los datos de servicio de destino son auténticos y confiables. Los datos de servicio no se almacenan en la cadena de bloques para evitar que un nodo de la cadena de bloques irrelevante para el servicio de destino vea los datos de servicio. Cuando la autenticidad de los datos de servicio declarada por un cierto nodo de servicio necesita ser verificada, un resumen se puede obtener de los datos de servicio declarado por el nodo de servicio y, a continuación, el resumen obtenido se compara con el resumen almacenado en la cadena de bloques. Si no es coherente, indica que los datos de servicio declarados por el nodo de servicio no son confiables. Dicho mecanismo se puede usar para evitar efectivamente un caso en el que un nodo de servicio niega el servicio de destino después de que el servicio de destino pasa la verificación de consenso realizada por cada nodo de consenso y es reconocido por la cadena de bloques.
En base al procedimiento para el procesamiento de una solicitud de servicio que se muestra en La Figura 1, en esta implementación de la presente solicitud, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, cada nodo de consenso almacena el resumen de los datos de servicio en la cadena de bloques, en lugar de almacenar los datos de servicio en la cadena de bloques. Como tal, el resumen de los datos de servicio se almacena en la cadena de bloques confiable, y la autenticidad de los datos de servicio aún se puede verificar. Además, los datos de servicio no se almacenan en la cadena de bloques, por lo que los datos de servicio no pueden ser obtenidos por un nodo de la cadena de bloques irrelevante para el servicio de destino. Por lo tanto, cada nodo de consenso ya no necesita consumir recursos informáticos para cifrar los datos de servicio, mejorando de esta forma la eficiencia de realizar la verificación de consenso en la solicitud de servicio por cada nodo de consenso.
Además, en esta implementación de la presente solicitud, a pesar de que los datos de servicio no se almacenan en la cadena de bloques, cada nodo de servicio puede almacenar los datos de servicio por sí mismo en su propia base de datos privada, ya que cada nodo de servicio se encuentra al tanto de los datos de servicio. Vale la pena hacer notar que cada nodo de cadena de bloques puede tener su propia base de datos privada, o los nodos de cadena de bloques pueden compartir una base de datos privada, pero cada nodo de cadena de bloques solo puede acceder a los datos relacionados. Como tal, los datos de servicio almacenados en la base de datos privada del nodo de servicio pueden ser preservados por el nodo de servicio. Además, los datos de servicio no se filtran a un nodo de cadena de bloques irrelevante para el servicio de destino (cada nodo de cadena de bloques está autorizado para acceder únicamente a los datos almacenados en la cadena de bloques, pero no puede acceder a una base de datos privada de otro nodo de cadena de bloques).
Por supuesto, los datos almacenados en la base de datos privada del nodo de cadena de bloques pueden no ser respaldados por cada nodo de consenso. Teóricamente, el nodo de cadena de bloques puede modificar los datos almacenados en la base de datos privada de sí mismo a voluntad. Sin embargo, la cadena de bloques almacena el resumen correspondiente al servicio de destino. En este caso, todas las partes que participan en el servicio de destino pueden reconocer los datos de servicio del servicio de destino propugnado por cualquier nodo de cadena de bloques (incluido el nodo de servicio) únicamente si los datos de servicio son consistentes con el resumen almacenado en la cadena de bloques.
En esta implementación de la presente solicitud, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, uno o más nodos de consenso puede ser responsable de enviar los datos de servicio al nodo de servicio para almacenar y ordenar al nodo de servicio que almacene los datos de servicio. El nodo de consenso, un ejecutor del presente procedimiento, puede realizar este trabajo en nombre de cada nodo de consenso.
Para ser específico, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, el nodo de consenso puede enviar los datos de servicio al menos a un nodo de servicio de modo que el nodo de servicio almacena los datos de servicio en la base de datos privada correspondiente al nodo de servicio.
O bien, el nodo de consenso puede enviar una instrucción de almacenamiento al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en la base de datos privada correspondiente al nodo de servicio.
O bien, el nodo de consenso puede enviar una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino, por lo que el nodo de servicio almacena los datos de servicio en la base de datos privada correspondiente al nodo de servicio, y envía los datos de servicio a otro nodo de servicio para que el otro nodo
de servicio almacene los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio.
Debido a que el nodo de servicio que inicia el servicio de destino puede transmitir los datos de servicio al otro nodo de servicio con antelación, el nodo de consenso a veces no tiene que enviar los datos de servicio al nodo de servicio, únicamente tiene que enviar una instrucción de almacenamiento de notificación o una instrucción de confirmación.
En conclusión, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, cada nodo de servicio puede aprender de esta información y optar por almacenar los datos de servicio por sí mismo. La presente solicitud no se limita a una implementación específica.
La Figura 2 es un diagrama de flujo que ilustra otro procedimiento para el procesamiento de una solicitud de servicio, de acuerdo con una implementación de la presente solicitud. El procedimiento para el procesamiento de una solicitud de servicio incluye las siguientes etapas:
5201. Un nodo de consenso recibe una solicitud de servicio correspondiente a un servicio de destino, en el que la solicitud de servicio incluye datos de servicio del servicio de destino y un resumen de los datos de servicio.
5202. Realizar una verificación de consenso en la solicitud de servicio basada en el servicio de datos y el resumen.
5203. Indicar a cada nodo sin consenso que almacene el resumen en una cadena de bloques en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso.
En esta implementación de la presente solicitud, el nodo de consenso puede ser únicamente responsable de la verificación de consenso, y no sirve como un nodo de servicio para participar en el servicio de destino. El nodo sin consenso no puede participar en la verificación de consenso, y puede servir solo como un nodo de servicio para participar en el servicio de destino.
En esta implementación de la presente solicitud, el nodo de consenso no puede mantener una cadena de bloques, y sólo es responsable de realizar la verificación de consenso a una solicitud de servicio. El nodo sin consenso mantiene una cadena de bloques y almacena, en la cadena de bloques, el resumen incluido en la solicitud de servicio que aprueba la verificación de consenso.
Para ser específicos, el nodo de consenso instruye a cada nodo sin consenso para que almacene el resumen en la cadena de bloques en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso.
Si cada nodo sin consenso ha recibido un resumen de difusión mediante un nodo sin consenso que inicia un servicio de destino antes de la verificación de consenso, el nodo sin consenso puede almacenar directamente el resumen en la cadena de bloques después de recibir una notificación del nodo de consenso.
Si el nodo sin consenso no obtiene el resumen antes de la verificación de consenso, el nodo de consenso puede enviar el resumen al nodo sin consenso después de que la solicitud de servicio pasa la verificación de consenso, de tal forma que el nodo sin consenso almacena el resumen en la cadena de bloques.
Además, el nodo de consenso puede enviar adicionalmente los datos de servicio al menos a un nodo de servicio de modo que el nodo de servicio almacena los datos de servicio en una base de datos privada correspondiente al nodo de servicio.
O, bien el nodo de consenso envía una instrucción de almacenamiento al menos a un nodo de servicio, de modo que el nodo de servicio almacena los datos de servicio en una base de datos privada correspondiente al nodo de servicio.
O bien, el nodo de consenso puede enviar una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino para que el nodo de servicio almacene los datos de servicio en la base de datos privada correspondiente al nodo de servicio, y puede enviar los datos de servicio a otro nodo de servicio por lo que el otro nodo de servicio almacena los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio.
Vale la pena hacer notar que el nodo de servicio es un nodo de cadena de bloques que participa en el servicio de destino.
La Figura 3 es un diagrama esquemático que ilustra un sistema de cadena de bloques, de acuerdo con una implementación de la presente solicitud. Como se muestra en la Figura 3, cada nodo de consenso (un nodo en blanco) es responsable de proporcionar un servicio de verificación de consenso para cada nodo sin consenso (un nodo sombreado). Cada nodo sin consenso mantiene una cadena de bloques y su propia base de datos privada. Cada nodo de consenso proporciona un servicio de consenso en el siguiente procedimiento: realizar la verificación de consenso en los datos de servicio incluida en una petición de servicio recibida y un resumen de los datos de servicio; y almacenar el resumen en una cadena de bloques después de que la solicitud de servicio pasa la verificación para que el nodo de servicio almacene los datos de servicio (el nodo de servicio no puede almacenar los datos de servicio).
Como tal, una red de consenso confiable proporciona un respaldo para cada servicio de destino aprueba la verificación de consenso, y el servicio de destino correspondiente al resumen almacenado en la cadena de bloques es auténtico y confiable para cada nodo de cadena de bloques en toda la red de cadena de bloques. Si surgen disputas entre nodos de servicio que participan en un mismo servicio de destino, un resumen correspondiente al servicio de destino y almacenado en la cadena de bloques siempre puede evitar la negación de nodos de servicio maliciosos.
En base al procedimiento para el procesamiento de una solicitud de servicio que se muestra en La Figura 1, una implementación de la presente solicitud además proporciona un dispositivo correspondiente para el procesamiento de una solicitud de servicio. Como se muestra en la Figura 4, el dispositivo para el procesamiento de una solicitud de servicio incluye un módulo de recepción 401, un módulo de verificación de consenso 402 y un módulo de almacenamiento 403.
El módulo de recepción 401 está configurado para recibir una solicitud de servicio que corresponde a un servicio de destino. La solicitud de servicio incluye datos de servicio del servicio de destino y un resumen de los datos de servicio.
El módulo de verificación de consenso 402 está configurado para realizar una verificación de consenso a la solicitud de servicio en base a los datos de servicio y el resumen.
El módulo de almacenamiento 403 está configurado para almacenar el resumen en una cadena de bloques en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso.
El dispositivo además incluye un módulo de envío 404 configurado para: en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso, enviar los datos de servicio al menos a un nodo de servicio de modo que el nodo de servicio almacena los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar una instrucción de almacenamiento al menos a un nodo de servicio para que el nodo emisor almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio, y enviar los datos de servicio a otro nodo de servicio para que el otro nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio.
El nodo de servicio es un nodo de cadena de bloques que participa en el servicio de destino.
En base al procedimiento para el procesamiento de una solicitud de servicio que se muestra en La Figura 2, una implementación de la presente solicitud además proporciona un dispositivo correspondiente para el procesamiento de una solicitud de servicio. Como se muestra en la Figura 5, el dispositivo para el procesamiento de una solicitud de servicio incluye un módulo de recepción 501, un módulo de consenso 502 y un módulo de almacenamiento 503.
El módulo de recepción 501 está configurada para recibir una solicitud de servicio que corresponde a un servicio de destino. La solicitud de servicio incluye datos de servicio del servicio de destino y un resumen de los datos de servicio.
El módulo de consenso 502 está configurado para realizar la verificación de consenso a la solicitud de servicio en base a los datos de servicio y el resumen.
El módulo de almacenamiento 503 está configurado para instruir a cada nodo sin consenso para almacenar el resumen en una cadena de bloques en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso.
El módulo de almacenamiento 503 está configurado para enviar el resumen a cada nodo sin consenso de manera que cada nodo sin consenso almacena el resumen en la cadena de bloques.
El dispositivo además incluye un módulo de envío 504 configurado para enviar los datos de servicio al menos a un nodo de servicio de modo que el nodo de servicio almacena los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar una instrucción de almacenamiento al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o enviar una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio, y enviar los datos de servicio a otro nodo de servicio para que el otro nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio.
El nodo de servicio es un nodo de cadena de bloques que participa en el servicio de destino.
En la década de 1990, ya sea una mejora técnica sea una mejora de hardware (por ejemplo, una mejora de una estructura de circuito, tal como un diodo, un transistor, o un conmutador) o una mejora del software (una mejora a un procedimiento) se puede distinguir claramente. Sin embargo, a medida que se desarrollan las tecnologías, las mejoras actuales de muchos procedimientos podrían considerarse como mejoras directas a las estructuras de circuitos de hardware. Un diseñador generalmente programa un procedimiento mejorado en un circuito de hardware, para obtener una estructura de circuito de hardware correspondiente. Por lo tanto, un procedimiento puede mejorarse utilizando un módulo de entidad de hardware. Por ejemplo, un dispositivo lógico programable (PLD) (por ejemplo, un arreglo de compuertas programables en campo (FPGA)) es un circuito integrado y el usuario determina la función lógica del PLD a través de la programación del dispositivo. El diseñador realiza la programación para "integrar" un sistema digital a un PLD sin solicitar a un fabricante de chips que diseñe y produzca un chip de circuito integrado de aplicación específica. Además, en la actualidad, en lugar de fabricar manualmente un chip de circuito integrado, este tipo de programación se implementa principalmente mediante el uso de software de "compilador lógico". La programación es similar a un compilador de software utilizado para desarrollar y escribir un programa. El código original debe ser escrito en un lenguaje de programación particular para la compilación. El lenguaje se conoce como lenguaje de descripción de hardware (HDL). Hay muchos tipos de HDL, como el lenguaje de expresión booleana avanzada (ABEL), el lenguaje de descripción de hardware Altera (AHDL), Confluence, el lenguaje de programación de la Universidad de Cornell (CUPL), HDCal, el lenguaje de descripción de hardware Java (JHDL), Lava, Lola, MyHDL, PALASM y Lenguaje de descripción de hardware Ruby (RHDL). El lenguaje de descripción de hardware de circuito integrado de muy alta velocidad (VHDL) y Verilog se usan más comúnmente en la actualidad. Una persona experta en la técnica también debe comprender que un circuito de hardware que implementa un procedimiento lógico puede obtenerse fácilmente una vez que el procedimiento se programa lógicamente utilizando los diversos lenguajes de descripción de hardware descritos y se programa en un circuito integrado.
Un controlador puede implementarse usando cualquier procedimiento apropiado. Por ejemplo, el controlador puede ser un microprocesador o un procesador, o un medio legible por ordenador que almacena código de programa legible por ordenador (como software o firmware) que puede ser ejecutado por el microprocesador o el procesador, una puerta lógica, un interruptor, un circuito integrado de aplicación específica (ASIC), un controlador lógico programable o un microprocesador incorporado. Los ejemplos del controlador incluyen, entre otros, los siguientes microprocesadores: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 y Silicone Labs C8051F320. El controlador de memoria también se puede implementar como parte de la lógica de control de la memoria. Una persona experta en la técnica también sabe que, además de implementar el controlador mediante el uso del código de programa legible por ordenador, la programación lógica se puede realizar en las etapas del procedimiento para permitir que el controlador implemente la misma función en formas de la puerta lógica, el interruptor, el circuito integrado aplicación específica, el controlador lógico programable, el microcontrolador incorporado, etc. Por lo tanto, el controlador puede ser considerado como un componente de hardware, y un dispositivo configurado para implementar diversas funciones en el controlador también puede ser considerado como una estructura en el componente de hardware. O el dispositivo configurado para implementar diversas funciones puede incluso ser considerado como un módulo de software que implementa el procedimiento y una estructura en el componente de hardware.
El sistema, dispositivo, módulo o unidad ilustrada en las implementaciones anteriores pueden implementarse mediante el uso de un chip de ordenador o una entidad, o puede ser implementado mediante el uso de un producto que tiene una cierta función. Un dispositivo de implementación típico es un ordenador. El ordenador puede ser, por ejemplo, un ordenador personal, un ordenador portátil, un teléfono celular, un teléfono con cámara, un teléfono inteligente, un asistente digital personal, un reproductor multimedia, un dispositivo de navegación, un dispositivo de correo electrónico, una consola de juegos, una tableta, un dispositivo usable, o una combinación de cualquiera de estos dispositivos.
Para facilitar la descripción, el dispositivo anterior se describe dividiendo funciones en varias unidades. Ciertamente, cuando se implementa la presente solicitud, se puede implementar una función de cada unidad en una o más piezas de software y/o hardware.
Un experto en la técnica entenderá que una implementación de la presente invención se puede proporcionar como un procedimiento, un sistema, o un producto de programa de ordenador. Por lo tanto, la presente invención puede usar una forma de implementaciones que utilizan únicamente hardware, implementaciones que utilizan únicamente software o implementaciones con una combinación de software y hardware. Además, la presente invención puede usar una forma de un producto de programa informático que se implementa en uno o más medios de almacenamiento utilizables por ordenador (que incluyen, entre otros, una memoria de disco, un CD-ROM, una memoria óptica, etc.) que incluyen código de programa utilizable por ordenador.
La presente invención se describe con referencia a los diagramas de flujo y/o diagramas de bloques del procedimiento, el dispositivo (sistema), y el producto de programa de ordenador basado en las implementaciones de la presente invención. Vale la pena hacer notar que las instrucciones del programa de ordenador se pueden usar para implementar cada procedimiento y/o cada bloque en los diagramas de flujo y/o los diagramas de bloque y una combinación de un procedimiento y/o un bloque en los diagramas de flujo y/o los diagramas de bloque. Estas instrucciones de programa de ordenador se pueden proporcionar para un ordenador de propósito general, un ordenador dedicado, un procesador incorporado o un procesador de otro dispositivo de procesamiento de datos programable para generar una máquina de modo que las instrucciones ejecutadas por el ordenador o el procesador del otro dispositivo programable de procesamiento de datos genera un dispositivo para implementar una función específica en uno o más procedimientos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Estas instrucciones de programa de ordenador se pueden almacenar en un equipo de memoria legible que puede dar instrucciones al ordenador o al dispositivo de procesamiento otros datos programables para el trabajo de una manera específica de manera que las instrucciones almacenadas en la memoria legible por ordenador generen un artefacto que incluye un dispositivo de instrucción. El dispositivo de instrucción implementa una función específica en uno o más procedimientos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
Estas instrucciones de programa informático pueden cargarse en el ordenador o en otro dispositivo de procesamiento de datos programables de manera que una serie de operaciones y operaciones y etapas se llevan a cabo en el ordenador o el otro dispositivo programable, generando de ese modo el procesamiento implementado por ordenador. Por lo tanto, las instrucciones ejecutadas en el ordenador u otro dispositivo programable proporcionan etapas para implementar una función específica en uno o más procedimientos en los diagramas de flujo y/o en uno o más bloques en los diagramas de bloques.
En una configuración típica, un dispositivo informático incluye uno o más procesadores (CPU), una o más interfaces de entrada/salida, una o más interfaces de red, y una o más memorias.
La memoria puede incluir una memoria no persistente, una memoria de acceso aleatorio (RAM), una memoria no volátil, y/u otra forma que se consiste en un medio legible por ordenador, por ejemplo, una memoria de sólo lectura (ROM) o una memoria flash (flash RAM). La memoria es un ejemplo del medio legible por ordenador. El medio legible por ordenador incluye medios persistentes, no persistentes, móviles, e inamovibles que puede almacenar información mediante el uso de cualquier procedimiento o tecnología. La información puede ser una instrucción legible por ordenador, una estructura de datos, un módulo de programa u otros datos. Los ejemplos de un medio de almacenamiento de ordenador incluyen, entre otros: una memoria de acceso aleatorio de parámetros (PRAM), una memoria de acceso aleatorio estática (SRAM), una memoria de acceso aleatorio dinámica (DRAM) u otro tipo de memoria de acceso aleatorio (RAM), una memoria de solo lectura (ROM), una memoria de solo lectura programable y borrable eléctricamente (EEPROM), una memoria flash u otra tecnología de memoria, una memoria de solo lectura de disco compacto (CD-ROM), un disco versátil digital (DVD) u otro almacenamiento óptico, un casete magnético, una cinta magnética, una cinta magnética/memoria de disco magnético u otro dispositivo de almacenamiento magnético, o cualquier otro medio sin transmisión que pueda usarse para almacenar información a la que puede acceder un dispositivo informático. En base a la definición de la presente especificación, el medio legible por ordenador no incluye medios transitorios legibles por ordenador (medios transitorios) tales como una señal de datos modulada y una portadora.
Vale la pena hacer notar además que, los términos "incluye", "comprende", o sus otras variantes están destinados a cubrir una inclusión no exclusiva, de modo que un procedimiento, un procedimiento, un producto o un dispositivo que incluye una lista de elementos que no solo incluye esos elementos, sino que también incluye otros elementos que no están expresamente listados, o incluye elementos inherentes a dicho procedimiento, producto o dispositivo. Sin más restricciones, un elemento precedido por "que incluye un..." no excluye la existencia de elementos idénticos adicionales en el procedimiento, producto o dispositivo que incluye el elemento.
El alcance de la protección está definido por las reivindicaciones.
Claims (5)
1. Un procedimiento para el procesamiento de una solicitud de servicio, comprendiendo el procedimiento: recibir (S201), mediante un nodo de consenso, una solicitud de servicio correspondiente a un servicio de destino, en el que la solicitud de servicio comprende datos de servicio del servicio de destino y un resumen de los datos de servicio, en el que el resumen de los datos de servicio comprende una cadena de caracteres generada en base a los datos de servicio, y en el que la solicitud de servicio se recibe desde un nodo sin consenso que inicia el servicio de destino;
realizar (S202), mediante el nodo de consenso, una verificación de consenso a la solicitud de servicio en base a los datos de servicio y el resumen para determinar una autenticidad de los datos de servicio, en el que realizar la verificación de consenso verifica si los datos de servicio son consistentes con el resumen;
ordenar (S203), mediante el nodo de consenso, a cada nodo sin consenso para almacenar el resumen en una cadena de bloques, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso; y
adicionalmente, en respuesta a la determinación de que la solicitud de servicio pasa la verificación de consenso:
enviar, mediante el nodo de consenso, los datos de servicio al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o
enviar, mediante el nodo de consenso, una instrucción de almacenamiento al menos a un nodo de servicio para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio; o
enviar, mediante el nodo de consenso, una instrucción de confirmación a un nodo de servicio que inicia el servicio de destino para que el nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al nodo de servicio, y enviar los datos de servicio a otro nodo de servicio para que el otro nodo de servicio almacene los datos de servicio en una base de datos privada correspondiente al otro nodo de servicio, en el que el nodo de servicio es un nodo de cadena de bloques que participa en el servicio de destino;
en el que:
el nodo de consenso únicamente es responsable de realizar la verificación de consenso en las solicitudes de servicio y no sirve como un nodo de servicio para participar en el servicio de destino y no mantiene una cadena de bloques; y
un nodo sin consenso no participa en la verificación de consenso, únicamente puede servir como un nodo de servicio para participar en el servicio de destino y mantiene la cadena de bloques.
2. El procedimiento de acuerdo con la reivindicación 1, en el que ordenar (S203) a cada nodo sin consenso que almacene el resumen en la cadena de bloques comprende:
enviar el resumen a cada nodo sin consenso para que cada nodo sin consenso almacene el resumen en la cadena de bloques.
3. El procedimiento de acuerdo con la reivindicación 1, en el que el resumen de los datos de servicio se genera en base a una función hash unidireccional.
4. El procedimiento de acuerdo con la reivindicación 1, en el que realizar (S202) la verificación de consenso comprende:
verificar si los datos de servicio que no son falsificados son auténticos y confiables.
5. Un dispositivo para el procesamiento de una solicitud de servicio, comprendiendo el dispositivo una pluralidad de módulos (401, 402, 403; 501, 502, 503) configurados para realizar el procedimiento de una cualquiera de las reivindicaciones 1 a 4.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710168014.8A CN107196989B (zh) | 2017-03-21 | 2017-03-21 | 一种业务请求的处理方法及装置 |
PCT/CN2018/079416 WO2018171539A1 (zh) | 2017-03-21 | 2018-03-19 | 一种业务请求的处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2810828T3 true ES2810828T3 (es) | 2021-03-09 |
Family
ID=59870908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES18770564T Active ES2810828T3 (es) | 2017-03-21 | 2018-03-19 | Procedimiento y dispositivo para el procesamiento de una solicitud de servicio |
Country Status (16)
Country | Link |
---|---|
US (1) | US10594489B2 (es) |
EP (1) | EP3531668B1 (es) |
JP (1) | JP6675518B1 (es) |
KR (1) | KR102190179B1 (es) |
CN (1) | CN107196989B (es) |
AU (1) | AU2018241037B2 (es) |
BR (1) | BR112019010368B1 (es) |
CA (1) | CA3046838C (es) |
ES (1) | ES2810828T3 (es) |
MX (1) | MX2019005946A (es) |
MY (1) | MY190550A (es) |
PH (1) | PH12019501132A1 (es) |
PL (1) | PL3531668T3 (es) |
RU (1) | RU2708952C1 (es) |
TW (1) | TWI671699B (es) |
WO (1) | WO2018171539A1 (es) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107196989B (zh) | 2017-03-21 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 一种业务请求的处理方法及装置 |
JP6951649B2 (ja) * | 2018-01-19 | 2021-10-20 | 日本電信電話株式会社 | ブロック検証装置、ブロック検証方法、及びプログラム |
CN110377239B (zh) * | 2018-04-27 | 2021-02-12 | 腾讯科技(深圳)有限公司 | 数据签名方法、装置、服务器、系统及存储介质 |
US11188920B2 (en) * | 2018-05-23 | 2021-11-30 | International Business Machines Corporation | Autocommit transaction management in a blockchain network |
CN108769230B (zh) * | 2018-06-06 | 2021-06-18 | 腾讯科技(深圳)有限公司 | 交易数据存储方法、装置、服务器及存储介质 |
JP2020024376A (ja) * | 2018-08-08 | 2020-02-13 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | データ保護方法、認証サーバ、データ保護システム及びデータ構造 |
US11531768B2 (en) * | 2018-08-08 | 2022-12-20 | Panasonic Intellectual Property Corporation Of America | Data protection method, authentication server, data protection system, and data structure |
CN110875893B (zh) * | 2018-08-29 | 2022-03-08 | 深圳启元信息服务有限公司 | 共识验证方法、校验节点及区块链系统 |
CN111080287B (zh) * | 2018-10-18 | 2023-06-16 | 华为技术有限公司 | 一种业务数据的处理方法、相关设备和系统 |
WO2019072270A2 (en) * | 2018-11-07 | 2019-04-18 | Alibaba Group Holding Limited | MANAGING PRIVATE TRANSACTIONS ON BLOCK CHAIN NETWORKS BASED ON A WORKFLOW |
CN110009498A (zh) | 2019-03-29 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 基于区块链的资源分配方法和装置 |
EP3779755B1 (en) * | 2019-08-14 | 2023-09-13 | Fujitsu Limited | A computer-implemented method for cross-chain-interoperability |
CN110705935B (zh) * | 2019-09-27 | 2022-04-12 | 北京京东振世信息技术有限公司 | 一种物流单据的处理方法和装置 |
CN110753105B (zh) * | 2019-10-17 | 2022-09-06 | 中国建设银行股份有限公司 | 数据传输方法、装置、系统、电子设备及存储介质 |
CN110717759A (zh) * | 2019-10-18 | 2020-01-21 | 成都九宽科技有限公司 | 一种跨链锚定的区块链异构系统 |
US12099997B1 (en) | 2020-01-31 | 2024-09-24 | Steven Mark Hoffberg | Tokenized fungible liabilities |
CN111786952B (zh) * | 2020-05-29 | 2023-03-17 | 中国银联股份有限公司 | 区块链系统的共识方法、装置、设备及介质 |
CN111680282B (zh) * | 2020-06-01 | 2021-08-24 | 腾讯科技(深圳)有限公司 | 基于区块链网络的节点管理方法、装置、设备及介质 |
CN111523901B (zh) * | 2020-07-03 | 2020-12-04 | 支付宝(杭州)信息技术有限公司 | 基于拜占庭容错算法的区块链的共识方法、装置及系统 |
CN113434910B (zh) * | 2020-09-23 | 2024-07-16 | 支付宝(杭州)信息技术有限公司 | 一种业务数据上链方法及装置 |
CN112507363A (zh) * | 2020-12-15 | 2021-03-16 | 平安科技(深圳)有限公司 | 基于区块链的数据监管方法、装置、设备及存储介质 |
CN114928449B (zh) * | 2022-02-23 | 2023-09-01 | 上海交通大学 | 支撑能源系统优化问题求解与验证的区块链共识方法 |
CN115018622B (zh) * | 2022-05-25 | 2024-03-26 | 平安银行股份有限公司 | 业务重构系统的验证方法、装置、设备及可读存储介质 |
KR102694371B1 (ko) * | 2022-12-23 | 2024-08-14 | 주식회사 이큐비알 홀딩스 | 상업 서비스에 유용한 거래 처리 속도 및 확장성, 보안성을 보장하기 위한 비경쟁적 합의 알고리즘과 마이크로 체인 아키텍처를 이용한 블록 체인 시스템 및 방법 |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102724044A (zh) * | 2012-07-04 | 2012-10-10 | 东方金盾科技有限公司 | 电子证据验证保全方法 |
WO2014056185A1 (en) * | 2012-10-12 | 2014-04-17 | Empire Technology Development Llc | Notarization based on currency transactions |
GB2509055B (en) * | 2012-12-11 | 2016-03-23 | Gurulogic Microsystems Oy | Encoder and method |
WO2015106285A1 (en) * | 2014-01-13 | 2015-07-16 | Yago Yaron Edan | Verification method |
US20160164884A1 (en) * | 2014-12-05 | 2016-06-09 | Skuchain, Inc. | Cryptographic verification of provenance in a supply chain |
WO2016161073A1 (en) * | 2015-03-31 | 2016-10-06 | Nasdaq, Inc. | Systems and methods of blockchain transaction recordation |
KR101712726B1 (ko) * | 2015-04-27 | 2017-03-14 | 갤럭시아커뮤니케이션즈 주식회사 | 해시 코드를 이용하는 콘텐츠의 무결성 및 유효성 검증 방법 및 시스템 |
AU2016100394A4 (en) * | 2016-04-11 | 2016-05-19 | McAlister, Gary MR | Blockchain Digital Mining Asset/Commodity innovation for Private Placement, High Yield Investment, Tier 1,2,3, MTN buy/sell Structured financial Trading Programs and Platforms. |
CN105956923B (zh) * | 2016-04-20 | 2022-04-29 | 上海如鸽投资有限公司 | 资产交易系统以及资产的数字化认证和交易方法 |
CN105975868A (zh) * | 2016-04-29 | 2016-09-28 | 杭州云象网络技术有限公司 | 一种基于区块链的证据保全方法及装置 |
CN106100981B (zh) * | 2016-08-22 | 2019-08-23 | 布比(北京)网络技术有限公司 | 社交网络数据交互方法及装置 |
CN106230851B (zh) * | 2016-08-29 | 2019-12-13 | 中金云金融(北京)大数据科技股份有限公司 | 基于区块链的数据保全方法及系统 |
CN106534273B (zh) * | 2016-10-31 | 2022-04-15 | 中金云金融(北京)大数据科技股份有限公司 | 区块链元数据存储系统及其存储方法与检索方法 |
US20180218003A1 (en) * | 2017-01-30 | 2018-08-02 | General Electric Company | Ephemeral blockchain data structure |
US10621150B2 (en) * | 2017-03-05 | 2020-04-14 | Jonathan Sean Callan | System and method for enforcing the structure and content of databases synchronized over a distributed ledger |
CN107196989B (zh) * | 2017-03-21 | 2019-08-09 | 阿里巴巴集团控股有限公司 | 一种业务请求的处理方法及装置 |
CN107239479B (zh) * | 2017-03-28 | 2020-03-13 | 创新先进技术有限公司 | 一种基于区块链的数据存储以及查询的方法及装置 |
-
2017
- 2017-03-21 CN CN201710168014.8A patent/CN107196989B/zh active Active
- 2017-11-22 TW TW106140504A patent/TWI671699B/zh active
-
2018
- 2018-03-19 MY MYPI2019002856A patent/MY190550A/en unknown
- 2018-03-19 JP JP2019527524A patent/JP6675518B1/ja active Active
- 2018-03-19 CA CA3046838A patent/CA3046838C/en active Active
- 2018-03-19 EP EP18770564.5A patent/EP3531668B1/en active Active
- 2018-03-19 BR BR112019010368-6A patent/BR112019010368B1/pt active IP Right Grant
- 2018-03-19 PL PL18770564T patent/PL3531668T3/pl unknown
- 2018-03-19 MX MX2019005946A patent/MX2019005946A/es active IP Right Grant
- 2018-03-19 ES ES18770564T patent/ES2810828T3/es active Active
- 2018-03-19 RU RU2019115516A patent/RU2708952C1/ru active
- 2018-03-19 KR KR1020197014630A patent/KR102190179B1/ko active IP Right Grant
- 2018-03-19 WO PCT/CN2018/079416 patent/WO2018171539A1/zh unknown
- 2018-03-19 AU AU2018241037A patent/AU2018241037B2/en active Active
-
2019
- 2019-05-21 PH PH12019501132A patent/PH12019501132A1/en unknown
- 2019-07-10 US US16/507,822 patent/US10594489B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
AU2018241037A1 (en) | 2019-06-06 |
CN107196989A (zh) | 2017-09-22 |
RU2708952C1 (ru) | 2019-12-12 |
US20190334725A1 (en) | 2019-10-31 |
MY190550A (en) | 2022-04-27 |
CA3046838C (en) | 2020-06-23 |
CA3046838A1 (en) | 2018-09-27 |
KR20190083652A (ko) | 2019-07-12 |
JP2020512606A (ja) | 2020-04-23 |
WO2018171539A1 (zh) | 2018-09-27 |
CN107196989B (zh) | 2019-08-09 |
PL3531668T3 (pl) | 2020-11-02 |
BR112019010368A2 (pt) | 2019-11-12 |
AU2018241037B2 (en) | 2020-05-07 |
BR112019010368B1 (pt) | 2021-12-14 |
EP3531668B1 (en) | 2020-07-29 |
EP3531668A1 (en) | 2019-08-28 |
PH12019501132A1 (en) | 2019-12-02 |
KR102190179B1 (ko) | 2020-12-18 |
TWI671699B (zh) | 2019-09-11 |
TW201835835A (zh) | 2018-10-01 |
EP3531668A4 (en) | 2019-11-27 |
US10594489B2 (en) | 2020-03-17 |
MX2019005946A (es) | 2019-08-29 |
JP6675518B1 (ja) | 2020-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2810828T3 (es) | Procedimiento y dispositivo para el procesamiento de una solicitud de servicio | |
US11438165B2 (en) | Method and apparatus for processing transaction requests | |
KR102074116B1 (ko) | 블록체인 노드 통신 방법 및 장치 | |
ES2866161T3 (es) | Método y aparato para la comunicación entre nodos de la cadena de bloques | |
JP2020508593A (ja) | コンセンサス検証方法およびデバイス | |
BR112019007128A2 (pt) | método para processamento de negócios e aparelho para processamento de negócios | |
TW201832100A (zh) | 區塊鏈系統、資料儲存方法及裝置 | |
ES2871028T3 (es) | Método y aparato de autenticación de solicitud de servicio |