BR102017028033A2 - sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados - Google Patents

sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados Download PDF

Info

Publication number
BR102017028033A2
BR102017028033A2 BR102017028033A BR102017028033A BR102017028033A2 BR 102017028033 A2 BR102017028033 A2 BR 102017028033A2 BR 102017028033 A BR102017028033 A BR 102017028033A BR 102017028033 A BR102017028033 A BR 102017028033A BR 102017028033 A2 BR102017028033 A2 BR 102017028033A2
Authority
BR
Brazil
Prior art keywords
data
block chain
access
authorization
fact
Prior art date
Application number
BR102017028033A
Other languages
English (en)
Inventor
Piron Charles
Leporini David
Original Assignee
Bull Sas
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bull Sas filed Critical Bull Sas
Publication of BR102017028033A2 publication Critical patent/BR102017028033A2/pt

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/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
    • 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
    • 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/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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
    • 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
    • G06Q20/4014Identity check for transactions
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07BTICKET-ISSUING APPARATUS; FARE-REGISTERING APPARATUS; FRANKING APPARATUS
    • G07B15/00Arrangements or apparatus for collecting fares, tolls or entrance fees at one or more control points
    • G07B15/02Arrangements or apparatus for collecting fares, tolls or entrance fees at one or more control points taking into account a variable factor such as distance or time, e.g. for passenger transport, parking systems or car rental systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • 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

Abstract

"sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados". a presente invenção refere-se a sistemas e métodos de computação para a criação e o gerenciamento de autorizações de objetos de cadeias de blocos. os sistemas e os métodos, gerenciados por um número controlado de entidades governamentais, propiciam o gerenciamento de autorizações de acesso para um objeto conectado a um grupo variável de serviços. os sistemas e os métodos apresentam, portanto, várias vantagens, incluindo uma forte interoperacionalidade, uma forte resiliência, confidencialidade, autonomia, integridade garantida dos dados e rastreabilidade.

Description

