BR112019007984A2 - método implementado por computador para o gerenciamento da chave de serviço, meio legível por computador e sistema para implementar um método - Google Patents

método implementado por computador para o gerenciamento da chave de serviço, meio legível por computador e sistema para implementar um método Download PDF

Info

Publication number
BR112019007984A2
BR112019007984A2 BR112019007984-0A BR112019007984A BR112019007984A2 BR 112019007984 A2 BR112019007984 A2 BR 112019007984A2 BR 112019007984 A BR112019007984 A BR 112019007984A BR 112019007984 A2 BR112019007984 A2 BR 112019007984A2
Authority
BR
Brazil
Prior art keywords
key
participant
service
fact
service key
Prior art date
Application number
BR112019007984-0A
Other languages
English (en)
Inventor
Li Shubo
Zhang Yixiang
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of BR112019007984A2 publication Critical patent/BR112019007984A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • 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/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

a presente invenção se refere às implementações da presente especificação que fornecem o gerenciamento da chave de serviço para as redes blockchain de consórcio dentro de uma plataforma blockchain como um serviço (baas). a presente invenção ainda se refere às implementações que incluem as ações de recebimento de uma solicitação de chave de serviço de um participante de uma rede blockchain de consórcio provisionada na plataforma baas, determinando que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio, fornecendo um pacote de chaves incluindo uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço e enviando o pacote de chaves ao participante, o participante descriptografando a chave privada da chave de serviço utilizando uma chave pública associada com o participante.

Description

