BR112016024193B1 - Sistema e métodos para utilizar objetos de cifra para proteger dados - Google Patents

Sistema e métodos para utilizar objetos de cifra para proteger dados Download PDF

Info

Publication number
BR112016024193B1
BR112016024193B1 BR112016024193-2A BR112016024193A BR112016024193B1 BR 112016024193 B1 BR112016024193 B1 BR 112016024193B1 BR 112016024193 A BR112016024193 A BR 112016024193A BR 112016024193 B1 BR112016024193 B1 BR 112016024193B1
Authority
BR
Brazil
Prior art keywords
data
icto
access
protected
portable dynamic
Prior art date
Application number
BR112016024193-2A
Other languages
English (en)
Other versions
BR112016024193A2 (pt
Inventor
Gregory Scott Smith
Melani Leigh Smith Weed
Daniel Michael Fischer
Elke M. Ridenour
Original Assignee
Sertainty Corporation
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 Sertainty Corporation filed Critical Sertainty Corporation
Priority claimed from PCT/US2015/026405 external-priority patent/WO2016003527A2/en
Publication of BR112016024193A2 publication Critical patent/BR112016024193A2/pt
Publication of BR112016024193B1 publication Critical patent/BR112016024193B1/pt

Links

Abstract

SISTEMA E MÉTODOS PARA UTILIZAR OBJETOS DE CIFRA PARA PROTEGER DADOS. São fornecidos sistemas, métodos e dispositivos configurados para construir e utilizar um objeto de transferência de cifra inteligente. O objeto de transferência de cifra inteligente inclui um conjunto de participantes protegidos por padrões de camuflagem. Um conjunto de regras dinâmicas portáteis, que inclui código executável para gerenciar acesso ao conjunto de participantes protegidos, está incluído dentro do objeto de transferência de cifra inteligente. Para um determinado usuário, o objeto de transferência de cifra inteligente pode fornecer acesso a alguns dos participantes enquanto impedindo acesso a outros participantes, com base no conjunto de regras dinâmicas portáteis naquele.

Description

[001] Este pedido de patente também reivindica prioridade para o Pedido de Patente Provisório US No. 61/980.617, depositado em 17 de abril de 2014, e tem o direito àquela data de depósito para prioridade total ou parcial. As especificações, figuras e revelações completas do Pedido de Patente Provisório US No. 61/980.617 são incorporadas neste documento por referência específica para todas as finalidades.
CAMPO DA INVENÇÃO
[002] Esta invenção refere-se a um sistema e a métodos correlatos para proteger e controlar dados usando autocriptografia e autoadministração, incluindo o uso de um objeto de transferência de cifra inteligente, mas não limitado a este.
FUNDAMENTOS DA INVENÇÃO
[003] Técnicas atuais para proteção de dados têm alguns inconvenientes. Quando a informação está fora de um ambiente confiável, como uma rede segura, a mesma é tipicamente protegida por criptografia em grande parte porque outras medidas de segurança, tais como aplicativos IAM e PAC de rede, não mais administram o uso da informação. Em técnicas atuais, chaves de criptografia devem estar presentes dentro de um aplicativo, ou reveladas ou negociadas por usuários ou por meio de um aplicativo, para que dados criptografados sejam úteis, deste modo comprometendo potencialmente a proteção e a confidencialidade. Chaves de criptografia podem ser roubadas em uma descoberta ou assalto APT, ou podem ser comprometidas por meio de engenharia social ou outros meios. Além disso, uma vez uma chave de criptografia (ou senha) seja partilhada e os dados desbloqueados, o controle dos dados é perdido. Mesmo quando os dados estão dentro de um ambiente confiável, tal como um firewall ou similar, são vulneráveis a ataque ou uso indevido, uma vez que os arquivos estão disponíveis a qualquer um com acesso à sua localização de armazenamento. A proteção de informações tradicionalmente exige equipas de pessoas com experiência em redes, BYOD, telecomunicações, servidores e aplicativos, integrando-as todas e coordenando esforços em uma escala empresarial para alcançar um nível de segurança que não obstante pode ser comprometida por exploração de falhas e lacunas inerentes em integrações complexas.
[004] A criptografia típica de dados depende de algoritmos que funcionam em uma determinada sequência para criptografar e em seguida funcionam na sequência inversa para descriptografar. Pode também ser um processo de movimento de pedaços de dados em um padrão estático para camuflá-los, e em seguida reverter o processo para revelar o arquivo completo não-criptografado. Com este método do estado da técnica, um agressor que compreenda o algoritmo de criptografia usado para criptografar dados pode quebrar a criptografia pela inversão do processo de criptografia.
[005] A criptografia homomórfica completa tenta remover o aspecto confiável de uma relação, tornando a confiança entre os grupos um fator irrelevante. Por exemplo, um grupo pode transmitir seus dados para um terceirizado para armazenamento ou processamento sem confiar no que o terceirizado possa fazer com eles, uma vez que ao terceirizado é apenas dado acesso a uma versão criptografada dos dados para executar processamento que não exige descriptografia. Contudo, criptografia homomórfica completa é bastante trabalhosa de ser executada.
[006] Outra técnica tradicional para proteção de dados é o uso de controles dinâmicos. Controles dinâmicos são dependentes da aplicação, tais como arquivos PDF protegidos por senha gerados e usados por software de visualização e edição de documentos produzidos por Adobe®, ou similar. Controles dinâmicos tradicionais são dependentes do aplicativo ou residem dentro de um aplicativo. São executadas regras pelo aplicativo. Embora também dependente de uma troca de chave (senha) como dado acima, outro inconveniente deste método é que regras dependentes de aplicativos podem ser substituídas (como no exemplo de um PDF protegido aberto com Adobe® Acrobat®), ou um desenvolvedor poderia gravar um aplicativo que ignorasse as regras impostas pela aplicativo de autoria.
[007] Consequentemente, o que é necessário é uma solução que garanta que dados sejam autoprotegidos e autoadministrados, isto é menos dependentes de chaves e senhas para autenticação, em sequências previsíveis de criptografia reversível para proteção, e em aplicativos externos para execução enquanto permanecendo funcionais e eficientes tanto dentro como fora do ambiente seguro, tanto para dados em repouso como em trânsito.
SUMÁRIO DA INVENÇÃO
[008] Este sumário é fornecido para introduzir uma seleção de conceitos em uma forma simplificada que são descritos mais abaixo na Descrição Detalhada. Este sumário não se destina a identificar características chave do assunto reivindicado, nem se destina a ser usado como um auxílio na determinação do âmbito do assunto reivindicado.
[009] Em diversas modalidades exemplificativas, a presente invenção compreende um objeto de transferência de cifra inteligente (ICTO) autoprotegido e autoadministrado, que pode ser armazenado em um meio legível por computador. O ICTO compreende um conjunto de participantes que inclui um conjunto de regras dinâmicas portáteis (PDRS). O PDRS, em resposta à execução por um ou mais processadores ou microprocessadores de um dispositivo computacional, faz com que o dispositivo computacional execute ações, incluindo as seguintes: receber, de um agente, uma solicitação para acesso a uma porção de um participante do conjunto de participantes; verificar se o agente foi autorizado a acessar a porção de participante solicitada; e fornecer acesso à porção de participante solicitada para o agente sem fornecer ao agente acesso a outras porções do conjunto de participantes, mas não limitadas a estas. São também fornecidos um método implementado em computador de criação de tal ICTO e um dispositivo de computação configurado para executar as porções executáveis de tal ICTO.
[0010] Em uma modalidade exemplificativa, a presente invenção compreende um aplicativo, sistema operacional ou dispositivo ciente de ICTO, que inclui chips de computador, interruptores, painéis de controle, FGPAs e similares, mas não limitado a estes, que ativa o ICTO em resposta a uma solicitação para acesso. O ICTO compreende um conjunto de participantes que inclui dados de proprietário e um PDRS, mas não é limitado a estes. Quando da ativação do controlador dinâmico de participantes (DPC) dentro do ICTO, remota ou localmente, o PDRS dentro do ICTO assume e mantém controle do ICTO até que o objeto protegido seja fechado (isto é, inativo ou adormecido). O PDRS, respondendo à solicitação de acesso de agente, através do controlador dinâmico de participantes, para alguns ou todos os dados de participantes, verifica se o agente é autêntico e autorizado para acessar todos, alguns ou nenhum do conjunto de dados protegidos. Após verificação, o agente pode apenas acessar porções autorizadas do conjunto de dados protegidos enquanto os dados protegidos remanescentes dentro do ICTO permanecem inacessíveis ao agente. É também fornecido um método implementado em computador de criação de tal ICTO utilizando um aplicativo, sistema operacional ou dispositivo ciente de ICTO para ativar as porções executáveis de tal ICTO.
[0011] Em uma modalidade adicional, é fornecido um método implementado em computador de proteção de um conjunto de participantes. Um conjunto de participantes a serem protegidos é obtido por um dispositivo computacional. Um ou mais padrões de camuflagem para proteção do conjunto de participantes são determinados. Um primeiro padrão de camuflagem é usado para proteger ou misturar um primeiro subconjunto do conjunto de participantes, e um segundo padrão de camuflagem diferente do primeiro padrão de camuflagem é usado para proteger ou misturar um segundo subconjunto do conjunto de participantes. Os padrões de camuflagem determinados são aplicados pelo dispositivo computacional ao conjunto de participantes para criar um conjunto de participantes camuflados ou misturados. O conjunto de participantes camuflados é adicionado pelo dispositivo computacional a um ICTO. São também fornecidos um dispositivo computacional configurado para executar este método e um meio legível por computador com instruções executáveis por computador armazenadas no mesmo que, em resposta à execução por um ou mais processadores de um dispositivo computacional, faz com que o dispositivo computacional execute tal método.
[0012] Em ainda outra modalidade, a presente invenção compreende um aplicativo, sistema operacional, ou dispositivo ciente de ICTO que facilite este método para proteção de um conjunto de participantes. Um conjunto de participantes é reunido através de um aplicativo, sistema operacional, ou dispositivo ciente de ICTO para criar um ICTO de padrão provisório, o qual inclui um conjunto de participantes e um conjunto de regras temporárias ou de "partida" fornecidas pelo mecanismo de cifra ou controlador dinâmico de participantes até que o ICTO seja completamente implementado. O ICTO de padrão provisório é camuflado por um ou mais padrões de camuflagem dinamicamente selecionados ou produzidos e aplicados pelo controlador dinâmico de participantes. O conjunto de regras temporárias é subsequentemente substituído por um ou mais conjuntos de regras específicas ou únicas como definido pelo proprietário, o um ou mais padrões de camuflagem sendo dinâmica e aleatoriamente selecionados ou produzidos para cada ICTO pelo PDRS dentro do ICTO. Padrões de camuflagem podem ser aplicados aleatoriamente a todas ou algumas porções dos participantes enquanto padrões adicionais de camuflagem podem ser aplicados aleatoriamente a todas ou algumas porções dos participantes para criar um conjunto único camuflado de participantes para cada ICTO.
[0013] Em outra modalidade, é fornecido um dispositivo computacional configurado para acessar dados protegidos ou administrados por um ICTO. Uma solicitação de acesso proveniente de um agente para acessar uma porção de um participante armazenado ou misturado no ICTO é recebida pelo dispositivo computacional. Um PDRS dentro do ICTO é ativado pelo dispositivo computacional. Ao menos uma regra no PDRS é executada pelo dispositivo computacional para avaliar a solicitação de acesso. Em resposta à determinação de que a solicitação de acesso é permissível, é fornecido acesso à porção do participante solicitado pelo agente sem fornecimento de acesso a outras porções do participante.
[0014] Em ainda outra modalidade, a presente invenção compreende um aplicativo, sistema operacional ou dispositivo ciente de ICTO que ativa o ICTO após receber uma solicitação de acesso de um agente. O controlador dinâmico de participantes dentro do ICTO é ativado, e após ativação o PDRS embutido assume e mantém controle do ICTO. Ao menos uma regra de PDRS é executada para avaliar a autenticidade e autorização do agente para acessar todos, alguns, ou nenhum dos dados protegidos. Se for concedido acesso ao agente a todos ou alguns dos dados protegidos, os dados protegidos não autorizados para acesso permanecem protegidos e não visíveis para o agente que acessa. O ICTO inativo é inacessível sem um aplicativo, sistema operacional ou dispositivo ciente de ICTO.
DESCRIÇÃO RESUMIDA DOS DESENHOS
[0015] Os aspectos anteriormente mencionados e muitas das vantagens atendentes das modalidades da presente revelação tornar-se-ão mais facilmente entendidas à medida que as mesmas se tornam mais bem compreendidas por referência à descrição detalhada a seguir, quando considerada em conjunto com os desenhos anexos.
[0016] A Figura 1 mostra um diagrama esquemático que ilustra uma modalidade exemplificativa da administração de dados de acordo com diversos aspectos da presente invenção.
[0017] A Figura 2 mostra um fluxograma que ilustra uma modalidade exemplificativa de um método de construção de um ICTO de acordo com diversos aspectos da presente invenção.
[0018] A Figura 3 mostra um fluxograma que ilustra uma modalidade exemplificativa de um método de acessar dados protegidos por um ICTO de acordo com diversos aspectos da presente invenção.
[0019] A Figura 4 mostra um diagrama esquemático que ilustra um caso exemplificativo de utilização para uma modalidade da presente invenção.
[0020] A Figura 5 mostra um diagrama esquemático que ilustra aspectos de um fluxograma exemplificativo para uma modalidade da presente invenção.
[0021] A Figura 6 mostra um diagrama de blocos que ilustra uma arquitetura exemplificativa de hardware de um dispositivo computacional adequado para utilização com modalidades da presente invenção.
[0022] A Figura 7 mostra um diagrama esquemático que ilustra uma modalidade exemplificativa de administração de dados de acordo com outra modalidade exemplificativa da presente invenção.
[0023] A Figura 8 mostra um fluxograma que ilustra uma modalidade exemplificativa de criação de um ICTO de acordo com outra modalidade exemplificativa da presente invenção.
[0024] A Figura 9 mostra um fluxograma que ilustra uma modalidade exemplificativa de criação de um ICTO de acordo com outra modalidade exemplificativa da presente invenção.
[0025] A Figura 10 mostra uma vista de um sistema de aparelho de identidade portátil de acordo com outra modalidade exemplificativa da presente invenção.
[0026] A Figura 11 mostra um diagrama de um aparelho de identidade portátil usado para produzir um objeto protegido.
[0027] A Figura 12 mostra um diagrama de um aparelho de identidade portátil usado para facilitar a transmissão de mensagens seguras de dados protegidos.
[0028] A Figura 13 mostra um diagrama de um aparelho de identidade portátil usado para guardar o acesso a sites, portais, redes, ou outros recursos.
DESCRIÇÃO DETALHADA DE MODALIDADES EXEMPLIFICATIVAS
[0029] Em diversas modalidades exemplificativas, a presente invenção compreende um objeto de transferência de cifra inteligente (ICTO) independente, autoprotegido e autocontrolado, que pode ser armazenado em um meio legível por computador. O ICTO compreende um conjunto de participantes que inclui um conjunto de regras dinâmicas portáteis (PDRS). São também fornecidos os métodos implementados em computador de criação, acesso e uso de tal ICTO, e um dispositivo computacional configurado para executar as porções executáveis de tal ICTO.
[0030] Em diversas modalidades, a presente invenção soluciona faltas críticas em sistemas e métodos anteriores de proteção de dados. A presente invenção preenche uma lacuna nos sistemas de proteção existentes, uma vez que esquemas existentes visam defesas perimétricas, acesso de usuário (tanto usuários como seus dispositivos) e detecção de anomalias, mas não estão fixados aos próprios dados. Se for utilizada criptografia do estado da técnica, o fardo de gerenciamento de códigos chave pode reduzir a produtividade ou falhas podem criar ainda outras vulnerabilidades pela exposição de chaves que de modo similar necessitam ser protegidas.
[0031] Modalidades da presente revelação fornecem uma solução centrada em dados, independente, autoprotegida e autoadministrada, significando que os controles para gerenciamento de dados, proteção e administração são enxertados em, e tornam-se parte de, cada conjunto de dados e supervisionam diretamente o acesso e uso dos conjuntos de dados. Embora, em algumas modalidades da presente invenção, alguns dados possam ser removidos de proteção para análise ou uso por um agente autorizado, o método de remoção de proteção não é previsível porque não é uma inversão do mecanismo ou mecanismos de proteção. A presente invenção compreende um sistema imprevisível e irreversível e métodos associados para manter a administração inteligente, dinâmica, portátil, independente, persistente de dados ao longo da vida da existência de dados. Este sistema é capaz de proteger dados enquanto os dados estão armazenados ou em trânsito, e nas mãos de usuários de dados confiáveis ou usuários de dados não-confiáveis.
[0032] Em algumas modalidades da presente invenção, o esquema de proteção de dados é embutido, enxertado e mantido dentro do conjunto de dados. O esquema de proteção de dados pode também criar uma trilha de auditorias de tentativas para acessar os dados. Usuários conhecidos ou autorizados dos dados são notificados em um registro embutido, enquanto que grupos desconhecidos ou outras tentativas não-autorizadas para acessar os dados serão provavelmente observados no registro embutido e podem ser transmitidos e exibidos para o proprietário dos dados em tempo real. Se um grupo não-autorizado tenta acessar os dados, os dados autoprotegidos podem defender-se a si mesmos, tomar uma ação ofensiva contra a intrusão, alertar o proprietário dos dados da tentativa não-autorizada, e/ou tomar qualquer outra ação adequada.
[0033] O proprietário dos dados utiliza o esquema de proteção como uma ferramenta de gerenciamento simples e leve que valida continuamente a relação dos grupos com os dados. Sob o ponto de vista de um atacante, o sistema é imprevisível porque cada grupo autorizado tem a sua identidade estabelecida incorporada no esquema de proteção. Um esquema único de proteção pode ser fornecido para cada combinação de proprietário, usuário e conjunto de dados; isto significa que o método pelo qual os dados são revelados ao Grupo Autorizado A não será o modo como os dados são revelados ao Grupo Autorizado B.
[0034] Além disso, o esquema único de proteção que pode ser fornecido para uma combinação de proprietário, usuário, conjunto de dados e conjunto de regras será provavelmente único para si mesmo quando a mesma combinação for protegida em vezes subsequentes. Isto é, cada vez que uma combinação de proprietário, usuário, conjunto de dados e conjunto de regras é protegida como descrito neste documento, quer seja a mesma combinação ou uma combinação diferente, o ICTO será um ICTO protegido unicamente.
[0035] Em algumas modalidades, podem ser usadas diferentes técnicas para proteger os dados e para acessar os dados protegidos. Por exemplo, um esquema de proteção irreversível pode ser usado para combinar múltiplos pedaços de dados em uma única mistura digital, de modo que um esquema seletivo de recuperação pode ser usado para seletivamente recuperar pedaços de dados da mistura digital única sem obter acesso a outros dados protegidos na mistura digital. Em tal modalidade, quando os dados são acessados adequadamente, os mesmos são seletivamente revelados, com base nos desejos do proprietário para o recipiente autorizado. O percurso para revelar informações não é uma função de rever as etapas originais, e o esquema de proteção original usado para combinar os múltiplos pedaços de dados não pode ser reversível a não ser em relação a pedaços de dados solicitados individualmente. Em outras palavras, mesmo embora pedaços de dados armazenados pelo esquema de proteção possam ser acessados, a totalidade da mistura digital não é acessível em um modo tal que permita que a totalidade do conteúdo original seja reconstituído. Modalidades da presente invenção são configuradas para identificar positivamente qualquer identidade de usuário ou entidade que seja incluída como um participante legítimo ou não, e o proprietário dos dados controla que porções ou pedaços de dados os usuários legítimos identificados podem ganhar acesso. Grupos não-autorizados, quer dentro ou fora do recipiente pretendido ou da rede do recipiente pretendido, nunca podem acessar os dados na sua forma desprotegida. Modalidades da presente invenção confirmam inequivocamente a identidade de um grupo confiável antes de fornecer acesso para garantir a segurança dos dados. Reversão ou engenharia reversa do esquema de proteção não pode produzir os resultados originais.
[0036] Em diversas modalidades da presente invenção, são executadas regras por uma porção executável da mistura digital, garantindo que os desejos absolutos do proprietário dos dados sejam impostos sem depender de um terceiro grupo ou de uma entidade externa ou aplicativo ou sistema operacional. O esquema de proteção não depende de um aplicativo ou de um sistema operacional para proteger/desproteger os dados: os dados são autoprotegidos e autocontrolados. O esquema de proteção é independente de sistema operacional, ambiente, e aplicativo (isto é, aplicativos de gerenciamento externo ou centralizado ou de chave de servidor, gerenciamento de senha e gerenciamento de identidade). Métodos no protocolo são implementados em código executável armazenado na mistura de dados, e são executados em resposta à detecção de uma solicitação pelo usuário para acessar os dados através de um API estruturado. Além disso, os dados podem ser de qualquer tipo (por exemplo, texto, áudio, vídeo, ou suas combinações), e em qualquer tipo de recipiente, banco de dados ou ambiente: (por exemplo, buffer, diretório, arquivo, ou suas combinações). Qualquer tentativa para acessar os dados por outro meio diferente de API ou de outros meios descritos neste documento serão frustrados pelos padrões de camuflagem aplicados, os quais serão indetermináveis por qualquer componente fora ou diferente dos componentes de implementação do API. Quando tentando acessar os dados através do API ou outros meios descritos neste documento, o esquema de proteção garante que usuários legítimos estão apenas habilitados a acessar dados como permitido pelo proprietário dos dados.
[0037] Outros métodos iniciados através do API, ou outro aplicativo, dispositivo ou sistema operacional ciente de ICTO, validam inicialmente o ICTO. Subsequentemente, a tecnologia de camuflagem externa localiza o código executável, mecanismo de cifra, ou misturador armazenado na mistura digital. Uma solicitação para acesso é recebida pelo código executável por meio do API ou aplicativo, dispositivo ou sistema operacional ciente de ICTO em nome do agente. O código executável é energizado, ou "despertado", momento em que a regra dinâmica portátil assume e mantém controle até que o objeto de dados autoadministrados seja fechado ou se torne inativo. Qualquer tentativa para acessar a mistura digital autoprotegida e autocontrolada sem energizar o código executável não terá sucesso.
[0038] A Figura 1 é um diagrama esquemático que ilustra uma modalidade exemplificativa de dados autoadministrados de acordo com diversos aspectos da presente invenção. Um controlador participante dinâmico 110, ou "misturador", identifica um conjunto de ingredientes digitais ("participantes") 101, que inclui descrições de agentes autorizados, localizações de dispositivos, regras para utilização dos dados, e/ou outros ingredientes como discutido mais adiante. Ao misturar estes ingredientes, o misturador 110 forma uma entidade camuflada, o objeto de transferência de cifra inteligente, ou ICTO 115. O ICTO 115 pode também ser chamado de "misturador digital". Como discutido neste documento, aquele versado na técnica reconhecerá que os termos "ICTO" e "mistura digital" e "dados autoadministrados" podem ser usados de modo permutável. Para uma entidade não-autorizada ou terceirizada vendo o ICTO 115 diretamente, o ICTO 115 pode simplesmente parecer ser um conjunto de dados. O ICTO 115 aparece para o exterior como uma mistura homogênea sem se assemelhar ou expor os ingredientes originais. Contudo, quando acessado por meio de um aplicativo que implementa o API (tal como o misturador 110, um aplicativo de usuário ciente de ICTO (não ilustrado), e/ou similar), porções executáveis do ICTO 115 são acessíveis para fornecer acesso aos dados administrados pelo ICTO 115.
[0039] Em algumas modalidades, as porções executáveis do ICTO 115 podem ser armazenadas em uma determinada localização dentro do ICTO 115 para permitir que um aplicativo que implementa o API encontre facilmente as porções executáveis. Em algumas modalidades, pode ser aplicada proteção adicional ao ICTO 115 pelo armazenamento de uma ou mais porções executáveis do ICTO 115 em diferentes localizações dentro do ICTO 115. Embora estas diferentes localizações tornem as porções executáveis do ICTO 115 excessivamente difíceis de serem encontradas por um usuário não-autorizado, um aplicativo ciente de ICTO que implementa o API para acessar o ICTO 115 pode ser capaz de computar as diferentes localizações para um determinado ICTO 115 com base em um recurso do ICTO 115. Por exemplo, o aplicativo seguro pode ler um atributo do ICTO 115 tal como um tamanho de arquivo, um tempo de criação, e/ou similar, e pode executar um cálculo que determine a localização usando o atributo como uma semente. Ao manter os detalhes do cálculo secreto, a localização das porções executáveis do ICTO 115 podem provavelmente ser mantidas secretas.
[0040] O conjunto de participantes 101 pode incluir descrições de objetos 102, metadados de mistura 104, dados de proprietário 106, padrões de camuflagem 107, um módulo de identidade 109 e um módulo de inteligência 111. Em algumas modalidades, uma combinação do módulo de identidade 109 e do módulo de inteligência 111 pode ser considerada como um conjunto de regras dinâmicas portáteis 108. As descrições de objetos 102 podem incluir reservas, identificadores de dados, e/ou propriedades fornecidos pelo proprietário e definidas pelo proprietário. Dados de proprietário 106 podem incluir dados que estão protegidos dentro do ICTO 115, tais como um documento, um arquivo, um buffer, um diretório, um apontador para dados armazenados remotamente, banco de dados, e/ou similares. Em algumas modalidades, os dados de proprietário 106 podem ser opcionais, se o ICTO 115 for usado meramente, por exemplo, para um método de verificação de assinatura que não está associado a dados assinados subjacentes. Em algumas modalidades, podem ser incluídos múltiplos pedaços de dados de proprietário 106 dentro de um único ICTO 115. Em algumas modalidades, os dados de proprietário 106 de múltiplos proprietários podem ser incluídos dentro de um único ICTO 115.
[0041] Os padrões de camuflagem 107 especificam diversas combinações de técnicas de proteção e acesso de dados suportadas pelo misturador 110. As técnicas de proteção e acesso de dados incluídas em padrões de camuflagem 107 podem incluir técnicas tais como criptografia, compressão, randomização, e/ou outras técnicas padrão verificadas na indústria. As técnicas adequadas para uso como padrões de camuflagem 107 não estão limitadas às técnicas atualmente conhecidas, mas poderão incluir qualquer técnica de codificação e/ou decodificação disponível privada ou publicamente, já conhecida ou a ser desenvolvida no futuro. O uso de um padrão de camuflagem 107 para proteger e/ou acessar dados pode envolver a aplicação da combinação de técnicas de proteção e/ou acesso de dados especificadas no padrão de camuflagem 107 para os dados.
[0042] Os metadados misturados 104 fornecem informações organizacionais para a mistura digital 115, tais como dados de sistema virtual de arquivo contendo diretórios, códigos chave, arquivos de usuário, assinaturas e/ou similares.
[0043] O módulo de identidade 109 pode incluir atributos dinâmicos de identidade que identificam unicamente agentes protegidos em uma transação. Em algumas modalidades, o módulo de identidade 109 pode incluir dados que representam uma configuração de um dispositivo computacional ao qual podem ser dados determinados direitos em relação a um objeto protegido. O módulo de identidade 109 pode conter informações específicas referentes a configurações de hardware ou software instaladas no dispositivo computacional utilizáveis para identificar o dispositivo computacional. O módulo de identidade 109 pode conter dados que incluem informações de CPU incluindo números de modelos, número de cores, velocidade e/ou similares; um número de série do chassi; dados de fabricante; uma dimensão de memória volátil; uma dimensão de memória não-volátil; um ou mais números de série e/ou números de modelos de dispositivos de armazenamento; títulos e/ou números de versão de software instalado, e/ou similares, mas não se limitam a estes.
[0044] Em algumas modalidades, uma transação é uma ação atômica que utiliza o ICTO 115 no qual um ou mais agentes permutam de modo seguro dados dentro de um determinado contexto e com uma finalidade específica. Agentes autorizados podem incluir entidades humanas e não- humanas, tais como um usuário humano, um objeto mecânico único, um objeto eletrônico único, um objeto de programa ou software único, e/ou similares. Os atributos dinâmicos de identidade contidos no ICTO 115 podem ser modificados pelo módulo de inteligência 111 dentro ou durante o decorrer de uma interação com o ICTO 115, e podem incluir identificadores específicos de aplicativo, identificadores de contas, assinaturas biométricas, assinaturas de dispositivo e/ou localização, dados temporais, chaves criptográficas, e/ou similares. Em algumas modalidades, uma assinatura de localização pode incluir dados de uma tecnologia de geolocalização, tal como GPS, localização de redes GSM, localização de endereços IP, cálculo morto, e/ou similar. A assinatura de localização pode incluir uma longitude, uma latitude, uma altitude, um endereço aproximado de rua, e/ou similar. Dados adicionais de localização tais como rua, cidade, estado, país, código postal, e/ou similar podem também estar presentes. Em algumas modalidades, os dados temporais podem incluir um carimbo de data/hora e/ou similar, os quais podem permitir que regras ou outro código inteligente façam cumprir temporizadores, expirações, chaves dinâmicas, e/ou similares. Os dados temporais podem incluir um único valor de data/hora, ou podem incluir uma cronograma complexo que compreende faixas de carimbos de data/hora e/ou outras diretrizes de programação.
[0045] Em algumas modalidades, cada ICTO 115 inclui ao menos uma chave de assinatura digital. A chave de assinatura digital pode ser validada usando um certificado digital externo disponível para o misturador 110. Durante acesso do ICTO 115, o misturador 110 valida a chave de assinatura digital usando o certificado digital externo e verifica se a chave de assinatura digital é válida para um agente que acessa correntemente o ICTO 115. Em algumas modalidades, múltiplos agentes podem terminar a transmissão para o ICTO 115. Em tal modalidade, o ICTO 115 pode incluir uma cadeia de chaves de assinaturas, onde cada chave de assinatura pode estar associada a um certificado digital externo separado para validação. Por exemplo, um ICTO 115 pode ser usado por um proprietário para criar um arquivo protegido para uma transferência para múltiplos agentes onde cada agente pode acessar diferentes seções do arquivo, mas não todo o arquivo, quer simultânea ou sequencialmente. Tanto o proprietário como os agentes podem ter que fornecer assinaturas digitais válidas para permitir que a transação prossiga.
[0046] O módulo de inteligência 111 pode incluir conjuntos de regras dinâmicas capazes de registrar e comunicar dados de acesso e outro histórico relevante, junto com código de inteligência que fornece funcionalidade configurável para executar ações para proteger o ICTO 115. Regras podem ser fornecidas no momento de criação do objeto. Contudo, em algumas modalidades, uma regra pode ter uma capacidade para se modificar ou modificar outras regras para um ICTO 115 criado previamente. Em algumas modalidades, uma regra pode ter a capacidade para criar regras adicionais. Por exemplo, uma regra pode determinar, a partir de dados de identidade, que é desejável proteção adicional para um determinado ICTO 115. A regra pode então criar regras adicionais de criptografia/descriptografia a serem aplicadas. As regras são protegidas e contidas dentro do ICTO 115. Em algumas modalidades, as regras podem apenas ser executáveis por uma porção executável do módulo de inteligência 111, e/ou podem ser gravadas em uma linguagem proprietária e armazenadas em forma compilada ou binária. Com base nas regras e requisitos do módulo de identidade 109, o módulo de inteligência 111 age nas suas regras e requisitos. Identificadores especificados de aplicativos podem variar de acesso para acesso, e podem variar dependendo de um tipo de agente. Por exemplo, para um usuário humano, os identificadores especificados de aplicativos podem incluir chaves de contas, informações de transações, chaves de contextos, intenções associadas, e/ou similares. Para um objeto eletrônico, um ativo digital, ou qualquer outro agente potencial, os identificadores especificados de aplicativos podem incluir um endereço IP, uma URL, uma especificação de arquivo, e/ou similar.
[0047] Em algumas modalidades, o conjunto ou conjuntos de regras dinâmicas portáteis embutidas têm acesso de leitura/gravação para os participantes embutidos 101, mesmo embora os participantes 101 sejam protegidos pelo ICTO 115. Em outras palavras, uma regra pode ser lida e gravada nos metadados de mistura 104 e nos dados do proprietário 106 do ICTO 115. Isto pode ser útil para registrar informações de acesso tais como data, hora, local, e similares, e/ou para destruir os dados se for detectado um ataque. Alguns exemplos de decisões feitas ou ações tomadas pelo código de inteligência dentro das regras podem incluir: avaliar o conteúdo e contexto do objeto para validade; desafiar um agente para prova de identidade; interagir com código de cliente; fazer contato com um servidor para validação; fazer com que o ICTO 115 se autodestrua; manter um histórico de acesso de objeto e transmitir as informações de histórico para um servidor; permitir acesso de objeto on-line e off-line; criar novas regras baseadas em atualizações dinâmicas de servidor; criptografar e descriptografar dados; deturpar e refazer deturpação de dados; e/ou similares, mas não se limitam a estas.
[0048] O uso de regras dinâmicas portáteis pode ter diversos benefícios. Por exemplo, regras de pré- criptografia e pré-descriptografia podem fornecer chaves dinâmicas de criptografia com base em critérios específicos de participante. Tais chaves dinâmicas podem ser baseadas em dados temporais, dados ambientais, ou qualquer outro algoritmo especificado em uma regra de pré-criptografia. Como outro exemplo, regras podem acessar artefatos de identidade criptografados dentro do ICTO 115 com a finalidade de validar o agente sem expor dados não- protegidos a usuários não-autorizados. Ainda como outro exemplo, uma vez que as regras são portáteis e estão, portanto, incluídas dentro do ICTO 115, as regras podem ser gravadas de modo a permitir que o ICTO 115 seja totalmente protegido de acesso não-autorizado mesmo quando off-line ou fora da rede. Como um exemplo adicional, as regras podem adicionar proteção aninhada. Se o ICTO 115 protege um documento que deve ser lido por um único agente em no máximo uma hora após a sua criação, uma regra pode implementar o temporizador e emitir um mecanismo de autodestruição.
[0049] Como mencionado acima, o misturador embutido 110 utiliza um conjunto de regras dinâmicas portáteis embutidas 108 para formar uma mistura das descrições do objeto 102, dos metadados de mistura 104, dos dados de proprietário 106, dos padrões de camuflagem 107, do módulo de identidade 109, e do módulo de inteligência 111 que compreende um ICTO autoprotegido, autoadministrado 115. Em algumas modalidades, diversos componentes do ICTO 115 podem ser marcados por somas de verificação codificadas para detectar adulteração. Por exemplo, todo o ICTO 115, as regras, os dados de proprietário, e/ou os dados de usuário podem ser individualmente validados por uma soma de verificação embutida. A soma de verificação pode ser um valor hash gerado com base no conteúdo do alvo da soma de verificação. Em algumas modalidades, o algoritmo usado para gerar a soma de verificação é suficientemente sensível para detectar com confiança uma mudança de um único valor de bit de mesmo um grande conjunto de dados. Alguns algoritmos adequados incluem MD5 e SHA, embora qualquer outro algoritmo adequado possa ser usado. Cada soma de verificação pode ser anexada, antecipada, ou de outro modo combinada com o alvo de soma de verificação para armazenamento, ou pode ser armazenada em um local separado.
[0050] A Figura 7 é um diagrama esquemático que ilustra outra modalidade exemplificativa da proteção de dados independente, autocontrolada, autoadministrada de acordo com modalidades adicionais da presente invenção. Um API ou outro aplicativo, dispositivo, ou sistema operacional ciente de ICTO inicia uma solicitação para o controlador dinâmico de participante ou misturador executável 702, energizando-o deste modo, para proteger um conjunto de participantes digitais 701. Os participantes digitais incluem agentes autorizados, dispositivos, localizações, regras para utilização dos dados, e/ou outros ingredientes digitais como discutido mais adiante, reunidos para inclusão no objeto de dados autoprotegido, autoadministrado (isto é, mistura digital, ou ICTO) 710, mas não se limitam a estes. O controlador dinâmico de participantes 702, quando energizado, cria um objeto de cifra provisório 703 que utiliza um conjunto de regras temporárias ou de "partida" enquanto o referido objeto está sendo construído. O objeto de cifra provisório 703 é camuflado usando um ou mais padrões externos de camuflagem 704 selecionados, criados ou produzidos por algoritmos gerados pelo misturador 702.
[0051] Em alguns casos, podem ser aplicadas proteção ou funções adicionais, ou combinações destas, pelo armazenamento de uma ou mais porções executáveis do ICTO 710 em diferentes localizações dentro do ICTO 710. O ponto inicial de entrada para as porções executáveis do ICTO 710 pode apenas ser calculado e localizado por um aplicativo, sistema operacional ou dispositivo ciente de ICTO. Logo que o executável ou DPC 702 seja localizado e despertado, uma tabela única de deslocamentos fica disponível para o DPC 702 para localizar o conjunto de regras dinâmicas portáteis 711 dentro do ICTO 710 que assume e mantém controle enquanto o ICTO 710 está ativo.
[0052] O conjunto de participantes digitais 701 pode incluir padrões externos de camuflagem 704, metadados de mistura 705, dados de proprietário 706, padrões internos de camuflagem 707, um módulo de identidade 708 e um módulo inteligente 709, mas não se limita a estes. Em algumas modalidades, uma combinação dos padrões internos de camuflagem 707, do módulo de identidade 708 e do módulo inteligente 709 pode ser considerada como um conjunto de regras dinâmicas portáteis (PDRS) 711. Dados de proprietário 706 que devem ser protegidos dentro do ICTO 710 e administrados pelo PDRS 711, podem incluir diversos tipos de dados que incluem uma imagem, um vídeo, uma mensagem, uma mensagem eletrônica, um documento, um arquivo, um buffer, um diretório, um apontador para dados armazenados remotamente, um portal e similares, mas não limitados a estes. Em diversas modalidades, dados de proprietário 706 podem ser opcionais e, portanto, não incluídos, tal como quando o ICTO 710 é usado meramente, por exemplo, como um irrefutável e determinado método de verificação de assinatura. Em algumas modalidades, múltiplos pedaços de dados de proprietário podem ser misturados em um único ICTO 710. Em outras modalidades, dados de proprietário de múltiplos proprietários podem ser misturados em um único ICTO 710. Em modalidades adicionais, múltiplos ICTOs podem ser misturados em um único ICTO.
[0053] Os padrões internos de camuflagem 707 especificam diversas combinações de técnicas de proteção e acesso de dados determinadas pelas regras do proprietário estabelecidas no conjunto de regras dinâmicas portáteis 711 e suportadas pelo controlador ou misturador dinâmico de participantes 702. As técnicas de proteção e acesso de dados incluídas nos padrões internos de camuflagem 707 podem incluir técnicas tais como criptografia, criptografia de proprietário, compressão, randomização, normalização, e similares de padrão industrial, mas não se limitam a estas. As técnicas adequadas para uso como padrões internos de camuflagem 707 não estão limitadas às técnicas atualmente conhecidas, mas poderão incluir quaisquer técnicas de codificação e/ou decodificação disponíveis privada ou publicamente, já conhecidas ou a ser desenvolvidas no futuro. O uso de um padrão interno de camuflagem 707 para proteger e/ou acessar dados pode envolver a aplicação da combinação de técnicas de proteção e/ou acesso de dados especificadas no conjunto de regras dinâmicas portáteis 711 para os dados e outros participantes.
[0054] Os padrões externos de camuflagem 704 especificam diversas combinações de técnicas de proteção e acesso de dados selecionadas através de um ou mais algoritmos calculados, usados ou criados pelo controlador dinâmico de participantes 702 utilizando o conjunto de regras provisórias para criar o objeto de cifra provisório 703. As técnicas de proteção e acesso de dados incluídas nos padrões externos de camuflagem 704 podem incluir técnicas tais como criptografia, compressão, randomização, normalização, e similares verificadas em padrão industrial, mas não se limitam a estas. As técnicas adequadas para uso como padrões externos de camuflagem 704 não estão limitadas às técnicas atualmente conhecidas, mas poderão incluir qualquer técnica de codificação e/ou decodificação disponível privada ou publicamente, já conhecida ou a ser desenvolvida no futuro. O uso de um padrão externo de camuflagem 704 para proteger e/ou acessar dados pode envolver a aplicação da combinação de proteção de dados calculada pelo controlador dinâmico de participantes 702 e especificada pelo conjunto de regras provisórias. Os metadados de mistura 705 fornecem informações organizacionais para a mistura digital 710, tais como dados de sistema virtual de arquivos contendo diretórios, arquivos de usuário e similares, mas não limitadas a estas.
[0055] O módulo de identidade 708 pode incluir atributos dinâmicos de identidade que identificam unicamente agentes legítimos em uma transação. Atributos dinâmicos de identidade podem ser informações aprendidas que são adicionadas ao módulo de identidade dentro do PDRS tais como localização, dispositivo, e comportamento de acesso, mas não se limitam a estas. Informações aprendidas são coletadas e podem ser utilizadas em uma sessão futura de solicitação de acesso, adicionando deste modo inteligência adicional e pontos de decisão. Adicionalmente, atributos dinâmicos de identidade podem também ser detalhes voláteis (isto é, imprevisíveis). Estes podem ser apresentados durante o processo de autenticação, isolados ou em combinação com atributos pessoais de identidade, na determinação de identificação legítima de um agente que solicita acesso a um ICTO.
[0056] Em algumas modalidades, o módulo de identidade 708 pode incluir dados que representam uma configuração de um dispositivo computacional ao qual podem ser dados determinados direitos em relação a um objeto protegido. O módulo de identidade 708 pode conter informações específicas referentes a configurações de hardware ou software instaladas no dispositivo computacional utilizáveis para identificar o dispositivo computacional. O módulo de identidade 708 pode conter dados que incluem informações de CPU incluindo números de modelos, número de cores, velocidade e/ou similares; um número de série do chassi; dados de fabricante; uma dimensão de memória volátil; uma dimensão de memória não- volátil; um ou mais números de série e/ou números de modelos de dispositivos de armazenamento; títulos e/ou números de versão de software instalado, e/ou similares, mas não se limitam a estes.
[0057] Em diversas modalidades, uma transação é uma ação atômica que utiliza o ICTO 710 no qual um ou mais agentes legítimos e autorizados permutam de modo seguro dados ou informações dentro de um determinado contexto e com uma finalidade específica. Agentes legítimos, autorizados podem incluir entidades humanas e não-humanas, tais como um usuário humano, um objeto mecânico único, um objeto eletrônico único, um objeto de programa ou software único, ou similares. Os atributos dinâmicos de identidade contidos no ICTO 710 podem ser modificados pelo módulo de inteligência 709 dentro ou durante o decorrer de uma interação com o ICTO 710, e podem incluir identificadores específicos de aplicativo, identificadores de contas, assinaturas biométricas, assinaturas de dispositivo e/ou localização, dados temporais, chaves ou dados criptográficos, e similares. Em algumas modalidades, uma assinatura de localização pode incluir dados de uma tecnologia de geolocalização, tal como GPS, localização de redes GSM, localização de endereços IP, cálculo morto, e similar. A assinatura de localização pode incluir uma longitude, uma latitude, uma altitude, um endereço aproximado de rua, e similar. Dados adicionais de localização tais como rua, cidade, estado, país, código postal, e similar podem também estar presentes. Em algumas modalidades, os dados temporais podem incluir um carimbo de data/hora ou informações similares, os quais podem permitir que regras ou outro código inteligente façam cumprir temporizadores, expirações, chaves dinâmicas, e similares. Os dados temporais podem incluir um único valor de data/hora, ou podem incluir uma cronograma complexo que compreende faixas de carimbos de data/hora e/ou outras diretrizes de programação.
[0058] Em algumas modalidades, cada ICTO 710 pode incluir um ou mais requisitos de assinatura digital, humana ou não-humana. Durante autenticação pelo ICTO 710, o conjunto de regras dinâmicas portáteis 711 determina se a assinatura digital é válida para um agente legítimo que solicita acesso a informações administradas pelo PDRS 711. Em algumas modalidades, múltiplos agentes legítimos podem verificar a autoridade de outros agentes legítimos. Em tal modalidade, o PDRS 711 pode aplicar uma cadeia de requisitos de assinatura digital, onde cada assinatura digital pode estar associada a um agente legítimo separado. Por exemplo, um ICTO 710 pode ser usado por um proprietário para criar um arquivo autoadministrado para aprovações, assinatura e transferência para múltiplos agentes legítimos onde cada agente legítimo pode acessar diferentes seções do arquivo, mas não todo o arquivo, quer simultânea ou sequencialmente. Tanto o proprietário como os agentes legítimos podem ter que fornecer assinaturas digitais válidas para permitir que a transação prossiga.
[0059] O módulo de inteligência 709 pode incluir conjuntos de regras dinâmicas capazes de registrar e comunicar dados de acesso e outros eventos relevantes, junto com código de inteligência que fornece funcionalidade configurável para executar ações para administrar o ICTO 710. Regras podem ser fornecidas no momento de criação do objeto. Contudo, em algumas modalidades, uma regra pode modificar-se ou modificar outras regras de um determinado exemplo de ICTO 710. Em algumas modalidades, uma regra pode criar regras adicionais. Por exemplo, uma regra pode determinar, durante autenticação de um agente legítimo, que é desejável proteção adicional para um determinado ICTO 710. A regra pode então criar requisitos adicionais de acesso, defesa, camuflagem e similares. Em algumas modalidades, as regras podem apenas ser executáveis pelo controlador dinâmico de participantes 702, ou podem ser armazenadas em uma forma binária como um participante do ICTO, ou uma combinação destes. Com base nas regras e requisitos do módulo de identidade 708, o módulo de inteligência 709 age nas suas regras e requisitos como fornecidos pelo proprietário. Identificadores de conjunto de regras dinâmicas portáteis 711 podem variar de acesso para acesso, e podem variar dependendo de um tipo de agente. Por exemplo, para um usuário humano, os identificadores especificados de conjunto de regras dinâmicas portáteis 711 podem incluir chaves de contas, informações de transações, chaves de contextos, intenções associadas, e similares. Para um objeto eletrônico, um ativo digital, ou qualquer outro agente potencial, os identificadores de conjunto de regras dinâmicas portáteis 711 podem também incluir um endereço IP, uma URL, uma especificação de arquivo, e similares.
[0060] Em algumas modalidades, as regras têm acesso de leitura/gravação para os participantes digitais 701, mesmo embora os participantes digitais 701 sejam protegidos pelo ICTO 710. Em outras palavras, uma regra pode ler e gravar dados nos metadados de mistura 705 e nos dados do proprietário 706 do ICTO 710. Isto pode ser útil para registrar informações de acesso tais como data, hora, local, e similares, e, em alguns casos, para destruir os dados se for detectado um ataque. Alguns exemplos de decisões feitas ou ações tomadas pelo módulo de inteligência 709 podem incluir: avaliar o conteúdo e contexto do objeto para validade; desafiar um agente para prova de identidade; interagir com código de cliente; fazer contato com um servidor para verificação de confiança; fazer com que o ICTO 710 se autodestrua; manter um histórico de acesso de objeto e transmitir as informações de histórico para um servidor, por mensagem eletrônica, SMS, FTP ou armazenadas com o ICTO 710; permitir acesso de objetos on-line e/ou off-line; criar novas regras baseadas em atualizações dinâmicas de servidor; criptografar e descriptografar dados; deturpar e refazer deturpação de dados, mas não se limitam a estas.
[0061] O uso dos referidos conjuntos de regras dinâmicas portáteis 711 tem diversos benefícios e finalidades. Em uma modalidade exemplificativa, regras de acesso podem utilizar chaves únicas criadas internamente, gerenciadas internamente baseadas em critérios especificados por proprietário. As referidas chaves únicas podem ser baseadas em dados temporais, dados ambientais, ou qualquer outro algoritmo especificado por um conjunto de regras do proprietário. Como outro exemplo, as referidas regras podem acessar artefatos de identidade protegidos dentro do ICTO 710 com a finalidade de autenticar e validar o agente sem expor os dados protegidos para o mundo. Ainda como outro exemplo, uma vez que as referidas regras são independentes, portáteis, independentes de plataforma e estão, portanto, incluídas dentro do ICTO 710, as regras podem ser gravadas de tal modo a permitir que o ICTO 710 seja totalmente protegido de acesso não-autorizado mesmo quando off-line.
[0062] Como exemplo adicional, as regras podem adicionar proteção aninhada. Se o ICTO 710 protege um ou mais ICTOs 710 dentro do ICTO 710 corrente ou externo, o ICTO 710 externo pode ser capaz de se comunicar com um ou mais dos ICTOs 710 gerenciados como parte dos dados de proprietário 706 de cada um. Onde o ICTO 710 externo, ou vice-versa, puder provocar a execução de regras gerenciadas dentro de qualquer um dos ICTOs 710 incluídos nos dados de proprietário 706 do ICTO 710 externo ou criar novas regras como resultado de regras contidas em um ou mais dos ICTOs 710 incluídos, como outro exemplo, as regras independentes dentro do PDRS 711 de um ICTO 710 são autoadministradas. Se o ICTO 710 protege um documento que deve ser acessado por um único agente legítimo dentro de uma hora de criação durante um máximo de uma hora após acesso, uma regra pode implementar um temporizador e emitir um mecanismo de autodestruição após expiração.
[0063] Como previamente descrito, o controlador dinâmico de participantes 702, ou misturador, que utiliza um conjunto de regras dinâmicas portáteis 711 cria uma mistura dos padrões externos de camuflagem 704, dos metadados de mistura 705, dos dados de proprietário 706, dos padrões internos de camuflagem 707, do módulo de identidade 708 e do módulo de inteligência 709 que compõe o ICTO 710. Em algumas modalidades, diversos componentes do ICTO 710 podem ser combinados para somas de verificação codificadas para detectar adulteração. Por exemplo, todo o ICTO 710, as regras, os dados de proprietário, e/ou os dados dos participantes podem ser individualmente validados por uma soma de verificação 712. A soma de verificação 712 pode ser um valor hash gerado com base no conteúdo dos alvos da soma de verificação 712. Em algumas modalidades, o algoritmo usado para gerar a soma de verificação é suficientemente sensível para detectar com confiança uma mudança de um único valor de bit de mesmo um grande documento. Alguns algoritmos adequados incluem MD5 e SHA, embora qualquer outro algoritmo adequado possa ser usado. Cada soma de verificação 712 pode ser anexada, antecipada, ou de outro modo combinada com o alvo de soma de verificação para armazenamento, ou pode ser armazenada em um local separado.
[0064] A Figura 2 é um fluxograma que ilustra uma modalidade exemplificativa de um método 200 de construção de um ICTO 115 de acordo com diversos aspectos da presente invenção. Embora o método ilustrado 200 descreva a criação de um ICTO 115 relativamente simples, aquele versado na técnica compreenderá que podem ser usadas técnicas similares para criar ICTOs 115 muito mais complexos. Em algumas modalidades, o misturador 110 é configurado para executar o método 200. Em algumas modalidades, o método 200 é executado por um dispositivo computacional, como descrito abaixo, que é configurado para fornecer a funcionalidade do misturador 110. Aquele versado na técnica reconhecerá que a construção e utilização do ICTO 115 não é dependente nem do tipo do referido dispositivo computacional nem de qualquer sistema operacional associado ao referido dispositivo computacional, mas pode ao invés ser construído e utilizado por qualquer meio adequado.
[0065] A partir do bloco inicial, o método 200 prossegue para o bloco 202, onde é obtido um conjunto de ingredientes ou participantes digitais comuns. Os participantes comuns são participantes 101 que podem ser usados em mais de um ICTO 115, ou podem ao menos ter componentes correspondentes similares em mais de um ICTO 115, e são especificados e/ou gerados pelo misturador 110 para inclusão no ICTO 115. Por exemplo, as descrições de objetos 102, os metadados de mistura 104, os padrões de camuflagem 107, o módulo de identidade 109 e o módulo de inteligência 111 podem todos ser participantes comuns. Em seguida, no bloco 204, um controlador dinâmico de participantes ("misturador") 110 é inicializado. Em algumas modalidades, a inicialização do misturador 110 pode incluir a verificação de que o misturador 110 está sendo executado por um aplicativo esperado ou de outro modo confiável. No bloco 206, o misturador 110 recebe um ou mais pedaços dos dados de proprietário 106 a serem protegidos. Como discutido acima, em algumas modalidades os dados de proprietário 106 podem ser opcionais, e os recursos de proteção de acesso do ICTO 115 podem ser usados para verificar identidades de usuário e/ou obter assinaturas dos usuários.
[0066] O método 200 prossegue para o bloco 208, onde o misturador 110 faz com que um conjunto de regras dinâmicas portáteis 108 seja executado. No bloco 210, um módulo de inteligência 111 do conjunto de regras dinâmicas portáteis 108 determina um ou mais padrões de camuflagem baseados em identidade a serem usados para proteger participantes 101, e no bloco 212, o misturador 110 aplica o um ou mais padrões de camuflagem aos participantes 101, criando um conjunto de participantes camuflados.
[0067] O conjunto de regras dinâmicas portáteis 108 determina um padrão de camuflagem a ser aplicado a cada participante 101 baseado nos desejos do proprietário dos dados a serem protegidos. Diferentes padrões de camuflagem podem ser aplicados a cada participante 101. Além disso, cada participante 101 pode ser protegido usando padrões de camuflagem separados para acesso por diferentes agentes. Em outras palavras, um participante 101 tal como dados de proprietário 106 pode ser protegido por um primeiro padrão de camuflagem para acesso por um primeiro agente, e protegido por um segundo padrão de camuflagem para acesso por um segundo agente. A seleção dos padrões de camuflagem pode ser baseada em um atributo do participante 101 a ser protegido, um atributo do agente ao qual dar acesso aos dados, uma localização, uma intenção, e/ou qualquer outro pedaço de informação adequado. A seleção de um padrão de camuflagem pode incluir a seleção a partir de um padrão de camuflagem pré-existente, e/ou pode incluir a criação de um novo padrão de camuflagem a partir de uma combinação de técnicas de proteção suportadas pelo misturador 110. Registros dos padrões de camuflagem aplicados podem ser armazenados nos metadados de mistura 104.
[0068] Os padrões de camuflagem descrevem transformações aplicadas a um participante 101 para proteger o participante 101 dentro do ICTO 115, e como estas transformações podem ser revertidas para acessar o participante 101. As transformações podem incluir compressão de dados, normalização de dados e criptografia/descriptografia, mas não se limitam a estas. Um determinado padrão de camuflagem pode incluir uma ou mais destas técnicas, ou outras técnicas não listadas neste documento. A compressão de dados pode reduzir a dimensão total do ICTO 115, o que pode por sua vez aperfeiçoar tempos de transporte e utilização de larguras de banda. A compressão de dados pode ser executada por qualquer algoritmo de compressão sem perdas adequado incluindo DEFLATE, LZW, LZR, LZX, JBIG, DjVu e/ou similar, mas não se limita a estes. A normalização de dados é executada por qualquer processo adequado que coloque os dados em uma forma que possa eficientemente ser processada. Em algumas modalidades, os dados podem ser passados através de um algoritmo de codificação de Base64 para converter os dados, quer binários ou em formato de texto, em uma cadeia alfanumérica normalizada. Isto é apenas um exemplo, e não deve ser considerado como limitante. Em outras modalidades, podem ser usados outros algoritmos para normalizar os dados.
[0069] Em algumas modalidades, um padrão de camuflagem pode fazer com que o módulo de identidade 109 e o módulo de inteligência 111 apliquem técnicas de criptografia separadas a diferentes componentes dos participantes 101. Por exemplo, uma primeira regra de criptografia, quando executada, pode identificar e criptografar uma primeira porção da mistura digital criptografada 115 enquanto deixando uma segunda porção da mistura digital criptografada 115 inalterada. Uma segunda regra de criptografia, quando executada, pode em seguida identificar e criptografar a segunda porção da mistura digital criptografada 115 usando um algoritmo de criptografia diferente, uma chave de criptografia diferente e/ou similar.
[0070] Em algumas modalidades, os padrões de camuflagem e/ou o conjunto de regras dinâmicas portáteis 108 pode estabelecer duas ou mais camadas aninhadas de criptografia. Por exemplo, a execução de uma primeira regra de criptografia pode criptografar uma primeira porção da mistura digital criptografada 115. A execução de uma segunda regra de criptografia faz em seguida com que a primeira porção criptografada da mistura digital criptografada 115 seja novamente criptografada, junto com a primeira regra de criptografia e uma primeira correspondente regra de descriptografia. Portanto, para acessar mais tarde a primeira porção da mistura digital criptografada 115, uma segunda regra de descriptografia correspondente à segunda regra de criptografia é executada para descriptografar a primeira porção duplamente criptografada da mistura digital criptografada 115 e para obter a primeira regra de descriptografia. A primeira regra de descriptografia é em seguida executada para descriptografar a primeira porção da mistura digital criptografada 115 para gerar uma versão de texto simples da primeira porção da mistura digital 115.
[0071] Logo que os padrões de camuflagem tenham sido aplicados aos participantes 101 para criar o conjunto de participantes camuflados, o método 200 prossegue para o bloco 214, onde o misturador 110 cria uma mistura digital (ICTO) 115 e adiciona o conjunto de participantes camuflados à mistura digital 115. Em algumas modalidades, pode ser aplicada proteção adicional à mistura digital 115 como um todo, tal como embaralhamento dos dados, criptografia ou assinaturas digitais adicionais e/ou similar. O método 200 prossegue então para um bloco terminal e termina.
[0072] Aquele versado na técnica compreenderá que algumas etapas foram omitidas da Figura 2 para facilidade de discussão. Contudo, outras etapas não explicitamente ilustradas na Figura 2 podem também ser incluídas no método 200 sem divergir do âmbito da presente invenção. Por exemplo, se quaisquer erros forem detectados enquanto aplicando os padrões de camuflagem ou executando regras, o método 200 pode parar e pode não produzir um ICTO 115 completo. Como outro exemplo, em algumas modalidades, os dados de proprietário 106 podem incluir um ou mais ICTOs como um modo de fornecer proteção aninhada. Em algumas modalidades, regras dentro de um ICTO aninhado podem ser propiciadas com acesso a dados de participantes 101 dentro do ICTO 115 externo. Em algumas modalidades, uma regra dentro de um primeiro ICTO pode fazer com que um segundo ICTO seja criado, e fazer com que o primeiro ICTO seja adicionado ao segundo ICTO de modo que o primeiro ICTO seja aninhado dentro do segundo ICTO. De modo similar, em algumas modalidades, uma regra dentro de um primeiro ICTO pode fazer com que um segundo ICTO seja criado, e fazer com que o segundo ICTO seja adicionado ao primeiro ICTO de modo que o segundo ICTO seja aninhado dentro do primeiro ICTO.
[0073] A Figura 8 é um fluxograma que ilustra uma modalidade exemplificativa alternativa de um método 800 de construção de um ICTO 710 de acordo com diversos aspectos da presente invenção. O método 800 mostrado descreve a criação de um ICTO 710 simples; contudo, utilizando técnicas similares pode-se construir um ICTO complexo. Em algumas modalidades, um aplicativo, dispositivo ou sistema operacional ciente de ICTO é configurado para iniciar e facilitar o método 800. A construção e utilização de um ICTO 710 simples ou complexo não depende de um sistema operacional ou dispositivo específico.
[0074] A partir do Início 801, o método 800 começa com a inicialização 802 do Controlador Dinâmico de Participantes 702 ou misturador. Em algumas modalidades, a inicialização do misturador 802 pode incluir a validação de que o objeto é um ICTO autêntico e/ou de que a solicitação para inicializar é proveniente de um aplicativo, dispositivo ou sistema operacional ciente de ICTO ou de outro processo ciente de ICTO. Prosseguindo para o bloco 803, um conjunto de participantes digitais 701 é fornecido ao misturador 702 para inclusão no ICTO 710. Os participantes digitais 701 podem ser usados em mais de um ICTO 710, ou podem ao menos ter componentes similares ou comuns em mais de um ICTO 710. Por exemplo, os padrões externos de camuflagem 704, os metadados de mistura 705, os padrões adicionais de camuflagem 707, o módulo de identidade 708 e o módulo de inteligência 709 podem todos ser considerados participantes digitais comuns 701. Prosseguindo para o bloco 804, o misturador 702, utilizando um ou mais algoritmos, seleciona um ou mais padrões externos de camuflagem 704 a serem aplicados ao conjunto de participantes digitais 701 utilizando um conjunto de regras provisórias para criar os padrões iniciais de camuflagem para o ICTO 710, criando o objeto de cifra inicial provisório 703. Prosseguindo para o bloco 805, são adicionados um ou mais elementos de dados de proprietário ao conjunto de participantes digitais para inclusão no ICTO 710. Em algumas modalidades, os dados de proprietário 706 são opcionais, e a funcionalidade de proteção de acesso do ICTO 710 pode ser utilizada para verificar identidades de agentes legítimos e/ou para legitimar assinaturas de agentes.
[0075] O método 800 prossegue para o bloco 806, onde as regras de proprietário são obtidas a partir do PDRS 711 e utilizadas pelo misturador 702 para substituir o conjunto de regras provisórias inicialmente usadas na criação do ICTO 710. Prosseguindo para o bloco 807, utilizando um ou mais algoritmos, o misturador 702 seleciona um ou mais padrões internos de camuflagem 707 a serem aplicados a parte ou a todo o conjunto de participantes digitais 701, inclusive dos dados de proprietário 706. Os algoritmos utilizam tempo como um único número e regras de proprietário para aleatorizar ainda mais os padrões internos de camuflagem 707. Os algoritmos usados são adicionados ao módulo de identidade 708, gerenciado internamente pelo PDRS 711 e não partilhado externamente. Finalmente no bloco 808 o misturador 702 completa a construção do ICTO 710 criando um conjunto de participantes digitais camuflados 720. Embora possam ser utilizados participantes digitais 701 similares ou comuns como fornecidos em 803, em combinação, o método criará uma única mistura digital 808 para cada ICTO 710 construído.
[0076] O misturador 702, usando um ou mais algoritmos, determina que padrões internos de camuflagem 707 devem ser aplicados a cada participante digital 701 enquanto também aplicando aleatoriamente tempo como único número e outros fatores internos gerados pelo módulo de inteligência 709. Os algoritmos utilizados pelo misturador 702 para selecionar os padrões internos de camuflagem 707 são em seguida adicionados ao módulo de identidade 708, gerenciado internamente e não partilhado/permutado/exposto externamente do ICTO 710. Cada participante 701 pode ser protegido utilizando um ou mais padrões internos de camuflagem 707 que podem ser unicamente diferentes de um ou mais padrões internos de camuflagem 707 que protegem outros participantes 701 na mistura digital 710. Por exemplo, um participante tal como os dados de proprietário 706 pode ser protegido com um ou mais padrões de camuflagem e regras internas que são unicamente diferentes do um ou mais padrões internos de camuflagem 707 e regras internas utilizadas para proteger o módulo de identidade 708. Além disso, a utilização de um ou mais padrões internos de camuflagem 707 e o uso aleatório de tempo como único número e regras internas cria por sua vez padrões únicos de camuflagem que são adicionados ao módulo de identidade 708 para cada participante 701. As regras internas embutidas no módulo de inteligência 708 podem incluir tais coisas como localização, tempo, requisitos de autorização e similares, mas não se limitam a estas.
[0077] Os padrões internos de camuflagem 707 descrevem transformações aplicadas a um participante 701 para proteger o participante 701 dentro do ICTO 710, e como algumas destas transformações podem ser revertidas para acessar partes ou todos os participantes 701. As transformações podem incluir compressão de dados, normalização de dados e criptografia, mas não se limitam a estas. Um determinado padrão interno de camuflagem 707 pode incluir uma ou mais destas técnicas e/ou outras técnicas. A compressão de dados pode reduzir a dimensão total do ICTO 710, o que pode por sua vez aperfeiçoar tempos de transporte e utilização de larguras de banda. A compressão de dados pode ser executada por qualquer algoritmo de compressão sem perdas adequado incluindo DEFLATE, LZW, LZR, LZX, JBIG, DjVu e/ou similar, mas não se limita a estes. A normalização de dados é executada por qualquer processo adequado que coloque os dados em uma forma que possa eficientemente ser processada. Em algumas modalidades, os dados podem ser passados através de um algoritmo de codificação de Base64 para converter os dados, quer binários ou em formato de texto, em uma cadeia alfanumérica normalizada. Isto é apenas um exemplo, e não deve ser considerado como limitante. Em outras modalidades, podem ser usados outros algoritmos para normalizar os dados.
[0078] Padrões internos de camuflagem 707 podem também incluir uma ou mais técnicas de criptografia. Os padrões de camuflagem podem especificar métodos de obtenção de chaves de criptografia, podem especificar algoritmos específicos de criptografia, tais como NIST ou FIPS, mas não limitados a estes, outros algoritmos de criptografia de proprietário, ou comprimentos de chaves, ou podem especificar outras opções configuráveis tais como sementes de tempo, codificação Xor, ou outras técnicas de codificação e decodificação de padrão industrial para gerar elementos do esquema de camuflagem, ou suas combinações. Em algumas modalidades, técnicas de criptografia podem executar operações ou cálculos diferentes de criptografia, tal como obter um valor hash para o conteúdo referenciado ou similar. Em algumas modalidades, o padrão interno de camuflagem 707 pode armazenar (ou pode conter regras que requeiram armazenamento de) um registro de uma chave de criptografia ou chave de descriptografia usada tanto no próprio padrão interno de camuflagem 707 como em qualquer outro lugar dentro do ICTO 710, gerenciado internamente e não partilhado externamente. Quando o padrão interno de camuflagem 707 é usado para acessar as informações protegidas, o(s) algoritmo(s) e chaves de camuflagem/descamuflagem são mantidos internamente e fornecidos ao controlador dinâmico de participantes 702 dentro do ICTO 710 para fornecer acesso às informações, mas não estão disponíveis para o agente solicitante ou qualquer outro agente ou aplicativo, dispositivo, sistema operacional externos ao ICTO 710. Em outras palavras, o(s) algoritmo(s) e chaves de camuflagem/descamuflagem não são armazenados ou expostos fora do ICTO 710, não estão disponíveis para qualquer agente, e deste modo não existe a necessidade de funções externas de gerenciamento de chaves, portanto sem vulnerabilidades daí e o seu sigilo é mantido.
[0079] Em algumas modalidades, as regras apresentadas no módulo de inteligência 709 podem fazer com que o misturador 702 aplique padrões internos de camuflagem 707 separados para separar componentes dos participantes 701. Por exemplo, uma primeira regra, quando executada, pode identificar e aplicar um padrão de camuflagem a uma primeira porção da mistura digital protegida 710 enquanto deixando uma segunda porção da mistura digital protegida 710 inalterada. Uma segunda regra, quando executada, pode em seguida identificar e aplicar um padrão de camuflagem à segunda porção da mistura digital protegida 710 usando um padrão de camuflagem diferente com um padrão diferente, ou similar.
[0080] Em algumas modalidades, o módulo de inteligência 709 do conjunto de regras dinâmicas portáteis 711 necessita de duas ou mais camadas aninhadas de camuflagem de alguns ou todos os participantes 701. Por exemplo, a execução de uma primeira regra pelo misturador 702 pode camuflar uma primeira porção da mistura digital protegida 710. A execução de uma segunda regra pelo misturador 702 pode em seguida fazer com que a primeira porção camuflada da mistura digital protegida 710 seja novamente camuflada usando um diferente padrão interno de camuflagem 707, junto com a primeira regra e uma correspondente primeira regra de camuflagem. Portanto, para acesso posterior à primeira porção da mistura digital protegida 710 é executada uma segunda regra de descamuflagem correspondente à segunda regra para descamuflar a primeira porção camuflada aninhada da mistura digital protegida 710 e para obter a primeira regra de descamuflagem. A primeira regra de descamuflagem é em seguida executada para descamuflar a primeira porção da mistura digital protegida 710 para gerar uma versão de texto simples da primeira porção da mistura digital 710.
[0081] Logo que os padrões internos de camuflagem 707 tenham sido aplicados aos participantes 710 para criar o conjunto de participantes camuflados 720, o método 800 prossegue para o bloco 808, onde o misturador 702 completa a construção de uma mistura digital (isto é, ICTO) 710. Em algumas modalidades, pode ser aplicada proteção adicional à mistura digital 710 como um todo, tal como embaralhamento dos dados, camuflagem adicional e/ou similar. O método 800 prossegue em seguida para um bloco final e termina.
[0082] Outras etapas não explicitamente ilustradas na Figura 8 podem também ser incluídas no método 800 sem divergir do âmbito da presente invenção. Por exemplo, se forem detectadas quaisquer anomalias enquanto aplicando os padrões de camuflagem ou executando regras, o método 800 pode parar, e pode não produzir um ICTO 710 completo. Como outro exemplo, em algumas modalidades, os dados de proprietário 706 podem incluir um ou mais ICTOs como um modo de fornecer proteção aninhada. Em algumas modalidades, podem ser fornecidas regras dentro de um ICTO aninhado com a acesso a dados de participantes 701 dentro do ICTO externo 710. Em algumas modalidades, uma regra dentro de um primeiro ICTO para fazer com que um segundo ou múltiplos ICTO(s) sejam criados, e fazer com que o primeiro ICTO seja adicionado ao segundo ICTO de modo que o primeiro ICTO fique aninhado dentro do segundo ICTO. De modo similar, em algumas modalidades, uma regra dentro de um primeiro ICTO pode fazer com que um segundo ICTO seja criado, e fazer com que o segundo ICTO seja adicionado ao primeiro ICTO de modo que o segundo ICTO fique aninhado dentro do primeiro ICTO.
[0083] A Figura 3 é um fluxograma que ilustra uma modalidade exemplificativa de um método 300 de acesso a dados protegidos por um ICTO 115 de acordo com diversos aspectos da presente invenção. Após o ICTO 115 ser ativado, o ICTO 115 inicia a verificação e validação do seu ambiente atual, tentativas de acesso, agentes autorizados e outras condições como especificadas no conjunto de regras incluídas no conjunto de regras dinâmicas portáteis 108. Esta verificação e validação podem ser executadas logo após a inicialização, continuamente durante um período ativo, periodicamente durante um período ativo, ou em qualquer outro intervalo adequado ou em resposta a qualquer mudança adequada no estado. Quando regras e identidade de agente tiverem sido positivamente confirmadas, o ICTO 115 permite acesso a porções autorizadas dele mesmo enquanto mantendo a essência homogênea da mistura e proteção do restante dos dados.
[0084] Do mesmo modo que com o método 200 descrito acima, em algumas modalidades o misturador 110 é configurado para executar o método 300. Em algumas modalidades, o método 300 é executado por um dispositivo computacional se um ou mais processadores do dispositivo computacional executarem instruções executáveis por computador que façam com que o dispositivo computacional faça isso. Como entendido por aquele versado na técnica, a construção e utilização do ICTO 115 não é nem dependente do tipo dos referidos dispositivos computacionais nem de quaisquer sistemas operacionais associados aos referidos dispositivos computacionais. O protocolo de proteção de dados é embutido no conjunto de dados. Um ICTO 115 ativado pode comunicar-se com o proprietário dos dados (informações tais como tentativas de acesso, alertas para localizações não-autorizadas ou agentes não-autorizados, notificação de autodestruição ou autorrecriação) sobre a vida dos dados. Além disso, uma vez que as regras no ICTO 115 podem atualizar-se e atualizar outras porções do ICTO 115, o ICTO 115 pode aprender a partir do seu ambiente, e pode modificar o seu comportamento futuro baseado nesta aprendizagem. O protocolo de proteção pode ser customizado e é único para cada proprietário, conjunto de dados, e combinações de usuários, como especificado em padrões de camuflagem.
[0085] A partir de um bloco inicial, o método 300 prossegue para o bloco 302, onde um conjunto de regras dinâmicas portáteis 108 dentro de uma mistura digital 115 é ativado em resposta a uma solicitação por um agente para acessar a mistura digital 115. Em diversas modalidades, uma superidentidade é embutida no ICTO 115 e inclui critérios para verificar uma identidade de um agente que tenta acessar o ICTO 115, regras dinâmicas para fornecer uma consciência inteligente que valide o agente e determine o estado atual dos dados, e algoritmos para camuflagem de dados como especificados em padrões de camuflagem. Podem ser usados critérios de verificação tais como pares pergunta/resposta, assinaturas digitais, informações biométricas, e/ou similares para verificar a identidade do agente. No bloco 304, o conjunto de regras dinâmicas portáteis 108 é executado para verificar se é permitido ao agente o acesso solicitado à mistura digital 115 em um contexto relevante. O módulo de identidade 109 e o módulo de inteligência 111, quando ativados, avaliam a tentativa atual de acesso pelo agente verificado e estabelecem um nível de confiança. Em algumas modalidades, esta avaliação é um processo contínuo, pelo fato de que existe uma verificação e uma validação contínuas de cada participante 101: o proprietário dos dados, o agente (usuário dos dados) e os próprios dados. Em algumas modalidades, regras de pré- acesso a partir do conjunto de regras dinâmicas portáteis 108 podem ser executadas pelo misturador 110 para descriptografar ao menos algumas porções do ICTO 115 para uso interno pelo misturador 110 sem permitir acesso aos dados descriptografados a agentes diferentes do misturador 110. Regras de pré-acesso têm acesso aos participantes 101, incluindo a capacidade para testar artefatos de identidade e avaliar dados de proprietário e agente. Se o nível de confiança cair, o protocolo reavalia os participantes 101. Em algumas modalidades, se o agente que tenta acessar o ICTO 115 for incapaz de restabelecer a sua legitimidade, podem ser invocadas ações defensivas ou ofensivas. Se o agente for capaz de satisfazer o novo conjunto de perguntas, será dado acesso para prosseguir ou continuar.
[0086] Em algumas modalidades, as regras de pré- acesso são meramente acesso de leitura permitida para identificar ou autenticar dados, mas em algumas modalidades, as regras de pré-acesso podem também ter acesso de gravação, que pode ser usado, por exemplo, para registrar atributos de tentativas de acesso quando abrindo (ou tentando abrir) o ICTO 115.
[0087] O método 300 prossegue para o bloco 306, onde o conjunto de regras dinâmicas portáteis 108 determina um padrão de camuflagem usado para proteger os dados solicitados. O conjunto de regras dinâmicas portáteis 108 consulta os metadados de mistura 104 para determinar que padrão de camuflagem 107 foi aplicado baseado na identidade do agente, na solicitação de dados, no contexto no qual os dados estão sendo solicitados, e/ou similar. Logo que o padrão de camuflagem 107 usado é determinado, o método 300 prossegue para o bloco 308, onde o padrão de camuflagem 107 é usado para fornecer o acesso solicitado ao agente. Similar a como o padrão de camuflagem 107 indicou um conjunto de técnicas usadas para proteger os dados solicitados, o padrão de camuflagem 107 também indica um conjunto de técnicas usadas para reconstruir os dados solicitados a partir da versão protegida armazenada no ICTO 115. O método 300 prossegue em seguida para um bloco terminal e termina.
[0088] A Figura 9 é um fluxograma que ilustra uma modalidade alternativa de um método 900 de acesso a dados protegidos por um ICTO 710. Após o ICTO 710 ser ativado, o PDRS 711 inicia verificação e validação do ambiente atual, tentativas de acesso, agentes legítimos e outras condições do ICTO 710 como especificado no PDRS 711. Este processo de verificação e validação é inerentemente eficiente, garante a integridade dos dados e pode ser executado logo que inicializado, continuamente durante um período ativo, periodicamente durante um período ativo, ou em qualquer outro intervalo adequado ou em resposta a qualquer mudança adequada no estado ou estados. Quando regras e identidade de agente legítimo tiverem sido positivamente confirmadas, o PDRS 711 permite acesso a porções autorizadas de ICTO 710 enquanto mantendo a essência homogênea da mistura e proteção dos restantes dos participantes. Em algumas modalidades, o dispositivo ou sistema operacional é configurado para iniciar e facilitar o método 900.
[0089] A partir de um bloco inicial 901, o método 900 prossegue para o bloco 902, onde o controlador dinâmico de participantes 702 dentro da mistura digital protegida ou ICTO 710 é energizado por um aplicativo, dispositivo ou sistema operacional ciente de ICTO em resposta a uma solicitação por um agente para acessar a mistura digital ou ICTO 710. Em algumas modalidades, a identidade de proprietário/agente e/ou uma ou mais identidades de agente são incluídas no módulo de identidade 708 embutido no ICTO 710 e incluem critérios para verificar a identidade, autenticidade e legitimidade de um agente que tenta acessar o ICTO 710, regras dinâmicas para fornecer uma consciência inteligente que valide a legitimidade do agente e determine o estado atual dos dados, e algoritmos para camuflagem de dados como especificado em padrões de camuflagem. Podem ser usados critérios de verificação tais como pares pergunta/resposta, autorizações externas, informações biométricas, e/ou similares para autenticar, validar e/ou verificar a identidade do agente. No bloco 903, utilizando o conjunto de regras dinâmicas portáteis 711, os agentes solicitantes são verificados em um contexto eficiente, completo e relevante e é-lhes concedido acesso à mistura digital 710.
[0090] O método 900 prossegue para o bloco 904, onde o conjunto de regras dinâmicas portáteis 711 fornece ao controlador dinâmico de participantes 702 um ou mais padrões de camuflagem usados para proteger os dados solicitados com base na identidade do agente, na solicitação de dados, no contexto no qual os dados estão sendo solicitados, e similares. Prosseguindo para o bloco 905, o DPC ou misturador 702 sob instrução do conjunto de regras dinâmicas portáteis 711 descamufla alguns ou todos os dados protegidos dentro do ICTO 710 com base nas regras do proprietário de dados para o agente legítimo, a solicitação de dados, o contexto no qual os dados estão sendo solicitados, e/ou similar gerenciados pelo conjunto de regras dinâmicas portáteis 711.
[0091] Outras etapas não explicitamente ilustradas na Figura 9 podem também ser incluídas no método 900 sem divergir do âmbito da presente invenção. Por exemplo, se forem detectadas quaisquer anomalias enquanto aplicando os padrões de descamuflagem ou executando regras, o método 900 pode parar, e pode não permitir acesso ao ICTO 710 protegido. Em outro exemplo, o método 900 pode determinar legitimidade de um agente solicitante ao ICTO 710 que pode fazer com que autorizações externas sejam exigidas antes do término de autorização do agente legítimo. Adicionalmente, podem ser transmitidos alertas como resultado de acesso legítimo e autorizado ao ICTO 710. Como outro exemplo, em algumas modalidades, o método 900 pode determinar que acesso não-autorizado está sendo tentado, o que pode fazer com que o PDRS 711 dentro do ICTO 710 transmita alertas, registre tentativas de acesso e/ou similares. Em outro exemplo, em algumas modalidades, o método 900 pode determinar que uma tentativa de acesso não-autorizado está ocorrendo, e permitir acesso a dados falsos no ICTO 710, registrar atividade, transmitir alertas e/ou similares. Alertas incluem tentativa de acesso fracassado, endereço de acesso irreconhecível (que pode incluir dispositivo e localização específicos), violações de programação, movimento não-autorizado de um ICTO, e similares, mas não se limitam a estes.
[0092] Consequentemente, a presente invenção resulta em um ICTO que é independente, autocontrolado e autoadministrado. Todos os direitos de acesso, regras de engajamento, regras de conformidade, regras de auditoria, e regras e restrições similares como determinados pelo proprietário dos dados estão contidos no PDRS, e embutidos no ICTO, e portanto controlados em nome do proprietário dos dados pelo PDRS (quer on-line ou off-line, o controle é mantido a partir de dentro do ICTO), e executados pelo PDRS. O PDRS é o meio para autoadministração e controle após criação e por toda a vida do ICTO. Desloca-se com o ICTO, cumpre em todos os instantes as regras estabelecidas pelo proprietário dos dados, e pode ser adaptativo (isto é, dinâmico), com base no ambiente (tal como local, hora e dispositivo), mas não limitado a este, de modo a autoadministrar-se e tomar decisões baseadas em informações de aprendizagem. O PDRS não necessita de quaisquer fontes externas (por exemplo, sistemas IAM ou SIEM) ou ambientes operacionais específicos para manter controle e administração. O PDRS controla o gerenciamento completo do ICTO a partir de dentro do ICTO. O PDRS está permanentemente embutido no ICTO e desloca-se com o ICTO, criando deste modo uma entidade independente, autocontrolada e autoadministrada.
[0093] A Figura 4 é um diagrama esquemático que ilustra um caso exemplificativo de utilização para uma modalidade da presente invenção. Aquele versado na técnica reconhecerá que este caso de utilização é apenas exemplificativo e é descrito para mostrar determinados recursos da invenção, mas que este caso não utiliza ou descreve todos os recursos da tecnologia revelada neste documento. Na Figura 4, um primeiro usuário 418, utilizando um primeiro dispositivo computacional 416, utiliza uma modalidade da presente invenção para proteger um primeiro pedaço de dados (dados um 404) e um segundo pedaço de dados (dados dois 406). É criado um ICTO 408 que inclui uma versão protegida de dados um 410 e uma versão protegida de dados dois 412. Na criação do ICTO 408, o primeiro usuário 418 especifica que o segundo usuário 422 pode acessar os dados um 404, mas não especifica que o segundo usuário 422 pode acessar os dados dois 406. Portanto, o ICTO 408 inclui uma regra no seu conjunto de regras dinâmicas portáteis 108 que permite que o usuário dois 422, uma vez verificado, acesse os dados um 404.
[0094] O primeiro dispositivo computacional 416 transmite o ICTO 408 para um segundo dispositivo computacional 420 usado por um segundo usuário 422 por meio de uma rede, tal como uma LAN, uma rede sem fio, a internet, e/os similar. O segundo usuário 422 faz com que o ICTO 408 seja ativado, e submete uma solicitação 424 para acessar os dados um 404. O ICTO 408 verifica a identidade do segundo usuário 422, o que pode incluir processar um par pergunta/resposta armazenado no ICTO 408 e/ou consultar um serviço confiável 409 (tal como um servidor de certificado, um RADIUS ou outro servidor de autenticação, e/ou similar) para verificar se o segundo usuário 422 é quem se propõe ser. Uma vez identificada a identidade do segundo usuário 422, o ICTO 408 consulta o padrão de camuflagem usado para criar os dados um protegidos 410, e utiliza o padrão de camuflagem para dar ao segundo usuário 422 acesso aos dados um 404. O segundo usuário 422 pode também submeter uma solicitação 426 para acessar os dados dois 406. Contudo, uma vez que o ICTO 408 não foi instruído para fornecer acesso aos dados dois 406 ao segundo usuário 422, o ICTO 408 não permite que o segundo usuário 422 acesse os dados dois 406.
[0095] Em um fluxograma alternativo, um primeiro dispositivo computacional 416 transmite um ICTO 408 para um segundo dispositivo computacional 420 usado pelo segundo usuário 422 por meio de uma rede, tal como uma LAN, uma rede sem fio, a internet, e/ou similar. O segundo usuário 422 utilizando um aplicativo, dispositivo ou sistema operacional ciente de ICTO desperta o ICTO 408 que recebe uma solicitação para acessar os dados um protegidos no ICTO 408. O ICTO 408 verifica a identidade do segundo usuário 422, que pode incluir o processamento de pares múltiplos pergunta/resposta armazenados no ICTO 408 e/ou autorização externa ou similar para verificar se o segundo usuário 422 é válido e autorizado. Adicionalmente, pode ser usado um serviço confiável 409 para validação adicional de tempo, localização física e similar baseado nas regras de acesso apresentadas pelo proprietário 418. Logo que a identidade do segundo usuário 422 é verificada (isto é, estabelecida como autêntica e legítima), o ICTO 408 determina o um ou mais padrões de camuflagem usados para criar os dados um protegidos 410, e descamufla os dados um protegidos 410 revelando os dados um 404 para o segundo usuário 422. O segundo usuário 422 pode também solicitar acesso aos dados dois protegidos 412. Contudo, uma vez que o segundo usuário 422 não está autorizado a acessar os dados dois protegidos no ICTO 408, não é concedido ao segundo usuário 422 acesso aos dados dois protegidos 412.
[0096] Embora seja descrito um serviço confiável 409 que fornece serviços de autenticação, podem ser usados outros serviços confiáveis. Por exemplo, se uma regra é incluída no ICTO 408 que permite apenas acesso durante um determinado período de tempo, pode ser usado um serviço confiável 409 que fornece um valor confiável de data-hora. Como outro exemplo, um serviço confiável 409 pode buscar entrada a partir de outros usuários enquanto o ICTO 408 está determinando se concede acesso a um agente. Como ilustrado, um serviço confiável 409 pode notificar o primeiro usuário 418 da tentativa de acesso através de mensagem eletrônica, SMS, ou qualquer outra técnica adequada, e pode esperar para permitir o acesso tentado até uma correspondente aprovação ser recebida do primeiro usuário 418.
[0097] Este caso de utilização ilustra diversas vantagens da presente invenção. Logo que o ICTO 408 é criado, os dados um protegidos 410 e os dados dois protegidos 412 não podem ser acessados sem invocar o processamento do ICTO 408 a solicitar acesso. Consequentemente, os dados estão protegidos quando o ICTO 408 está armazenado no primeiro dispositivo computacional 416, quando o ICTO 408 está em trânsito na rede 402, e quando o ICTO 408 está armazenado no segundo dispositivo computacional 416. Também, mesmo embora o ICTO 408 forneça acesso ao segundo usuário 422 para dados um 404, os dados dois 406 estão mesmo assim protegidos de acesso.
[0098] Embora este caso simples de utilização ilustre diversos recursos da presente invenção, são também possíveis casos de utilização muito mais complexos. Por exemplo, a Figura 5 é um diagrama esquemático que ilustra aspectos de um fluxograma exemplificativo para uma modalidade da presente invenção. Um primeiro usuário ("Usuário A") pode ter um conjunto de documentos ("Documentos X, Y e Z") para serem aprovados e assinados, mantendo confidencialidade ao longo da transação, por um segundo usuário ("Usuário B"), um terceiro usuário ("Usuário C") e um quarto usuário ("Usuário D"). O Documento X necessita ser assinado pelo Usuário B. O Documento Y necessita ser assinado pelos Usuário B e Usuário C, mas apenas após o Documento X ter sido assinado. O Documento Z necessita ser assinado pelo Usuário D, mas apenas após os Documentos X e Y terem sido assinados. Além disso, os Documento X e Documento Y devem ser assinados durante o horário de expediente (por exemplo, entre 9h e 17h) para garantir conformidade com a política empresarial local, enquanto o Documento Z (o rascunho de trabalho do Documento Y) deve ser assinado imediatamente após as assinaturas aprovadas dos Documentos X e Y, a auditoria registrada, e em seguida o Documento Z destruído, com a auditoria também registrada.
[0099] Modalidades da presente invenção suportarão tal fluxograma. O Usuário A cria um ICTO que inclui os Documentos X, Y e Z. O Usuário A cria uma regra de acesso para o Documento X que permite que o Usuário B receba e assine o Documento X. O Usuário A cria uma regra de acesso para o Documento Y que permite que os Usuário B e Usuário C analisem e assinem o Documento Y logo que seja obtida a assinatura no Documento X. O Usuário A pode criar uma regra de acesso para o Documento X que permite que o Usuário C analise o Documento X para verificar se há uma assinatura, ou a regra de acesso para o Documento X pode detectar a assinatura aplicada ao Documento X, e pode dinamicamente atualizar a regra de acesso para o Documento Y que permite que este seja assinado uma vez detectada a assinatura. O Usuário A cria uma regra de acesso para o Documento Z que verifica se há assinaturas nos Documentos X e Y, e após detectar tais assinaturas, o Usuário D tem permissão para assinar o Documento Z. Cada uma destas regras também faz cumprir os requisitos de tempo associados, e não permite acesso se os requisitos de tempo não forem satisfeitos. O Usuário A pode também criar uma regra que relate de volta ao Usuário A qualquer acesso a qualquer dos documentos, de modo que o Usuário A possa monitorar o processo. Cada uma das regras pode especificar como cada usuário deve ser identificado, os privilégios correlatos, dispositivos a partir dos quais os usuários podem acessar os documentos, e localizações a partir das quais os usuários podem acessar os documentos.
[00100] Logo que, por exemplo, o Usuário B recebe o ICTO, o Usuário B invoca um aplicativo configurado para ativar o código executável dentro do ICTO. O código executável determina a identidade do Usuário B, quer pela consulta a um serviço de identidade confiável, pela verificação da resposta a uma pergunta incluída em uma regra, ou por qualquer outro método. Uma vez que sejam satisfeitos os requisitos de identidade, hora, local e outros, é permitido ao Usuário B acessar o Documento X, mas não qualquer dos outros documentos. Após o Usuário B assinar o Documento X, o ICTO é transferido para o usuário seguinte, e faz cumprir as proteções sobre os documentos à medida que o ICTO atravessa o restante do fluxograma.
[00101] Alternativamente, por exemplo, o Usuário B recebe o ICTO, o Usuário B invoca um aplicativo ciente de ICTO, o que ativa o PDRS dentro do ICTO. O código executável determina a identidade do Usuário B pela utilização das credenciais de identidade armazenadas dentro do ICTO que apresenta múltiplos pares pergunta/resposta e/ou códigos de autorização externos. Uma vez que sejam satisfeitos os requisitos de identidade, hora, local e outros, é permitido ao Usuário B acessar o Documento X, mas não qualquer dos outros documentos. Após o Usuário B assinar o Documento X, o ICTO é transferido para o usuário seguinte, e faz cumprir as proteções sobre os documentos à medida que o ICTO atravessa o restante do fluxograma.
[00102] Em outra modalidade exemplificativa, é instituído um protocolo de proteção em um aparelho de identidade portátil (PIA). O PIA define uma identidade digital portátil e discreta usando um método de autenticação instintivo e autônomo. O PIA implementa por fim um protocolo de ICTO incorporado, tornando-se portanto um objeto inteligente. Em diversas modalidades, o PIA é um ICTO que não inclui dados de proprietário (por exemplo, arquivos, imagens e similares). O PIA compreende um ICTO que utiliza o PDRS junto com informações adicionais publicamente disponíveis (similares às informações disponíveis em um cartão de visitas ou em um diretório público) referentes ao proprietário, mas sem necessariamente conter dados de proprietário. O PIA é, portanto, um ICTO autoprotegido, autocontrolado, autoadministrado com a finalidade de representar, irrefutavelmente, a identidade do proprietário.
[00103] Como observado nas Figuras 10-13, uma vez criado o PIA protegido, o mesmo pode combinar-se com dados para produzir um objeto de dados protegidos, facilitar a transmissão de mensagem segura entre um ou mais grupos (por exemplo, validação e manutenção de legitimidade de transmissor e receptor e integridade de dados), e fornecer uma identidade segura e confiável que possa ser usada para garantir ou proteger sites, portais, redes, ou outros recursos.
[00104] O PIA, portanto, apresenta diversas vantagens em relação a técnicas de assinatura existentes. Técnicas de assinatura existentes são tipicamente baseadas em certificados que são adquiridos de uma autoridade de certificação. Certificados são considerados confiáveis baseados em quem detém o certificado e em quem emite o certificado. Contudo, certificados podem ser roubados, podem ser falsificados, e não são baseados em uma identidade unicamente definida.
[00105] Portanto, um ICTO pode ser usado para verificação irrefutável de identidade onde é necessária uma "assinatura". ICTOs de Assinatura podem ser utilizados como verificação de identidade externa em conjunção com um ICTO que contém documentos legais que necessitam verificação absoluta de identidade. O(s) ICTO(s) de Assinatura pode(m) tornar-se parte (embutido(s)) dos documentos legais "finais" contidos dentro do ICTO original. Além disso, ICTOs de Assinatura podem ser incluídos dentro do ICTO (isto é, aninhados) como elementos adicionais de dados protegidos em adição aos documentos do proprietário que necessitam de assinatura, portanto pré-definindo e fornecendo pré-verificação dos signatários exigidos viajando com os documentos. ICTOs de Assinatura podem também ser usados como verificação irrefutável de identidade de documentos que não estão incluídos em um ICTO, mas ao invés em um aplicativo ciente de ICTO. Por exemplo, podem ser usados para fornecer aceitação de Termos e Condições eletronicamente, ou reconhecimento de avisos de privacidade.
[00106] ICTOs de Assinatura no contexto de assinatura de documentos podem ser considerados como uma versão digital do proprietário que foi "legalmente verificada e autenticada", mas também é irrefutável. Cada ICTO de Assinatura, do mesmo modo que um ICTO com dados de proprietário, é único e, portanto, não pode ser "falsificado" por uma pessoa ou entidade tentando ser o proprietário real do ICTO de Assinatura. Adicionalmente, um ICTO de Assinatura não tem que representar um humano; pode representar uma máquina, uma vez que um fluxo de processo digital necessita de assinaturas (verificações) ao longo do percurso com a finalidade de confirmar a validade da autorização para prosseguir; e esta assinatura deve ser documentada. ICTOs de Assinatura podem ser usados hoje em qualquer lugar onde seja necessária uma assinatura digital padrão, mas não estão limitados a apenas como assinaturas digitais são usadas hoje. Como discutido acima, em diversas modalidades deve haver uma consciência de ICTO como um pré- requisito para utilização.
[00107] Aquele versado na técnica reconhecerá que os casos de utilização acima são apenas exemplificativos, e que são possíveis muitos outros casos de utilização para o assunto em questão revelado neste documento. Por exemplo, uma vez que os conjuntos de regras dinâmicas portáteis incluem código executável, o ICTO pode proteger conteúdo executável que é apenas executável após satisfazer as verificações de segurança do ICTO. Também, uma vez que o ICTO pode executar tal conteúdo em resposta ao êxito ou falha de qualquer regra, o ICTO pode registrar acessos exitosos ou tomar medidas tais como alertar um proprietário de dados, iniciar uma sequência de autodestruição, ou outras ações após detectar uma tentativa de acesso não- autorizada.
[00108] Alternativamente existem muitos outros casos de utilização para o assunto em questão revelado neste documento. Por exemplo, uma vez que o ICTO inclui código executável para autoadministração independente, o ICTO pode proteger o conteúdo que é apenas acessível após satisfação das verificações de segurança apresentadas pelo proprietário de dados contidos dentro do ICTO. Também, o ICTO, em resposta ao êxito ou falha de qualquer regra, pode registrar tais acessos e/ou tomar medidas tais como alertar um proprietário de dados, iniciar uma sequência de autodestruição, ou outras ações após detectar uma tentativa de acesso não-autorizada.
[00109] A Figura 6 é um diagrama de blocos que ilustra uma arquitetura de hardware exemplificativa de um dispositivo computacional 500 adequado para uso com modalidades da presente invenção. Aqueles versados na técnica e outros reconhecerão que o dispositivo computacional 500 pode ser qualquer um de qualquer número de dispositivos atualmente disponíveis ou ainda a serem desenvolvidos incluindo computadores de mesa, computadores servidores, computadores portáteis, dispositivos computacionais embutidos, circuitos integrados de aplicação específica (ASICs), telefones inteligentes, computadores tablet, e/ou similares, mas não se limitam a estes. Na sua configuração mais básica, o dispositivo computacional 500 inclui ao menos um processador 502 e uma memória de sistema 504 conectados por meio de um barramento de comunicação 506. Dependendo da exata configuração e tipo de dispositivo, a memória de sistema 504 pode ser memória volátil ou não-volátil, tal como memória apenas de leitura ("ROM"), memória de acesso aleatório ("RAM"), EEPROM, memória flash, ou tecnologia similar de memória. Aqueles versados na técnica e outros reconhecerão que a memória de sistema 504 armazena tipicamente dados e/ou módulos de programa que são imediatamente acessíveis ao e/ou estão sendo atualmente operados pelo processador 502. Neste sentido, o processador 502 serve como um centro computacional do dispositivo computacional 500 ao suportar a execução de instruções.
[00110] Como ainda ilustrado na Figura 6, o dispositivo computacional 500 pode incluir uma interface de rede 510 que compreende um ou mais componentes para comunicação com outros dispositivos pela rede. Modalidades da presente invenção podem acessar serviços básicos que utilizam a interface de rede 510 para executar comunicações usando protocolos comuns de rede. Na modalidade exemplificativa representada na Figura 6, o dispositivo computacional 500 também inclui um meio de armazenamento 508. Contudo, serviços podem ser acessados usando um dispositivo computacional que não inclua meios para persistência de dados para um meio local de armazenamento. Portanto, o meio de armazenamento 500 representado na Figura 6 é representado com uma linha tracejada para indicar que o meio de armazenamento 500 é opcional. Em qualquer caso, o meio de armazenamento 500 pode ser volátil ou não-volátil, removível ou não-removível, implementado usando qualquer tecnologia capaz de armazenar informações tais como um disco rígido, unidade de estado sólido, CD ROM, DVD, ou outro armazenamento em disco, cassetes magnéticas, fita magnética, armazenamento em disco magnético, e similares, mas não se limitam a estes.
[00111] Como usado neste documento, o termo "meio legível por computador" inclui meio volátil e não-volátil e removível e não-removível implementado em qualquer método ou tecnologia capaz de armazenar informações, tais como instruções legíveis por computador, estruturas de dados, módulos de programas, ou outros dados. Neste sentido, a memória de sistema 504 e meio de armazenamento 508 representados na Figura 6 são meramente exemplos de meios legíveis por computador.
[00112] Implementações adequadas de dispositivos computacionais que incluem um processador 502, memória de sistema 504, barramento de comunicação 506, meio de armazenamento 508 e interface de rede 510 são conhecidos e disponíveis comercialmente. Para facilidade de ilustração e porque não é importante para uma compreensão do assunto em questão reivindicado, a Figura 6 não mostra alguns dos componentes típicos de muitos dispositivos computacionais. Neste sentido, o dispositivo computacional 500 pode incluir dispositivos de entrada, tais como um teclado, mouse, microfone, dispositivo sensível ao toque, e/ou similar. Similarmente, o dispositivo computacional 500 pode também incluir dispositivos de saída tais como tela, alto- falantes, impressora, e/ou similar. Uma vez que todos estes dispositivos são bem conhecidos na técnica, os mesmos não são descritos neste documento.
[00113] Portanto, deverá ser entendido que as modalidades e exemplos descritos neste documento foram escolhidos e descritos com a finalidade de melhor ilustrar os princípios da invenção e suas aplicações práticas para deste modo habilitar aquele versado na técnica a melhor utilizar a invenção em diversas modalidades e com diversas modificações conforme seja adequado para utilizações específicas contempladas. Mesmo embora tenham sido descritas modalidades específicas desta invenção, as mesmas não devem ser consideradas exaustivas. Existem diversas variações que serão evidentes para aqueles versados na técnica.

Claims (20)

1. Sistema implementado por computador para segurança aperfeiçoada de dados, caracterizado por compreender: ao menos um processador, incluindo hardware e software, o ao menos um processador configurado para: receber um objeto de transferência de cifra inteligente baseado em computador que compreende: dados de proprietário protegidos por um ou mais padrões internos de camuflagem, e um conjunto de regras dinâmicas portáteis, o referido conjunto de regras dinâmicas portáteis compreendendo um código protegido executado por máquina por um ou mais padrões externos de camuflagem, receber, de um agente externo, uma solicitação para acessar parte do ou todos os dados de proprietário; reverter o um ou mais padrões externos de camuflagem para recuperar o código protegido executado por máquina; e ativar o conjunto de regras dinâmicas portáteis por meio da execução do código protegido executado por máquina, ocasionando com que o ao menos um processador: verifique, utilizando o conjunto de regras dinâmicas portáteis se o agente externo está autorizado a acessar parte do ou todo o conjunto de participantes como solicitado; e após verificar que o agente externo está autorizado, forneça acesso a parte do ou todo dos dados de proprietário para o qual o agente externo foi verificado para acesso por meio da reversão de ao menos uma porção do um ou mais padrões externos de camuflagem.
2. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do conjunto de regras dinâmicas portáteis estar localizado em diferentes localizações dentro do objeto de transferência de cifra inteligente.
3. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do código protegido executado por máquina estar localizado em diferentes localizações dentro do objeto de transferência de cifra inteligente.
4. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do conjunto de regras dinâmicas portáteis incluir ao menos uma regra que identifique que agentes externos podem acessar parte do ou todo dos dados de proprietário, e um contexto no qual um agente externo específico pode acessar parte do ou todo os dados de proprietário.
5. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de um contexto no qual um agente externo específico pode acessar parte do ou todos os dados de proprietário compreende um ou mais dos seguintes: um período de tempo, uma localização, ou uma identidade de um dispositivo computacional.
6. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do objeto de transferência de cifra inteligente baseado em computador compreender ainda metadados de mistura.
7. Sistema, de acordo com a reivindicação 6, caracterizado pelo fato dos metadados de mistura incluírem informações identificando do um ou mais padrões internos ou externos de camuflagem protegendo os dados de proprietário e o conjunto de regras dinâmicas portáteis.
8. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do um ou mais padrões internos de camuflagem serem usados para proteger ao menos uma porção do conjunto de regras dinâmicas portáteis.
9. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a execução do código protegido executado por máquina adicionalmente ocasionar que o ao menos um processador: após falhar em verificar que o agente externo está autorizado, executar ao menos uma regra no conjunto de regras dinâmicas portáteis, ocasionando que o ao menos um dos seguintes eventos ocorram: o objeto de transferência de cifra inteligente se autodestrua, o objeto de transferência de cifra inteligente baseado em computador rejeita acesso a ao menos uma porção dos dados de proprietário, uma mensagem ou alerta é transmitido para um proprietário associado aos dados de proprietário, e um registro da solicitação é armazenado no objeto de transferência de cifra inteligente.
10. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de a execução do código protegido executado por máquina adicionalmente ocasionar que o ao menos um processador: após fornecer acesso a parte do ou todo dos dados de proprietário para o qual o agente externo foi verificado para acesso, executar ao menos uma regra no conjunto de regras dinâmicas portáteis, ocasionando que o ao menos um dos seguintes eventos ocorram: uma mensagem ou alerta é transmitido para um proprietário associado com os dados de proprietário, um registro da solicitação é armazenado nos objetos de transferência de cifra inteligente, o objeto de transferência de cifra inteligente provê acesso limitado a o ao menos uma porção dos dados de proprietário, o acesso limitado compreendendo ao menos um de privilégios de leitura e privilégios de escrita, uma assinatura do agente externo é associada aos dados de proprietário; e ao menos uma regra no conjunto de regras dinâmicas portáteis é adicionada, modificada ou removida.
11. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato do objeto de transferência de cifra inteligente estar aninhado dentro de um segundo objeto de transferência de cifra inteligente.
12. Sistema, de acordo com a reivindicação 11, caracterizado pelo fato do segundo objeto de transferência de cifra inteligente estar aninhado dentro de um ou mais objetos adicionais de transferência de cifra inteligente.
13. Sistema implementado por computador para segurança aperfeiçoada usando assinaturas ou verificações digitais, caracterizado por compreender: ao menos um processador, incluindo hardware e software, o ao menos um processador configurado para: receber um objeto de transferência de cifra inteligente baseado em computador que compreende um conjunto de regras dinâmicas portáteis, o referido conjunto de regras dinâmicas portáteis compreendendo um código executado por máquina protegido por um ou mais padrões externos de camuflagem, reverter o um ou mais padrões externos de camuflagem para recuperar o código protegido executado por máquina; e ativar o conjunto de regras dinâmicas portáteis por meio da execução do código protegido executado por máquina, ocasionando com que o ao menos um processador: verifique, utilizando o conjunto de regras dinâmicas portáteis, uma identidade do agente externo, após verificar que o agente externo está autorizado, armazenar dados indicativos da identidade do agente externo no objeto de transferência de cifra inteligente, e proteger os dados indicativos da identidade do agente externo utilizando um ou mais padrões internos de camuflagem.
14. Sistema, de acordo com a reivindicação 13, caracterizado pelo fato do conjunto de regras dinâmicas portáteis estar localizado em diferentes localizações dentro do objeto de transferência de cifra inteligente.
15. Sistema, de acordo com a reivindicação 13, caracterizado pelo fato de os dados indicativos da identidade do agente externo estarem localizados em localizações variáveis dentro do objeto de transferência de cifra inteligente.
16. Sistema, de acordo com a reivindicação 13, caracterizado pelo fato dos padrões internos de camuflagem serem usados para camuflar ao menos uma porção do conjunto de regras dinâmicas portáteis.
17. Sistema, de acordo com a reivindicação 13, caracterizado pelo fato de o ao menos um processador compreender um processador local, em que a ativação do conjunto de regras dinâmicas portáteis compreende a ativação do conjunto de regras dinâmicas portáteis no processador local.
18. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de o objeto de transferência de cifra inteligente transferir objeto compreendendo adicionalmente um primeiro conjunto de informações de identificação de um ou mais agentes autorizados, e que a execução do código protegido executado por máquina ocasiona que o ao menos um processador verifique que o agente externo está autorizado para: requisitar que o agente externo providencie um segundo conjunto de informações de identificação; receber o segundo conjunto de informações de identificação; e verificar se o agente externo está autorizado ao comparar o primeiro conjunto de informações de identificação e o segundo conjunto de informações de identificação.
19. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de o objeto de transferência de cifra inteligente transferir objeto compreendendo adicionalmente uma ou mais chaves de descriptografia, e de executar o código protegido executado por máquina ocasionando que o ao menos um processador reverta a ao menos uma porção do um ou mais padrões internos de camuflagem ao usar a uma ou mais chaves de descriptografia.
20. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de o ao menos um processador compreender um processador local, em que a ativação do conjunto de regras dinâmicas portáteis compreende a ativação do conjunto de regras dinâmicas portáteis no processador local.
BR112016024193-2A 2014-04-17 2015-04-17 Sistema e métodos para utilizar objetos de cifra para proteger dados BR112016024193B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461980617P 2014-04-17 2014-04-17
US61/980,617 2014-04-17
PCT/US2015/026405 WO2016003527A2 (en) 2014-04-17 2015-04-17 System and methods for using cipher objects to protect data

Publications (2)

Publication Number Publication Date
BR112016024193A2 BR112016024193A2 (pt) 2017-10-10
BR112016024193B1 true BR112016024193B1 (pt) 2023-07-25

Family

ID=

Similar Documents

Publication Publication Date Title
US12008117B2 (en) System and methods for using cipher objects to protect data
JP6542962B2 (ja) 遅延データアクセス
Hoekstra et al. Using innovative instructions to create trustworthy software solutions.
Yu et al. A view about cloud data security from data life cycle
US20130152160A1 (en) Systems and methods for using cipher objects to protect data
JP2022545627A (ja) 分散化されたデータ認証
Manthiramoorthy et al. Comparing several encrypted cloud storage platforms
US20220004649A1 (en) System and methods for using cipher objects to protect data
US20200028689A1 (en) Location-based and time-based photo authentication
JP6982142B2 (ja) 暗号オブジェクトを使用してデータを保護するためのシステムおよび方法
Franchi et al. Information attacks on online social networks
BR112016024193B1 (pt) Sistema e métodos para utilizar objetos de cifra para proteger dados
NZ726067B2 (en) System and methods for using cipher objects to protect data
NZ763404B2 (en) System and methods for using cipher objects to protect data
Kamble et al. Data Sharing and Privacy Preserving Access Policy of Cloud Computing Using Security
Pietri Privacy in computational social science