Relatório Descritivo da Patente de Invenção para SISTEMA E MÉTODO PARA A CRIAÇÃO E O GERENCIAMENTO DE AUTORIZAÇÕES DESCENTRALIZADAS PARA OBJETOS CONECTADOS.
CAMPO TÉCNICO [0001] A presente invenção refere-se à identidade única de objetos conectados e o gerenciamento de autorizações de acesso. Mais particularmente, sistemas e métodos propiciam a identificação, a autenticação e a autorização, usando um sistema descentralizado e distribuído, passível de auditagem.
ANTECEDENTES [0002] Existem várias soluções de computação propiciando o gerenciamento de autorizações e identidades de objetos conectados. Em geral, essas soluções são baseadas em uma única plataforma de gerenciamento centralizada. A confiança nessa solução é geralmente garantida pela reputação da plataforma centralizada e nas regras autoaplicáveis da plataforma centralizada. No entanto, essa centralização acarreta problemas de segurança de dados, tanto em termos de perda de dados, quanto na modificação desautorizada da integridade da plataforma.
[0003] Bases de dados são disponíveis, que garantem o armazenamento de autorizações, nas quais os dados são distribuídos por uns poucos sites ou com uns poucos participantes. No entanto, essas bases de dados são baseadas no princípio de um único livro-razão, replicado em vários pontos. Por exemplo, as bases de dados distribuídas, tais como as bases NoSQL (por exemplo, Cassandra) são baseadas em uma única base de referência, chamada uma matriz, que é replicada e compartilhada em todos os sites. Quando há um grande número de participantes, esse tipo de mecanismo, baseado em replicação, fica muito complexo para implementar, e seu desempenho é bastante
Petição 870170101529, de 22/12/2017, pág. 44/82
2/32 reduzido e sua coerência não é garantida. Portanto, esse tipo de solução não satisfaz as necessidades emergentes de objetos cada vez mais numerosos e conectados, ou as necessidades de descentralização, controle e auditoria de autorizações de acesso, o que vai tornar as soluções de replicações convencionais muito complexas para serem conduzidas. Além disso, esse tipo de arquitetura é único: um participante é o mestre e os outros são escravos. Consequentemente, o mestre tem um papel diferente a desempenhar do que aqueles dos outros participantes. Ainda mais, em algumas situações, não é possível ou desejável que se tenha uma plataforma mestre - escravo centralizada, ainda que seja replicada. Por exemplo, em um método de múltiplos participantes, isto é, aqueles envolvendo entidades legais separadas (várias empresas, etc.), não é sempre fácil, de um ponto de vista legal ou comercial, decidir que participante vai desempenhar o papel central de hospedeiro da plataforma.
[0004] O aumento exponencial no número de objetos conectados e dessas plataformas centralizadas acarreta o gerenciamento complexo de identidades e autorizações, tanto para usuários quanto para plataformas. Isso é especialmente assim, desde que os sistemas existentes sejam geralmente especializados em uma categoria de objetos conectados, para os quais gerenciam a identidade e as autorizações, desde que esses sistemas sejam controlados por um terceiro e não proporcionem usuários com fácil migração de identidades e/ou prova de autorização para outros sistemas.
[0005] O uso de uma cadeia de blocos também pode garantir os dados. Após os dados serem disseminados dentro de uma comunidade de cadeia de blocos, os dados não podem ser reescritos, e, portanto, não podem ser falsificados. Consequentemente, os sistemas computacionais para o gerenciamento de transações com base em cadeias de blocos, tais como na publicação do pedido de patente internaci
Petição 870170101529, de 22/12/2017, pág. 45/82
3/32 onal WO 2016/197055 e na publicação do pedido de patente U.S. 2016/0261690, foram sugeridos. Esses sistemas são baseados no gerenciamento de objetos conectados não requerendo uma autoridade de controle, e em uma base de confiança no sistema em um grande número de participantes e no consenso de conteúdo verificável criptograficamente.
[0006] Portanto, não há qualquer solução satisfatória para garantir o gerenciamento de autorizações de acesso e de identidades envolvendo vários participantes. Há uma necessidade para sistemas e métodos para gerenciar autorizações de objetos conectados.
SUMÁRIO [0007] As concretizações superam as deficiências da técnica anterior por sistemas e métodos para criar e gerenciar autorizações para objetos conectados, que são descentralizadas, distribuídas e auditáveis. Em particular, os sistemas e os métodos, gerenciados por um número controlado de entidades governamentais, propiciam o gerenciamento de autorizações de acesso para um objeto conectado a um grupo variável de serviços. As concretizações, portanto, apresentam várias vantagens, tais como: uma forte interoperacionalidade, uma forte resiliência, confidencialidade, autonomia, integridade garantida dos dados e rastreabilidade.
[0008] Em uma concretização, um sistema computacional para o gerenciamento de autorizações de objetos conectados compreende: vários servidores de armazenamento, compreendendo uma cadeia de blocos distribuída na forma de nós de armazenamento, os vários servidores de armazenamento configurados para registrar um novo bloco na cadeia de blocos; um módulo controlador de acesso configurado para criar um direito de acesso à cadeia de blocos, para um usuário do sistema, o direito de acesso incluindo: um direito de acesso compreendendo apenas o acesso de leitura; e um direito de acesso compre
Petição 870170101529, de 22/12/2017, pág. 46/82
4/32 endendo um direito a registrar novos blocos da cadeia de blocos em um dos nós de armazenamento, o usuário tendo o dito direito sendo uma entidade governamental; um módulo de escrita para a criação de autorizações, o módulo de escrita configurado para: receber dados de execução de contratos inteligentes emitidos por uma entidade governamental, os dados de execução de contratos inteligentes compreendendo um identificador único do contrato inteligente, condições de aplicação do contrato inteligente e pelo menos uma autorização condicional associada com o contrato inteligente; e escrever os dados de execução de contratos inteligentes em um nó de armazenamento da cadeia de blocos; e um módulo de conexão para a alocação de autorizações, o módulo de conexão configurado para: receber dados de conexão entre um objeto conectado e uma entidade de terceiros, os dados de conexão incluindo pelo menos um pedido de autorização; identificar, em um nó de armazenamento da cadeia de blocos, uma autorização condicional correspondente ao pedido de autorização; verificar as condições de aplicação incluídas nos dados de execução de contratos inteligentes; e gerar uma instrução de alocação de autorização consentindo com o pedido de autorização apenas se todas as condições de aplicação da autorização condicional forem verificadas.
[0009] Em comparação, as soluções tradicionais propiciando o gerenciamento de autorizações de objetos conectados são geralmente centralizadas. Isso propicia, tipicamente, um acesso controlado e centralizado de algumas funcionalidades ou serviços. A presente invenção é contrária a essa centralização. As concretizações descritas no presente relatório descritivo expõem, por exemplo, um sistema no qual o gerenciamento de identidades é distribuído e descentralizado, propiciando o gerenciamento escalonável de autorizações de acesso a serviços oferecidos por diferentes participantes. Para esse fim, uma cadeia de blocos, utilizada usualmente em um quadro aberto, é utilizada em
Petição 870170101529, de 22/12/2017, pág. 47/82
5/32 um sistema, que é modificável por um número controlado e limitado de usuários (também chamados de entidades governamentais), tendo o direito de registrar novos blocos na cadeia de blocos. Além disso, a cadeia de blocos pode compreender, vantajosamente, dados que são, pelo menos parcialmente, criptografados.
[0010] Em uma concretização, um método para gerenciar autorizações para objetos conectados, em um sistema computacional de servidores de armazenamento, um sistema computacional compreendendo uma cadeia de blocos distribuída na forma de nós de armazenamento, o sistema incluindo servidores de armazenamento configurados para registrar um novo bloco na cadeia de blocos, um módulo controlador de acesso, um módulo de escrita e um módulo de conexão, compreendendo: definir, pelo módulo de controle de acesso, um direito de acesso à cadeia de blocos para um usuário, o direito de acesso incluindo: um direito de acesso apenas compreendendo direito de leitura; e um direito de acesso compreendendo um direito para registrar novos blocos da cadeia de blocos, o usuário tendo o dito direito sendo uma entidade governamental; receber, pelo módulo de escrita, dados de execução de contratos inteligentes emitidos por uma entidade governamental, os dados de execução de contratos inteligentes compreendendo um identificador único do contrato inteligente, condições de aplicação do contrato inteligente, e pelo menos uma autorização condicional associada com o contrato inteligente; escrever os dados de execução de contratos inteligentes em um nó de armazenamento da cadeia de blocos; receber dados de conexão, pelo módulo de conexão, os dados de conexão compreendendo pelo menos um pedido de autorização; identificar uma autorização condicional correspondente ao pedido de autorização nos dados de execução de contratos inteligentes, escritos no nó de armazenamento da cadeia de blocos, a autorização condicional sendo associada com as condições de
Petição 870170101529, de 22/12/2017, pág. 48/82
6/32 aplicação; verificar as condições de aplicação nos direito de acesso; e gerar uma instrução de alocação de autorização consentindo no pedido de autorização apenas se todas as condições de aplicação da autorização condicional forem verificadas.
[0011] Em uma concretização, um sistema compreende: uma cadeia de blocos compreendendo vários nós de armazenamento configurados para armazenar vários blocos, em que os vários blocos são distribuídos por pelo menos dois nós de armazenamento em memória não volátil; várias entidades governamentais, cada entidade governamental configurada para gerenciar pelo menos um dos nós de armazenamento por recebimento de dados não confirmados, validar os dados não confirmados, e disponibilizar os dados validados para a cadeia de blocos; um módulo de controle de acesso configurado para controlar o número de entidades governamentais permitidas na cadeia de blocos, o número de entidades governamentais sendo inferior ao número de nós de armazenamento; um módulo de conexão configurado para controlar o acesso à cadeia de blocos, com base em um pedido de autorização; e um objeto conectado em comunicação eletrônica com a cadeia de blocos, o objeto conectado configurado para proporcionar um serviço à cadeia de blocos, após uma instrução de alocação de autorização, baseada no pedido de autorização, ser gerada pelo módulo de conexão.
[0012] O sumário apresentado acima não pretende descrever cada concretização ilustrada ou cada implementação de seu objeto. As figuras e a descrição detalhada, que são apresentadas a seguir, exemplificam, mais particularmente, as várias concretizações.
BREVE DESCRIÇÃO DOS DESENHOS [0013] O objeto da invenção pode ser entendido mais completamente considerando a descrição detalhada apresentada a seguir de várias concretizações, em conjunto com as figuras em anexo, em que:
Petição 870170101529, de 22/12/2017, pág. 49/82
7/32 a Figura 1 é um diagrama de blocos de um sistema computacional, para criar e gerenciar autorizações para objetos conectados, de acordo com uma concretização;
a Figura 2 é um diagrama de blocos de servidores de armazenamento e de conteúdo da cadeia de blocos, de acordo com uma concretização;
a Figura 3 é um fluxograma de um método para criar e gerenciar autorizações de objetos conectados, de acordo com uma concretização; e a Figura 4 é um diagrama de blocos de interação de componentes de um sistema, para a criação e o gerenciamento de autorização de acesso para um veículo conectado, de acordo com uma concretização.
DESCRIÇÃO DETALHADA [0014] Ao longo da descrição, os termos autorização de acesso e autorização vão ser usados intercambiavelmente. Portanto, autorização é mencionada como um dado ou um conjunto de dados especificando um direito para se comunicar com, colocar em contato com, compartilhar ou acessar um recurso. Por exemplo, o recurso pode ser um dado, um arquivo, um conjunto de arquivos, uma aplicação, um serviço, um material ou um dispositivo, tal como um objeto conectado. Uma autorização condicional é uma autorização associada com condições de aplicação. As condições de aplicação correspondem a regras de controle, usadas para validar ou não um pedido de autorização.
[0015] Por pedido de autorização, quer-se mencionar um pedido para acessar um recurso. Esse pedido é geralmente gerado no momento da conexão, entre um objeto conectado e uma entidade de terceiros.
[0016] Por objeto conectado, quer-se mencionar qualquer dispo
Petição 870170101529, de 22/12/2017, pág. 50/82
8/32 sitivo eletrônico, capaz de conexão a uma rede de comunicação. A rede de comunicação pode ser uma rede da Internet, por exemplo, ou uma rede intranet. A conexão pode ser obtida por configurações de comunicação adequadas, tais como conexões ligadas com fio ou conexões sem fio (por exemplo, Wi-Fi ou Bluetooth).
[0017] Por bloco, quer-se mencionar um conjunto de dados validados, por exemplo, relativo a autorizações, para contratos inteligentes, para objetos ou para terceiros. Cada bloco é relativo a um período de tempo e se refere a um bloco precedente (exceto para o primeiro bloco). Essa referência é geralmente obtida por inclusão dentro dos dados do bloco de uma marca correspondente ao bloco precedente, a marca no restante deles deve ser indicada pelo termo hash, que é usado mais convencionalmente. Isso possibilita garantir que os dados de um bloco precedente não forma modificados e que, com relação a uma cadeia de blocos, os blocos se seguem uns aos outros em ordem cronológico. Portanto, por cadeia de blocos, quer-se mencionar uma sequência de blocos.
[0018] Por hash, quer-se mencionar o resultado de uma função hashing. Em uma concretização, um hash é uma marca, que permite a rápida identificação de dados-fonte. A função hashing permite a redução do tamanho de um conjunto de dados-fonte com um método criptográfico, e a alocação dele de uma marca única, ou hash, que pode apenas corresponder a um conjunto particular de dados-fonte. Por conhecimento de um hash, não é possível inferir o conjunto de dadosfonte.
[0019] Por nós de armazenamento, quer-se mencionar réplicas da cadeia de blocos registrada nos servidores de armazenamento.
[0020] Por servidor de armazenamento, quer-se mencionar um dispositivo, que compreende uma memória não transiente e que é capaz de conexão a uma rede de comunicação.
Petição 870170101529, de 22/12/2017, pág. 51/82
9/32 [0021] Por contrato inteligente, quer-se mencionar um conjunto de dados. Esse conjunto de dados corresponde, mais particularmente, a um conjunto de dados de execução e propicia a definição de pelo menos as condições de alocação de uma autorização. Em uma concretização, os dados de execução, relativos a um contrato inteligente, compreendem um identificador único do contrato inteligente, as condições para a aplicação do contrato inteligente, e pelo menos uma autorização condicional associada com o contrato inteligente.
[0022] Por instrução ou instrução de computação, quer-se mencionar dados definindo uma ou mais ações, capazes de serem executadas por um dispositivo eletrônico.
[0023] Por usuário, quer-se mencionar um usuário do sistema computacional.
[0024] Por conexão, quer-se mencionar uma comunicação, um acesso ou, mais geralmente, a colocação em contato com dois recursos, sujeitos a autorizações e condições.
[0025] Com referência à Figura 1, um diagrama de blocos de um sistema computacional 1, para criar e gerenciar autorizações para objetos conectados, é ilustrado, de acordo com uma concretização. O sistema 1 compreende, geralmente, vários servidores de armazenamento 20, que compreendem uma cadeia de blocos distribuída 200 na forma de nós de armazenamento 201.
[0026] A distribuição da cadeia de blocos 200, na forma de nós de armazenamento 201, tem a vantagem de conferir propriedades de resiliência para a dita cadeia de blocos 200, no caso de um ataque em um dos nós de armazenamento 201. Em uma concretização, a distribuição, que compreende uma sucessão de blocos 202, também permite que o sistema tenha alta resiliência contra a falsificação de dados. Nas concretizações, os servidores de armazenamento 20 geralmente registram dados em memórias não voláteis e também podem compre
Petição 870170101529, de 22/12/2017, pág. 52/82
10/32 ender memórias transitórias.
[0027] Com referência também à Figura 2, um diagrama de blocos dos servidores de armazenamento e do conteúdo da cadeia de blocos da Figura 1 é ilustrado, de acordo com uma concretização. Como ilustrado, a cadeia de blocos 200 é composta de vários blocos 202, dispostos cronologicamente. Os servidores de armazenamento 20 são capazes de registrar um novo bloco 202 na cadeia de blocos 200. Na invenção, esse registro pode estar sujeito à condição de recebimento de uma instrução de registro, emitida por um usuário tendo direitos adequados. Como é detalhado abaixo, o dito usuário é chamado entidade governamental. Todos os blocos 202 podem ser usados para armazenar uma ampla gama de dados. Em uma concretização, a cadeia de blocos 200 e, mais particularmente, os blocos 202 da cadeia de blocos 200 podem ser usados para armazenar os dados de objeto 210 relativos aos objetos conectados 10, dados de terceiros 280 relativos às entidades de terceiros 80, e dados de execução de contratos inteligentes 240 relativos a contratos inteligentes.
[0028] Os dados dos objetos 210 podem compreender pelo menos: um identificador único de objeto 211 e um perfil de objeto 212. Por exemplo, o perfil de objeto 212 pode compreender dados selecionados de entre seus status, origem, proprietário inicial, características físicas, funcionalidades ou permissões. Os dados dos objetos 210 podem também incluir dados de contexto 213, tais como, por exemplo, a localização geográfica do objeto.
[0029] O objeto conectado 10 pode ser qualquer dispositivo eletrônico capaz de conexão a uma rede de comunicação. O objeto conectado 10 pode compreender um controlador de acesso lógico e/ou um controlador de acesso físico, capaz(es) de propiciar acesso a um recurso, de acordo com uma instrução de alocação de autorização 220. Em uma concretização, o objeto conectado 10 compreende um contro
Petição 870170101529, de 22/12/2017, pág. 53/82
11/32 lador de acesso físico. Em particular, o objeto conectado 10 compreende um controlador de acesso físico. Em particular, o objeto conectado 10, com base em um direito de acesso lógico, tal como uma instrução de alocação de autorização 220, é capaz de induzir um direito de acesso físico por meio de um controlador de acesso físico. Portanto, em uma concretização, o objeto conectado 10 compreende um atuador físico, associado com um controlador de acesso físico. Em uma concretização exemplificativa, o objeto conectado 10 pode ser selecionado de entre: uma válvula conectada, um veículo conectado, uma barreira de acesso a um estacionamento, e uma chave conectada. Por exemplo, uma válvula conectada é um dispositivo configurado para controlar o fluxo de um fluido, tal como um líquido ou um gás. Uma válvula conectada pode ser, por exemplo, uma válvula industrial, ou um medidor de gás ou água de pessoa privado. Nas concretizações, o objeto conectado 10 compreende pelo menos um controlador lógico ou físico, e é selecionado de entre: uma válvula conectada, um veículo conectado e uma chave conectada. Em uma concretização exemplificativa, o objeto conectado 10 é selecionado de entre: uma válvula conectada, um veículo conectado e uma chave conectada.
[0030] Os dados de terceiros 280 podem compreender pelo menos: um identificador único de terceiro 281 e um perfil de terceiro 282. Por exemplo, o perfil de terceiro 282 compreende dados capazes de serem selecionados de entre os status, origem, características físicas, funcionalidades ou permissões da entidade de terceiro. Em geral, a entidade de terceiro é selecionada de entre: outro objeto conectado, um usuário, um dado, um arquivo ou um conjunto de arquivos, ou um serviço, por exemplo, na forma de uma aplicação. Os dados de terceiros 280 também podem incluir dados de contexto 283, tal como, por exemplo, a localização geográfica do objeto.
[0031] Os dados de execução de contratos inteligentes 240 con
Petição 870170101529, de 22/12/2017, pág. 54/82
12/32 têm pelo menos: um identificador único de contratos inteligentes 241, condições de aplicação 242 para o contrato inteligente e pelo menos uma autorização condicional 243, associada com o contrato inteligente. Por exemplo, as condições de aplicação 242 do contrato inteligente podem compreender as condições selecionadas de entre: uma condição de pagamento, uma condição de tempo, uma condição de localização e uma condição de segurança. Em uma concretização, a autorização, essa pode se referir, por exemplo, ao direito para acesso a uma aplicação, o direito ao acesso de um dado ou arquivo, a autorização para que o objeto acesse um serviço de uma entidade de terceiro, ou uma autorização para que a entidade de terceiro acesse uma funcionalidade ou dados do objeto. Por exemplo, para interações entre um objeto e um usuário, as concretizações permitem que a autorização, concedida a um usuário, use algumas das funcionalidades do objeto conectado, para administrar o objeto conectado, ou mudar para o usuário proprietário. Por definição das interações entre os objetos, as concretizações permitem a alocação de uma autorização em uma maneira que é segura para a confidencialidade e a integridade de trocas de dados. As concretizações também podem ser usadas para verificar as condições de segurança necessárias para que um objeto acesse um serviço, e notificar condições não preenchidas no caso de recusa. [0032] Vantajosamente, a autorização condicional pode compreender um limite de tempo.
[0033] Em uma concretização, a cadeia de blocos 200 compreende dados codificados e dados não codificados. Por exemplo, pelo menos parte dos dados de terceiros 280, os dados de execução de contratos inteligentes 240 e/ou os dados de objeto 210 podem ser codificados antes que sejam registrados em um nó de armazenamento 201 da cadeia de blocos 200. Em uma concretização, os dados codificados podem ser codificados usando método de codificação assimétricos.
Petição 870170101529, de 22/12/2017, pág. 55/82
13/32 [0034] Os nós de armazenamento 201 correspondem a cópias da cadeia de blocos 200. Todos os nós de armazenamento 201 são, de preferência, de importância equivalente e, desse modo, não incluem uma relação mestre - escravo entre os nós de armazenamento. Em uma concretização, o sistema pode compreender os nós de armazenamento 201, gerenciados por entidades governamentais 70, capazes de adicionar novos blocos 202 à cadeia de blocos 200, bem como os nós de armazenamento 201, que não são gerenciados por entidades governamentais 70, e são, desse modo, incapazes de adicionar novos blocos 202 à cadeia de blocos 200. Os servidores de armazenamento 20, compreendendo os nós de armazenamento 201, que não são gerenciados por entidades governamentais 70, garantem a replicação da cadeia de blocos 200, e, portanto, aperfeiçoam a resiliência do sistema. Por exemplo, alguns dos objetos conectados 10 podem ser associados com um nó de armazenamento dedicado 201. Os servidores de armazenamento 20, compreendendo os nós de armazenamento 201, gerenciados por entidades governamentais 70, também garantem a replicação da cadeia de blocos 200, mas são também configurados para gerenciar a integração de novos dados na cadeia de blocos 200 por meio de registro de novos blocos 202 pelas entidades governamentais 70.
[0035] Em uma concretização, o sistema computacional 1 compreende um número restrito de nós de armazenamento 201, gerenciados por entidades governamentais 70. Por exemplo, os sistemas de cadeias de blocos convencionais, baseados em confiança, têm, geralmente, vários nós de armazenamento 201 com a capacidade de adicionar novos blocos 202. Em comparação, as concretizações descritas no presente relatório descritivo apresentam uma baixa probabilidade de nós de armazenamento capazes de implementar um novo bloco 202 na cadeia de blocos 200. Portanto, em uma concretização, o sis
Petição 870170101529, de 22/12/2017, pág. 56/82
14/32 tema computacional 1 compreende entre 2 e 2.000 servidores de armazenamento 20, gerenciados por entidades governamentais 70. Em outra concretização, o sistema computacional 1 compreende entre 2 e 1.000 servidores de armazenamento 20, gerenciados por entidades governamentais 70. Em outra concretização, o sistema computacional 1 compreende entre 2 e 500 servidores de armazenamento 20, gerenciados por entidades governamentais 70. Nas concretizações, um número adequado de nó de armazenamento, gerenciados por entidades governamentais 70, pode ser determinado de acordo com o tamanho relativo do sistema e o risco envolvido na adição de uma nova entidade governamental 70.
[0036] Convencionalmente, os nós de armazenamento de cadeias de blocos podem se anônimos e abertos a todos os usuários. Quando um nó de armazenamento recebe uma nova transação, o nó de armazenamento registra essa transação em um meio de memória, que compreende um conjunto de transações não confirmadas. Embora as transações não confirmadas sejam propagadas pela rede de comunicação, esse conjunto pode diferir de um nó para outro, devido ao tempo de propagação das transações na rede. Portanto, os sistemas da técnica anterior são baseados em transações e qualquer nó é capaz de coletar um determinado número de pedidos para registrar uma transação na sua lista e depois formar um bloco. A confiança é proporcionada pelo fato que nenhuma entidade possui uma maior autoridade no sistema, que o registro de um bloco é submetido a uma variável aleatória, e que existe um controle recíproco feito por mineradores. Os mineradores são entidades a cargo de sistemas convencionais para atualizar uma base de dados descentralizada, que requer a solução de um problema matemático intenso em tempo por hospedeiros de nós de armazenamento completos.
[0037] Diferentemente dos sistemas da técnica anterior, as concre
Petição 870170101529, de 22/12/2017, pág. 57/82
15/32 tizações de sistemas e métodos compreendem, vantajosamente, entidades governamentais 70, que sozinhas têm o direito de registrar um novo bloco 202 na cadeia de blocos 200. Esse recurso compreende a base para a confiança no sistema 1. Portanto, cada entidade governamental 70 administra um meio de memória, que compreende um conjunto de dados não confirmados. Por exemplo, esses dados podem corresponder aos dados de objeto 210, aos dados de terceiros 280 ou a dados de execução de contratos inteligentes 240. Nas concretizações, os dados não confirmados podem ser compartilhados entre as entidades governamentais 70.
[0038] A entidade governamental 70 controla a validade de dados não confirmado, e uma vez que o bloco é validado, é rotulado com um período de tempo e adicionado à cadeia de blocos, por exemplo, o bloco 202. O conteúdo desse bloco 202 é então acessível a usuários de acordo com as modalidades definidas pelo módulo de controle de acesso.
[0039] As regras para validação do bloco 202 podem variar em função das concretizações e da determinação de consenso. Por exemplo, um bloco 202 pode ser validado por uma entidade governamental 70, sem que seja necessário buscar um número aleatório (Nonce), tendo um valor tal que o hash do bloco a ser validado satisfaz regras particulares. Ao contrário, o bloco pode requerer uma prova de trabalho. De acordo com outra concretização, um bloco pode ser também validado adicionalmente para o acordo entre pelo menos duas entidades governamentais 70, sem necessidade de prova de trabalho. Em outra concretização, um bloco pode ser validado por acordo entre pelo menos quatro entidades governamentais. Em outra concretização, um bloco pode ser validado por voto majoritário das entidades governamentais.
[0040] Como ilustrado na Figura 2, um bloco validado 202 com
Petição 870170101529, de 22/12/2017, pág. 58/82
16/32 preende o Hash do bloco precedente na cadeia de blocos (HASH n-1), e também pode conter uma assinatura (Sig.), um período de tempo (Timestamp) e/ou um número aleatório (Nonce). Uma vez validado, o conteúdo desse bloco fica então acessível a usuários 60, de acordo com as modalidades definidas pelo módulo de controle de acesso 30. [0041] Esses modos de validação particulares são possíveis porque o sistema é baseado em confiança entre as entidades governamentais 70 e a confiança de usuários 60 em relação às entidades governamentais 70. Portanto, o sistema utiliza as vantagens da descentralização e da distribuição de cadeias de blocos, enquanto mantendo a segurança de sistemas centralizados.
[0042] Portanto, o sistema computacional 1 pode acoplar, operacionalmente, entre 2 e 2.000 entidades governamentais 70, em uma concretização, entre 2 e 1.000 entidades governamentais 70, em outra concretização, ou entre 2 e 500 entidades governamentais 70, em outra concretização.
[0043] Em sistemas convencionais usando cadeias de blocos 200 para monitorar as transações, vários milhares de mineiros a cargo da validação dos blocos 202 são tipicamente conectados ao sistema. [0044] Com referência de novo à Figura 1, além das entidades governamentais 70, o sistema 1 é ainda configurado para se comunicar com entidades de auditoria 90. As entidades de auditoria 90 têm um direito de acesso, que compreende um acesso de leitura e um acesso a chaves de descriptografia, de modo que possam auditar todos ou uma parte dos dados codificados.
[0045] Para permitir a alocação de direitos particulares aos diferentes usuários do sistema 1, as concretizações podem incluir uma arquitetura tendo um módulo de controle de acesso 30. Por exemplo, embora o sistema seja descentralizado e, desse modo, se beneficie das vantagens convencionais de cadeias de blocos distribuídas, o sis
Petição 870170101529, de 22/12/2017, pág. 59/82
17/32 tema inclui um módulo de controle de acesso 30, configurado para definir os direitos de acesso de um usuário 60 à cadeia de blocos 200.
[0046] Diferentemente da maior parte das cadeias de blocos, no sistema 1, a cadeia de blocos 200 tem diferentes direitos de acesso definidos em função do usuário 60. Portanto, o módulo de controle de acesso 30 é configurado para definir um direito de acesso, o dito direito de acesso sendo selecionado de uma lista de direitos de acesso compreendendo, por exemplo:
- um direito de acesso compreendendo apenas acesso de leitura; esse direito pode ser concedido a uma grande maioria de usuários em uma concretização; e
- um direito de acesso compreendendo um direito a registrar novos blocos 202 na cadeia de blocos 200.
[0047] O registro de novos blocos 202 na cadeia de blocos 200 permite a validação de autorizações e/ou de dados pendentes. É nesse registro que se confirma a validade desses dados e a aceitação deles. Esse direito de registro pode ser concedido a várias entidades governamentais 70. Por exemplo, o sistema compreende um número controlado de entidades governamentais 70, desse modo, proporcionando uma grande parte da confiança no sistema. O número de entidades governamentais 70 tendo direitos de registro é inferior àquele de sistemas de cadeias de blocos tradicionais. Portanto, o módulo de controle de acesso 30 da invenção é configurado para garantir entre 2 e 2.000 direitos de registrar novos blocos 202 na cadeia de blocos 200, ou entre 2 e 1.000, ou entre 2 e 500. Isso corresponde a um direito concedido às entidades governamentais 70.
[0048] Os direitos de acesso adicionais podem ser concedidos pelo módulo de controle de acesso 30. Em uma concretização, a lista de direitos também pode compreender:
- um direito de acesso compreendendo acesso de escrita;
Petição 870170101529, de 22/12/2017, pág. 60/82
18/32 esse direito pode, por exemplo, permitir que um usuário registre novos dados de objeto 210, dados de terceiros 280 ou direito de acesso 240 na cadeia de blocos 200; e/ou
- um direito de acesso compreendendo direito de leitura e acesso a chaves de descriptografia; esse direito pode ser concedido a uma entidade de auditoria 90, para verificar pelo menos parte das autorizações concedidas e/ou dos dados armazenados na cadeia de blocos 200.
[0049] O módulo de acesso 30 pode ser configurado de modo a conceder um direito de acesso apenas compreendendo acesso de leitura, mesmo se o usuário não for autenticado em certas concretizações.
[0050] Além disso, o módulo de controle de acesso 30 pode ser configurado para conceder um número limitado de direitos de acesso compreendendo acesso de escrita. Por exemplo, o módulo de controle de acesso 30 é configurado para conceder menos de 1.000 direitos de acesso, compreendendo acesso de escrita em uma concretização. Em outra concretização, menos de 500 direitos de acesso de escrita são concedidos. Em particular, isso permite a limitação do número de usuários capazes de escrever no livro-razão e, desse modo, reforça a segurança.
[0051] O acesso de escrita permite que o usuário, tendo esse direito de acesso, escreve novos dados na cadeia de blocos 200. Em uma concretização, esse direito não permite que dados sejam feitos permanentes com o registro de um novo bloco 202 na cadeia de blocos 200. Portanto, após serem escritos, esses novos dados são colocados na cadeia de blocos 200, em um conjunto de dados não confirmados. Uma entidade governamental 70 controla a validade dos dados não confirmados, e, uma vez que esses dados são validados, são registrados em um novo bloco com um período de tempo estabelecido
Petição 870170101529, de 22/12/2017, pág. 61/82
19/32
202 da cadeia de blocos 200. O conteúdo desse bloco 202 é então acessível a usuários, de acordo com as modalidades definidas pelo módulo de controle de acesso 30.
[0052] Nas concretizações, além de um direito para registrar novos blocos 202 na cadeia de blocos 200, uma entidade governamental 70 tem também o acesso de ler e escrever na cadeia de blocos 200.
[0053] Os direitos de acesso concedidos às entidades governamentais 90 permitem o controle e a auditoria da cadeia de blocos 200, e, em particular, de autorizações de acesso na cadeia de blocos compartilhada, distribuída. Em uma concretização, o direito de acesso, compreendendo acesso de leitura e acesso a chaves de descriptografia, necessita a autenticação da entidade de auditoria 90. Portanto, em uma concretização, o módulo de controle de acesso 30 não garante qualquer direito de acesso às chaves de descriptografia e à cadeia de blocos 200 para uma entidade de auditoria não autenticada 90.
[0054] De modo similar, o registro de novos blocos 202 na cadeia de blocos 200 requer a autenticação da entidade governamental 70, e o módulo de controle de acesso 30 não concede qualquer direito de acesso, compreendendo um direito de registro, para a dita entidade governamental não autenticada 70.
[0055] Na mesma maneira que o sistema permite o acesso controlado a dados na cadeia de blocos 200, as concretizações são baseadas em uma arquitetura tal que a escrita de dados de execução de contratos inteligentes na cadeia de blocos 200 é controlada por um módulo de escrita 40, configurado para receber e escrever os dados de execução de contratos inteligentes 240 em um nó de armazenamento 201. Portanto, o módulo de escrita 40 é configurado para receber dados de execução de contratos inteligentes 240, emitidos por uma entidade governamental 70. Em uma concretização, os dados de execução de contratos inteligentes 240 compreendem um identificador
Petição 870170101529, de 22/12/2017, pág. 62/82
20/32 único 241 do contrato inteligente, as condições de aplicação 242 do contrato inteligente e pelo menos uma autorização condicional 243 associada com o contrato inteligente. O módulo de escrita é configurado ainda para registrar os ditos dados de execução de contratos inteligentes 240 em um nó de armazenamento 201 da dita cadeia de blocos 200.
[0056] Portanto, o módulo de escrita 40 permite o gerenciamento de autorizações de acesso entre usuários e objetos, entre objetos e para os próprios objetos.
[0057] Em uma concretização, o módulo de escrita 40 é configurado para escrever os ditos dados de execução de contratos inteligentes 240 em um nó de armazenamento 201 da dita cadeia de blocos 200, apenas se os dados de execução de contratos inteligentes 240 forem emitidos por uma entidade governamental 70.
[0058] Além disso, o módulo de escrita 40 é também configurado para receber e depois escrever os dados de objeto 210 e os dados de terceiros 280 em um nó de armazenamento 201. O módulo de escrita 40 é, portanto, configurado para receber dados de objeto 210 e/ou dados de terceiros 280, e escrever os ditos dados de objeto 210 e/ou dados de terceiros 280 em um nó de armazenamento 201 da dita cadeia de blocos 200.
[0059] O módulo de escrita 40 é também configurado para gerenciar as identidades e os perfis de objetos conectados e de terceiros interagindo com esses objetos conectados.
[0060] Mais particularmente, o módulo de escrita 40 é capaz de receber dados de objeto 210 e/ou dados de terceiros 280, emitidos por um usuário 60, e escrever os ditos dados de objeto 210 e/ou dados de terceiros 280 em um nó de armazenamento 201 da dita cadeia de blocos 200, apenas se os dados forem emitidos por um usuário tendo acesso de escrita à cadeia de blocos 200.
Petição 870170101529, de 22/12/2017, pág. 63/82
21/32 [0061] Vantajosamente, o módulo de escrita 40 é capaz de autenticar a identidade da fonte de dados. Pode-se, desse modo, garantir que a identidade e o perfil de um objeto, escrito na cadeia de blocos, se origine de um usuário tendo autorização para escrever nele, desse modo, reforçando a confiança dada a esses dados.
[0062] Uma vez que os dados de objeto 201, os dados de terceiros 280 e/ou os dados de execução de contratos inteligentes 240 sejam registrados em um nó de armazenamento 201 da cadeia de blocos 200, o servidor de armazenamento 20, alojando o dito nó de armazenamento 201, é capaz de registrar um novo bloco 202 na cadeia de blocos 200. Esse novo bloco 202 contém os ditos dados de objeto 210, os dados de terceiros 280 e/ou os dados de execução de contratos inteligentes 240. Para reforçar a segurança do sistema, vantajosamente, o servidor de armazenamento 20, alojando o dito nó de armazenamento 201, é capaz de registrar um novo bloco 202 na cadeia de blocos 200, apenas se receber uma instrução de validação para os ditos dados, a dita instrução de validação sendo emitida por uma entidade governamental 70.
[0063] Uma vez que os dados sejam escritos na cadeia de blocos pelo módulo de escrita 40, esses novos dados são colocados na cadeia de blocos 200 em um conjunto de dados não confirmados. Uma entidade governamental 70 controla a validade dos dados não confirmados, e uma vez que esses dados sejam validados, são registrados em novo bloco com período de tempo determinado 202 da cadeia de blocos 200.
[0064] A entidade governamental 70 controla a validade dos dados não confirmados, em uma vez que o bloco 202 seja validado, recebe um período de tempo determinado e é adicionado à cadeia de blocos 200. O conteúdo desse bloco 202 é então acessível a usuários de acordo com as modalidades definidas pelo módulo de controle de
Petição 870170101529, de 22/12/2017, pág. 64/82
22/32 acesso 30.
[0065] Adicionalmente, o módulo de escrita 40 permite um gerenciamento escalonável de autorizações de acesso a serviços oferecidos por diferentes participantes. O módulo de escrita 40 é, portanto, configurado para escrever novos dados, que completam ou modificam os dados de objeto 210, os dados de terceiros 280 e/ou os dados de execução de contratos inteligentes 240, já registrados na cadeia de blocos 200.
[0066] Em particular, o módulo de escrita 40 é também capaz de escrever dados na cadeia de blocos 200, que eram inicialmente externos à cadeia de blocos 200. Nas concretizações, esses dados inicialmente externos podem se referir a serviços necessários para a execução de alguns contratos inteligentes 240, em concretizações que permitem a verificação das condições de aplicação 242, incluídas nos dados de execução de contratos inteligentes 240.
[0067] Uma vez que os contratos inteligentes sejam escritos na cadeia de blocos 200, o sistema 1 permite o gerenciamento de autorizações pelo módulo de conexão 50. Em particular, a autorização compreende a alocação de uma autorização predefinida e condicional, além de uma conexão entre o objeto conectado 10 e uma entidade de terceiros 80.
[0068] Diferentemente das cadeias de blocos tradicionais, não são as transações que são gerenciadas pelo sistema 1, mas, em vez delas, são as autorizações. Mais particularmente, o sistema gerencia as autorizações relativas a um objeto conectado 10. Por exemplo, considerar uma autorização relativa a uma interação entre um objeto conectado 10 e uma entidade de terceiros 80. Nessa concretização, o módulo de conexão 50 é configurado para: receber dados de conexão 250 entre o objeto conectado 10 e uma entidade de terceiros 80, os ditos dados de conexão 250 compreendendo pelo menos um pedido de au
Petição 870170101529, de 22/12/2017, pág. 65/82
23/32 torização 253. Os dados de conexão 250 também podem compreender um identificador único 251 e informações de contexto 252, por exemplo, as entidades envolvidas no pedido de autorização 253. O módulo de conexão 50 é configurado ainda para identificar, em um nó de armazenamento 201 da cadeia de blocos 200, uma autorização condicional 243 complementando o dito pedido de autorização 253. O módulo de conexão 50 é configurado ainda para verificar as condições de aplicação 242 incluídas nos dados de execução de contratos inteligentes 240. O módulo de conexão 50 é configurado ainda para gerar uma instrução de alocação de autorização 220, consentindo no pedido de autorização 253 apenas se todas as condições de aplicação 242 da dita autorização condicional 243 forem verificadas.
[0069] Além disso, o módulo de conexão 50 pode ser configurado para registrar os dados de conexão 250 em um nó de armazenamento 202 da cadeia de blocos 200. Sendo assim, isso permite uma rastreabilidade garantida das conexões feitas e da capacidade de auditagem do sistema.
[0070] Em uma concretização, a cadeia de blocos 200 compreende todos os dados de execução de contratos inteligentes, validados pelas entidades governamentais 70, e, a despeito da impossibilidade de modificação dos blocos precedentes 202 da cadeia de blocos 200, o sistema 1 permite, vantajosamente, a atualização das autorizações de acesso. Para esse fim, o módulo de conexão 50 é capaz de verificar a prioridade das condições de aplicação mais recentes 242.
[0071] A instrução de alocação de autorização 220 pode ser, por exemplo, separada da associação entre o objeto conectado 10 e a entidade de terceiros associada 80, a autorização dada ao objeto conectado 10 para acessar um serviço da entidade de terceiros 80, ou a autorização dada à entidade de terceiros 80 para acessar uma funcionalidade ou dados do objeto conectado 10.
Petição 870170101529, de 22/12/2017, pág. 66/82
24/32 [0072] Em uma concretização, o módulo de conexão 50 é capaz de transmitir a instrução de alocação de autorização a uma máquina virtual, para execução dela.
[0073] Além disso, vantajosamente, o módulo de conexão 50 é também capaz de registrar a instrução de alocação de autorização 220 na cadeia de blocos 200. O módulo de conexão 50 tem, vantajosamente, os direitos de acesso correspondentes aos direitos das entidades governamentais 70, e, por conseguinte, um direito de acesso compreendendo um direito para registrar novos blocos 202 da cadeia de blocos 200. Quando aplicável, isso garante a rastreabilidade de autorizações concedidas e a capacidade de auditagem do sistema.
[0074] Em particular, o módulo de conexão 50 é capaz de acessar os dados externos 280, não escritos ou gravados na cadeia de blocos 200, mas, não obstante, necessários para verificação das condições de aplicação 242, incluídas nos dados de execução de contratos inteligentes 240.
[0075] Com referência à Figura 3, um fluxograma de um método, para criar e gerenciar autorizações de objetos conectados, é ilustrado, de acordo com uma concretização.
[0076] O método da Figura 3 pode ser executado por um sistema computacional, que compreende uma cadeia de blocos 200 capaz de armazenar dados de execução de contratos inteligentes 240, um módulo de controle de acesso 30, um módulo de escrita 40 e um módulo de conexão 50, tal como o sistema 1 nas Figuras 1 e 2. Em geral, o método da Figura 3 compreende: a alocação de direitos de acesso; a criação ou a modificação de contratos inteligentes 240; e a alocação de autorizações.
[0077] O presente método é distinguido dos métodos convencionais por estabelecimento de um alto nível de controle relativo à criação e ao gerenciamento de autorizações. Para executar esse controle, o
Petição 870170101529, de 22/12/2017, pág. 67/82
25/32 método compreende para alocação de direitos de acesso, os seguintes:
- o recebimento 310 um pedido para acesso à cadeia de blocos 200, submetido por um usuário 60; e
- a alocação 320 concedida ao usuário 60, pelo módulo de controle de acesso 30, de um direito para acessar a cadeia de blocos 200, o dito direito de acesso sendo, por exemplo:
o direito de acesso com apenas acesso de leitura; ou o direito de acesso compreendendo um direito para registrar novos blocos na cadeia de blocos.
[0078] Em uma concretização, o direito de acesso pode ser, por exemplo:
- um direito de acesso com acesso de escrita; ou
- um direito de acesso com acesso de leitura e acessos a chaves de descriptografia.
[0079] Com referência de novo à Figura 3 e à criação ou modificação de um contrato inteligente 240, o método compreende ainda:
- recepção 410, pelo módulo de escrita, de dados de execução de contratos inteligentes 240, emitidos por um usuário 60, os ditos dados de execução de contratos inteligentes 240 compreendendo um identificador único 241 do contrato inteligente, as condições de aplicação 242 para o contrato inteligente, e pelo menos uma autorização condicional 243 associada com o contrato inteligente; e
- escrita 430 dos ditos dados de execução de contratos inteligentes em um nó de armazenamento 201 da dita cadeia de blocos 200, apenas se o direito de acesso do usuário 60 compreender o acesso de escrita.
[0080] No que se refere à alocação de autorizações, o método compreende ainda:
- recepção 510, por um módulo de conexão 50, de dados
Petição 870170101529, de 22/12/2017, pág. 68/82
26/32 de conexão 250, os ditos dados de conexão 250 compreendendo pelo menos um pedido de autorização 253;
- identificação 530 de uma autorização condicional 243, correspondente ao dito pedido de autorização 253 nos dados de execução de contratos inteligentes 240, escritos em um nó de armazenamento 201 da cadeia de blocos 200, a dita autorização condicional 243 sendo associada com as condições de aplicação 242;
- verificação 540 das ditas condições de aplicação 242, incluídas nos dados de execução de contratos inteligentes 240; e
- geração 550 de uma instrução de alocação de autorização 220 aceitando o pedido de autorização 253 apenas se todas as condições de aplicação 242 da dita autorização condicional 243 forem verificadas.
[0081] Em uma concretização, o método pode compreender ainda o registro 520 dos dados de conexão 250 em um nó de armazenamento 201 da cadeia de blocos 200. Por exemplo, o método pode compreender ainda:
- inscrição de usuário 60;
- registro 600 de blocos 202 na cadeia de blocos 200;
- revogação de uma autorização; e
- auditoria de dados na cadeia de blocos 200.
[0082] Em uma concretização, a revogação de uma autorização compreende:
- gerar, por uma entidade governamental 70, dados revogando a associação entre um objeto 10 e uma entidade de terceiros 80, os dados de revogação compreendendo uma data e pelo menos uma regra de comportamento proibindo o acesso do objeto 10 e da dita entidade de terceiros 80;
- escrever, pela dita entidade governamental 70, os ditos dados de revogação na cadeia de blocos 200; e
Petição 870170101529, de 22/12/2017, pág. 69/82
27/32
- registrar, pela dita entidade governamental 70, um novo bloco contendo os dados de revogação na cadeia de blocos distribuída.
[0083] A auditoria de dados na cadeia de blocos 200 compreende:
- emissão um pedido de auditoria por uma entidade de auditoria 90;
- autenticação, pelo módulo de controle de acesso 30, da entidade de auditoria 90; e
- transmissão para a entidade de auditoria 90, pelo módulo de controle de acesso 30, de chaves de descriptografia, para descriptografia total ou parcial da cadeia de blocos 200, se os direitos de acesso da entidade de auditoria 90 forem confirmadas no momento da autenticação 920.
[0084] Com referência à Figura 4, um diagrama de blocos de interações componentes de um sistema para a criação e o gerenciamento de autorização de acesso, para um veículo conectado, é ilustrado, de acordo com uma concretização. Na Figura 4, o objeto conectado 10 é um veículo conectado, e as concretizações podem proporcionar um serviço para um consórcio de empresas oferecendo acesso a estacionamentos 80, em que cada uma das empresas é uma entidade governamental 70, capaz de modificar a cadeia de blocos 200. Outras empresas podem ser adicionadas a esse consórcio, que oferecem outros serviços adaptados para veículos conectados, tais como empresas de seguros. Consequentemente, todas as empresas oferecendo serviços de estacionamento e as empresas de seguros de associados podem dispor um servidor de armazenamento 20, compreendendo um nó de armazenamento 201.
[0085] Em uma concretização, os dados de objeto 210 são escritos na cadeia de blocos pelo objeto conectado 10. O perfil de objeto 212 pode compreender dados, tais como a identificação do fabricante,
Petição 870170101529, de 22/12/2017, pág. 70/82
28/32 o modelo e o ano de fabricação do veículo, mas também um identificador do proprietário e/ou do usuário do veículo, e dados de serviços cobertos para o veículo. Por exemplo, a entidade de terceiros 80 pode ser um estacionamento, e os dados de terceiros 280, escritos na cadeia de blocos 200 por uma empresa de gerenciamento de estacionamentos 70. O perfil de terceiros 282 pode compreender dados nos vários espaços de estacionamento, restrições para entrada nesse estacionamento (autorizações, pesos dos veículos, etc.) e/ou a emprega a cargo do gerenciamento do estacionamento. Esses dados de objeto 210 e os dados de terceiros 280, após validação por uma entidade governamental, podem ser escritos na cadeia de blocos 200.
[0086] Nessa concretização particular, na qual o objeto conectado é um veículo conectado, o estacionamento se beneficia de um direito de acesso, que compreende apenas o acesso de leitura para a cadeia de blocos 200, e uma empresa 70, pertencente ao consórcio de empresas, que oferece serviços de estacionamento, se beneficia de um direito de acesso compreendendo o direito de registrar novos blocos 202 na cadeia de blocos 200.
[0087] Quando da criação ou da modificação 400 de um contrato inteligente 240, a empresa gerenciando o serviço de estacionamento envia ao módulo de escrita 40 dados de execução para o contrato inteligente 240 compreendendo o identificador de contrato inteligente 241, as condições de aplicação 242 compreendendo, por exemplo, a verificação da taxa de ocupação do estacionamento, a verificação do status de assinatura do veículo para o serviço de estacionamento, e pelo menos uma autorização condicional 243 correspondente, por exemplo, à autorização para que o veículo entre no estacionamento.
[0088] Uma vez que os dados de execução do contrato inteligente 240 tenham sido recebidos, o módulo de escrita 40 executa a autenticação 420 da identidade da empresa de gerenciamento de estaciona
Petição 870170101529, de 22/12/2017, pág. 71/82
29/32 mentos, e essa identidade é validada pelo módulo de escrita escrevendo 430 os ditos dados de execução de contrato inteligente em um nó de armazenamento 201 da dita cadeia de blocos 200. O servidor de armazenamento alojando o nó de armazenamento 201 registra um novo bloco 202 na cadeia de blocos 200. Esse bloco compreende os ditos dados de execução do contrato inteligente 240.
[0089] Nessa concretização particular, o veículo conectado 10 já pode se beneficiar de uma assinatura com uma empresa de gerenciamento de serviços de estacionamento. Nesse caso, no momento de uma conexão entre o veículo conectado 10 e o estacionamento 80, um módulo de conexão 50 recebe os dados de conexão 250, compreendendo, por exemplo, um pedido de autorização 253. Por exemplo, esses dados podem ser enviados pelo veículo conectado 10 ou pelo estacionamento 80. O módulo de conexão 50, tendo acesso à cadeia de blocos 200, nos dados de execução de contratos inteligentes 250, escritos na cadeia de blocos 200, identifica 530 uma autorização condicional 243, correspondente ao, ou complementando o, pedido de autorização 253. O módulo de conexão 50 então verifica se as condições de aplicação são verificadas (por exemplo, a taxa de ocupação do estacionamento e o status da assinatura do veículo para o serviço de estacionamento), e, quando aplicável, gera uma instrução de alocação de autorização 220 aceitando o pedido para autorização para entrada no estacionamento.
[0090] Alternativamente, o veículo pode entrar em um estacionamento sem que tenha, previamente, feito uma assinatura para esse serviço. Nesse caso, após conexão entre o veículo conectado 10 e o estacionamento 80, o veículo ou um terceiro paga (PAY) à empresa 70, que gerencia o serviço de estacionamento. Esse pagamento é escrito em um no da cadeia de blocos, e um novo bloco, compreendendo essa escrita é registrado (WRI). O módulo de conexão 50 recebe os
Petição 870170101529, de 22/12/2017, pág. 72/82
30/32 dados de conexão 250, compreendendo pelo menos um pedido de autorização 253. O módulo de conexão 50, tendo acesso à cadeia de blocos 200, identifica 530, nos dados de execução de contratos inteligentes 240, escritos na cadeia de blocos 200, uma autorização condicional 243 complementando o pedido de autorização 243. O módulo de conexão 50 verifica se as condições de aplicação são verificadas (nesse caso, por exemplo, o pagamento), e, quando aplicável, gera uma instrução de alocação de autorização 220, aceitando o pedido para autorização de entrada no estacionamento.
[0091] O sistema da invenção, portanto, agrupa em conjunto as vantagens da descentralização e da distribuição de cadeias de blocos, enquanto mantendo a segurança de sistemas centralizados. Considerando todas essas vantagens, é possível estabelecer uma confiança entre os vários participantes, tendo os seus próprios interesses e uma governança própria dentro de um sistema de livro-razão compartilhado, distribuído.
[0092] Várias concretizações de sistemas, dispositivos e métodos foram descritas no presente relatório descritivo. Essas concretizações são apresentadas apenas por meio de exemplo, e não são tencionadas para limitar o âmbito das invenções reivindicadas. Deve-se considerar, no entanto, que as várias características das concretizações, que foram descritas, podem ser combinadas de vários modos para produzir várias concretizações adicionais. Além do mais, ainda que vários materiais, dimensões, formas, configurações e locais, etc., tenham sido descritos para uso com as concretizações descritas, outros, além dos já mencionados, podem ser utilizados sem exceder o âmbito das invenções reivindicadas.
[0093] As pessoas versadas nas técnicas relevantes vão reconhecer que o objeto da presente invenção pode compreender menos características do que as ilustradas em quaisquer das concretizações
Petição 870170101529, de 22/12/2017, pág. 73/82
31/32 individuais descritas acima. As concretizações, descritas no presente relatório descritivo, não são mencionadas para serem uma apresentação exaustiva dos modos nos quais as várias características dos seus objetos podem ser combinados. Consequentemente, as concretizações não são combinações mutuamente exclusivas de características; diferentemente, as várias concretizações podem compreender uma combinação de diferentes características individuais selecionadas de diferentes concretizações individuais, como entendido pelas pessoas versadas na técnica. Além do mais, os elementos descritos com relação a uma concretização podem ser implementados em outras concretizações, mesmo quando não descritos nessas concretizações, a menos que indicado diferentemente.
[0094] Embora uma concretização dependente possa se referir nas reivindicações a uma combinação específica com uma ou mais outras reivindicações, outras concretizações também podem incluir uma combinação da reivindicação dependente com o objeto de cada uma das outras reivindicações dependentes, ou uma combinação de uma ou mais características com outras reivindicações independentes ou dependentes. Essas combinações são propostas no presente relatório descritivo, a menos que se indique que uma combinação específica não é desejada.
[0095] Qualquer incorporação por referência aos documentos mencionados acima é limitada de modo que nenhum objeto é incorporado, que seja contrário ao presente relatório descritivo explícito. Qualquer incorporação por referência de documentos feita acima é limitada ainda, de modo que nenhuma das reivindicações, incluídas nos documentos, sejam incorporadas por referência no presente relatório descritivo. Qualquer incorporação por referência aos documentos mencionados acima é limitada ainda mais, de modo que quaisquer definições, proporcionadas nos documentos, não são incorporadas por
Petição 870170101529, de 22/12/2017, pág. 74/82
32/32 referência no presente relatório descritivo, a menos que incluídas expressamente nele.
[0096] Para fins de interpretação das reivindicações, deseja-se, expressamente, as provisões da lei 35 U.S.C. § 112(f) não devem ser invocadas, a menos que termos específicos meio para ou etapa para sejam indicados em uma reivindicação.