“MÉTODO IMPLEMENTADO POR COMPUTADOR PARA O GERENCIAMENTO DA CHAVE DE SERVIÇO, MEIO LEGÍVEL POR COMPUTADOR E SISTEMA PARA IMPLEMENTAR UM MÉTODO” Campo da Invenção [001]A presente invenção se refere aos métodos implementados por computador para o gerenciamento das chaves de criptografia em redes blockchain.
Antecedentes da Invenção [002]Os sistemas de contabilidade distribuída (DLSs), que também podem ser denominados redes de consenso e/ou redes blockchain, possibilitam que as entidades participantes armazenem os dados com segurança e imutabilidade. Os DLSs normalmente são referidos como redes blockchain sem referenciar nenhum caso de usuário específico (por exemplo, as criptomoedas). Os exemplos de tipos de redes blockchain podem incluir as redes blockchain públicas, redes blockchain privadas e redes blockchain de consórcio. Uma rede blockchain pública é aberta para todas as entidades utilizarem o DLS e participarem do processo de consenso. Uma rede blockchain privada é fornecida para uma entidade específica, que centralmente controla as permissões de leitura e gravação. Uma rede blockchain de consórcio é fornecida para um grupo seleto de entidades, que controlam o processo de consenso e incluem uma camada de controle de acesso.
[003]Uma rede blockchain de consórcio pode ser descrita como levemente centralizada, ou multicêntrica, cada nódulo da rede blockchain de consórcio sendo operado pelos participantes de consórcio. Isto é, os participantes ingressam em uma rede blockchain para formar um consórcio, que possui a mesma solicitação de serviço, e cada nódulo mantém a operação blockchain. Na rede blockchain de consórcio, a blockchain de consórcio desenvolve a base de confiança para os participantes autorizados de consórcio.
Petição 870190056823, de 19/06/2019, pág. 9/41
2/22
Ao contrário de uma rede blockchain pública, em que todas as informações de transação são armazenadas em uma blockchain pública em texto simples, os dados na rede blockchain de consórcio são criptografados e são armazenados como texto cifrado na blockchain de consórcio. Consequentemente, as redes blockchain de consórcio solicitaem a funcionalidade do gerenciamento da chave para possibilitar o isolamento de privacidade e o compartilhamento em uma rede blockchain de consórcio.
Descrição da Invenção [004]As realizações da presente invenção incluem os métodos implementados por computador para o gerenciamento das chaves de criptografia em redes blockchain. Mais especialmente, as realizações da presente especificação se destinam ao gerenciamento das chaves de criptografia assimétrica nas redes blockchain de consórcio.
[005]As realizações da presente especificação fornecem o gerenciamento da chave de serviço para as redes blockchain de consórcio dentro de uma plataforma blockchain como um serviço (BaaS). Em algumas realizações, as ações incluem o recebimento de uma solicitação de chave de serviço de um participante de uma rede blockchain de consórcio provisionada na plataforma BaaS, determinando que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio, fornecendo um pacote de chaves incluindo uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço, e enviando o pacote de chaves ao participante, o participante descriptografando a chave privada da chave de serviço utilizando uma chave pública associada com o participante. Outras realizações incluem os sistemas, aparelhos e programas de computador correspondentes, configurados para realizar as ações dos métodos, codificados em dispositivos de armazenamento de computador.
Petição 870190056823, de 19/06/2019, pág. 10/41
3/22 [006] Estas e outras realizações, opcionalmente, podem incluir uma ou mais das características seguintes: as ações ainda incluem, antes de receber a solicitação da chave de serviço do participante, receber um certificado de identidade do participante; o certificado de identidade é recebido como um certificado de identidade criptografado e a plataforma BaaS descriptografa o certificado de identidade utilizando uma chave pública do participante; as ações ainda incluem a criptografia da chave privada da chave de serviço utilizando uma chave pública associada ao participante; a chave de serviço é gerada utilizando uma árvore de chave da função de derivação de chave (KDF) em resposta à determinação de que o participante está autorizado para a chave de serviço; a chave de serviço está ausente da plataforma BaaS após o envio do pacote de chaves para o participante; e o participante utiliza a chave privada da chave de serviço para criptografar as transações com um ou mais participantes da rede blockchain de consórcio.
[007]A presente especificação também fornece um ou mais meios de armazenamento não transitórias legíveis por computador acopladas a um ou mais processadores e que possui as instruções armazenadas neles que, quando executadas por um ou mais processadores, ocasionam que um ou mais processadores realizem as operações de acordo com as realizações dos métodos fornecidos no presente.
[008]A presente especificação ainda fornece um sistema para a implementação dos métodos fornecidos no presente. O sistema inclui um ou mais processadores, e um meio de armazenamento legível por computador acoplado a um ou mais processadores que possuem as instruções armazenadas nele que, quando executadas por um ou mais processadores, ocasionam que um ou mais processadores realizem as operações de acordo com as realizações dos métodos fornecidos no presente.
[009] É considerado que os métodos, de acordo com a presente
Petição 870190056823, de 19/06/2019, pág. 11/41
4/22 especificação, podem incluir qualquer combinação dos aspectos e características descritos no presente. Isto é, os métodos, de acordo com a presente especificação, não estão limitados às combinações de aspectos e características especificamente descritos no presente, mas também incluem qualquer combinação dos aspectos e características fornecidos.
[010]0s detalhes de uma ou mais realizações da presente especificação são apresentados nos desenhos anexos e na descrição abaixo. Outras características e vantagens da presente especificação serão evidentes a partir da descrição e desenhos, e das reivindicações.
Breve Descrição dos Desenhos [011]A Figura 1 ilustra um exemplo de ambiente que pode ser utilizado para realizar as realizações da presente especificação.
[012]A Figura 2 ilustra um exemplo de arquitetura conceptual de acordo com as realizações da presente especificação.
[013]A Figura 3A ilustra uma arquitetura de módulo de exemplo de acordo com as realizações da presente especificação.
[014]A Figura 3B ilustra um fluxograma de exemplo, de acordo com as realizações da presente especificação.
[015]A Figura 4 ilustra um exemplo de processo que pode ser executado, de acordo com as realizações da presente especificação.
[016]Os símbolos similares de referência nos diversos desenhos indicam elementos similares.
Descrição de Realizações da Invenção [017]As realizações da presente especificação incluem os métodos implementados por computador para o gerenciamento das chaves de criptografia em redes blockchain. Mais especialmente, as realizações da presente especificação se destinam ao gerenciamento de chaves de serviço fornecidas como as chaves de criptografia assimétrica nas redes blockchain de consórcio.
Petição 870190056823, de 19/06/2019, pág. 12/41
5/22 [018]As realizações da presente especificação fornecem o gerenciamento da chave de serviço para as redes blockchain de consórcio dentro de uma plataforma blockchain como um serviço (BaaS). Em algumas realizações, as ações incluem o recebimento de uma solicitação de chave de serviço de um participante de uma rede blockchain de consórcio provisionada na plataforma BaaS, determinando que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio, fornecendo um pacote de chaves incluindo uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço, e enviando o pacote de chaves ao participante, o participante descriptografando a chave privada da chave de serviço utilizando uma chave pública associada com o participante.
[019] Para fornecer o contexto adicional para as realizações da presente especificação e, conforme foi introduzido acima, os sistemas de contabilidade distribuída (DLSs), que também podem ser referidos como redes de consenso (por exemplo, compostas por nódulos peer-to-peer), e as redes blockchain, possibilitam que as entidades participantes executem as transações com segurança e imutabilidade e armazenem os dados. Embora o termo “blockchain, em geral, esteja associado à rede de criptomoedas de Bitcoin, blockchain é utilizado no presente para, em geral, se referir a um DLS sem referência a qualquer caso de utilização especial. Conforme apresentado acima, uma rede blockchain pode ser fornecida como uma rede blockchain pública, uma rede blockchain privada ou uma rede blockchain de consórcio.
[020] Em uma rede blockchain pública, o processo de consenso é controlado por nódulos da rede de consenso. Por exemplo, centenas, milhares e até milhões de entidades podem cooperar com uma rede blockchain pública, cada uma operando, pelo menos, um nódulo na rede blockchain pública. Por conseguinte, a rede blockchain pública pode ser considerada uma rede pública
Petição 870190056823, de 19/06/2019, pág. 13/41
6/22 em relação às entidades participantes. Em alguns exemplos, a maioria das entidades (nódulos) deve assinar cada bloco para que o bloco seja válido e adicionado ao blockchain (contabilidade distribuída) da rede blockchain. Um exemplo de rede blockchain pública inclui a rede Bitcoin, que é uma rede de pagamento peer-to-peer. A rede Bitcoin alavanca uma contabilidade distribuída, conhecido como blockchain. Conforme observado acima, o termo blockchain, no entanto, é utilizado para, em geral, se referir às contabilidades distribuídas sem referência especial à rede Bitcoin.
[021]Em geral, uma rede blockchain pública suporta as transações públicas. Uma transação pública é compartilhada com todos os nódulos dentro da rede blockchain pública e é armazenada em uma blockchain global. Uma blockchain global é uma blockchain que é replicada em todos os nódulos. Isto é, todos os nódulos estão em perfeito estado de consenso em relação à blockchain global. Para chegar a um consenso (por exemplo, concordar com a adição de um bloco a uma blockchain), um protocolo de consenso é implementado na rede blockchain pública. Um exemplo de protocolo de consenso inclui, sem limitação, a prova de trabalho (POW) implementada na rede Bitcoin.
[022]Em geral, uma rede blockchain privada é fornecida para uma entidade especial, que centralmente controla as permissões de leitura e gravação. A entidade controla quais nódulos são capazes de participar da rede blockchain. Consequentemente, as redes blockchain privadas, em geral, são denominadas de redes autorizadas que impõem as restrições em relação a quem pode participar da rede e em relação ao seu nível de participação (por exemplo, apenas em determinadas transações). Diversos tipos de mecanismos de controle de acesso podem ser utilizados (por exemplo, os participantes existentes votam na adição de novas entidades, uma autoridade regulatória pode controlar a admissão).
[023]Em geral, uma rede blockchain de consórcio é privada entre
Petição 870190056823, de 19/06/2019, pág. 14/41
7/22 as entidades participantes. Em uma rede blockchain de consórcio, o processo de consenso é controlado por um conjunto autorizado de nódulos, um ou mais nódulos sendo operados por uma entidade respectiva (por exemplo, uma instituição financeira, companhia de seguros). Por exemplo, um consórcio de dez (10) entidades (por exemplo, as instituições financeiras, companhias de seguros) pode operar uma rede blockchain de consórcio, cada uma operando, pelo menos, um nódulo na rede blockchain de consórcio. Consequentemente, a rede blockchain de consórcio pode ser considerada uma rede privada em relação às entidades participantes. Em alguns exemplos, cada entidade (nódulo) deve assinar todos os blocos para que o bloco seja válido e adicionado ao blockchain. Em alguns exemplos, pelo menos, um subconjunto de entidades (nódulos) (por exemplo, pelo menos, 7 entidades) deve assinar cada bloco para que o bloco seja válido e adicionado ao blockchain.
[024]As realizações da presente especificação estão descritas em maiores detalhes no presente com referência a uma rede blockchain de consórcio, que é parcialmente pública entre as entidades participantes. Está contemplado, no entanto, que as realizações da presente especificação podem ser realizadas em qualquer tipo adequado de rede blockchain.
[025] Para fornecer o contexto para as realizações da presente especificação, e conforme apresentado acima, uma rede blockchain de consórcio pode ser considerada levemente centralizada, ou multicêntrica, uma vez que cada nódulo da rede blockchain de consórcio é operado por um participante no consórcio. Por exemplo, os participantes (por exemplo, as empresas) formam um consórcio que participa da rede blockchain de consórcio, em que são utilizados o(s) mesmo(s) tipo(s) de solicitações de serviço, e cada nódulo mantém a operação do blockchain. Na rede blockchain de consórcio, a blockchain desenvolve a base de confiança para os participantes autorizados de consórcio. Isso está em contraste com uma rede blockchain pública, por
Petição 870190056823, de 19/06/2019, pág. 15/41
8/22 exemplo, em que todas as informações de transação são armazenadas em uma blockchain pública em texto simples e é transparente para todos os participantes. Na rede blockchain de consórcio, os dados são criptografados como texto cifrado e são armazenados na blockchain.
[026]Consequentemente, as redes blockchain de consórcio utilizam a funcionalidade do gerenciamento da chave para possibilitar o isolamento de privacidade (por exemplo, o isolamento de dados de outros participantes na rede blockchain de consórcio) e o compartilhamento entre os participantes. Isto é, para possibilitar a criptografia na rede blockchain de consórcio, as chaves de criptografia são utilizadas pelos participantes. Por exemplo, cada participante possui uma chave privada, um par de chaves públicas (par de chaves público-privadas), que são utilizados para criptografar / descriptografar os dados e para verificar as transações. Por exemplo, a chave pública de um participante pode ser utilizada para verificar se os dados de uma transação foram originados com o participante. Tendo isto em vista, a funcionalidade do gerenciamento da chave é implementada na rede blockchain de consórcio para garantir o isolamento da privacidade e o compartilhamento dentro da rede blockchain de consórcio.
[027]Em algumas realizações, os pares de chave de criptografia utilizados para criptografar as transações dentro da rede blockchain de consórcio podem ser referidos como as chaves de serviço (isto é, o par de chaves públicoprivadas). Em alguns exemplos, as chaves de serviço são derivadas em unidades de tipos de serviço. Cada chave de serviço possui um participante diferente e um participante pode possuir diversas chaves de serviço dentro da rede blockchain de consórcio. Por exemplo, as chaves de serviço podem corresponder às transações entre os participantes dentro da rede blockchain de consórcio. A título de exemplo não limitante, um primeiro participante e um segundo participante podem possuir as respectivas chaves de serviço que
Petição 870190056823, de 19/06/2019, pág. 16/41
9/22 possibilitam que as transações privadas sejam realizadas entre o primeiro participante e o segundo participante dentro da rede blockchain de consórcio. O primeiro participante e um terceiro participante podem possuir as respectivas chaves de serviço que possibilitam que as transações privadas sejam realizadas entre o primeiro participante e o terceiro participante dentro da rede blockchain de consórcio. Neste exemplo, o primeiro participante possui um conjunto de chaves de serviço, uma para as transações com o segundo participante e outra para a transação com o terceiro participante.
[028] Para fornecer mais contexto, as empresas podem fornecer as redes blockchain em nome dos usuários. Por exemplo, as empresas podem fornecer os modelos blockchain como modelos de serviço (BaaS), através dos quais podem ser estabelecidas diversas redes blockchain diferentes. Como exemplo não limitante, uma empresa pode fornecer uma plataforma BaaS e um primeiro consórcio de participantes pode participar de uma primeira rede blockchain de consórcio dentro da plataforma BaaS, e um segundo consórcio de participantes pode participar de uma segunda rede blockchain de consórcio dentro a plataforma BaaS. Em geral, a empresa que opera a plataforma BaaS fornece a infraestrutura e serviços administrativos, entre diversos outros serviços.
[029]Cada participante de uma rede blockchain de consórcio hospedada na plataforma BaaS fornece a prova de identidade para a plataforma BaaS. Por exemplo, cada participante fornece um certificado de identidade para a plataforma BaaS. Em alguns exemplos, os certificados de identidade possibilitam a comunicação utilizando um protocolo de segurança. Os exemplos de protocolos de segurança incluem, sem limitação, a TLS (Transport Layer Security) e SSL (Secure Sockets Layer). Por exemplo, o OpenSSL pode ser utilizado para gerar um certificado de identidade (certificado SSL) para as comunicações seguras entre o participante e a plataforma BaaS (por exemplo,
Petição 870190056823, de 19/06/2019, pág. 17/41
10/22 um servidor BaaS). A plataforma BaaS utiliza o certificado de identidade para confirmar a identidade da fonte da comunicação.
[030]Ao provisionar uma rede blockchain de consórcio, a plataforma BaaS precisa garantir que os administradores e participantes de cada rede blockchain de consórcio possam configurar e obter as chaves de serviço de maneira simples e segura. Diversas técnicas de distribuição de chaves podem ser utilizadas para o administrador transmitir as chaves aos participantes. Os exemplos de técnicas de distribuição de chaves podem incluir, sem limitação, a troca de chaves Diffie-Hellman e distribuição de chaves offline. A troca de chaves Diffie-Hellman é uma técnica criptográfica que implementa a troca de chaves em um ambiente de canal não confiável. A chave de distribuição de chaves offline desanexa a rede blockchain de consórcio, enviando as chaves para os destinatários designados por correio ou outros canais.
[031] Embora as técnicas tradicionais de distribuição de chaves sejam eficazes para a transmissão de chaves únicas, tais técnicas não são desejadas no caso de diversas chaves de serviço em uma rede blockchain de consórcio. Esse especialmente é o caso, uma vez que cada chave de serviço pode possuir diferentes combinações de participantes. Além disso, nas técnicas tradicionais, as chaves de serviço precisam ser armazenadas em um banco de dados centralizado, o que aumenta o risco geral do sistema. Além disso, as técnicas tradicionais de distribuição de chaves são altamente dependentes da segurança do canal. Se a distribuição de chaves for executada em um ambiente público, por exemplo, é fácil vazar as chaves e expor o sistema a riscos.
[032]Em vista do contexto acima, as realizações da presente especificação são direcionadas para o gerenciamento das chaves de criptografia assimétrica (chaves de serviço) em redes blockchain de consórcio. Em algumas realizações, e conforme descrito em maiores detalhes no presente, uma plataforma BaaS deriva as chaves de serviço utilizando a tecnologia de
Petição 870190056823, de 19/06/2019, pág. 18/41
11/22 derivação de chave assimétrica. No entanto, a plataforma BaaS não salva as chaves de serviço. De acordo com realizações da presente especificação, o administrador da rede blockchain de consórcio pode autorizar os participantes de acordo com diferentes chaves de serviço através da plataforma BaaS. Em algumas realizações, a chave de serviço é criptografada utilizando a chave pública contida no certificado de identidade do respectivo participante (por exemplo, o certificado de identidade do participante na rede blockchain de consórcio carregado na plataforma BaaS). Desta maneira, é assegurado que apenas o participante designado pode descriptografar a chave privada da chave de serviço (conforme mencionado acima, a chave de serviço é fornecida como um par de chaves público-privadas).
[033]A Figura 1 ilustra um exemplo de ambiente (100) que pode ser utilizado para realizar as realizações da presente especificação. Em alguns exemplos, o ambiente de exemplo (100) possibilita que as entidades participem de uma rede blockchain de consórcio (102). O ambiente de exemplo (100) inclui os sistemas de computação (106), (108) e uma rede (110). Em alguns exemplos, a rede (110) inclui uma rede área local (LAN), rede de longa distância (WAN), Internet ou uma de suas combinações, e conecta os sites da Web, dispositivos de usuário (por exemplo, os dispositivos de computação) e sistemas de backend. Em alguns exemplos, a rede (110) pode ser acessada através de um link de comunicação com fio e/ou sem fio.
[034]No exemplo descrito, os sistemas de computação (106), (108) podem incluir cada sistema de computação adequado que possibilita a participação como um nódulo na rede blockchain de consórcio (102). Os exemplos de dispositivos de computação incluem, sem limitação, um servidor, um computador de mesa, um computador laptop, um dispositivo de computação tablet e um smartphone. Em alguns exemplos, os sistemas de computação (106), (108) hospedam um ou mais serviços implementados por computador para
Petição 870190056823, de 19/06/2019, pág. 19/41
12/22 interagir com a rede blockchain de consórcio (102). Por exemplo, o sistema de computação (106) pode hospedar os serviços implementados por computador de uma primeira entidade (por exemplo, o usuário A), como um sistema de gerenciamento de transações que a primeira entidade utiliza para gerenciar suas transações com uma ou mais entidades (por exemplo, outros usuários). O sistema de computação (108) pode hospedar os serviços implementados por computador de uma segunda entidade (por exemplo, o usuário B), como um sistema de gerenciamento de transações que a segunda entidade utiliza para gerenciar suas transações com uma ou mais outras entidades (por exemplo, outros usuários). No exemplo da Figura 1, a rede blockchain de consórcio (102) é representada como uma rede de nódulos peer-to-peer, e os sistemas de computação (106), (108) fornecem os nódulos da primeira entidade e segunda entidade, respectivamente, que participam na rede blockchain de consórcio (102).
[035]A Figura 2 ilustra um exemplo de arquitetura conceptual (200) de acordo com as realizações da presente especificação. A arquitetura conceituai de exemplo (200) inclui uma camada de entidade (202), uma camada de serviços hospedados (204) e uma camada de rede blockchain (206). No exemplo ilustrado, a camada de entidade (202) inclui três entidades, Entidade_1 (E1), Entidade_2 (E2) e Entidade_3 (E3), cada entidade possui um respectivo sistema de gerenciamento de transações (208).
[036] No exemplo descrito, a camada de serviços hospedados (204) inclui as interfaces (210) para cada sistema de gerenciamento de transação (210). Em alguns exemplos, um sistema de gerenciamento de transação (208) se comunica com uma respectiva interface (210) em uma rede (por exemplo, a rede (110) da Figura 1) utilizando um protocolo (por exemplo, o protocolo de transferência de hipertexto seguro (HTTPS)). Em alguns exemplos, cada interface (210) fornece uma conexão de comunicação entre um sistema de
Petição 870190056823, de 19/06/2019, pág. 20/41
13/22 gerenciamento de transação (208) e a camada de rede blockchain (206). Mais especialmente, a interface (210) se comunica com uma rede blockchain (212) da camada de rede blockchain (206). Em alguns exemplos, a comunicação entre uma interface (210) e a camada de rede blockchain (206) é conduzida utilizando as ligações de procedimento remoto (RPCs). Em alguns exemplos, as interfaces (210) “hospedam” os nódulos de rede blockchain para os respectivos sistemas de gerenciamento de transação (208). Por exemplo, as interfaces (210) fornecem a interface de programação de aplicativos (API) para acesso à rede blockchain (212).
[037]Conforme descrito no presente, a rede blockchain (212) é fornecida como uma rede peer-to-peer incluindo uma pluralidade de nódulos (214) que gravam a informação imutável em uma blockchain (216). Embora uma única blockchain (216) esteja esquematicamente ilustrada, diversas cópias da blockchain (216) são fornecidas e são mantidas através da rede blockchain (212). Por exemplo, cada nódulo (214) armazena uma cópia da blockchain. Em algumas realizações, a blockchain (216) armazena as informações associadas às transações que são realizadas entre duas ou mais entidades que participam da rede blockchain de consórcio.
[038]Conforme apresentado acima, as realizações da presente especificação são direcionadas para o gerenciamento das chaves de criptografia assimétrica nas redes blockchain de consórcio. Em algumas realizações, uma árvore de chave de função de derivação de chave (KDF) é utilizada por um administrador para gerar as chaves de serviço para os participantes em uma rede blockchain de consórcio. Conforme descrito no presente, o administrador não salva as chaves de serviço. Em vez disso, o administrador mantém uma tabela de dados que define o acesso de cada participante às respectivas chaves de serviço. Continuando com o exemplo acima, uma rede blockchain de consórcio pode possibilitar que as transações privadas sejam realizadas entre
Petição 870190056823, de 19/06/2019, pág. 21/41
14/22 um primeiro participante e um segundo participante, e o primeiro participante e um terceiro participante. Por conseguinte, e neste exemplo, a tabela de dados indica que o primeiro participante possui os privilégios de acesso para as transações com o segundo participante e o terceiro participante, que o segundo participante possui os privilégios de acesso para as transações com o primeiro participante e que o terceiro participante possui os privilégios de acesso para as transações com o primeiro participante.
[039]Quando um participante envia uma solicitação para uma chave de serviço (por exemplo, para a plataforma BaaS), os direitos de acesso do participante são verificados com base na tabela de dados, a chave de serviço é criada pela plataforma BaaS e fornecida ao participante. Continuando com o exemplo acima, o primeiro participante pode solicitar uma chave de serviço para as transações seguras com o segundo participante. A plataforma BaaS pode ser referida à tabela de dados para determinar se o primeiro participante possui os direitos de acesso para as transações seguras com o segundo participante e, em resposta, pode gerar a chave de serviço (par de chaves público-privadas), criptografando, pelo menos, uma parte do serviço chave (por exemplo, criptografar a chave privada) e enviando a chave do serviço ao primeiro participante. A chave de serviço, no entanto, não é armazenada na plataforma BaaS.
[040]Conforme descrito no presente, as realizações da presente especificação combinam a criptografia da chave de serviço com o certificado de identidade do participante da rede blockchain de consórcio na plataforma BaaS. Dessa maneira, a chave de serviço é criptografada utilizando a chave pública associada ao certificado de identidade, e somente o participante pode descriptografar (utilizando a chave privada utilizada para o certificado de identidade) e obter a chave de serviço não criptografada.
[041] De maneira mais detalhada, o certificado de identidade de um
Petição 870190056823, de 19/06/2019, pág. 22/41
15/22 participante /está associado a uma chave privada (secreta) (SKID J, e uma chave pública (PKID i). O participante armazena a chave privada (SKID t), e não é compartilhada. A chave pública (PKID t) é compartilhada com a plataforma BaaS. A chave de serviço gerada pela plataforma BaaS para o participante / inclui uma chave privada (SKSK t) e uma chave pública (PKSK t). De acordo com as realizações da presente especificação, a plataforma BaaS cria um pacote de chaves de serviço (pacote de dados) que é enviado ao participante. Em alguns exemplos, a plataforma BaaS criptografa a chave privada da chave de serviço utilizando a chave pública do participante (por exemplo, PKID í(SKsk e fornece o pacote de chaves como a chave pública da chave de serviço e da chave privada criptografada da chave de serviço (por exemplo, [PKSK b PKID L(SKSK f)]). O participante recebe o pacote de chaves e descriptografa a chave privada (SKSK i) utilizando a chave privada (SKID t). Dessa maneira, o participante obtém a chave de serviço para realizar as transações dentro da rede blockchain de consórcio.
[042]A Figura 3A descreve uma arquitetura de exemplo (300) de acordo com as realizações da presente especificação. A arquitetura de exemplo (300) inclui um servidor BaaS (302) e os clientes (304). Cada um dos clientes (304) está associado a um respectivo participante em uma rede blockchain de consórcio fornecida dentro de uma plataforma BaaS.
- Em algumas realizações, o servidor de BaaS (302) inclui um módulo de gerenciamento de participante (306), um módulo de autorização de chave (308) e um módulo de computação de chave (310).
[043]Em alguns exemplos, o módulo de gerenciamento de participante (306) gerencia os participantes em cada rede blockchain de consórcio provisionada dentro da plataforma de BaaS. Por exemplo, o módulo de gerenciamento de participante (306) armazena os certificados de identidade e chaves públicas correspondentes para cada participante em uma rede
Petição 870190056823, de 19/06/2019, pág. 23/41
16/22 blockchain de consórcio. Em alguns exemplos, o módulo de autorização de chave (308) processa os pedidos de chaves de serviço dos participantes para determinar se os participantes estão autorizados para as chaves de serviço solicitadas. Em alguns exemplos, o módulo de computação de chave (310) gera as chaves de serviço utilizando a árvore de chave KDF para os respectivos participantes.
[044] Para os propósitos de ilustração, uma solicitação de chave de serviço de exemplo de um cliente (304) (Cliente A) será descrito com referência às Figuras 3A e 3B.
[045]A Figura 3B ilustra um fluxograma de exemplo (320), de acordo com realizações da presente especificação. O diagrama de fluxo de exemplo (320) inclui o cliente (304) (primeiro participante (Participante 1)) e o servidor BaaS (302). O cliente (304) é operado por, ou em nome de um primeiro participante em uma rede blockchain de consórcio fornecida por uma plataforma BaaS. O servidor (BaaS) (302) fornece a funcionalidade administrativa dentro da plataforma BaaS, conforme descrito no presente.
[046]Em algumas realizações, e conforme descrito no presente, diversos participantes envolvem a plataforma BaaS para estabelecer uma rede blockchain de consórcio dentro da plataforma BaaS, incluindo o participante associado ao cliente (304). Como parte do estabelecimento da rede blockchain de consórcio, os participantes recebem convites do administrador (por exemplo, do servidor BaaS (302)) para carregar os respectivos certificados de identidade para a plataforma BaaS.
[047]No exemplo das Figuras 3A e 3B, o cliente (304) criptografa seu certificado de identidade utilizando sua chave pública e carrega o certificado de identidade criptografado (por exemplo, [SK/c i(7ci)]) Para ° servidor BaaS (302). O servidor BaaS (302) decriptografa o certificado de identidade utilizando a respectiva chave pública (PKIC J e confirma a identidade do participante. O
Petição 870190056823, de 19/06/2019, pág. 24/41
17/22 servidor de BaaS (302) configura as permissões de chave de serviço (privilégios de acesso) na rede blockchain de consórcio. Por exemplo, e continuando com o exemplo acima, a plataforma de BaaS (302) pode registrar em uma tabela de dados que o primeiro participante pode conduzir as transações privadas com cada um dos segundos e terceiros participantes, respectivamente.
[048]O cliente (304) envia uma solicitação de chave de serviço ao servidor BaaS (302). No exemplo descrito, o cliente (304) envia uma solicitação de chave de serviço para uma chave de serviço para criptografar as transações entre o primeiro participante e o segundo participante (por exemplo, REQ^). Em resposta à solicitação, o servidor BaaS (302) verifica os direitos de acesso do primeiro participante (por exemplo, utilizando a tabela de dados) e confirma que o primeiro participante está autorizado para as transações privadas com o segundo participante. Em resposta, o servidor de BaaS (302) calcula a chave de serviço correspondente utilizando a árvore de chave KDF.
[049]O servidor BaaS (302) fornece um pacote de chaves para transmitir a chave de serviço ao cliente (304). Conforme descrito no presente, o servidor BaaS (302) utiliza a chave pública do primeiro participante associada ao certificado de identidade (por exemplo, PKIC J para criptografar a chave privada da chave de serviço (por exemplo, PKIC ^SKsk J). O pacote de chaves inclui a chave pública da chave de serviço e a chave privada criptografada da chave de serviço (por exemplo, [PKSK v PKIC J]). O servidor de BaaS (302) envia o pacote de dados para o cliente (304). O cliente (304) decriptografa a chave privada criptografada da chave de serviço utilizando a chave privada associada ao certificado de identidade do primeiro participante (por exemplo, SKIC J.
[050]Pelo menos, uma porção do diagrama de fluxo de exemplo (320) é repetida, cada vez que o primeiro participante solicita uma nova chave de serviço. Por exemplo, para conduzir as transações com o terceiro participante, o primeiro participante envia outra solicitação de chave de serviço para uma
Petição 870190056823, de 19/06/2019, pág. 25/41
18/22 chave de serviço para criptografar as transações entre o primeiro participante e o segundo participante (por exemplo, REQ±_3). Em resposta, o serviço de BaaS (302) pode fornecer outra chave de serviço ao primeiro participante para possibilitar que o primeiro participante se comunique com segurança com o terceiro participante dentro da rede blockchain de consórcio. Consequentemente, o primeiro participante mantém, pelo menos, dois conjuntos de chaves de serviço (por exemplo, a chave de serviço para as transações com o segundo participante e a chave de serviço para as transações com o terceiro participante), enquanto a plataforma BaaS não armazena as chaves de serviço.
[051]A Figura 4 representa um processo de exemplo (400) que pode ser executado de acordo com as realizações da presente especificação. Em algumas realizações, o processo de exemplo (400) pode ser realizado utilizando um ou mais programas executáveis por computador executados utilizando um ou mais dispositivos de computação.
[052]Os certificados de identidade do participante são solicitados (402). Por exemplo, como parte do estabelecimento de uma rede blockchain de consórcio dentro de uma plataforma BaaS, um servidor BaaS envia as solicitações de certificados de identidade para cada participante da rede blockchain de consórcio. Os certificados de identidade do participante são recebidos (404). Por exemplo, em resposta a uma solicitação de certificado de identidade, cada participante envia um certificado de identidade (por exemplo, criptografado utilizando a chave privada do participante) para o servidor BaaS e o servidor BaaS descriptografa o certificado de identidade utilizando a chave pública do participante.
[053]Os privilégios de acesso dos respectivos participantes são registrados (406). Por exemplo, para cada participante, um ou mais tipos de serviço são registrados em uma tabela de autorização de serviço (tabela de dados) pelo servidor BaaS. Continuando com o primeiro, segundo terceiro
Petição 870190056823, de 19/06/2019, pág. 26/41
19/22 exemplo de participante acima, a tabela de autorização de serviço pode registrar que o primeiro participante pode conduzir as transações seguras com o segundo participante e o terceiro participante, separadamente, que o segundo participante pode conduzir as transações seguras com o primeiro participante, e que o terceiro participante é capaz de realizar as transações seguras com o primeiro participante.
[054]Uma solicitação de chave de serviço é recebida (408). Por exemplo, para poder conduzir uma transação segura dentro da rede blockchain de consórcio, um participante precisa, em primeiro lugar, solicitar uma chave de serviço adequada. Por exemplo, para o primeiro participante realizar as transações seguras com o segundo participante (ou o terceiro participante), o primeiro participante envia uma respectiva solicitação de chave de serviço para a plataforma BaaS. É determinado se o participante está autorizado para a chave de serviço solicitada (410). Por exemplo, o servidor BaaS faz referência à tabela de autorização de serviço para determinar se o participante que enviou a solicitação está autorizado para o serviço. Se o participante não estiver autorizado para a chave de serviço solicitada, um erro será enviado (412).
[055]Se o participante for autorizado para a chave de serviço solicitada, a chave de serviço é gerada (414). Por exemplo, o servidor BaaS gera a chave de serviço (par de chaves público-privadas) utilizando a árvore de chave KDF. Um pacote de chaves é fornecido (416). Por exemplo, o servidor BaaS criptografa a chave privada da chave de serviço utilizando a chave pública do participante e cria um pacote de chave de serviço que inclui a chave pública da chave de serviço e a chave privada criptografada. O pacote de chaves de serviço é enviado para (418). O servidor BaaS envia o pacote de chaves de serviço ao participante. Conforme descrito no presente, o participante decriptografa a chave privada criptografada da chave de serviço utilizando a chave privada do participante.
Petição 870190056823, de 19/06/2019, pág. 27/41
20/22 [056]As características descritas podem ser implementadas em circuitos eletrônicos digitais, ou em hardware de computador, firmware, software ou em combinações dos mesmos. O aparelho pode ser implementado em um produto de programa de computador tangivelmente incorporado em um portador de informação (por exemplo, em um dispositivo de armazenamento legível por máquina) para a execução de um processador programável; e as etapas do método podem ser realizadas através de um processador programável executando um programa de instruções para realizar as funções das realizações descritas operando nos dados de entrada e gerando a saída. As características descritas podem ser implementadas, de maneira vantajosa, em um ou mais programas de computador que são executáveis em um sistema programável incluindo, pelo menos, um processador programável acoplado para receber os dados e instruções a partir do mesmo, e para transmitir os dados e instruções para, um sistema de armazenamento de dados, pelo menos, um dispositivo de entrada e, pelo menos, um dispositivo de saída. Um programa de computador é um conjunto de instruções que pode ser utilizado, de maneira direta ou indireta, em um computador para realizar uma determinada atividade ou trazer um resultado determinado. Um programa de computador pode ser escrito em qualquer forma de linguagem de programação, incluindo as linguagens compiladas ou interpretadas, e pode ser desmembrado em qualquer forma, incluindo a maneira como um programa autônomo ou como um módulo, componente, sub-rotina, ou outra unidade adequada para a utilização em um ambiente de computação.
[057]Os processadores adequados para a execução de um programa de instruções incluem, a título de exemplo, os microprocessadores de utilização geral e especial, e o único processador ou um de múltiplos processadores de qualquer tipo de computador. Em geral, um processador irá receber as instruções e dados de uma memória de somente leitura ou de uma
Petição 870190056823, de 19/06/2019, pág. 28/41
21/22 memória de acesso aleatório ou de ambas. Os elementos de um computador podem incluir um processador para executar as instruções e uma ou mais memórias para armazenar as instruções e dados. Em geral, um computador também pode incluir, ou estar operacionalmente acoplado para se comunicar com um ou mais dispositivos de armazenamento em massa para armazenar os arquivos de dados; tais dispositivos incluem os discos magnéticos, tais como os discos rígidos internos e discos removíveis; discos magneto-óticos; e discos óticos. Os dispositivos de armazenamento adequados para incorporar tangivelmente as instruções e dados de programas de computador incluem todas as formas de memória não volátil, incluindo, por exemplo, os dispositivos de memória semicondutores, tais como o EPROM, EEPROM e dispositivos de memória flash; discos magnéticos, tais como os discos rígidos internos e discos removíveis; discos magneto-óticos; e discos de CD-ROM e DVD-ROM. O processador e a memória podem ser complementados, ou incorporados em circuitos integrados específicos de aplicativos (ASICs).
[058]Para fornecer a interação com um usuário, as características podem ser implementadas em um computador que possui um dispositivo de tela tal como um tubo de raios catódicos (CRT) ou a tela de cristal líquido (LCD) para a exibição de informação ao usuário e um teclado e um dispositivo apontador, tal como um mouse ou um trackball, pelo qual o usuário pode fornecer a entrada para o computador.
[059]As características podem ser implementadas em um sistema de computador que inclui um componente de back-end, tal como um servidor de dados, ou que inclui um componente de middleware, tal como um servidor de aplicativos ou um servidor de Internet, ou que inclui um componente de frontend, tal como um computador de cliente que possui uma interface gráfica do usuário ou um navegador da Internet, ou qualquer combinação deles. Os componentes do sistema podem ser conectados por qualquer forma ou meio de
Petição 870190056823, de 19/06/2019, pág. 29/41
22/22 comunicação de dados digitais, tal como uma rede comunicação. Os exemplos de redes de comunicação, por exemplo, incluem uma rede área local (LAN), uma rede de longa distância (WAN) e os computadores e redes que formam a Internet.
[060]0 sistema de computador pode incluir os clientes e servidores. Um cliente e um servidor, em geral, são remotos entre si e, em geral, interagem através de uma rede, tal como aquela descrita. A relação de cliente e servidor surge em virtude de programas de computador em execução nos respectivos computadores e que possui uma relação cliente-servidor entre si.
[061]Além disso, os fluxos lógicos ilustrados nas Figuras não exigem a ordem especial mostrada, ou ordem sequencial, para alcançar os resultados desejados. Além disso, outras etapas podem ser fornecidas, ou etapas podem ser eliminadas, dos fluxos descritos, e outros componentes podem ser adicionados ou removidos dos sistemas descritos. Por conseguinte, outras realizações estão dentro do âmbito das reivindicações seguintes.
[062]Uma série de realizações da presente invenção foram descritas. No entanto, será entendido que diversas modificações podem ser realizadas sem se afastar do espírito e âmbito da presente invenção. Por conseguinte, outras realizações estão dentro do âmbito das reivindicações seguintes.

Claims (21)

1. MÉTODO (400) IMPLEMENTADO POR COMPUTADOR PARA O GERENCIAMENTO DA CHAVE DE SERVIÇO para as redes blockchain de consórcio (102) dentro de uma plataforma blockchain como um serviço (BaaS) (302), o método caracterizado pelo fato de que compreende as etapas de:
- o recebimento de uma solicitação (410) de chave de serviço de um participante de uma rede blockchain de consórcio (102) provisionada na plataforma BaaS;
- a determinação (414) que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio (102);
- o fornecimento (416) de um pacote de chaves que compreende uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço; e
- o envio (418) do pacote de chaves ao participante, o participante descriptografando a chave privada da chave de serviço utilizando uma chave pública associada ao participante.
2. MÉTODO (400), de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende, antes de receber a solicitação da chave de serviço do participante, receber (404) um certificado de identidade do participante.
3. MÉTODO (400), de acordo com a reivindicação 2, caracterizado pelo fato de que o certificado de identidade é recebido como um certificado de identidade criptografado, e a plataforma BaaS descriptografa o certificado de identidade utilizando uma chave pública do participante.
4. MÉTODO (400), de acordo com a reivindicação 1, caracterizado pelo fato de que ainda compreende criptografar a chave privada
Petição 870190056823, de 19/06/2019, pág. 31/41
2/5 da chave de serviço utilizando uma chave pública associada ao participante.
5. MÉTODO (400), de acordo com a reivindicação 1, caracterizado pelo fato de que a chave de serviço é gerada utilizando uma árvore de chave de função de derivação de chave (KDF) em resposta à determinação de que o participante está autorizado para a chave de serviço.
6. MÉTODO (400), de acordo com a reivindicação 1, caracterizado pelo fato de que a chave de serviço está ausente da plataforma BaaS após o envio do pacote de chaves para o participante.
7. MÉTODO (400), de acordo com a reivindicação 1, caracterizado pelo fato de que o participante utiliza a chave privada da chave de serviço para criptografar as transações com um ou mais outros participantes dentro da rede blockchain de consórcio (102).
8. MEIO LEGÍVEL POR COMPUTADOR codificados com instruções caracterizados pelo fato de que, quando executadas por um ou mais computadores, ocasionam que um ou mais computadores executem as operações de gerenciamento da chave de serviço para as redes blockchain de consórcio (102) em uma blockchain como um serviço (BaaS), as operações compreendem:
- o recebimento (408) de uma solicitação de chave de serviço de um participante de uma rede blockchain de consórcio (102) provisionada na plataforma BaaS;
- a determinação (410) que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio (102);
- o fornecimento (416) de um pacote de chaves que compreende uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço; e
- o envio (418) do pacote de chaves ao participante, o participante
Petição 870190056823, de 19/06/2019, pág. 32/41
3/5 descriptografando a chave privada da chave de serviço utilizando uma chave pública associada ao participante.
9. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 8, caracterizado pelo fato de que as operações ainda compreendem, antes de receber a solicitação da chave de serviço do participante, receber (404) um certificado de identidade do participante.
10. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 9, caracterizado pelo fato de que o certificado de identidade é recebido como um certificado de identidade criptografado, e a plataforma BaaS descriptografa o certificado de identidade utilizando uma chave pública do participante.
11. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 8, caracterizado pelo fato de que as operações ainda compreendem a criptografia da chave privada da chave de serviço utilizando uma chave pública associada ao participante.
12. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 8, caracterizado pelo fato de que a chave de serviço é gerada utilizando uma árvore de chave da função de derivação de chave (KDF) em resposta à determinação de que o participante está autorizado para a chave de serviço.
13. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 8, caracterizado pelo fato de que a chave de serviço está ausente da plataforma BaaS após o envio do pacote de chaves para o participante.
14. MEIO LEGÍVEL POR COMPUTADOR, de acordo com a reivindicação 8, caracterizado pelo fato de que o participante utiliza a chave privada da chave de serviço para criptografar as transações com um ou mais outros participantes dentro da rede blockchain de consórcio (102).
15. SISTEMA PARA IMPLEMENTAR UM MÉTODO,
Petição 870190056823, de 19/06/2019, pág. 33/41
4/5 caracterizado pelo fato de que compreende:
- um ou mais computadores; e
- uma ou mais memórias legíveis por computador acopladas a um ou mais computadores e configuradas com as instruções executáveis por um ou mais computadores para:
- receber uma solicitação de chave de serviço de um participante de uma rede blockchain de consórcio (102) provisionada na plataforma BaaS;
- determinar que o participante está autorizado para a chave de serviço com base em uma tabela de autorização de serviço que registra os privilégios de participante na rede blockchain de consórcio (102);
- fornecer um pacote de chaves que compreende uma chave privada criptografada da chave de serviço e uma chave pública da chave de serviço; e
- enviar o pacote de chaves para o participante, o participante descriptografar a chave privada da chave de serviço utilizando uma chave pública associada ao participante.
16. SISTEMA, de acordo com a reivindicação 15, caracterizado pelo fato de que uma ou mais memórias legíveis por computador são configuradas com as instruções adicionais executáveis por um ou mais computadores para, antes de receber a solicitação da chave de serviço do participante, receber um certificado de identidade do participante.
17. SISTEMA, de acordo com a reivindicação 16, caracterizado pelo fato de que o certificado de identidade é recebido como um certificado de identidade criptografado, e a plataforma BaaS descriptografa o certificado de identidade utilizando uma chave pública do participante.
18. SISTEMA, de acordo com a reivindicação 15, caracterizado pelo fato de que a uma ou mais memórias legíveis por computador são configuradas com as instruções adicionais executáveis por um ou mais
Petição 870190056823, de 19/06/2019, pág. 34/41
5/5 computadores para criptografar a chave privada da chave de serviço utilizando uma chave pública associada ao participante.
19. SISTEMA, de acordo com a reivindicação 15, caracterizado pelo fato de que a chave de serviço é gerada utilizando uma árvore de chave da função de derivação de chave (KDF) em resposta à determinação de que o participante está autorizado para a chave de serviço.
20. SISTEMA, de acordo com a reivindicação 15, caracterizado pelo fato de que a chave de serviço está ausente da plataforma BaaS após o envio do pacote de chaves para o participante.
21. SISTEMA, de acordo com a reivindicação 15, caracterizado pelo fato de que o participante utiliza a chave privada da chave de serviço para criptografar as transações com um ou mais outros participantes dentro da rede blockchain de consórcio (102).
BR112019007984-0A 2018-11-27 2018-11-27 método implementado por computador para o gerenciamento da chave de serviço, meio legível por computador e sistema para implementar um método BR112019007984A2 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/117576 WO2019072281A2 (en) 2018-11-27 2018-11-27 ASYMMETRICAL KEY MANAGEMENT IN CONSORTIUM BLOCK CHAIN NETWORKS

Publications (1)

Publication Number Publication Date
BR112019007984A2 true BR112019007984A2 (pt) 2019-11-12

Family

ID=66100016

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019007984-0A BR112019007984A2 (pt) 2018-11-27 2018-11-27 método implementado por computador para o gerenciamento da chave de serviço, meio legível por computador e sistema para implementar um método

Country Status (15)

Country Link
US (1) US10819509B2 (pt)
EP (1) EP3652884B1 (pt)
JP (1) JP6873235B2 (pt)
KR (1) KR102286301B1 (pt)
CN (1) CN110622464B (pt)
AU (1) AU2018348322C1 (pt)
BR (1) BR112019007984A2 (pt)
CA (1) CA3041220C (pt)
MX (1) MX2019004671A (pt)
PH (1) PH12019500863A1 (pt)
RU (1) RU2733097C1 (pt)
SG (1) SG11201903541YA (pt)
TW (1) TWI706661B (pt)
WO (1) WO2019072281A2 (pt)
ZA (1) ZA201902482B (pt)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210185091A1 (en) * 2018-12-28 2021-06-17 Mox-SpeedChain, LLC Advanced Security System for Implementation in an Internet of Things (IOT) Blockchain Network
US11263333B2 (en) * 2019-04-25 2022-03-01 International Business Machines Corporation Multi-subject device access authorization
WO2019137565A2 (en) 2019-04-26 2019-07-18 Alibaba Group Holding Limited Distributed key management for trusted execution environments
CN110474884B (zh) * 2019-07-24 2024-04-23 北京百度网讯科技有限公司 以太坊网络系统及通信方法、设备及计算机可读存储介质
CN110380871A (zh) * 2019-08-29 2019-10-25 北京艾摩瑞策科技有限公司 搜索平台的用户区块链私钥的代签方法及其装置
CN110545189A (zh) * 2019-08-29 2019-12-06 北京艾摩瑞策科技有限公司 社区平台用户的区块链私钥的代签方法及其装置
US10903989B2 (en) * 2019-08-30 2021-01-26 Advanced New Technologies Co., Ltd. Blockchain transaction processing method and apparatus
CN111181718A (zh) * 2019-12-30 2020-05-19 南京如般量子科技有限公司 一种基于联盟链的抗量子计算ike系统和协商通信方法
CN111181730A (zh) * 2019-12-31 2020-05-19 航天信息股份有限公司 用户身份生成及更新方法和装置、存储介质和节点设备
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
CN111294356B (zh) * 2020-02-11 2022-09-06 深圳壹账通智能科技有限公司 基于区块链的组织节点上链方法和系统
CN111292014B (zh) * 2020-03-10 2023-06-16 江苏大学 一种基于联盟链的智能农机调度系统及其调度方法
US20210314172A1 (en) * 2020-04-06 2021-10-07 Wivity Inc. Validating integrity of private keys for on a data communications network using blockchain key registry
CN111614739B (zh) * 2020-05-08 2023-06-23 中国信息通信研究院 网络测量数据存储方法、装置和系统
US11184395B1 (en) 2020-05-13 2021-11-23 International Business Machines Corporation Cross-network identity provisioning
CN111813864B (zh) * 2020-07-23 2024-07-23 华润数字科技有限公司 一种联盟链搭建方法、装置、计算机设备及存储介质
CN112134867B (zh) * 2020-09-15 2023-04-07 重庆鸿荣源智能科技有限公司 一种基于区块链的用户行为存证系统及其上链确权方法
JP7534620B2 (ja) * 2020-09-28 2024-08-15 富士通株式会社 通信プログラム、通信装置、及び通信方法
US11736456B2 (en) 2020-09-29 2023-08-22 International Business Machines Corporation Consensus service for blockchain networks
CN112202612B (zh) * 2020-09-29 2023-06-20 东软集团股份有限公司 区块链节点管理方法、存储介质、节点以及区块链系统
CN113326533B (zh) * 2021-05-21 2023-07-28 南威软件股份有限公司 基于区块链及分布式文件存储的电子证照服务系统及方法
CN113489733B (zh) 2021-07-13 2022-07-29 郑州轻工业大学 基于区块链的内容中心网络隐私保护方法
CN113364589B (zh) * 2021-08-10 2021-11-02 深圳致星科技有限公司 用于联邦学习安全审计的密钥管理系统、方法及存储介质
CN113923233A (zh) * 2021-09-30 2022-01-11 广联达科技股份有限公司 一种联盟链管理方法
CN114139203B (zh) * 2021-12-03 2022-10-14 成都信息工程大学 基于区块链的异构身份联盟风险评估系统、方法及终端
KR102500458B1 (ko) 2022-03-18 2023-02-16 주식회사 빅스터 컨소시엄 블록체인 네트워크 기반의 nft 기술을 활용한 디지털 자산 마켓 서비스 제공방법
CN115150417A (zh) * 2022-07-01 2022-10-04 南方电网电力科技股份有限公司 一种基于区块链的数据存储方法及相关装置
CN115967583B (zh) * 2023-03-16 2023-06-06 安羚科技(杭州)有限公司 基于联盟链的密钥管理系统及方法

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020164036A1 (en) * 2000-12-12 2002-11-07 Philippe Stransky Certification of transactions
US8572408B2 (en) 2002-11-05 2013-10-29 Sony Corporation Digital rights management of a digital device
GB2423221A (en) * 2005-02-14 2006-08-16 Ericsson Telefon Ab L M Key delivery method involving double acknowledgement
US10628578B2 (en) * 2013-03-15 2020-04-21 Imagine Communications Corp. Systems and methods for determining trust levels for computing components using blockchain
JP6636058B2 (ja) * 2015-07-02 2020-01-29 ナスダック, インコーポレイテッドNasdaq, Inc. 分散トランザクションデータベースにおける出所保証のシステムおよび方法
US11941588B2 (en) * 2015-11-06 2024-03-26 Cable Television Laboratories, Inc. Systems and methods for blockchain virtualization and scalability
US10103885B2 (en) * 2016-01-20 2018-10-16 Mastercard International Incorporated Method and system for distributed cryptographic key provisioning and storage via elliptic curve cryptography
US10447478B2 (en) * 2016-06-06 2019-10-15 Microsoft Technology Licensing, Llc Cryptographic applications for a blockchain system
EP3491572B1 (en) * 2016-07-26 2021-09-01 NEC Corporation Method for controlling access to a shared resource
US10067810B2 (en) 2016-07-28 2018-09-04 Cisco Technology, Inc. Performing transactions between application containers
CA2975843C (en) * 2016-08-10 2023-06-13 Peer Ledger Inc. Apparatus, system, and methods for a blockchain identity translator
US10361853B2 (en) * 2016-10-12 2019-07-23 Bank Of America Corporation Automated data authentication and service authorization via cryptographic keys in a private blockchain
US20180130034A1 (en) * 2016-11-07 2018-05-10 LedgerDomain, LLC Extended blockchains for event tracking and management
CN106991334B (zh) * 2016-11-24 2021-03-02 创新先进技术有限公司 一种数据存取的方法、系统及装置
US10257206B2 (en) * 2016-12-21 2019-04-09 International Business Machines Corporation Monitoring actions performed by a network of peer devices using a blockchain
EP3563325A4 (en) * 2016-12-30 2020-09-02 Slock.it GmbH BLOCKCHAIN ACTIVATED SERVICE PROVIDER SYSTEM
US20180225661A1 (en) * 2017-02-07 2018-08-09 Microsoft Technology Licensing, Llc Consortium blockchain network with verified blockchain and consensus protocols
US10452998B2 (en) * 2017-03-19 2019-10-22 International Business Machines Corporation Cognitive blockchain automation and management
US10489597B2 (en) * 2017-03-28 2019-11-26 General Electric Company Blockchain verification of network security service
US10944546B2 (en) * 2017-07-07 2021-03-09 Microsoft Technology Licensing, Llc Blockchain object interface
US10924466B2 (en) * 2017-07-28 2021-02-16 SmartAxiom, Inc. System and method for IOT security
US10565192B2 (en) * 2017-08-01 2020-02-18 International Business Machines Corporation Optimizing queries and other retrieve operations in a blockchain
CN107395349A (zh) 2017-08-16 2017-11-24 深圳国微技术有限公司 一种基于自认证公钥体制的区块链网络密钥分发方法
US10469248B2 (en) * 2017-10-17 2019-11-05 Amrican Express Travel Related Services Company, Inc. API request and response balancing and control on blockchain
CN108305072B (zh) 2018-01-04 2021-02-26 上海点融信息科技有限责任公司 部署区块链网络的方法、设备和计算机存储介质
CN108600182B (zh) * 2018-03-29 2021-03-19 深圳前海微众银行股份有限公司 区块链密钥管理方法、系统及密钥管理设备、存储介质
RU182969U1 (ru) * 2018-05-29 2018-09-06 Сергей Александрович Мосиенко Считыватель криптографических меток
CN108737435B (zh) * 2018-05-30 2020-09-18 阿里巴巴集团控股有限公司 一种账户初始化方法和装置
US10673618B2 (en) * 2018-06-08 2020-06-02 Cisco Technology, Inc. Provisioning network resources in a wireless network using a native blockchain platform
US11336430B2 (en) * 2018-09-07 2022-05-17 Sap Se Blockchain-incorporating distributed authentication system

Also Published As

Publication number Publication date
EP3652884A4 (en) 2020-09-09
CN110622464B (zh) 2022-07-26
TWI706661B (zh) 2020-10-01
CA3041220C (en) 2022-07-19
US20190253245A1 (en) 2019-08-15
WO2019072281A2 (en) 2019-04-18
EP3652884A2 (en) 2020-05-20
EP3652884B1 (en) 2022-01-19
JP6873235B2 (ja) 2021-05-19
AU2018348322B2 (en) 2020-02-20
JP2020502861A (ja) 2020-01-23
AU2018348322C1 (en) 2020-06-25
MX2019004671A (es) 2019-08-21
ZA201902482B (en) 2021-10-27
KR102286301B1 (ko) 2021-08-09
WO2019072281A3 (en) 2019-09-26
PH12019500863A1 (en) 2019-12-02
TW202021304A (zh) 2020-06-01
KR20200066262A (ko) 2020-06-09
US10819509B2 (en) 2020-10-27
RU2733097C1 (ru) 2020-09-29
SG11201903541YA (en) 2019-05-30
CN110622464A (zh) 2019-12-27
CA3041220A1 (en) 2019-04-18

Similar Documents

Publication Publication Date Title
BR112019007984A2 (pt) método implementado por computador para o gerenciamento da chave de serviço, meio legível por computador e sistema para implementar um método
US10735397B2 (en) Systems and methods for distributed identity verification
US20210089676A1 (en) Methods and systems for secure data exchange
CN105871538B (zh) 量子密钥分发系统、量子密钥分发方法及装置
US9317714B2 (en) Storing user data in a service provider cloud without exposing user-specific secrets to the service provider
JP2023520372A (ja) 企業環境におけるブロックチェーンの統合、グループ権限とアクセスの管理
US20150106626A1 (en) Shared encrypted storage
JP2019531630A (ja) 量子通信及びトラステッドコンピューティングに基づくデータセキュリティのための方法及びシステム
US12014361B2 (en) Systems and methods for improved hot wallet security
US10819709B1 (en) Authorizing delegated capabilities to applications in a secure end-to-end communications system
BR112019008174A2 (pt) método implementado por computador, meio de armazenamento legível por computador, não transitório e sistema
US10432589B1 (en) Secure end-to-end communications
Shen et al. SecDM: Securing data migration between cloud storage systems
CN117648706B (zh) 基于区块链和属性加密的访问控制方法
US11743293B2 (en) Remote attestation transport layer security and split trust encryption
KR102320667B1 (ko) 사용자 정보의 관리 방법 및 단말
US20240283636A1 (en) Non-custodial tool for data encryption and decryption with decentralized data storage and recovery
Köhler et al. Occasio: an operable concept for confidential and secure identity outsourcing

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]
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 5A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2750 DE 19-09-2023 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.