BR112021010346A2 - Transmissão segura de dados em um fluxo de dados - Google Patents

Transmissão segura de dados em um fluxo de dados Download PDF

Info

Publication number
BR112021010346A2
BR112021010346A2 BR112021010346-5A BR112021010346A BR112021010346A2 BR 112021010346 A2 BR112021010346 A2 BR 112021010346A2 BR 112021010346 A BR112021010346 A BR 112021010346A BR 112021010346 A2 BR112021010346 A2 BR 112021010346A2
Authority
BR
Brazil
Prior art keywords
data
data stream
computer
location
metadata
Prior art date
Application number
BR112021010346-5A
Other languages
English (en)
Inventor
Fabien Gremaud
Frederic THOMAS
Jean-Bernard Fischer
Original Assignee
Nagravision S.A.
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 Nagravision S.A. filed Critical Nagravision S.A.
Publication of BR112021010346A2 publication Critical patent/BR112021010346A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0471Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying encryption by an intermediary, e.g. receiving clear information at the intermediary and encrypting the received information at the intermediary before forwarding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • 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/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

TRANSMISSÃO SEGURA DE DADOS EM UM FLUXO DE DADOS. A presente invenção se refere, em visão geral, a divulgação a um método de transmissão de dados implementado por computador em um fluxo de dados de um primeiro dispositivo para um segundo dispositivo. O fluxo de dados é criptografado antes da transmissão do primeiro dispositivo para o segundo dispositivo e uma localização dos dados no fluxo de dados é indicada para o segundo dispositivo. A localização pode ser uma localização pré-compartilhada entre o primeiro e o segundo dispositivos, ou o primeiro dispositivo pode transmitir a localização dos dados para o segundo dispositivo. O segundo dispositivo decodifica o fluxo de dados criptografados, identifica os dados no fluxo de dados com base na localização e criptografa os dados identificados no fluxo de dados.

Description