Claims (20)

  1. REIVINDICAÇÕES
    1. Sistema computacional para o gerenciamento de autorizações de objetos conectados, o sistema computacional caracterizado pelo fato de que compreende:
    uma pluralidade de servidores de armazenamento, compreendendo uma cadeia de blocos distribuída na forma de nós de armazenamento, a pluralidade de servidores de armazenamento configurados para registrar um novo bloco na cadeia de blocos;
    um módulo controlador de acesso configurado para criar um direito de acesso à cadeia de blocos, para um usuário do sistema, o direito de acesso incluindo:
    um direito de acesso compreendendo apenas o acesso de leitura; e um direito de acesso compreendendo um direito a registrar novos blocos da cadeia de blocos em um dos nós de armazenamento, o usuário tendo o dito direito sendo uma entidade governamental;
    um módulo de escrita para a criação de autorizações, o módulo de escrita configurado para:
    receber dados de execução de contratos inteligentes emitidos por uma entidade governamental, os dados de execução de contratos inteligentes compreendendo um identificador único do contrato inteligente, condições de aplicação do contrato inteligente e pelo menos uma autorização condicional associada com o contrato inteligente; e escrever os dados de execução de contratos inteligentes em um nó de armazenamento da cadeia de blocos; e um módulo de conexão para a alocação de autorizações, o módulo de conexão configurado para:
    receber dados de conexão entre um objeto conectado e uma entidade de terceiros, os dados de conexão incluindo pelo menos
    Petição 870170101529, de 22/12/2017, pág. 76/82
  2. 2/6 um pedido de autorização;
    identificar, em um nó de armazenamento da cadeia de blocos, uma autorização condicional correspondente ao pedido de autorização;
    verificar as condições de aplicação incluídas nos dados de execução de contratos inteligentes; e gerar uma instrução de alocação de autorização consentindo com o pedido de autorização apenas se todas as condições de aplicação da autorização condicional forem verificadas.
    2. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que o módulo de conexão é configurado ainda para registrar a instrução de alocação de autorização na cadeia de blocos.
  3. 3. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que o módulo de conexão é configurado ainda para transmitir a instrução de alocação de autorização a uma máquina virtual para execução.
  4. 4. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a cadeia de blocos compreende dados criptografados e dados não criptografados.
  5. 5. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a cadeia de blocos compreende dados de objeto relativos ao objeto conectado, os dados de objeto incluindo um identificador único de objeto e um perfil de objeto.
  6. 6. Sistema, de acordo com a reivindicação 5, caracterizado pelo fato de que o perfil de objeto compreende dados que incluem pelo menos um de: status, origem, características físicas, funcionalidades e permissões.
  7. 7. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a cadeia de blocos compreende dados de terceiros relativos à entidade de terceiros, os dados de terceiros incluindo um
    Petição 870170101529, de 22/12/2017, pág. 77/82
    3/6 identificador único de terceiros e um perfil de terceiros.
  8. 8. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a entidade de terceiros é selecionada de entre: outro objeto conectado, um usuário, um dado, um arquivo ou conjunto de arquivos, ou um serviço.
  9. 9. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que o objeto conectado compreende pelo menos um controlador lógico ou um controlador físico, e é pelo menos um de uma válvula conectada, um veículo conectado e uma chave conectada.
  10. 10. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que pelo menos parte dos dados de terceiros, dados de execução de contratos inteligentes e dados de objetos é criptografada, antes que seja registrada em um nó de armazenamento da cadeia de blocos (200).
  11. 11. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que as condições de aplicação incluem condições selecionadas de entre: uma condição de pagamento, uma condição de tempo, uma condição de localização e uma condição de segurança.
  12. 12. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que o módulo de conexão é configurado ainda para verificar, em prioridade, uma condição de aplicação mais recente.
  13. 13. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a instrução de alocação de autorização é pelo menos uma de: uma separação de uma associação entre o objeto conectado e a entidade de terceiros associada; uma autorização dada ao objeto conectado para acessar um serviço da entidade de terceiros; e uma autorização dada à entidade de terceiros para acessar uma funcionalidade ou dados do objeto conectado.
  14. 14. Método para gerenciar autorizações para objetos conectados, em um sistema computacional de servidores de armazena
    Petição 870170101529, de 22/12/2017, pág. 78/82
    4/6 mento compreendendo uma cadeia de blocos distribuída na forma de nós de armazenamento; os servidores de armazenamento configurados para registrar um novo bloco na cadeia de blocos; um módulo controlador de acesso; um módulo de escrita; e um módulo de conexão, o método caracterizado pelo fato de que compreende:
    definir, pelo módulo de controle de acesso, um direito de acesso à cadeia de blocos para um usuário, o direito de acesso incluindo:
    um direito de acesso apenas compreendendo acesso de leitura; e um direito de acesso compreendendo um direito para registrar novos blocos da cadeia de blocos, o usuário tendo o dito direito que é uma entidade governamental;
    receber, pelo módulo de escrita, dados de execução de contratos inteligentes emitidos por uma entidade governamental, os dados de execução de contratos inteligentes compreendendo um identificador único do contrato inteligente, condições de aplicação do contrato inteligente, e pelo menos uma autorização condicional associada com o contrato inteligente;
    escrever os dados de execução de contratos inteligentes em um nó de armazenamento da cadeia de blocos;
    receber dados de conexão, pelo módulo de conexão, os dados de conexão compreendendo pelo menos um pedido de autorização;
    identificar uma autorização condicional correspondente ao pedido de autorização nos dados de execução de contratos inteligentes, escritos no nó de armazenamento da cadeia de blocos, a autorização condicional sendo associada com as condições de aplicação;
    verificar as condições de aplicação incluídas nos dados de execução de contrato inteligente; e
    Petição 870170101529, de 22/12/2017, pág. 79/82
    5/6 gerar uma instrução de alocação de autorização consentindo no pedido de autorização apenas se todas as condições de aplicação da autorização condicional forem verificadas.
  15. 15. Sistema, caracterizado pelo fato de que compreende:
    uma cadeia de blocos compreendendo uma pluralidade de nós de armazenamento configurados para armazenar uma pluralidade de blocos, em que a pluralidade de blocos é distribuída por pelo menos dois nós de armazenamento em memória não volátil;
    uma pluralidade de entidades governamentais, cada entidade governamental configurada para gerenciar pelo menos um dos nós de armazenamento por recebimento de dados não confirmados, validar os dados não confirmados, e fazer a validação dos dados disponíveis para a cadeia de blocos;
    um módulo de controle de acesso configurado para controlar o número de entidades governamentais permitidas na cadeia de blocos, o número de entidades governamentais sendo inferior ao número de nós de armazenamento;
    um módulo de conexão configurado para controlar o acesso à cadeia de blocos, com base em um pedido de autorização; e um objeto conectado em comunicação eletrônica com a cadeia de blocos, o objeto conectado configurado para proporcionar um serviço à cadeia de blocos, após uma instrução de alocação de autorização, baseada no pedido de autorização, ser gerada pelo módulo de conexão.
  16. 16. Sistema, de acordo com a reivindicação 15, caracterizado pelo fato de que o objeto conectado é pelo menos um de uma válvula conectada, um veículo conectado ou uma chave conectada.
  17. 17. Sistema, de acordo com a reivindicação 15, caracterizado pelo fato de que pelo menos um dos nós de armazenamento é impedido de adicionar um novo bloco à cadeia de blocos.
    Petição 870170101529, de 22/12/2017, pág. 80/82
    6/6
  18. 18. Sistema, de acordo com a reivindicação 15, caracterizado pelo fato de que os dados não confirmados são validados por acordo de pelo menos duas entidades governamentais.
  19. 19. Sistema, de acordo com a reivindicação 15, caracterizado pelo fato de que os dados não confirmados são relacionados à operação do objeto conectado.
  20. 20. Sistema, de acordo com a reivindicação 15, caracterizado pelo fato de que o módulo de conexão é configurado ainda para acessar dados externos à cadeia de blocos, para validar um pedido de autorização.
