BR112019013367B1 - Método para a verificação de consenso e dispositivo para a verificação de consenso - Google Patents

Método para a verificação de consenso e dispositivo para a verificação de consenso Download PDF

Info

Publication number
BR112019013367B1
BR112019013367B1 BR112019013367-4A BR112019013367A BR112019013367B1 BR 112019013367 B1 BR112019013367 B1 BR 112019013367B1 BR 112019013367 A BR112019013367 A BR 112019013367A BR 112019013367 B1 BR112019013367 B1 BR 112019013367B1
Authority
BR
Brazil
Prior art keywords
transaction
node
data
valid
consensus
Prior art date
Application number
BR112019013367-4A
Other languages
English (en)
Other versions
BR112019013367A2 (pt
Inventor
Qiang Tang
Original Assignee
Advanced New Technologies Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced New Technologies Co., Ltd. filed Critical Advanced New Technologies Co., Ltd.
Publication of BR112019013367A2 publication Critical patent/BR112019013367A2/pt
Publication of BR112019013367B1 publication Critical patent/BR112019013367B1/pt

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Technology Law (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A presente invenção se refere a um método e dispositivo para a verificação de consenso. Um nódulo regulador é responsável por verificar se uma solicitação de transação é válida. Se a solicitação de transação for válida, o nódulo regulador gera um resumo com base nos dados especificados nos dados da transação e envia o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso para a verificação de consenso. Cada nódulo de consenso armazena o resumo e os dados não especificados em uma blockchain após a verificação de consenso ser bem-sucedida. Como tal, o nódulo de consenso não recebe os dados especificados e, por conseguinte, não armazena os dados especificados na blockchain. Como resultado, os dados especificados não estão descritos. Além disso, o resumo pode ser utilizado para verificar se os dados especificados que não estão armazenados na blockchain estão adulterados.

Description

CAMPO DA INVENÇÃO
[001]A presente invenção refere-se ao campo das tecnologias de blockchain e, em especial, a um método e a um dispositivo para a verificação de consenso.
ANTECEDENTES DA INVENÇÃO
[002] Uma rede de blockchain também é referida como uma rede de contabilidade distribuída e é caracterizada através da descentralização, abertura e transparência. Cada nódulo de blockchain sincroniza com uma blockchain. A rede de blockchain inclui os nódulos de blockchain. Cada nódulo de blockchain pode iniciar uma solicitação de transação e participar da verificação de consenso na solicitação de transação.
[003] Um método para a verificação de consenso existente é o seguinte: Um nódulo de blockchain que participa de uma de transação transmite uma solicitação de transação para a transação para cada nódulo de consenso em uma rede de blockchain. O nódulo de consenso é um nódulo de blockchain responsável pela verificação de consenso, e a solicitação de transação inclui os dados da transação da transação. Cada nódulo de consenso armazena os dados da transação em uma blockchain após a verificação de consenso realizada através de cada nódulo de consenso na solicitação de transação bem-sucedida.
[004] No entanto, cada nódulo de blockchain pode sincronizar com a blockchain para obter os dados da transação de cada transação armazenada na blockchain. Consequentemente, a privacidade incluída nos dados da transação de um nódulo de blockchain que participa da transação é fácil de ser descrita.
DESCRIÇÃO DA INVENÇÃO
[005]As realizações da presente invenção fornecem um método e dispositivo para a verificação de consenso, para aliviar o problema de que, ao utilizar um método para a verificação de consenso existente, a privacidade de um nódulo de blockchain que participa de uma transação é fácil de ser descrita.
[006] Para aliviar o problema técnico anterior, as realizações da presente invenção são implementadas da seguinte maneira:
[007] Uma realização da presente invenção fornece um método para a verificação de consenso, em que o método inclui o seguinte: obter, através de um nódulo regulador, uma solicitação de transação, em que a solicitação de transação inclui os dados da transação e uma assinatura de, pelo menos, um nódulo de transação; determinar se a solicitação de transação é válida com base nos dados da transação e em uma assinatura de cada nódulo de transação; e se a solicitação de transação for válida, gerar um resumo com base nos dados especificados incluídos nos dados da transação e enviar o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso, de maneira que cada nódulo de consenso realize a verificação de consenso.
[008] Uma realização da presente invenção fornece um dispositivo para a verificação de consenso, em que o dispositivo inclui o seguinte: um primeiro módulo de aquisição, configurado para obter uma solicitação de transação, em que a solicitação de transação inclui os dados da transação e uma assinatura de, pelo menos, um nódulo de transação; e um módulo de determinação e processamento, configurado para determinar se a solicitação de transação é válida com base nos dados da transação e em uma assinatura de cada nódulo de transação; e se a solicitação de transação for válida, gerar um resumo com base nos dados especificados incluídos nos dados da transação e enviar o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso, de maneira que cada nódulo de consenso realize a verificação de consenso.
[009] Pode ser observado a partir das soluções técnicas fornecidas nas realizações da presente invenção que, nas realizações da presente invenção, o nódulo regulador é responsável por verificar se a solicitação de transação é válida. Se a solicitação de transação for válida, o nódulo regulador gera o resumo com base nos dados especificados nos dados da transação e envia o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso para a verificação de consenso. Cada nódulo de consenso armazena o resumo e os dados não especificados em uma blockchain após a verificação de consenso ser bem-sucedida. Dessa maneira, o nódulo de consenso não recebe os dados especificados e, por conseguinte, não armazena os dados especificados na blockchain. Como resultado, os dados especificados não estão descritos. Além disso, o resumo pode ser utilizado para verificar se os dados especificados que não estão armazenados na blockchainestão adulterados.
BREVE DESCRIÇÃO DOS DESENHOS
[010] Para descrever mais claramente as soluções técnicas nas realizações da presente invenção ou na tecnologia existente, o que se segue descreve resumidamente os desenhos anexos necessários para descrever as realizações ou a tecnologia existente. Aparentemente, os desenhos anexos na descrição seguinte mostram apenas algumas realizações da presente invenção, e um técnico no assunto ainda pode derivar outros desenhos destes desenhos anexos sem esforços criativos.
[011]A Figura 1 é um fluxograma que ilustra um método para a verificação de consenso, de acordo com uma realização da presente invenção.
[012]A Figura 2 é um diagrama esquemático que ilustra uma rede de blockchain, de acordo com uma realização da presente invenção.
[013]A Figura 3 é um diagrama esquemático que ilustra uma rede de blockchain, de acordo com uma realização da presente invenção.
[014]A Figura 4 é um diagrama esquemático que ilustra um dispositivo para a verificação de consenso, de acordo com uma realização da presente invenção.
DESCRIÇÃO DE REALIZAÇÕES DA INVENÇÃO
[015]As realizações da presente invenção fornecem um método e um dispositivo para a verificação de consenso.
[016] Para tornar possível que um técnico no assunto compreenda melhor as soluções técnicas na presente invenção, o que se segue de maneira clara e abrangente descreve as soluções técnicas nas realizações da presente invenção com referência aos desenhos anexos nas realizações da presente invenção. Aparentemente, as realizações descritas são meramente apenas algumas, mas não todas as realizações da presente invenção. Todas as outras realizações obtidas por um técnico comum no assunto com base nas realizações da presente invenção sem esforços criativos devem cair no âmbito de proteção da presente invenção.
[017]As soluções técnicas fornecidas nas realizações da presente invenção estão descritas em detalhes abaixo com referência às figuras anexas.
[018]A Figura 1 é um fluxograma que ilustra um método para a verificação de consenso, de acordo com uma realização da presente invenção. O método inclui as seguintes etapas.
[019] S101. Um nódulo regulador obtém uma solicitação de transação.
[020] O método é realizado através do nódulo regulador. O nódulo regulador é um nódulo de blockchain responsável por regular as transações. O nódulo regulador possui a confiança pública e os itens verificados através do nódulo regulador são reconhecidos pelos nódulos de blockchain em toda a rede.
[021] Em uma rede de blockchain, um nódulo de blockchain que participa de uma transação é um nódulo de transação, e um nódulo de blockchain que participa de um consenso é um nódulo de consenso. Vale a pena enfatizar que um nódulo de blockchain pode ser um nódulo de transação ou um nódulo de consenso, e pode não apenas participar de uma transação, mas também participar da verificação de consenso na transação.
[022]A Figura 2 é um diagrama esquemático que ilustra uma rede de blockchain, de acordo com uma realização da presente invenção. Conforme mostrado na Figura 2, um nódulo de blockchain preto é um nódulo regulador. Um nódulo de blockchain branco é um nódulo de consenso. Um nódulo sombreado é um nódulo de transação e também pode participar da verificação de consenso.
[023] Na presente realização da presente invenção, a solicitação de transação inclui os dados da transação e uma assinatura de, pelo menos, um nódulo de transação. O nódulo de transação pode ser um nódulo de blockchain que paga um ativo em uma transação. Um nódulo de blockchain que aceita um ativo em uma transação também pode ser o nódulo de transação descrito na presente invenção. Para facilitar a descrição, as descrições são fornecidas abaixo utilizando um exemplo de que o nódulo de transação é um nódulo de blockchain que paga um ativo em uma transação. Além disso, a presente invenção não estabelece os limites em relação se o nódulo de transação também é um nódulo de consenso ao mesmo tempo.
[024] Os dados da transação são os dados detalhados de uma transação, como uma identidade do nódulo de transação, conteúdo detalhado de um ativo envolvido na transação, um número de ativo de um ativo envolvido na transação e um endereço de conta do nódulo de transação.
[025] Na presente realização da presente invenção, a assinatura do nódulo de transação é gerada através do nódulo de transação para os dados da transação e é utilizada como uma prova e registra que o nódulo de transação aprova os dados da transação. Se um nódulo de transação aprovar os dados da transação de uma transação, em que o nódulo de transação participa, para reservar uma prova e um registro da transação posteriormente, o nódulo de transação, em primeiro lugar, pode construir um resumo dos dados da transação com base em um algoritmo de resumo e ainda processar o resumo dos dados da transação por meio de um algoritmo de assinatura e uma chave privada para gerar uma assinatura do nódulo de transação.
[026]Vale a pena observar que pode existir uma pluralidade de algoritmos de resumo, mas uma característica comum dos algoritmos de resumo é que o texto simples não pode ser inversamente derivado de um resumo obtido através do cálculo de texto simples. Se existir alguma modificação no texto simples, um resumo obtido através do cálculo do texto simples modificado também poderá ser diferente. Pode ser observado que o resumo dos dados da transação pode ser utilizado como um identificador exclusivo dos dados da transação para identificar cada transação. Por conseguinte, se o nódulo de transação assinar os dados da transação, pode indicar que o nódulo de transação aprova os dados da transação e, consequentemente, o nódulo de transação pode ser impedido de negar os dados da transação posteriormente.
[027] Na presente realização da presente invenção, na solicitação de transação, a assinatura do nódulo de transação corresponde a um número de ativo de um ativo utilizado através do nódulo de transação nos dados da transação. O nódulo de transação utiliza a assinatura para declarar o número do ativo do ativo utilizado através do nódulo de transação. O nódulo de transação possibilita a assinatura do nódulo de transação e o número do ativo utilizado através do nódulo de transação para formar uma estrutura de dados específica, por exemplo, "número do ativo 001 (assinatura A)"; ou pode utilizar outro método para estabelecer um relacionamento de mapeamento entre a assinatura e o número do ativo utilizado através do nódulo de transação. Certamente, o número do ativo que corresponde à assinatura do nódulo de transação não é necessariamente um número do ativo realmente pertencente ao nódulo de transação. Em outras palavras, o nódulo de transação pode utilizar de maneira maliciosa e fraudulenta um número de ativo pertencente a outro nódulo. A maneira como evitar o risco é uma parte da descrição a seguir de verificar a validade da solicitação de transação.
[028] Na presente realização da presente invenção, uma solicitação de transação pode incluir as assinaturas de uma pluralidade de nódulos de transação. Isto é, qualquer nódulo de transação pode coletar as assinaturas de nódulos de transação, gerar uma solicitação de transação e enviar a solicitação de transação ao nódulo regulador. Um método para coletar as assinaturas pode ser o seguinte: Os dados da transação são transmitidos entre os nódulos de transação em ordem, cada nódulo de transação anexa uma assinatura do nódulo de transação aos dados da transação e, opcionalmente, um nódulo de transação final, em que os dados da transação são transmitidos. gera uma solicitação de transação. De maneira alternativa, um nódulo de transação pode receber uma assinatura enviada através de outro nódulo de transação e, em seguida, gerar uma solicitação de transação. Para facilitar a descrição, as descrições são fornecidas abaixo utilizando um exemplo de que a solicitação de transação inclui as assinaturas de uma pluralidade de nódulos de transação.
[029] S102. Determinar se a solicitação de transação é válida com base nos dados da transação e em uma assinatura de cada nódulo de transação, e executar a etapa S103 se a solicitação de transação for válida ou executar a etapa S104 se a solicitação de transação for inválida.
[030] Na presente realização da presente invenção, existe uma pluralidade de métodos para verificar a validade da solicitação de transação. Por exemplo, no Caso 1, o nódulo regulador pode obter uma capacidade de crédito de cada nódulo de transação que assina com base em um registro de crédito de cada nódulo de transação que é armazenado através do nódulo regulador e determina que a solicitação de transação é inválida se a capacidade de crédito de cada nódulo de transação for inferior a uma pontuação predeterminada ou determina que a solicitação de transação é válida se uma pontuação da capacidade de crédito de cada nódulo de transação não for inferior a uma pontuação predeterminada. Por outro exemplo, no Caso 2, o nódulo regulador, de maneira alternativa, pode utilizar os dados da transação, a assinatura de cada nódulo de transação e uma chave pública de cada nódulo de transação para verificar se o nódulo de transação adultera os dados da transação ou, de maneira fraudulenta, utiliza um ativo de outra pessoa. Certamente, pode existir outros casos de verificação da validade da solicitação de transação. Os detalhes são omitidos no presente para simplificar.
[031] No Caso 2, o nódulo regulador pode manter a chave pública de cada nódulo de transação antecipadamente, ou a solicitação de transação pode incluir a chave pública de cada nódulo de transação. A chave pública de cada nódulo de transação pode ser utilizada para descriptografar a assinatura do nódulo de transação para obter o resumo dos dados da transação, por conseguinte, verificando se um signatário adultera os dados da transação. Se um resultado de descriptografia obtido através do nódulo regulador ao descriptografar a assinatura do nódulo de transação utilizando a chave pública fornecida pelo nódulo de transação for inconsistente com o resumo dos dados da transação, isso indica que o nódulo de transação gera a assinatura utilizando, de maneira fraudulenta, um chave privada de outro nódulo de blockchain ou o nódulo de transação é adulterado com os dados da transação e, por conseguinte, a solicitação de transação é inválida. A validade da solicitação de transação ainda pode ser verificada se nenhum nódulo de transação for adulterado com os dados da transação.
[032] Na presente realização da presente invenção, a verificação de validade posterior pode incluir o seguinte: verificar se o nódulo de transação utiliza, de maneira fraudulenta, um ativo de outra pessoa. Em uma rede de blockchain geral, um número de ativo de um ativo pertencente a cada nódulo de blockchainé associado a uma chave pública do nódulo de blockchain, e a chave pública que serve como um recurso de identidade descrito externamente do nódulo de blockchain pode identificar exclusivamente uma identidade do nódulo de blockchain. Em outras palavras, um número de ativo associado a uma chave pública de um nódulo de blockchainé um número de ativo realmente pertencente ao nódulo de blockchain.
[033] Por conseguinte, na presente realização da presente invenção, o nódulo regulador determina um número de ativo de um ativo realmente pertencente a cada nódulo de transação com base na chave pública de cada nódulo de transação, e em seguida, compara o número do ativo (o número do ativo utilizado através do nódulo de transação) que corresponde à assinatura do nódulo de transação nos dados da transação com o número do ativo realmente pertencente ao nódulo de transação para determinar se o nódulo de transação utiliza, de maneira maliciosa e fraudulenta, um número de ativo pertencente a outro nódulo de blockchain. A solicitação de transação é inválida se, pelo menos, um nódulo de transação utilizar, de maneira maliciosa e fraudulenta, um número de ativo pertencente a outro nódulo de blockchain. A solicitação de transação é válida se o número do ativo utilizado por cada nódulo de transação for o número de ativo pertencente ao nódulo de transação.
[034] Em conclusão, pode ser observado que, no Caso 2, que o nódulo regulador verifica a validade da solicitação de transação, a verificação é realizada de maneira progressiva, e os dois aspectos seguintes precisam ser confirmados sucessivamente para determinar se o a solicitação de transação é válida: 1. Os dados da transação não são adulterados. 2. O nódulo de transação não utiliza, de maneira fraudulenta, um número de ativo pertencente a outro nódulo de blockchain.
[035] S103. Gerar um resumo de privacidade com base nos dados de privacidade nos dados da transação e enviar o resumo de privacidade e os dados de não privacidade nos dados da transação para cada nódulo de consenso, de maneira que cada nódulo de consenso realize a verificação de consenso.
[036] Na presente realização da presente invenção, os dados especificados podem ser os dados de privacidade, e os dados não especificados podem ser os dados de não privacidade. Os dados de privacidade incluem a privacidade do nódulo de transação e podem ser especificados através do nódulo de transação e notificados ao nódulo regulador; ou pode ser especificado através do nódulo regulador. Por exemplo, os dados de privacidade podem incluir uma identidade do nódulo de transação, o conteúdo detalhado de um ativo e um endereço de conta e assim por diante, que são considerados como privacidade do nódulo de transação.
[037] Conforme descrito acima, o texto simples não pode ser inversamente derivado do resumo do texto simples. Por conseguinte, após o resumo ser gerado para os dados de privacidade, o resumo pode ser armazenado em uma blockchainconfiável e os dados de privacidade podem ser ocultados, de maneira que uma prova confiável e um registro dos dados de privacidade possam ser reservados e os dados de privacidade podem ser protegidos.
[038]Após receber o resumo e os dados de não privacidade, cada nódulo de consenso pode realizar a verificação de consenso com base nos dados de não privacidade, por exemplo, pode verificar se existem despesas duplicadas com base em um número de ativo nos dados de não privacidade. Se a verificação de consenso for bem-sucedida, o resumo da privacidade e os dados de não privacidade serão armazenados na blockchain. A validade da solicitação de transação é verificada e endossada pelo nódulo regulador antecipadamente.
[039] Como tal, a verificação de consenso em relação à transação é concluída. O resumo armazenado na blockchain pode ser utilizado para verificar se os dados de privacidade reivindicados através de um nódulo de transação são verdadeiros, para solucionar uma disputa entre os nódulos de transação.
[040] Na presente realização da presente invenção, o nódulo regulador ainda pode enviar a assinatura de cada nódulo de transação para cada nódulo de consenso, de maneira que após a verificação de consenso realizada por cada nódulo de consenso na transação ser bem-sucedida, o nódulo de consenso também armazena a assinatura de cada nódulo de transação na blockchain para evitar que cada nódulo de transação posteriormente negue a assinatura.
[041]Além disso, na presente realização da presente invenção, o nódulo regulador pode instruir, pelo menos, um nódulo de transação para armazenar os dados da transação ou os dados especificados incluídos nos dados da transação, se a solicitação de transação for válida. Certamente, de maneira alternativa, o nódulo regulador pode instruir, pelo menos, um nódulo de transação para armazenar os dados da transação ou os dados especificados em um banco de dados privado que corresponde ao nódulo de transação após a verificação de consenso realizada por cada nódulo de consenso na transação bem-sucedida e após o resumo ser armazenado na blockchain. Em conclusão, cada nódulo de transação armazena os dados especificados ou os dados da transação por si só. As realizações não são limitadas na presente invenção.
[042] Embora o nódulo de transação possa adulterar de maneira privada os dados especificados armazenados pelo nódulo de transação, o resumo armazenado na blockchain pode ser utilizado para verificar a autenticidade dos dados especificados a qualquer momento, por conseguinte, evitando o risco causado por adulteração privada os dados especificados pelo nódulo de transação.
[043]A Figura 3 é um diagrama esquemático que ilustra uma rede de blockchain, de acordo com uma realização da presente invenção. Conforme mostrado na Figura, na rede de blockchain, cada nódulo de blockchainmantém uma blockchain e cada nódulo de blockchain possui seu próprio banco de dados privado para armazenar os dados de privacidade de uma transação da qual o nódulo de blockchain participa. Para a transação A, apenas um banco de dados privado de um nódulo de blockchain (um nódulo de transação) que participa da transação A armazena os dados de privacidade que correspondem à transação A e um banco de dados privado de um nódulo de blockchain (um nódulo de não transação) que não participa da transação A não armazena os dados de privacidade que correspondem à transação A.
[044] S104. Rejeitar a solicitação de transação.
[045] De acordo com o método para a verificação de consenso mostrado na Figura 1, o nódulo regulador é responsável por verificar se a solicitação de transação é válida. Se a solicitação de transação for válida, o nódulo regulador gera o resumo com base nos dados especificados nos dados da transação e envia o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso para a verificação de consenso. Cada nódulo de consenso armazena o resumo e os dados não especificados na blockchainapós a verificação de consenso ser bem-sucedida. Como tal, o nódulo de consenso não recebe os dados especificados e, por conseguinte, não armazena os dados especificados na blockchain. Como resultado, os dados especificados não estão descritos. Além disso, o resumo pode ser utilizado para verificar se os dados especificados que não estão armazenados na blockchain estão adulterados.
[046]Além disso, para uma rede de blockchainespecífica, tal como uma rede de blockchain do consórcio, cada nódulo de blockchain na rede de blockchain do consórcio possui um certificado digital emitido por uma autoridade de certificação, em que o certificado digital é utilizado para endossar uma identidade real do nódulo de blockchain. O certificado digital inclui uma identidade (ID) do nódulo de blockchain e uma chave pública. É importante ressaltar que, diferentemente de uma rede de blockchain geral, na rede de blockchain do consórcio, um número de ativo pertencente ao nódulo de blockchainestá associado à ID do nódulo de blockchain.
[047] Em um cenário de invenção da rede de blockchain do consórcio, o nódulo regulador pode obter um certificado digital do nódulo de transação e determinar se a solicitação de transação é válida com base no certificado digital do nódulo de transação, da assinatura de cada nódulo de transação e dos dados da transação.
[048] O nódulo regulador pode descriptografar a assinatura de cada nódulo de transação com base em uma chave pública incluída no certificado digital do nódulo de transação; e ao determinar que um resultado de descriptografia que corresponde a cada nódulo de transação é o mesmo que o resumo dos dados da transação, determinar um número de ativo que corresponda a uma identidade com base na identidade incluída no certificado digital de cada nódulo de transação e utilizar o número do ativo como um número de ativo pertencente ao nódulo de transação; e determinar se a solicitação de transação é válida com base no número de ativo pertencente de cada nódulo de transação, na assinatura de cada nódulo de transação e nos dados da transação; ou determinar que a solicitação de transação é inválida ao determinar que um resultado de descriptografia que corresponde a, pelo menos, um nódulo de transação é diferente do resumo dos dados da transação.
[049]Além disso, o nódulo regulador pode determinar um número de ativo que corresponde à assinatura de cada nódulo de transação nos dados da transação com base na assinatura do nódulo de transação e utilizar o número de ativo como um número de ativo utilizado através do nódulo de transação; determinar que o nódulo de transação é inválido se o número de ativo pertencente ao nódulo de transação não incluir, pelo menos, um número do ativo utilizado através do nódulo de transação; ou determinar que o nódulo de transação é válido se o número de ativo pertencente ao nódulo de transação incluir todos os números de ativos utilizados pelo nódulo de transação; e determinar que a solicitação de transação é inválida quando, pelo menos, um nódulo de transação é inválido; ou determinar que a solicitação de transação é válida quando todos os nódulos de transação são válidos.
[050] Que o nódulo de transação é válido significa que o nódulo de transação não comete um ato ilegal malicioso (tal como utilizar, de maneira fraudulenta, uma assinatura de outra pessoa ou utilizar, de maneira fraudulenta, um ativo de outra pessoa). Quando é determinado que, pelo menos, um número de ativo utilizado através de um nódulo de transação em uma transação atual não é um número de ativo pertencente ao nódulo de transação, pode ser considerado que o nódulo de transação comete um ato ilegal de utilizar, de maneira fraudulenta, um número de ativo de outro pessoa e, consequentemente, é inválido.
[051] Em outras palavras, no cenário de invenção da rede de blockchain do consórcio, o nódulo de transação fornece o certificado digital do nódulo de transação em vez da chave pública do nódulo de transação para o nódulo regulador. Além disso, o número do ativo realmente pertencente ao nódulo de transação precisa ser confirmado com base na ID do nódulo de transação. Como tal, pode existir uma pequena diferença nos dois aspectos descritos acima que o nódulo regulador precisa confirmar para verificar a validade da solicitação de transação (1. Os dados da transação não são adulterados. 2. O nódulo de transação não utiliza, de maneira fraudulenta, um número de ativo pertencente a outro nódulo de blockchain).
[052] O nódulo regulador, em primeiro lugar, tenta descriptografar a assinatura de cada nódulo de transação com base na chave pública incluída no certificado digital do nódulo de transação. Se o resultado da descriptografia for consistente com o resumo dos dados da transação, isso indica que o nódulo de transação não adultera os dados da transação. Após determinar que as identidades de todos os nódulos de transação são verdadeiras, o nódulo regulador pode continuar a determinar se o número do ativo (isto é, o número do ativo utilizado por cada nódulo de transação na transação) corresponde à assinatura de cada nódulo de transação nos dados da transação é um número do ativo do nódulo de transação, com base no número do ativo (isto é, o número do ativo realmente pertencente ao nódulo de transação) que corresponde à ID incluída no certificado digital do nódulo de transação. Indica que a solicitação de transação é válida se nenhum nódulo de transação utilizar, de maneira fraudulenta, um número de ativo de outra pessoa.
[053]Vale a pena enfatizar que, no cenário de invenção da rede de blockchain do consórcio, a ID do nódulo de transação que está incluída no certificado digital do nódulo de transação, na verdade, é a privacidade do nódulo de transação. Na presente realização da presente invenção, o nódulo regulador não envia o certificado digital do nódulo de transação para o nódulo de consenso, por conseguinte, assegurando que a ID do nódulo de transação não esteja descrita.
[054] Com base no método para a verificação de consenso mostrado na Figura 1, uma realização da presente invenção fornece, de maneira adicional, um dispositivo para a verificação de consenso. Conforme mostrado na Figura 4, o dispositivo inclui o seguinte: um primeiro módulo de aquisição (401), configurado para obter uma solicitação de transação, em que a solicitação de transação inclui os dados da transação e uma assinatura de, pelo menos, um nódulo de transação; e um módulo de determinação e processamento (402), configurado para determinar se a solicitação de transação é válida com base nos dados da transação e em uma assinatura de cada nódulo de transação; e se a solicitação de transação for válida, gerar um resumo com base nos dados especificados incluídos nos dados da transação e enviar o resumo e os dados não especificados incluídos nos dados da transação para cada nódulo de consenso, de maneira que cada nódulo de consenso realize a verificação de consenso.
[055] O dispositivo ainda inclui um módulo de rejeição (403), configurado para rejeitar a solicitação de transação se a solicitação de transação for inválida.
[056] O dispositivo ainda inclui um segundo módulo de aquisição (404), configurado para obter um certificado digital de cada nódulo de transação antes que seja determinado se a solicitação de transação é válida com base nos dados da transação e na assinatura de cada nódulo de transação.
[057] O módulo de determinação e processamento (402) é configurado para determinar se a solicitação de transação é válida com base nos dados da transação, na assinatura de cada nódulo de transação e no certificado digital de cada nódulo de transação.
[058] O módulo de determinação e processamento (402) é configurado para descriptografar a assinatura de cada nódulo de transação com base em uma chave pública incluída no certificado digital do nódulo de transação; e ao determinar que um resultado de descriptografia que corresponde a cada nódulo de transação é o mesmo que o resumo dos dados da transação, determinar um número de ativo que corresponda a uma identidade com base na identidade incluída no certificado digital de cada nódulo de transação e utilizar o número do ativo como um número de ativo pertencente ao nódulo de transação; e determinar se a solicitação de transação é válida com base no número de ativo pertencente de cada nódulo de transação, na assinatura de cada nódulo de transação e nos dados da transação; ou determinar que a solicitação de transação é inválida ao determinar que um resultado de descriptografia que corresponde a, pelo menos, um nódulo de transação é diferente do resumo dos dados da transação.
[059] O módulo de determinação e processamento (402) é configurado para determinar um número de ativo que corresponde à assinatura de cada nódulo de transação nos dados da transação com base na assinatura do nódulo de transação e utilizar o número do ativo como um número de ativo utilizado através do nódulo de transação; determine que o nódulo de transação é inválido se o número de ativo pertencente ao nódulo de transação não incluir, pelo menos, um número do ativo utilizado através do nódulo de transação; ou determinar que o nódulo de transação é válido se o número de ativo pertencente ao nódulo de transação incluir todos os números de ativos utilizados pelo nódulo de transação; e determinar que a solicitação de transação é inválida quando, pelo menos, um nódulo de transação é inválido; ou determinar que a solicitação de transação é válida quando todos os nódulos de transação são válidos.
[060] O dispositivo ainda inclui um módulo de notificação (405), configurado para instruir, pelo menos, um nódulo de transação para armazenar os dados da transação ou os dados especificados incluídos nos dados da transação se a solicitação de transação for válida.
[061] Na década de 1990, se um aprimoramento técnico for um aprimoramento de hardware (por exemplo, um aprimoramento para uma estrutura de circuito, tal como um diodo, um transistor ou um comutador) ou um aprimoramento de software (um aprimoramento em um procedimento de método) pode ser claramente distinguido. No entanto, com o desenvolvimento de tecnologias, os aprimoramentos atuais em muitos procedimentos de métodos podem ser considerados como aprimoramentos diretos nas estruturas dos circuitos de hardware. Um projetista, em geral, programa um procedimento de método aprimorado em um circuito de hardware, para obter uma estrutura de circuito de hardware correspondente. Por conseguinte, um procedimento de método pode ser aprimorado utilizando um módulo de entidade de hardware. Por exemplo, um dispositivo lógico programável (PLD) (por exemplo, um Field Programmable Gate Array (FPGA)) é um circuito integrado, e uma função lógica de PLD é determinada por um usuário através da programação do dispositivo. O projetista executa a programação para "integrar" um sistema digital a um PLD sem exigir que um fabricante de chips projete e produza um chip de circuito integrado específico do aplicativo. Além disso, atualmente, em vez de fabricar manualmente um chip de circuito integrado, essa programação é implementada principalmente utilizando o software "compilador lógico". O software compilador lógico é similar a um compilador de software utilizado para desenvolver e escrever um programa. O código original precisa ser escrito em uma linguagem de programação específica para a compilação. A linguagem é referida como uma linguagem de descrição de hardware (HDL). Existem muitos HDLs, tais como o Advanced Boolean Expression Language (ABEL), Altera Hardware Description Language), Confluence (AHDL), Cornell University Programming Language (CUPL), HDCal, Java Hardware Description Language (JHDL), Lava, Lola, MyHDL, PALASM e Ruby Hardware Description Language (RHDL). A Very-HighSpeed Integrated Circuit Hardware Description Language (VHDL) e a Verilog são as mais utilizadas. Um técnico no assunto também deve entender que um circuito de hardware que implementa um procedimento de método lógico pode ser facilmente obtido uma vez que o procedimento do método é logicamente programado utilizando as diversas linguagens de descrição de hardware descritas e é programado em um circuito integrado.
[062] Um controlador pode ser implementado utilizando qualquer método adequado. Por exemplo, o controlador pode ser um microprocessador ou um processador e um código legível por computador de programa de meio legível por computador de armazenamento (tal como o software ou firmware) que pode ser executado pelo microprocessador, ou o processador, uma porta lógica, um comutator, um circuito integrado específico do aplicativo (ASIC), um controlador lógico programável ou um microcontrolador incorporado. Os exemplos do controlador incluem, mas não estão limitados aos seguintes microprocessadores: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 e Silicone Labs C8051F320. O controlador de memória também pode ser implementado como parte da lógica de controle da memória. Um técnico no assunto também sabe que, além de implementar o controlador utilizando o código de programa legível por computador, a programação lógica pode ser executada em etapas de método para possibilitar que o controlador implemente a mesma função em formas de porta lógica, o comutador, o circuito integrado específico do aplicativo, o controlador lógico programável e o microcontrolador incorporado. Por conseguinte, o controlador pode ser considerado como um componente de hardware, e um dispositivo incluído no controlador configurado para implementar diversas funções também pode ser considerado como uma estrutura no componente de hardware. Ou de outra maneira, o dispositivo configurado para implementar diversas funções pode até ser considerado como um módulo de software que implementa o método e uma estrutura no componente de hardware.
[063] O sistema, dispositivo, módulo ou unidade ilustrados nas realizações anteriores podem ser implementados utilizando um chip de computador ou uma entidade, ou podem ser implementados utilizando um produto que possua uma função determinada. Um dispositivo de implementação típico é um computador. O computador, por exemplo, pode ser um computador pessoal, um computador portátil, um telefone celular, um telefone com câmera, um smartphone, um assistente digital pessoal, um reprodutor de mídia, um dispositivo de navegação, um dispositivo de e-mail, um console de jogos, um computador tablet, um dispositivo vestível ou uma combinação de qualquer um desses dispositivos.
[064] Para a facilidade de descrição, o dispositivo acima está descrito dividindo as funções em diversas unidades. Certamente, quando a presente invenção é implementado, as funções das unidades podem ser implementadas em uma ou mais partes de software e/ou hardware.
[065] Um técnico no assunto deve compreender que uma realização da presente invenção pode ser fornecida como um método, um sistema ou um produto de programa de computador. Por conseguinte, a presente invenção pode utilizar uma forma de implementação apenas de hardware, implementações apenas de software ou implementações com uma combinação de software e hardware. Além disso, a presente invenção pode utilizar uma forma de produto de programa de computador que é implementado em um ou mais meios de armazenamento utilizáveis por computador (incluindo, mas não limitado a uma memória de disco, um CD-ROM, uma memória ótica, e similares) que incluem o código de programa utilizável pelo computador.
[066]A presente invenção está descrita com referência aos fluxogramas e/ou diagramas de blocos do método, ao dispositivo (sistema) e ao produto de programa de computador com base nas realizações da presente invenção. Vale a pena observar que as instruções do programa de computador podem ser utilizadas para implementar cada processo e/ou cada bloco nos fluxogramas e/ou diagramas de blocos e uma combinação de um processo e/ou um bloco nos fluxogramas e/ou nos diagramas de blocos. Estas instruções de programas de computador podem ser fornecidas para um computador de propósito geral, um computador dedicado, um processador embutido ou um processador de outro dispositivo de processamento de dados programável para gerar uma máquina, de maneira que as instruções executadas pelo computador ou pelo processador de outro dispositivo de processamento de dados programável gerem um dispositivo para implementar uma função especificada em um ou mais processos nos fluxogramas e/ou em um ou mais blocos nos diagramas de bloco.
[067] Estas instruções de programas de computador podem ser armazenadas em uma memória legível por computador que pode instruir o computador ou o outro dispositivo de processamento de dados programável para trabalhar de uma maneira específica, de maneira que as instruções armazenadas na memória de computador gerem um artefato que inclui um dispositivo de instrução. O dispositivo de instrução implementa uma função especificada em um ou mais processos nos fluxogramas e/ou em um ou mais blocos nos diagramas de bloco.
[068] Essas instruções do programa de computador podem ser carregadas no computador ou em outro dispositivo de processamento de dados programável, de maneira que uma série de operações e operações e etapas sejam executadas no computador ou em outro dispositivo programável, por conseguinte, gerando o processamento implementado por computador. Por conseguinte, as instruções executadas no computador ou no outro dispositivo programável fornecem as etapas para implementar uma função especificada em um ou mais processos nos fluxogramas e/ou em um ou mais blocos nos diagramas de bloco.
[069] Em uma realização típica, um dispositivo de computação inclui um ou mais processadores (CPU), uma ou mais interfaces de entrada / saída, uma ou mais interfaces de rede e uma ou mais memórias.
[070]A memória pode incluir uma memória não persistente, uma memória de acesso aleatório (RAM), uma memória não volátil e/ou outra maneira que esteja em um meio legível por computador, por exemplo, uma memória somente de leitura (ROM) ou uma memória flash (flash RAM). A memória é um exemplo do meio legível por computador.
[071] O meio legível por computador inclui o meio persistente, não persistente, móvel e imóvel que pode armazenar as informações utilizando qualquer método ou tecnologia. A informação pode ser uma instrução legível por computador, uma estrutura de dados, um módulo de programa ou outros dados. Os exemplos do meio de armazenamento do computador incluem, mas não estão limitados à memória de acesso aleatório de parâmetro (PRAM), memória de acesso aleatório estática (SRAM), memória de acesso aleatório dinâmica (DRAM), outro tipo de memória de acesso aleatório (RAM), memória apenas de leitura (ROM), uma memória de apenas leitura programável e apagável eletricamente (EEPROM), uma memória flash ou outra tecnologia de memória, uma memória de leitura em disco compacto (CD-ROM), um disco versátil digital (DVD) ou outro armazenamento ótico, uma fita cassete magnética, um armazenamento de fita magnética / disco magnético ou outro dispositivo de armazenamento magnético, ou qualquer outro meio de não transmissão. O meio de armazenamento do computador pode ser utilizado para armazenar as informações acessíveis através de um dispositivo de computação. Com base na definição da presente invenção, o meio legível por computador não inclui os meios transitórios legíveis por computador (meios transitórios), tais como um sinal de dados modulado e veículo.
[072]Vale a pena observar ainda que, os termos "incluir", "compreender", ou quaisquer outras variantes, pretendem abranger uma inclusão não exclusiva, isto é, um processo, um método, um produto ou um dispositivo que inclui uma lista de elementos que inclui não apenas esses elementos, mas também inclui outros elementos que não estão expressamente listados ou ainda inclui os elementos inerentes a tal processo, método, produto ou dispositivo. Sem mais restrições, um elemento precedido por "inclui um^" não exclui a existência de elementos idênticos adicionais no processo, método, produto ou dispositivo que inclui o elemento.
[073] Um técnico no assunto deve entender que uma realização da presente invenção pode ser fornecida como um método, um sistema ou um produto de programa de computador. Por conseguinte, a presente invenção pode utilizar uma forma de implementação somente de hardware, implementações somente de software ou implementações com uma combinação de software e hardware. Além disso, a presente invenção pode utilizar uma forma de produto de programa de computador que é implementado em um ou mais meios de armazenamento utilizáveis por computador (incluindo, mas não limitado a uma memória de disco, um CD-ROM, uma memória ótica, e similares) que incluem o código de programa utilizável por computador.
[074]A presente invenção pode ser descrita no contexto geral de instruções executáveis por computador executadas por um computador, por exemplo, um módulo de programa. Em geral, o módulo do programa inclui uma rotina, um programa, um objeto, um componente, uma estrutura de dados, e similares, para realizar uma tarefa específica ou implementar um tipo de dados abstrato específico. A presente invenção também pode ser praticada em ambientes de computação distribuída. Nos ambientes de computação distribuída, as tarefas são executadas por dispositivos de processamento remoto conectados por meio de uma rede de comunicações. Em um ambiente de computação distribuída, o módulo do programa pode estar localizado no meio de armazenamento do computador local ou remoto, incluindo os dispositivos de armazenamento.
[075]As realizações no presente relatório descritivo estão descritas de maneira progressiva. Para partes iguais ou similares das realizações, podem ser feitas referências às realizações. Cada realização se concentra em uma diferença de outras realizações. Especialmente, uma realização de sistema é basicamente similar a uma realização de método e, por conseguinte, está descrita resumidamente. Para as partes relacionadas, podem ser feitas referências às descrições relacionadas na realização do método.
[076]As realizações anteriores são realizações da presente invenção e não se destinam a limitar a presente invenção. Um técnico no assunto pode realizar diversas modificações e alterações na presente invenção. Qualquer modificação, substituição equivalente, ou aprimoramento realizado sem se afastar do escopo da presente invenção, estará no âmbito das reivindicações da presente invenção.

Claims (12)

1. MÉTODO PARA A VERIFICAÇÃO DE CONSENSO, caracterizado pelo método compreender: - obter (S101), através de um nódulo regulador, uma solicitação de transação, em que a solicitação de transação compreende os dados da transação e uma assinatura de, pelo menos, um nódulo de transação; - determinar um número de ativo que corresponde à assinatura de, pelo menos, um nódulo de transação nos dados da transação com base na assinatura; - atribuir o número de ativo para, pelo menos, um nódulo de transação; - determinar (S102) se a solicitação de transação é válida com base nos dados da transação, na assinatura e número de ativo; - em resposta à determinação de que a solicitação de transação é válida, gerar (S103) um resumo com base nos dados especificados compreendidos nos dados da transação; e - enviar o resumo e os dados não especificados compreendidos nos dados da transação para um nódulo de consenso respectivo, de maneira que o nódulo de consenso respectivo realize uma verificação de consenso.
2. MÉTODO, de acordo com a reivindicação 1, caracterizado por compreender: - rejeitar (S104) a solicitação de transação em resposta a determinar que a solicitação de transação é inválida.
3. O MÉTODO, de acordo com a reivindicação 1, caracterizado por, antes de determinar (S102) se a solicitação de transação é válida compreender: - obter um certificado digital de, pelo menos, um nódulo de transação.
4. O MÉTODO, de acordo com a reivindicação 3, caracterizado pela determinação se a solicitação de transação é válida compreender: - determinar (S102) se a solicitação de transação é válida com base nos dados da transação, na assinatura de, pelo menos, um nódulo de transação e no certificado digital de, pelo menos, um nódulo de transação.
5. MÉTODO, de acordo com a reivindicação 3, caracterizado pela determinação se a solicitação de transação é válida compreender: - descriptografar a assinatura de, pelo menos, um nódulo de transação com base em uma chave pública compreendida no certificado digital do nódulo de transação; - em resposta a determinar que um resultado de descriptografia que corresponde a, pelo menos, um nódulo de transação é o mesmo que o resumo dos dados da transação, determinar o número de ativo que corresponde a uma identidade com base na identidade compreendida no certificado digital de, pelo menos, um nódulo de transação; e - determinar o número do ativo como um número de ativo da transação pertencente ao nódulo de transação.
6. MÉTODO, de acordo com a reivindicação 5, caracterizado por ainda compreender: - determinar se a solicitação de transação é válida com base no número de ativo pertencente a, pelo menos, um nódulo de transação, na assinatura de, pelo menos, um nódulo de transação e nos dados da transação; ou - determinar que a solicitação de transação é inválida ao determinar que um resultado de descriptografia que corresponde a, pelo menos, um nódulo de transação é diferente do resumo dos dados da transação.
7. MÉTODO, de acordo com a reivindicação 6, caracterizado pela determinação se a solicitação de transação é válida compreender: - determinar que o nódulo de transação é inválido em resposta à determinação de que o número de ativo pertencente ao nódulo de transação não compreende, pelo menos, um número de ativo utilizado através do nódulo de transação; ou - determinar que o nódulo de transação é válido em resposta à determinação de que o número de ativo pertencente ao nódulo de transação compreende todos os números de ativos utilizados pelo nódulo de transação.
8. MÉTODO, de acordo com a reivindicação 7, caracterizado pela determinação se a solicitação de transação é válida compreender: - determinar que a solicitação de transação é inválida em resposta à determinação de que, pelo menos, um nódulo de transação é inválido; ou - determinar que a solicitação de transação é válida em resposta à determinação de que todos os nódulos de transação são válidos.
9. MÉTODO, de acordo com a reivindicação1, caracterizado pelo método ainda compreender: - instruir, pelo menos, um nódulo de transação para armazenar os dados da transação ou os dados especificados compreendidos nos dados da transação em resposta a determinar (S102) que a solicitação de transação é válida.
10. MÉTODO, de acordo com a reivindicação 1, caracterizado pelo nódulo regulador ser um nódulo de uma rede de blockchain configurada para regular as transações verificando os itens, em que os itens verificados pelo nódulo regulador são reconhecidos por uma pluralidade de nódulos de blockchain da rede blockchain.
11. MÉTODO, de acordo com a reivindicação 10, caracterizado pela rede blockchain compreender uma rede blockchain de consórcio.
12. DISPOSITIVO PARA A VERIFICAÇÃO DE CONSENSO, caracterizado pelo dispositivo compreender uma pluralidade de módulos (401, 404, 402, 403, 405) configurados para realizar o método, conforme definido em qualquer uma das reivindicações de 1 a 11.
BR112019013367-4A 2017-04-28 2018-04-26 Método para a verificação de consenso e dispositivo para a verificação de consenso BR112019013367B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710292517.6A CN107392040B (zh) 2017-04-28 2017-04-28 一种共识验证的方法及装置
CN201710292517.6 2017-04-28
PCT/CN2018/084624 WO2018196813A1 (zh) 2017-04-28 2018-04-26 一种共识验证的方法及装置

Publications (2)

Publication Number Publication Date
BR112019013367A2 BR112019013367A2 (pt) 2019-12-31
BR112019013367B1 true BR112019013367B1 (pt) 2022-03-03

Family

ID=60338454

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019013367-4A BR112019013367B1 (pt) 2017-04-28 2018-04-26 Método para a verificação de consenso e dispositivo para a verificação de consenso

Country Status (14)

Country Link
US (1) US20190354977A1 (pt)
EP (1) EP3547199B1 (pt)
JP (1) JP6789397B2 (pt)
KR (2) KR102541219B1 (pt)
CN (1) CN107392040B (pt)
AU (1) AU2018257226B2 (pt)
BR (1) BR112019013367B1 (pt)
CA (1) CA3048743A1 (pt)
MX (1) MX2019007807A (pt)
PH (1) PH12019501503A1 (pt)
RU (1) RU2728524C1 (pt)
TW (1) TWI698820B (pt)
WO (1) WO2018196813A1 (pt)
ZA (1) ZA201904221B (pt)

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置
CN107395665B (zh) * 2017-05-22 2020-04-24 创新先进技术有限公司 一种区块链业务受理及业务共识方法及装置
CN107592293A (zh) * 2017-07-26 2018-01-16 阿里巴巴集团控股有限公司 区块链节点间通讯方法、数字证书管理方法、装置和电子设备
WO2019142884A1 (ja) * 2018-01-19 2019-07-25 日本電信電話株式会社 ブロック検証装置、ブロック検証方法、及びプログラム
CN110070428B (zh) * 2018-01-19 2021-11-02 创新先进技术有限公司 监管检查方法及装置和电子设备
CN110084068B (zh) * 2018-01-26 2023-09-29 阿里巴巴集团控股有限公司 区块链系统及用于区块链系统的数据处理方法
CN108389129B (zh) * 2018-02-27 2020-12-04 创新先进技术有限公司 基于区块链的交易执行方法及装置、电子设备
GB201806448D0 (en) * 2018-04-20 2018-06-06 Nchain Holdings Ltd Computer-implemented methods and systems
CN108648081B (zh) * 2018-05-07 2020-08-18 北京柏链基石科技有限公司 一种基于区块链的交易处理方法、装置和电子设备
CN108711052B (zh) * 2018-05-18 2021-04-30 电子科技大学 一种基于区块链的信息验证系统
CN109067539B (zh) * 2018-06-13 2021-09-28 深圳前海微众银行股份有限公司 联盟链交易方法、设备及计算机可读存储介质
CN109011584A (zh) * 2018-06-22 2018-12-18 深圳市摩掌信息技术有限公司 一种基于游戏的虚拟资产的交易方法、装置及终端设备
CN109087098A (zh) * 2018-07-27 2018-12-25 杭州复杂美科技有限公司 一种许可链的交易处理方法、系统、设备和存储介质
CN109242483A (zh) 2018-08-07 2019-01-18 阿里巴巴集团控股有限公司 一种基于中心化与去中心化的双重交易方法及系统
CN109040271B (zh) * 2018-08-15 2020-12-29 深圳市引方科技有限公司 一种分布式环境下的网络设备完整性保护方法
CN109213806B (zh) * 2018-09-12 2023-09-05 国际商业机器(中国)投资有限公司 基于区块链的企业排污数据处理方法及系统
CN109391480A (zh) * 2018-10-19 2019-02-26 微梦创科网络科技(中国)有限公司 一种数据存储方法、装置及电子设备
US11847249B2 (en) 2018-10-25 2023-12-19 Sony Corporation Privacy-preserving mobility as a service supported by blockchain
CN112492006B (zh) * 2018-10-31 2023-12-05 创新先进技术有限公司 一种基于区块链的节点管理方法和装置
CN109584066B (zh) * 2018-10-31 2020-09-01 阿里巴巴集团控股有限公司 基于区块链的隐私交易及其应用方法和装置
BR112019008174A2 (pt) * 2018-11-07 2019-09-10 Alibaba Group Holding Ltd método implementado por computador, meio de armazenamento legível por computador, não transitório e sistema
WO2019072270A2 (en) * 2018-11-07 2019-04-18 Alibaba Group Holding Limited MANAGING PRIVATE TRANSACTIONS ON BLOCK CHAIN NETWORKS BASED ON A WORKFLOW
CN109598149B (zh) * 2018-11-20 2020-04-07 阿里巴巴集团控股有限公司 业务处理的方法和装置
CN110020854B (zh) * 2018-11-27 2020-11-17 创新先进技术有限公司 一种基于多个区块链网络的数据存证方法及系统
CN110060151B (zh) 2018-11-27 2020-07-17 阿里巴巴集团控股有限公司 一种业务执行方法及装置
CN113793151A (zh) * 2018-11-28 2021-12-14 创新先进技术有限公司 基于区块链的数据存证方法及装置、电子设备
CA3041211C (en) * 2018-11-30 2020-05-05 Alibaba Group Holding Limited Utilizing nonce table to resolve concurrent blockchain transaction failure
CN111327564B (zh) * 2018-12-13 2022-03-08 航天信息股份有限公司 一种联盟链的准入方法及装置
CN109886712A (zh) * 2019-02-25 2019-06-14 众安信息技术服务有限公司 基于区块链的数据处理方法与装置
CN111614708B (zh) * 2019-02-26 2021-06-08 傲为信息技术(江苏)有限公司 一种基于区块链的交易系统
SG11201908651SA (en) * 2019-03-01 2019-10-30 Alibaba Group Holding Ltd Methods and devices for protecting sensitive data of transaction activity based on smart contract in blockchain
SG11201908552RA (en) * 2019-03-04 2019-10-30 Alibaba Group Holding Ltd Methods and devices for testing signature verification for blockchain system
CN112348514A (zh) * 2019-03-19 2021-02-09 创新先进技术有限公司 基于区块链的数据核对系统、方法、计算设备及存储介质
CN110009353A (zh) * 2019-04-01 2019-07-12 北京柏链基石科技有限公司 一种基于区块链的账号注册方法、装置及电子设备
CN110222529A (zh) * 2019-05-21 2019-09-10 平安普惠企业管理有限公司 基于联盟链的资产管理方法、电子设备及计算机存储介质
CN111767337B (zh) * 2019-05-24 2024-04-05 北京沃东天骏信息技术有限公司 区块的验证方法、装置及设备
TW202143136A (zh) * 2019-08-09 2021-11-16 英商路昂有限公司 使用者媒體平台伺服器系統
EP4055774A1 (en) * 2019-12-05 2022-09-14 Huawei Technologies Co., Ltd. System and method of establishing a trusted relationship in a distributed system
CN111325585A (zh) * 2020-01-17 2020-06-23 腾讯科技(深圳)有限公司 一种资产转移方法、装置及计算机可读存储介质
CN111444211B (zh) * 2020-03-26 2021-07-13 腾讯科技(深圳)有限公司 区块链共识节点校验方法、装置、设备以及存储介质
CN111415161B (zh) * 2020-04-27 2024-03-19 财付通支付科技有限公司 基于区块链的数据验证方法、装置及计算机可读存储介质
CN111667268B (zh) * 2020-05-29 2024-01-23 中国工商银行股份有限公司 基于区块链的交易方法、节点及系统
CN111724153B (zh) * 2020-06-08 2023-02-03 交通银行股份有限公司 一种基于区块链的预付式消费监管系统、方法及存储介质
EP3957025B1 (en) * 2020-07-03 2022-12-28 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for providing privacy and security protection in blockchain-based private transactions
CN112235379B (zh) * 2020-09-30 2021-09-24 电子科技大学 一种区块链底层共享存储方法
CN112600672B (zh) * 2020-11-30 2022-02-25 清华大学 基于真实身份的域间可信度共识方法和装置
CN112650735B (zh) * 2020-12-28 2022-05-24 杭州趣链科技有限公司 联盟链的丢失区块确定方法、装置、设备及存储介质
CN112865959B (zh) * 2020-12-30 2022-05-31 杭州趣链科技有限公司 分布式节点设备的共识方法、节点设备及分布式网络
CN112884579A (zh) * 2021-02-08 2021-06-01 京东数科海益信息科技有限公司 区块链交易共识方法和装置
CN113114634A (zh) * 2021-03-24 2021-07-13 武汉卓尔信息科技有限公司 一种基于联盟链的可信数据管理方法及联盟链
CN113240418B (zh) * 2021-04-23 2024-01-12 上海和数软件有限公司 基于区块链的隐私数据智能访问控制方法和设备
CN113761071B (zh) * 2021-10-09 2023-07-11 支付宝(杭州)信息技术有限公司 一种共识方法、区块链系统和共识节点
CN113821474A (zh) * 2021-11-22 2021-12-21 武汉龙津科技有限公司 一种数据处理方法、装置、设备和存储介质
CN114338053B (zh) * 2022-03-16 2022-05-13 成都信息工程大学 一种动态的基于信誉的区块链共识方法和系统

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3622789B2 (ja) * 2002-06-11 2005-02-23 株式会社帝国データバンク 汎用的組織内個人認証システム
GB0229894D0 (en) * 2002-12-21 2003-01-29 Ibm Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes
US20180253727A1 (en) * 2016-07-02 2018-09-06 Royal Bank Of Canada Secure funding of electronic payments
GB2509055B (en) * 2012-12-11 2016-03-23 Gurulogic Microsystems Oy Encoder and method
JP6304076B2 (ja) * 2015-03-05 2018-04-04 ブラザー工業株式会社 情報処理装置、コンテンツ配信システム、情報処理方法、及びプログラム
SG11201708295XA (en) * 2015-04-06 2017-11-29 Bitmark Inc System and method for decentralized title recordation and authentication
US20160342977A1 (en) * 2015-05-20 2016-11-24 Vennd.io Pty Ltd Device, method and system for virtual asset transactions
GB2539430A (en) * 2015-06-16 2016-12-21 The Provost Fellows Found Scholars & The Other Members Of Board Of The College Of The Holy & Unidv T Digital token exchange system
AU2016288644A1 (en) * 2015-07-02 2018-02-22 Nasdaq, Inc. Systems and methods of secure provenance for distributed transaction databases
US20170085555A1 (en) * 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
AU2015403302A1 (en) * 2015-07-28 2018-02-22 Razer (Asia-Pacific) Pte. Ltd. Servers for a reward-generating distributed digital resource farm and methods for controlling a server for a reward-generating distributed digital resource farm
AU2016100059A4 (en) * 2016-01-24 2016-03-03 The Trustee For The Mckeon Family Trust integratedCONTRACT is a process of embedding dynamic data characteristics into financial and other instruments using Blockchain technology and a unique method for transacting on online peer to peer and marketplace exchanges.
US9849364B2 (en) * 2016-02-02 2017-12-26 Bao Tran Smart device
WO2017173271A1 (en) * 2016-04-01 2017-10-05 Jpmorgan Chase Bank, N.A. Systems and methods for providing data privacy in a private distributed ledger
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
CN105976232B (zh) * 2016-06-24 2020-04-28 深圳前海微众银行股份有限公司 资产交易方法和装置
WO2018004527A1 (en) * 2016-06-28 2018-01-04 Intel Corporation Cell for n-negative differential resistance (ndr) latch
CN106385315B (zh) * 2016-08-30 2019-05-17 北京三未信安科技发展有限公司 一种数字证书管理方法及系统
CN106375317A (zh) * 2016-08-31 2017-02-01 北京明朝万达科技股份有限公司 一种基于区块链的大数据安全认证方法和系统
CN106411901B (zh) * 2016-10-08 2018-01-23 北京三未信安科技发展有限公司 一种数字身份标识管理方法及系统
CN106503098B (zh) * 2016-10-14 2021-11-12 中金云金融(北京)大数据科技股份有限公司 内置于Paas服务层的区块链云服务框架系统
US10484346B2 (en) * 2017-02-07 2019-11-19 Microsoft Technology Licensing, Llc Establishment of consortium blockchain network
CN107392040B (zh) * 2017-04-28 2019-08-09 阿里巴巴集团控股有限公司 一种共识验证的方法及装置

Also Published As

Publication number Publication date
EP3547199B1 (en) 2021-09-22
KR102281558B1 (ko) 2021-07-27
TWI698820B (zh) 2020-07-11
BR112019013367A2 (pt) 2019-12-31
KR20210081444A (ko) 2021-07-01
KR102541219B1 (ko) 2023-06-08
WO2018196813A1 (zh) 2018-11-01
JP2020508593A (ja) 2020-03-19
CN107392040A (zh) 2017-11-24
TW201839682A (zh) 2018-11-01
KR20190090832A (ko) 2019-08-02
AU2018257226A1 (en) 2019-07-11
RU2728524C1 (ru) 2020-07-30
CA3048743A1 (en) 2018-11-01
US20190354977A1 (en) 2019-11-21
MX2019007807A (es) 2019-09-06
AU2018257226B2 (en) 2021-06-24
EP3547199A1 (en) 2019-10-02
EP3547199A4 (en) 2020-01-01
ZA201904221B (en) 2022-06-29
CN107392040B (zh) 2019-08-09
JP6789397B2 (ja) 2020-11-25
PH12019501503A1 (en) 2020-06-08

Similar Documents

Publication Publication Date Title
BR112019013367B1 (pt) Método para a verificação de consenso e dispositivo para a verificação de consenso
US11159506B2 (en) Authentication method and device, and blockchain-based authentication data processing method and device
US11361089B2 (en) Method, apparatus, and electronic device for blockchain-based recordkeeping
EP3553725B1 (en) Service data processing method and apparatus
EP3531668B1 (en) Method and device for processing service request
CA3057331C (en) Method and apparatus for processing transaction requests
TW201901516A (zh) 基於區塊鏈的資料處理方法及設備
JP2020512714A (ja) デジタル証明書管理方法、装置、およびシステム
CN110795501A (zh) 基于区块链的可验证声明的创建方法、装置、设备及系统
BR112019016831B1 (pt) sistema de blockchain e método e aparelho de armazenamento de dados
BR112019013204A2 (pt) método para processamento de serviços e dispositivo para processamento de serviços
JP7179725B2 (ja) セキュアキー管理
US20210250179A1 (en) Information processing apparatus, method and program
BR112018004760B1 (pt) Métodos e dispositivos de registro e autenticação de informação

Legal Events

Date Code Title Description
B25A Requested transfer of rights approved

Owner name: ADVANTAGEOUS NEW TECHNOLOGIES CO., LTD. (KY)

B25A Requested transfer of rights approved

Owner name: ADVANCED NEW TECHNOLOGIES CO., LTD. (KY)

B350 Update of information on the portal [chapter 15.35 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 26/04/2018, OBSERVADAS AS CONDICOES LEGAIS.

B09W Correction of the decision to grant [chapter 9.1.4 patent gazette]

Free format text: O PRESENTE PEDIDO TEVE UM PARECER DE DEFERIMENTO NOTIFICADO NA RPI NO 2659 DE21/12/2021 TENDO SIDO CONSTATADO, ATRAVES DA MENSAGEM 1004588, QUE ESTA NOTIFICACAO FOIEFETUADA INCORRETA NA INDICACAO DAS PAGINAS DO QUADRO REIVINDICATORIO, ASSIM, CONCLUO PELARETIFICACAO DO PARECER DE DEFERIMENTO, DEVENDO INTEGRAR A CARTA PATENTE O QUE CONSTAM NOQUADRO 1 DESTE PARECER.