"TRANSMISSÃO SEGURA DE DADOS EM UM FLUXO DE DADOS" CAMPO DA TÉCNICA
[001] A presente divulgação se refere à transmissão de dados e, em particular, à transmissão segura de dados em um fluxo de dados.
FUNDAMENTOS DA INVENÇÃO
[002] Em redes de computadores, os dados são normalmente transmitidos usando duas camadas de criptografia para fornecer privacidade e integridade de dados entre dois ou mais dispositivos. Uma primeira camada de criptografia é normalmente aplicada aos dados para protegê-los "em repouso" e garantir sua autenticidade. Os dados criptografados são incluídos em um fluxo de dados para transmissão a outro dispositivo. Uma segunda camada de criptografia é aplicada globalmente no nível de transporte ao fluxo de dados antes de ser transmitido.
[003] Espera-se que alguns dispositivos, como os dispositivos da Internet das Coisas, tenham um consumo de energia muito baixo (eles precisam funcionar por anos com uma bateria pequena), tenham pouco armazenamento (para manter os custos baixos) e usem uma largura de banda de comunicação limitada. Isso é diferente de computadores, tablets e telefones na Internet, onde o consumo de energia, o armazenamento e a largura de banda podem ter maiores magnitudes.
[004] Portanto, é desejável fornecer métodos e dispositivos que possibilitem a transmissão de dados segura e de baixa energia. Além disso, ou alternativamente, a transmissão de dados deve ser executável por um primeiro dispositivo, como um dispositivo de Internet das Coisas, tendo largura de banda limitada e recursos de armazenamento de dados para um segundo dispositivo, como um dispositivo de processo interno com potência mais alta e hardware de armazenamento de dados, que permite operação com baixa energia, mantendo a segurança dos dados. Além disso, outros recursos e características desejáveis da presente invenção se tornarão claros a partir da descrição detalhada subsequente da invenção e das reivindicações anexas, tomadas em conjunto com os desenhos anexos e os antecedentes da invenção.
BREVE DESCRIÇÃO DOS DESENHOS
[005] A Figura 1 ilustra um diagrama de blocos de um sistema para transmissão de dados;
[006] A Figura 2 ilustra um fluxo de dados no sistema da Figura 1; e
[007] A Figura 3 ilustra um diagrama de blocos de uma implementação de um dispositivo de computação.
DESCRIÇÃO DETALHADA
[008] Em uma visão geral, é divulgado um método implementado por computador de transmissão de dados em um fluxo de dados de um primeiro dispositivo para um segundo dispositivo. O fluxo de dados é criptografado antes da transmissão do primeiro dispositivo para o segundo dispositivo e uma localização dos dados no fluxo de dados é indicada para o segundo dispositivo. A localização pode ser uma localização pré-compartilhada entre o primeiro e o segundo dispositivos, ou o primeiro dispositivo pode transmitir a localização dos dados para o segundo dispositivo.
[009] Os dados são então criptografados no segundo dispositivo em vez do primeiro dispositivo. Desta forma, os dados podem ser transmitidos com segurança do primeiro dispositivo para o segundo dispositivo e a autenticidade dos dados pode ser mantida sem exigir que o primeiro dispositivo criptografe os dados.
Vantajosamente, criptografando o fluxo de dados, mas não os dados em si, o consumo de energia do primeiro dispositivo pode ser reduzido. A economia de energia na transmissão de dados é particularmente benéfica em dispositivos alimentados por bateria, como um dispositivo da Internet das Coisas. Este efeito pode ser alcançado independentemente da localização ser transmitida do primeiro dispositivo para o segundo dispositivo ou a localização é uma localização pré-
compartilhada. Dessa forma, formam soluções alternativas que possibilitam o mesmo efeito.
[010] Outro aspecto da presente divulgação inclui um método implementado por computador para receber dados por um segundo dispositivo de um primeiro dispositivo. O método inclui decifrar pelo segundo dispositivo, um fluxo de dados criptografado recebido do primeiro dispositivo. O método inclui a identificação, pelo segundo dispositivo, de dados no fluxo de dados decifrado com base, em uma primeira opção, em um local fornecido pelo primeiro dispositivo, em que o local é parte dos dados. Em uma segunda opção, o método inclui a identificação dos dados pelo segundo dispositivo com base em um local predeterminado no fluxo de dados.
Além disso, o método inclui criptografar, pelo segundo dispositivo, os dados identificados no fluxo de dados.
[011] Outros aspectos da divulgação se referem a um método implementado por computador para receber dados em um fluxo de dados de um primeiro dispositivo em um segundo dispositivo. O método compreende receber, no segundo dispositivo, um fluxo de dados criptografados do primeiro dispositivo. O fluxo de dados criptografados compreende os dados. O segundo dispositivo recebe metadados indicando uma localização dos dados no fluxo de dados. Por exemplo, se o local for um local pré-compartilhado entre o primeiro e o segundo dispositivos, por exemplo, um segredo compartilhado, os metadados podem ser recebidos antes de quaisquer fluxos de dados criptografados serem recebidos no segundo dispositivo, isto é, codificados durante a fabricação ou configuração do segundo dispositivo. Alternativamente, o segundo dispositivo pode receber os metadados do primeiro dispositivo. O segundo dispositivo decifra o fluxo de dados criptografados e identifica os dados no fluxo de dados com base no local indicado. Os dados são então criptografados no segundo dispositivo, por exemplo, em outro fluxo de dados.
[012] Quando o primeiro dispositivo transmite a localização dos dados para o segundo dispositivo, a localização faz parte dos metadados que são transmitidos do primeiro dispositivo para o segundo dispositivo. Os metadados podem ser transmitidos como parte do fluxo de dados criptografados, por exemplo, no cabeçalho. Alternativamente, os metadados podem ser enviados separadamente do fluxo de dados criptografados, em outras palavras, o fluxo de dados criptografados pode ser transmitido usando uma primeira conexão e os metadados podem ser transmitidos usando uma segunda conexão.
[013] Quando a localização dos dados no fluxo de dados é um local pré- compartilhado entre o primeiro e o segundo dispositivos, os dados estão em um local predeterminado no fluxo de dados. Por exemplo, a localização predeterminada pode ser um índice fixo ou informação de análise codificada, como uma Etiqueta em um TagLenValue, por exemplo, uma sequência asn1 ou um campo específico de um formato xml ou json. O local predeterminado é baseado no local pré-compartilhado de modo que o segundo dispositivo possa identificar os dados no fluxo de dados. A localização predeterminada pode ser uma posição fixa no fluxo de dados ou uma posição de acordo com um algoritmo da localização pré-compartilhada.
Predeterminado neste contexto pode ser determinado antes de transmitir o fluxo de dados.
[014] Outros aspectos da divulgação se referem a um sistema que compreende um processador configurado para executar as etapas do método descrito acima, um meio legível por computador não transitório tendo instruções executáveis por computador para fazer com que um sistema de computador execute as etapas do método conforme descrito acima e um produto de programa de computador que compreende instruções que, quando o programa é executado por um computador, fazem com que o computador execute as etapas do método conforme descrito acima.
[015] Algumas modalidades específicas são agora descritas por meio de ilustração com referência aos desenhos anexos, nos quais números de referência semelhantes se referem a recursos semelhantes.
[016] Com referência à Figura 1, o sistema 100 compreende um primeiro dispositivo 102 e um segundo dispositivo 104. O primeiro dispositivo 102 está disposto para se comunicar com o segundo dispositivo 104, e o primeiro e o segundo dispositivos podem ser conectados através de uma rede, como a Internet, uma rede de área local, uma rede de área local sem fio, uma rede de área ampla, etc.
[017] O primeiro dispositivo 102 compreende um processador 120, um módulo de aplicativo 122, um formatador de rede 124 e um gerenciador de túnel
126. Cada um dos módulos de aplicativo 122, o formatador de rede 124 e o gerenciador de túnel 126 estão operativamente conectados ao processador 120.
[018] O módulo de aplicativo 122 é organizado para executar aplicativos que emitem dados, por exemplo, com base na entrada de um sensor. O formatador de rede 124 recebe os dados e quaisquer outros dados do módulo de aplicativo 122 e formata os dados em um fluxo de dados. O formatador de rede 124 pode formatar os dados em um local predeterminado de acordo com um local pré-compartilhado, por exemplo, um segredo compartilhado com o segundo dispositivo. Alternativamente, o formatador de rede 124 pode enviar a localização dos dados no fluxo de dados para o gerenciador de túnel 126.
[019] O gerenciador de túnel 126 compreende um fluxo de banco de dados chave 128 que armazena uma chave simétrica T. O gerenciador de túnel 126 é organizado para criptografar o fluxo de dados do formatador de rede 124 usando a chave simétrica T. O gerenciador de túnel 126 é configurado para transmitir o fluxo de dados criptografados para o segundo dispositivo 104. O gerenciador de túnel 126 pode ser configurado para gerar metadados e enviar os metadados para o segundo dispositivo 104. Os metadados podem incluir a localização dos dados no fluxo de dados, uma chave criptográfica e / ou uma referência a uma chave criptográfica. A chave criptográfica pode ser uma chave privada de um par de chaves assimétricas ou uma chave simétrica.
[020] O segundo dispositivo 104 compreende um processador 140, um ponto final de túnel 142, um formatador de rede 148, um mecanismo de decodificação 150 e um módulo de aplicativo 152. O ponto final de túnel 142, o formatador de rede 148, o mecanismo de decodificação 150 e o módulo de aplicativo 152 são operativamente conectados ao processador 140.
[021] O ponto final do túnel 142 compreende um fluxo de banco de dados chave 144 que armazena uma cópia da chave simétrica T. Opcionalmente, o ponto final do túnel 142 compreende um banco de dados de chave criptográfica 146 que armazena uma ou mais chaves criptográficas incluindo uma chave criptográfica D. O ponto final do túnel 30 é organizado para receber o fluxo de dados criptografados do gerenciador de túnel 126 do primeiro dispositivo 102.
[022] O formatador de rede 124 e o ponto final do túnel 142 podem ser fornecidos durante a configuração com uma localização pré-compartilhada em relação à localização dos dados no fluxo de dados. Isto significa que a localização dos dados é predeterminada e o ponto final do túnel 142 está organizado para identificar os dados no fluxo de dados com base na localização predeterminada dos dados.
[023] Alternativamente, se o gerenciador de túnel 126 for organizado para transmitir metadados para o segundo dispositivo, o ponto final do túnel 142 é organizado para extrair a localização dos dados dos metadados. O ponto final do túnel 142 é organizado para identificar os dados no fluxo de dados com base na localização dos metadados.
[024] O ponto final do túnel 142 é organizado, uma vez que os dados são identificados no fluxo de dados, para criptografar os dados dentro do fluxo de dados.
[025] O formatador de rede 148 está configurado para receber o fluxo de dados do ponto final do túnel 142, com os dados criptografados, e extrair os dados (criptografados) e quaisquer outros dados. O mecanismo de descriptografia 150 é organizado para decodificar os dados extraídos do fluxo de dados, se aplicável. O módulo de aplicativo 152 é organizado para processar os dados.
[026] A Figura 2 ilustra um fluxo de dados 200 entre os componentes do primeiro dispositivo 102 e os componentes do segundo dispositivo 104.
[027] Na etapa 202, o módulo de aplicativo 122 gera dados e os envia para o formatador de rede 124. O módulo de aplicativo 122 também pode gerar outros dados na etapa 204 e enviá-los para o formatador de rede 124.
[028] Na etapa 206, o formatador de rede 124 gera um fluxo de dados que compreende os dados juntamente com quaisquer dados recebidos da etapa 204 e transmite o fluxo de dados para o gerenciador de túnel 126. Se o segundo dispositivo 104 for provido de uma localização pré-compartilhada, então o formatador de rede 124 pode incorporar os dados no fluxo de dados em um local predeterminado.
[029] O gerenciador de túnel 126 criptografa, na etapa 208, o fluxo de dados com a chave simétrica T do banco de dados chave de fluxo 128. Por exemplo, o fluxo de dados pode ser criptografado com uma cifra de fluxo de 8 bits para minimizar a energia de processamento necessário no primeiro dispositivo para criptografar o fluxo de dados. Na etapa 210, o fluxo de dados criptografado é enviado para o ponto final do túnel 142 do segundo dispositivo 104.
[030] Se o segundo dispositivo 104 não for provido de uma localização pré- compartilhada, ou seja, o formatador de rede 124 não incorporar os dados no fluxo de dados em uma localização predeterminada, então, na etapa 212, o formatador de rede 124 comunica a localização dos dados no fluxo de dados para o gerenciador de túnel 126. Na etapa 214, o gerenciador de túnel 126 empacota a localização em metadados e os transmite para o ponto final do túnel 142. Os metadados podem ser transmitidos na etapa 214 como parte do fluxo de dados criptografado enviado na etapa 210, por exemplo, no cabeçalho do fluxo de dados. Alternativamente, os metadados podem ser enviados na etapa 214 usando uma conexão separada da conexão usada para enviar o fluxo de dados criptografados enviado na etapa 210, por exemplo, as conexões podem usar cifras diferentes entre si. A etapa 214 pode ocorrer antes, em paralelo ou após a etapa 210, ou seja, os metadados podem ser enviados ao mesmo tempo, antes ou depois do fluxo de dados criptografado.
[031] Na etapa 216, o ponto final do túnel 142 decodifica o fluxo de dados criptografado usando a chave simétrica T do banco de dados chave do fluxo 144.
[032] O ponto final do túnel 142 pode recuperar a localização dos dados no fluxo de dados a partir dos metadados enviados a ele na etapa 214.
Alternativamente, se a localização dos dados for baseada em um local pré- compartilhado, o ponto final do túnel 142 recebe, por exemplo, durante a configuração inicial, metadados incluindo a localização pré-compartilhada, e isso é codificado no ponto final do túnel 142. Consequentemente, o ponto final do túnel 142 pode recuperar a localização dos dados no fluxo de dados a partir dos metadados enviados a ele durante a configuração.
[033] Na etapa 218, o ponto final do túnel 142 identifica os dados no fluxo de dados usando a localização dos dados. O ponto final do túnel 142 criptografa os dados dentro do fluxo de dados na etapa 218, por exemplo, usando uma chave criptográfica D. A chave criptográfica pode ser transmitida do primeiro dispositivo 102 para o segundo dispositivo 104 nos metadados na etapa 214. Alternativamente, os metadados podem indicar uma chave criptográfica para uso a partir de uma pluralidade de chaves criptográficas disponíveis no banco de dados de chaves criptográficas 146.
[034] Na etapa 220, o fluxo de dados com os dados criptografados é transmitido do ponto final do túnel 142 para o formatador de rede e o formatador de rede 148 extrai os dados criptografados e quaisquer outros dados do fluxo de dados.
Na etapa 222, o formatador de rede 148 transmite os dados criptografados para o mecanismo de decodificação 150. Se houver quaisquer outros dados no fluxo de dados, na etapa 224, estes são enviados para o módulo de aplicativo 152 do segundo dispositivo 104.
[035] Na etapa 226, o mecanismo de decodificação 150 decodifica os dados criptografados. Os dados são então enviados na etapa 228 para o módulo de aplicativo 152 do segundo dispositivo 104.
[036] A Figura 3 ilustra um diagrama de blocos de uma implementação de um dispositivo de computação 300 dentro do qual um conjunto de instruções, para fazer com que o dispositivo de computação execute qualquer uma ou mais das metodologias aqui comentadas, pode ser executado. Em implementações alternativas, o dispositivo de computação pode ser conectado (por exemplo, em rede) a outras máquinas em uma área Rede de Área Local (LAN), uma intranet, uma extranet ou a Internet. O dispositivo de computação pode operar na capacidade de um servidor ou uma máquina cliente em um ambiente de rede cliente-servidor, ou como uma máquina ponto a ponto em um ambiente de rede ponto a ponto (ou distribuído). O dispositivo de computação pode ser um computador pessoal (PC), um computador tablet, um decodificador (ST B), um dispositivo da web, um servidor, um roteador de rede, switch ou ponte, ou qualquer máquina capaz de executar um conjunto de instruções (sequenciais ou não) que especificam as ações a serem executadas por aquela máquina. Além disso, embora apenas um único dispositivo de computação seja ilustrado, o termo "dispositivo de computação" também deve ser considerado incluindo qualquer coleção de máquinas (por exemplo, computadores) que executam individualmente ou em conjunto um conjunto (ou conjuntos múltiplos) de instruções para executar qualquer uma ou mais das metodologias aqui comentadas.
[037] O dispositivo de computação de exemplo 300 inclui um dispositivo de processamento 302, uma memória principal 304 (por exemplo, memória somente leitura (ROM), memória flash, memória dinâmica de acesso aleatório (DRAM), tal como DRAM síncrona (SDRAM) ou Rambus DRAM (RDRAM) , etc.), uma memória estática 306 (por exemplo, memória flash, memória de acesso aleatório estática (SRAM), etc.), e uma memória secundária (por exemplo, um dispositivo de armazenamento de dados 313), que se comunicam entre si por meio de um barramento 330.
[038] O dispositivo de processamento 302 representa um ou mais processadores de uso geral, como um microprocessador, unidade de processamento central ou semelhantes. Particularmente, o dispositivo de processamento 302 pode ser um microprocessador de conjunto de instruções de computação complexas (CISC), microprocessador de conjunto de instruções computação de reduzidas (RISC), microprocessador de palavra de instrução muito longa (VLIW), processador que implementa outros conjuntos de instruções ou processadores que implementam uma combinação de conjuntos de instruções. O dispositivo de processamento 302 também pode ser um ou mais dispositivos de processamento de propósito especial, como um circuito integrado específico de aplicação (ASIC), um arranjo de porta programável de campo (FPGA), um processador de sinal digital (DSP), processador de rede ou semelhantes. O dispositivo de processamento 302 está configurado para executar a lógica de processamento (instruções 322) para realizar as operações e etapas comentadas neste documento.
[039] O dispositivo de computação 300 pode ainda incluir um dispositivo de interface de rede 303. O dispositivo de computação 300 também pode incluir uma unidade de exibição de vídeo 310 (por exemplo, uma tela de cristal líquido (LCD)),
um dispositivo de entrada alfanumérico 312 (por exemplo, um teclado ou tela sensível ao toque), um dispositivo de controle de cursor 314 (por exemplo, um mouse ou tela sensível ao toque) e um dispositivo de áudio 316 (por exemplo, um alto-falante).
[040] O dispositivo de armazenamento de dados 313 pode incluir uma ou mais mídias de armazenamento legíveis por máquina (ou mais especificamente uma ou mais mídias de armazenamento não transitórias legíveis por computador) 323 nas quais são armazenados um ou mais conjuntos de instruções 322 incorporando qualquer uma ou mais das metodologias ou funções aqui descritas. As instruções 322 também podem residir, completa ou pelo menos parcialmente, dentro da memória principal 304 e / ou dentro do dispositivo de processamento 302 durante sua execução pelo sistema de computador 300, a memória principal 304 e o dispositivo de processamento 302 também constituindo meios de armazenamento legíveis por computador.
[041] Os vários métodos descritos acima podem ser implementados por um programa de computador. O programa de computador pode incluir código de computador organizado para instruir um computador a executar as funções de um ou mais dos vários métodos descritos acima. O programa de computador e / ou o código para executar tais métodos podem ser fornecidos a um aparelho, como um computador, em uma ou mais mídias legíveis por computador ou, mais geralmente, um produto de programa de computador. A mídia legível por computador pode ser transitória ou não transitória. As uma ou mais mídias legíveis por computador podem ser, por exemplo, um sistema eletrônico, magnético, óptico, eletromagnético, infravermelho ou semicondutor ou um meio de propagação para transmissão de dados, por exemplo, para baixar o código pela Internet. Alternativamente, uma ou mais mídias legíveis por computador podem assumir a forma de uma ou mais mídias físicas legíveis por computador, como semicondutor ou memória de estado sólido,
fita magnética, um disquete de computador removível, uma memória de acesso aleatório (RAM), uma memória somente leitura ( ROM), um disco magnético rígido e um disco óptico, como um CD-ROM, CDR / W, DVD ou disco Blu-ray.
[042] Em uma implementação, os módulos, componentes e outros recursos descritos neste documento podem ser implementados como componentes distintos ou integrados na funcionalidade de componentes de hardware, como ASICS, FPGAs, DSPs ou dispositivos semelhantes.
[043] Um "componente de hardware" é um componente físico tangível (por exemplo, não transitório) (por exemplo, um conjunto de um ou mais processadores) capaz de realizar determinadas operações e pode ser configurado ou organizado de determinada maneira física. Um componente de hardware pode incluir circuitos ou lógica dedicados que são configurados permanentemente para executar determinadas operações. Um componente de hardware pode ser ou incluir um processador de propósito especial, como um arranjo de porta programável de campo (FPGA) ou um ASIC. Um componente de hardware também pode incluir lógica ou circuitos programáveis que são temporariamente configurados pelo software para executar determinadas operações.
[044] Consequentemente, a frase "componente de hardware" deve ser entendida como englobando uma entidade tangível que pode ser construída fisicamente, configurada permanentemente (por exemplo, com fio), 35 ou configurada temporariamente (por exemplo, programada) para operar de uma determinada maneira ou para executar determinadas operações aqui descritas.
[045] Além disso, os módulos e componentes podem ser implementados como firmware ou circuito funcional em dispositivos de hardware. Além disso, os módulos e componentes podem ser implementados em qualquer combinação de dispositivos de hardware e componentes de software, ou apenas em software (por exemplo, código armazenado ou de outra forma incorporado em um meio legível por máquina ou em um meio de transmissão).
[046] A menos que especificamente indicado de outra forma, como evidente a partir do comentário a seguir, deve ser apreciado que, ao longo da descrição, os comentários que utilizam termos como "criptografar", "receber", "determinar", "comparar", "gerar", "enviar", "identificar" ou semelhantes, referem-se às ações e processos de um sistema de computador, ou dispositivo de computação eletrônico semelhante, que manipula e transforma dados representados como quantidades físicas (eletrônicas) nos registros e memórias do sistema de computador em outros dados representados de forma semelhante como quantidades físicas nas memórias ou registros do sistema de computador ou outros dispositivos de armazenamento, transmissão ou exibição de informações.
[047] Deve ser entendido que a descrição acima se destina a ser ilustrativa e não restritiva. Muitas outras implementações serão evidentes para aqueles versados na técnica após a leitura e compreensão da descrição acima. Embora a presente divulgação tenha sido descrita com referência a exemplos de implementações específicas, será reconhecido que a divulgação não está limitada às implementações descritas, mas pode ser praticada com modificação e alteração dentro do espírito e escopo das reivindicações anexas. Consequentemente, o relatório descritivo e os desenhos devem ser considerados em um sentido ilustrativo e não restritivo. O escopo da divulgação deve, portanto, ser determinado com referência às reivindicações anexas, juntamente com o escopo completo de equivalentes aos quais tais reivindicações têm direito.