BR102017028033A 2016-12-28 2017-12-22 sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados BR102017028033A2 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1663485A FR3061330B1 (fr) 2016-12-28 2016-12-28 Systeme et procede pour la creation et la gestion d'autorisations decentralisees pour des objets connectes

Publications (1)

Publication Number Publication Date
BR102017028033A2 true BR102017028033A2 (pt) 2019-01-02

Family

ID=58992943

Family Applications (1)

Application Number Title Priority Date Filing Date
BR102017028033A BR102017028033A2 (pt) 2016-12-28 2017-12-22 sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados

Country Status (6)

Country Link
US (2) US10216948B2 (pt)
EP (1) EP3343425B1 (pt)
CN (1) CN108256858A (pt)
BR (1) BR102017028033A2 (pt)
ES (1) ES2729312T3 (pt)
FR (1) FR3061330B1 (pt)

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016164496A1 (en) * 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
WO2017010455A1 (ja) * 2015-07-13 2017-01-19 日本電信電話株式会社 契約合意方法、合意検証方法、契約合意システム、合意検証装置、契約合意装置、契約合意プログラム及び合意検証プログラム
FR3061330B1 (fr) 2016-12-28 2019-05-24 Bull Sas Systeme et procede pour la creation et la gestion d'autorisations decentralisees pour des objets connectes
US20220138741A1 (en) 2017-01-25 2022-05-05 State Farm Mutual Automobile Insurance Company Blockchain based banking identity authentication
US10824759B1 (en) 2017-01-25 2020-11-03 State Farm Mutual Automobile Insurance Company Systems and methods for verifying agent sales data via blockchain
US10419225B2 (en) 2017-01-30 2019-09-17 Factom, Inc. Validating documents via blockchain
US10411897B2 (en) 2017-02-17 2019-09-10 Factom, Inc. Secret sharing via blockchains
US10515233B2 (en) * 2017-03-19 2019-12-24 International Business Machines Corporation Automatic generating analytics from blockchain data
US10452998B2 (en) 2017-03-19 2019-10-22 International Business Machines Corporation Cognitive blockchain automation and management
US10817873B2 (en) 2017-03-22 2020-10-27 Factom, Inc. Auditing of electronic documents
US10251053B1 (en) * 2017-08-02 2019-04-02 Sprint Communications Company L.P. Embedded subscriber identity module (eSIM) implementation on a wireless communication device using distributed ledger technology (DLT)
US10855758B1 (en) * 2017-08-04 2020-12-01 EMC IP Holding Company LLC Decentralized computing resource management using distributed ledger
CN108364223B (zh) * 2017-12-29 2021-01-26 创新先进技术有限公司 一种数据审计的方法及装置
US11108811B2 (en) * 2018-01-22 2021-08-31 Avaya Inc. Methods and devices for detecting denial of service attacks in secure interactions
US11362806B2 (en) * 2018-03-30 2022-06-14 Walmart Apollo, Llc System and methods for recording codes in a distributed environment
US11134120B2 (en) 2018-05-18 2021-09-28 Inveniam Capital Partners, Inc. Load balancing in blockchain environments
US11170366B2 (en) 2018-05-18 2021-11-09 Inveniam Capital Partners, Inc. Private blockchain services
CN109035458A (zh) * 2018-07-11 2018-12-18 江苏恒宝智能系统技术有限公司 一种基于区块链的etc付费系统
CN109063474A (zh) * 2018-07-23 2018-12-21 上海点融信息科技有限责任公司 用于在区块链网络中验证和运行智能合约的方法和装置
US20200042982A1 (en) * 2018-08-06 2020-02-06 Factom Digital Contracts in Blockchain Environments
US11328290B2 (en) 2018-08-06 2022-05-10 Inveniam Capital Partners, Inc. Stable cryptocurrency coinage
US11368446B2 (en) * 2018-10-02 2022-06-21 International Business Machines Corporation Trusted account revocation in federated identity management
CN110020956B (zh) 2018-11-26 2022-11-22 创新先进技术有限公司 一种跨区块链的交互方法及系统、计算机设备及存储介质
US11449524B2 (en) * 2018-11-27 2022-09-20 Micron Technology, Inc. Parking infrastructure powered by a decentralized, distributed database
US10979213B2 (en) 2018-12-19 2021-04-13 Verizon Media Inc. Blockchain compression using summary and padding blocks
US11032064B2 (en) * 2018-12-19 2021-06-08 Verizon Media Inc. Blockchain ledger growth management
WO2020133069A1 (zh) * 2018-12-27 2020-07-02 合肥达朴汇联科技有限公司 区块链的数据处理方法和装置
US10630478B1 (en) * 2018-12-28 2020-04-21 University Of South Florida Sender optimal, breach-resilient, and post-quantum secure cryptographic methods and systems for digital auditing
US20210142405A1 (en) * 2018-12-31 2021-05-13 Social Equity Incorporated System and method for providing an ownership conveyance system and/or marketplace
US11049203B2 (en) * 2018-12-31 2021-06-29 Peter Dwight Sahagen System and method for providing automated real estate ownership mobility
CN109670814A (zh) * 2019-01-08 2019-04-23 睿亚区块链科技(深圳)有限公司 一种基于区块链技术的保险交易系统
US11144666B2 (en) * 2019-01-18 2021-10-12 Toyota Motor North America, Inc. Selective data access and data privacy via blockchain
US11899817B2 (en) 2019-01-31 2024-02-13 Salesforce, Inc. Systems, methods, and apparatuses for storing PII information via a metadata driven blockchain using distributed and decentralized storage for sensitive user information
US11824864B2 (en) 2019-01-31 2023-11-21 Salesforce, Inc. Systems, methods, and apparatuses for implementing a declarative and metadata driven blockchain platform using distributed ledger technology (DLT)
US11811769B2 (en) 2019-01-31 2023-11-07 Salesforce, Inc. Systems, methods, and apparatuses for implementing a declarative, metadata driven, cryptographically verifiable multi-network (multi-tenant) shared ledger
US11886421B2 (en) * 2019-01-31 2024-01-30 Salesforce, Inc. Systems, methods, and apparatuses for distributing a metadata driven application to customers and non-customers of a host organization using distributed ledger technology (DLT)
EP3699848A1 (en) * 2019-02-25 2020-08-26 Siemens Aktiengesellschaft Blockchain-powered device instruction
SG11201908551QA (en) * 2019-03-04 2019-10-30 Alibaba Group Holding Ltd Methods and devices for performing off-chain testing on smart contract
CN110012119B (zh) * 2019-03-12 2019-11-01 广州大学 一种ip地址前缀授权与管理方法
CA3058013C (en) 2019-03-29 2021-04-27 Alibaba Group Holding Limited Managing sensitive data elements in a blockchain network
CN110457391B (zh) * 2019-07-19 2023-04-21 国网安徽省电力有限公司建设分公司 一种基于区块链的工程车进出工地管理系统及方法
CN111183427B (zh) * 2019-09-02 2023-06-30 创新先进技术有限公司 管理基于区块链的中心化账本系统
CN110602088A (zh) * 2019-09-11 2019-12-20 北京京东振世信息技术有限公司 基于区块链的权限管理方法及装置、设备和介质
SG11202002588RA (en) 2019-09-12 2020-04-29 Alibaba Group Holding Ltd Log-structured storage systems
CN115398874A (zh) * 2019-09-12 2022-11-25 创新先进技术有限公司 日志结构存储系统
US11368285B2 (en) 2019-12-05 2022-06-21 International Business Machines Corporation Efficient threshold storage of data object
US11343075B2 (en) 2020-01-17 2022-05-24 Inveniam Capital Partners, Inc. RAM hashing in blockchain environments
US11682095B2 (en) 2020-02-25 2023-06-20 Mark Coast Methods and apparatus for performing agricultural transactions
CN111552935B (zh) * 2020-04-22 2023-09-29 中国银联股份有限公司 一种区块链数据授权访问方法及装置
CN111630545B (zh) 2020-04-22 2022-05-27 支付宝(杭州)信息技术有限公司 管理账本系统中的交易请求
SG11202103218YA (en) 2020-04-22 2021-04-29 Alipay Hangzhou Inf Tech Co Ltd Managing transaction requests in ledger systems
CN111656386B (zh) 2020-04-22 2022-05-17 支付宝(杭州)信息技术有限公司 管理账本系统中的交易请求
CN111586065A (zh) * 2020-05-12 2020-08-25 山东浪潮商用系统有限公司 一种基于区块链的数据授权方法
CN112084162B (zh) * 2020-08-07 2024-04-23 同济大学 一种基于区块链和ipfs的溯源权限管理系统
TWI829215B (zh) * 2020-11-10 2024-01-11 林庠序 可檢核取用訊標的移轉歷史以驗證取用訊標有效性的去中心化資料授權控管系統
TWI829218B (zh) * 2020-11-10 2024-01-11 林庠序 可經由第三方服務子系統間接移轉取用訊標的去中心化資料授權控管系統
TWI829219B (zh) * 2020-11-10 2024-01-11 林庠序 可將取用訊標由區塊鏈子系統移轉給資料請求者裝置的去中心化資料授權控管系統
TWI829217B (zh) * 2020-11-10 2024-01-11 林庠序 可彈性調整資料授權政策的去中心化資料授權控管系統
TWI829221B (zh) * 2020-11-10 2024-01-11 林庠序 可允許資料請求者裝置查核區塊鏈子系統中的資料授權政策正確性的去中心化資料授權控管系統
TWI829222B (zh) * 2020-11-10 2024-01-11 林庠序 可利用第三方服務子系統提供可查詢資料清單給資料請求者裝置的去中心化資料授權控管系統
TWI829216B (zh) * 2020-11-10 2024-01-11 林庠序 可透過第三方服務子系統轉傳訊標請求的去中心化資料授權控管系統
TWI829220B (zh) * 2020-11-10 2024-01-11 林庠序 可利用智能合約產生並移轉授權訊標的去中心化資料授權控管系統
US11405364B1 (en) 2021-03-04 2022-08-02 International Business Machines Corporation Privacy-preserving endorsements in blockchain transactions
CN113010861B (zh) * 2021-03-16 2022-06-28 支付宝(杭州)信息技术有限公司 一种基于区块链的融资事务中的身份验证方法和系统
US20220358231A1 (en) * 2021-05-05 2022-11-10 Skyscend, Inc. Automated validation and security for digital assets in a computer environment
CN113590711A (zh) * 2021-07-13 2021-11-02 华中科技大学 一种高弹性可扩展的多链数据分级共享存储系统及方法
TWI790985B (zh) * 2021-10-28 2023-01-21 市民永續股份有限公司 基於區塊鏈及零知識證明機制的資料取用權限控管系統、以及相關的資料服務系統
CN114386098B (zh) * 2021-12-31 2024-05-03 江苏大道云隐科技有限公司 一种大数据存储与溯源系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10984913B2 (en) * 2012-04-27 2021-04-20 Netspective Communications Llc Blockchain system for natural language processing
US10102510B2 (en) * 2012-11-28 2018-10-16 Hoverkey Ltd. Method and system of conducting a cryptocurrency payment via a mobile device using a contactless token to store and protect a user's secret key
US9967334B2 (en) 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
WO2016164275A1 (en) * 2015-04-04 2016-10-13 Eric Greenberg Security system for data communications including key management and privacy
US11392955B2 (en) * 2015-05-20 2022-07-19 Ripple Luxembourg S.A. Temporary consensus networks in a resource transfer system
US11386415B2 (en) * 2015-05-20 2022-07-12 Ripple Luxembourg S.A. Hold condition in a resource transfer system
US10740732B2 (en) * 2015-05-20 2020-08-11 Ripple Luxembourg S.A. Resource transfer system
CA2988318A1 (en) 2015-06-04 2016-12-08 Chronicled, Inc. Open registry for identity of things
US10366204B2 (en) * 2015-08-03 2019-07-30 Change Healthcare Holdings, Llc System and method for decentralized autonomous healthcare economy platform
US10033702B2 (en) * 2015-08-05 2018-07-24 Intralinks, Inc. Systems and methods of secure data exchange
US20170132619A1 (en) * 2015-11-06 2017-05-11 SWFL, Inc., d/b/a "Filament" Systems and methods for autonomous device transacting
US10791123B2 (en) * 2015-11-25 2020-09-29 Yaron Gvili Selectivity in privacy and verification with applications
US9992028B2 (en) * 2015-11-26 2018-06-05 International Business Machines Corporation System, method, and computer program product for privacy-preserving transaction validation mechanisms for smart contracts that are included in a ledger
US10762504B2 (en) * 2016-02-22 2020-09-01 Bank Of America Corporation System for external secure access to process data network
US10135870B2 (en) * 2016-02-22 2018-11-20 Bank Of America Corporation System for external validation of secure process transactions
US20170278080A1 (en) * 2016-03-23 2017-09-28 Kenneth Kruszka Payment By Image
US10063529B2 (en) * 2016-03-28 2018-08-28 Accenture Global Solutions Limited Secure 3D model sharing using distributed ledger
US10839096B2 (en) * 2016-03-28 2020-11-17 International Business Machines Corporation Cryptographically provable zero-knowledge content distribution network
US10720232B2 (en) * 2016-04-13 2020-07-21 Accenture Global Solutions Limited Distributed healthcare records management
US10108954B2 (en) * 2016-06-24 2018-10-23 PokitDok, Inc. System and method for cryptographically verified data driven contracts
US11651359B2 (en) * 2016-10-05 2023-05-16 The Toronto-Dominion Bank Distributed electronic ledger with metadata
FR3061330B1 (fr) 2016-12-28 2019-05-24 Bull Sas Systeme et procede pour la creation et la gestion d'autorisations decentralisees pour des objets connectes

Also Published As

Publication number Publication date
FR3061330B1 (fr) 2019-05-24
ES2729312T3 (es) 2019-10-31
EP3343425B1 (fr) 2019-03-06
US20180181768A1 (en) 2018-06-28
CN108256858A (zh) 2018-07-06
US10216948B2 (en) 2019-02-26
US10552627B2 (en) 2020-02-04
US20190171830A1 (en) 2019-06-06
EP3343425A1 (fr) 2018-07-04
FR3061330A1 (fr) 2018-06-29

Similar Documents

Publication Publication Date Title
BR102017028033A2 (pt) sistema e método para a criação e o gerenciamento de autorizações descentralizadas para objetos conectados
Kannengießer et al. Trade-offs between distributed ledger technology characteristics
US10956614B2 (en) Expendable access control
JP6872015B2 (ja) ブロックチェーン台帳を用いた機密データへのアクセスのセキュア化
US11347876B2 (en) Access control
CN110300973B (zh) 联盟区块链网络的建立
US20190295182A1 (en) Digital asset architecture
US11362842B2 (en) Membership compiler for applications
WO2017054985A1 (en) Access control
GB2540977A (en) Expendable access control
KR20210040078A (ko) 안전한 보관 서비스를 위한 시스템 및 방법
GB2540976A (en) Access control
EP3777022B1 (en) Distributed access control
US11431503B2 (en) Self-sovereign data access via bot-chain
BR112013009278B1 (pt) Terminal de usuário e método para impor uma política de uso de aplicativo gerado por servidor
KR20200097773A (ko) 블록체인 기반 신원 시스템
BR102020024769A2 (pt) Método e sistema para ordenação, replicação e registro transparentes não repudiáveis de operações envolvendo dados pessoais e meio não transitório legível por computador
US20230057898A1 (en) Privacy preserving auditable accounts
AU2017296038B2 (en) Digital asset architecture
US10461926B2 (en) Cryptographic evidence of persisted capabilities
Zhang et al. A review on blockchain-based access control models in IoT applications
CN114762291A (zh) 共享用户的用户特定数据的方法、计算机程序和数据共享系统
Nassr Eddine et al. Blockchain-Based Self Sovereign Identity Systems: High-Level Processing and a Challenges-Based Comparative Analysis
Vishnoi MedFabric4Me: Blockchain based patient centric electronic health records system
CN117527273A (zh) 处理数据的方法及装置

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B11A Dismissal acc. art.33 of ipl - examination not requested within 36 months of filing
B11Y Definitive dismissal - extension of time limit for request of examination expired [chapter 11.1.1 patent gazette]