Claims (15)

REIVINDICAÇÕES
1. Método implementado por computador para receber dados por um segundo dispositivo de um primeiro dispositivo, o método CARACTERIZADO pelo fato de que compreende: decodificar pelo segundo dispositivo, um fluxo de dados criptografados recebido do primeiro dispositivo; identificar, pelo segundo dispositivo, os dados no fluxo de dados decodificados com base em um local fornecido pelo primeiro dispositivo, a referida localização sendo parte do fluxo de dados ou com base em um local predeterminado no fluxo de dados; e criptografar, pelo segundo dispositivo, os dados identificados no fluxo de dados.
2. Método implementado por computador, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os metadados são recebidos pelo segundo dispositivo a partir do primeiro dispositivo e compreendem a localização dos dados no fluxo de dados.
3. Método implementado por computador, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que o fluxo de dados criptografados é transmitido usando uma primeira conexão e os metadados são transmitidos usando uma segunda conexão.
4. Método implementado por computador, de acordo com qualquer reivindicação precedente, CARACTERIZADO pelo fato de que o primeiro dispositivo é um dispositivo de Internet das Coisas alimentado por bateria, os dados no fluxo de dados são dados do sensor e o segundo dispositivo é um dispositivo de processo interno.
5. Método implementado por computador, de acordo com a reivindicação 2 ou 3, CARACTERIZADO pelo fato de que os metadados compreendem uma chave criptográfica e o método compreende fazer com que o segundo dispositivo criptografe os dados em um segundo fluxo de dados usando a chave criptográfica.
6. Método implementado por computador, de acordo com qualquer uma das reivindicações precedentes, CARACTERIZADO pelo fato de que os dados estão em um local predeterminado no fluxo de dados.
7. Método implementado por computador, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que compreende adicionalmente: receber, no segundo dispositivo, metadados que identificam uma localização dos dados no fluxo de dados.
8. Método implementado por computador, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que receber os metadados compreende codificar, no segundo dispositivo, a localização dos dados.
9. Método implementado por computador, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que os metadados são recebidos como parte do fluxo de dados criptografados do primeiro dispositivo.
10. Método implementado por computador, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que o fluxo de dados criptografado é recebido usando uma primeira conexão e os metadados são recebidos usando uma segunda conexão.
11. Método implementado por computador, de acordo com qualquer uma das reivindicações 7 a 10, CARACTERIZADO pelo fato de que compreende criptografar, no segundo dispositivo, os dados em um segundo fluxo de dados usando uma chave privada.
12. Sistema para transmitir dados de um primeiro dispositivo para um segundo dispositivo, o sistema CARACTERIZADO pelo fato de que compreende: o primeiro dispositivo compreende um processador configurado para: o primeiro dispositivo compreende um processador configurado para:
receber um fluxo de dados e uma localização dos dados no fluxo de dados; criptografar o fluxo de dados; e transmitir o fluxo de dados criptografados para o segundo dispositivo; e o segundo dispositivo compreendendo um processador configurado para: receber o fluxo de dados criptografados do primeiro dispositivo; receber metadados indicando uma localização dos dados no fluxo de dados; decodificar o fluxo de dados criptografado; identificar os dados no fluxo de dados com base na localização; e criptografar os dados identificados no fluxo de dados.
13. Sistema, de acordo com a reivindicação 12, CARACTERIZADO pelo fato de que o primeiro dispositivo é organizado para transmitir os metadados para o segundo dispositivo.
14. Sistema, de acordo com a reivindicação 12, CARACTERIZADO pelo fato de que o primeiro dispositivo é um dispositivo de Internet das Coisas alimentado por bateria, os dados no fluxo de dados são dados do sensor e o segundo dispositivo é um dispositivo de processo interno.
15. Meio de armazenamento legível por computador, CARACTERIZADO pelo fato de que compreende instruções que, quando executadas por um computador, fazem com que o computador execute as etapas do método de qualquer uma das reivindicações 1 a 6 ou 7 a 11.
BR112021010346-5A 2018-12-03 2019-11-28 Transmissão segura de dados em um fluxo de dados BR112021010346A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP18209942.4 2018-12-03
EP18209942.4A EP3664396A1 (en) 2018-12-03 2018-12-03 Securely transmitting data in a data stream
PCT/EP2019/082925 WO2020114880A1 (en) 2018-12-03 2019-11-28 Securely transmitting data in a data stream

Publications (1)

Publication Number Publication Date
BR112021010346A2 true BR112021010346A2 (pt) 2021-08-24

Family

ID=64606714

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021010346-5A BR112021010346A2 (pt) 2018-12-03 2019-11-28 Transmissão segura de dados em um fluxo de dados

Country Status (9)

Country Link
US (2) US11750620B2 (pt)
EP (2) EP3664396A1 (pt)
JP (1) JP2022510392A (pt)
KR (1) KR20210094616A (pt)
CN (2) CN113261256B (pt)
AU (1) AU2019392497A1 (pt)
BR (1) BR112021010346A2 (pt)
ES (1) ES2973664T3 (pt)
WO (1) WO2020114880A1 (pt)

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001074003A1 (en) * 2000-03-29 2001-10-04 Sony Electronics, Inc. Transceiver system and method
EP1662788A1 (fr) * 2004-11-24 2006-05-31 Nagravision SA Unité de traitement de données audio/vidéo numériques et méthode de contrôle d'accès audites données
KR20080005569A (ko) * 2005-04-26 2008-01-14 코닌클리케 필립스 일렉트로닉스 엔.브이. 암호 시스템에서 암호화된 데이터 스트림을 처리하는 장치및 방법
US20070079117A1 (en) * 2005-10-04 2007-04-05 Bhogal Kulvir S Method for passing selectively encrypted attributes of specific versions of objects in a distributed system
US20100095114A1 (en) * 2008-10-10 2010-04-15 Richard Greene Method and system for encrypting and decrypting data streams
US20110161325A1 (en) * 2009-12-31 2011-06-30 Ego7 Llc System, method and computer-readable storage medium for generation and remote content management of compiled files
US8880905B2 (en) * 2010-10-27 2014-11-04 Apple Inc. Methods for processing private metadata
US8862902B2 (en) * 2011-04-29 2014-10-14 Seagate Technology Llc Cascaded data encryption dependent on attributes of physical memory
US9246972B2 (en) * 2013-12-19 2016-01-26 Activision Publishing, Inc. Content delivery methods and systems
US20160142387A1 (en) * 2014-11-14 2016-05-19 Microsoft Technology Licensing, Llc. Storage for encrypted data with enhanced security
US20160205106A1 (en) * 2015-01-12 2016-07-14 Verisign, Inc. Systems and methods for providing iot services
US9946718B2 (en) * 2015-07-27 2018-04-17 Sas Institute Inc. Distributed data set encryption and decryption
US10715599B2 (en) * 2015-11-30 2020-07-14 Verizon Patent And Licensing, Inc. Internet of things (IoT) platform and application framework
US10129218B2 (en) * 2016-01-08 2018-11-13 Nicolaas Gustav Temme Method and system for receiving, processing, storing and sending data of internet connected devices
US20180176187A1 (en) * 2016-12-16 2018-06-21 Amazon Technologies, Inc. Secure data ingestion for sensitive data across networks
CN108566393B (zh) * 2018-04-13 2019-04-12 清华大学无锡应用技术研究院 数据加密的方法、装置和系统

Also Published As

Publication number Publication date
CN113261256B (zh) 2023-08-22
AU2019392497A1 (en) 2021-07-22
JP2022510392A (ja) 2022-01-26
EP3891951B1 (en) 2024-02-07
US20240022575A1 (en) 2024-01-18
CN117118734A (zh) 2023-11-24
WO2020114880A1 (en) 2020-06-11
EP3664396A1 (en) 2020-06-10
EP3891951A1 (en) 2021-10-13
ES2973664T3 (es) 2024-06-21
US20220124099A1 (en) 2022-04-21
US11750620B2 (en) 2023-09-05
CN113261256A (zh) 2021-08-13
KR20210094616A (ko) 2021-07-29

Similar Documents

Publication Publication Date Title
US11115200B2 (en) System, method, and apparatus for quantum key output, storage, and consistency verification
WO2019174187A1 (zh) 基于区块链的多端间消息通信的方法、终端及存储介质
JP2018529271A (ja) 二重暗号化を用いたキー生成方法および装置
US20150326539A1 (en) Increased communication security
US11755499B2 (en) Locally-stored remote block data integrity
WO2016047115A1 (ja) 解析システム、解析装置、解析方法、及び、解析プログラムが記録された記憶媒体
US20150281199A1 (en) Increased communication security
US10944579B2 (en) Device pairing and authentication
US11687478B2 (en) System and a method for secure data transfer using air gapping hardware protocol
US20150281213A1 (en) Increased communication security
US20150281241A1 (en) Increased communication security
JP6369554B2 (ja) 解析システム、解析方法、及び、解析プログラム
JP2021527894A (ja) 不揮発性メモリデバイス内部からの保護された通信
US11741248B2 (en) Data access control using data block level encryption
BR112021010346A2 (pt) Transmissão segura de dados em um fluxo de dados
US20190109828A1 (en) Data processing method, device and system, and storage medium
JP2023083259A (ja) 機密データのセキュリティ性のためのハイブリッドクラウド基盤のセキュリティサービス方法及び装置
US11176264B2 (en) Data access control using data block level decryption
US20210173950A1 (en) Data sharing between trusted execution environments
BR112019020149A2 (pt) segurança dos dispositivos de vigilância
WO2016047110A1 (ja) 解析システム、解析装置、解析方法、及び、解析プログラムが記録された記録媒体
EP3665859A1 (en) Apparatus and method for encapsulation of profile certificate private keys or other data
US20220247527A1 (en) Transmission control method and program
US9735965B1 (en) Systems and methods for protecting notification messages
CN114124542A (zh) 机密数据由研发网经审批后导出到共享安全区的方法