[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

BRPI0718581A2 - Sistemas e métodos para distribuir e proteger dados - Google Patents

Sistemas e métodos para distribuir e proteger dados Download PDF

Info

Publication number
BRPI0718581A2
BRPI0718581A2 BRPI0718581-2A BRPI0718581A BRPI0718581A2 BR PI0718581 A2 BRPI0718581 A2 BR PI0718581A2 BR PI0718581 A BRPI0718581 A BR PI0718581A BR PI0718581 A2 BRPI0718581 A2 BR PI0718581A2
Authority
BR
Brazil
Prior art keywords
data
share
fragment
validation
collection
Prior art date
Application number
BRPI0718581-2A
Other languages
English (en)
Inventor
Mihir Bellare
Philip Rogaway
Original Assignee
Security First Corp
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 Security First Corp filed Critical Security First Corp
Publication of BRPI0718581A2 publication Critical patent/BRPI0718581A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/24Key scheduling, i.e. generating round keys or sub-keys for block encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/80Wireless
    • H04L2209/805Lightweight hardware, e.g. radio-frequency identification [RFID] or sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)

Description

Relatório Descritivo da Patente de Invenção para "SISTEMAS E MÉTODOS PARA DISTRIBUIR E PROTEGER DADOS".
REFERÊNCIA CRUZADA A PEDIDOS RELACIONADO
Este pedido reivindica o benefício do Pedido Provisório U.S. Número 60/857.345, depositado em 07 de Novembro de 2006, o qual está por meio disto aqui incorporado por referência na sua totalidade.
CAMPO DA INVENÇÃO
A presente invenção refere-se em geral a um sistema para pro- teger dados de um acesso ou uso não-autorizado. A presente invenção tam- bém refere-se geralmente a técnicas criptográficas para a construção de es- quemas de compartilhamento de segredo, e mais especificamente a siste- mas e métodos para suportar um esquema de compartilhamento de segredo que pode tolerar danos a um ou mais compartilhamentos.
ANTECEDENTES DA INVENÇÃO
Na sociedade atual, os indivíduos e as empresas conduzem uma quantidade de atividades cada vez mais crescente em e por sistemas de computador. Estes sistemas de computador, que incluem redes de compu- tador de propriedade e de não-propriedade, estão frequentemente armaze- nando, arquivando, e transmitindo todos os tipos de informações reservadas. Assim uma necessidade cada vez mais crescente existe para assegurar que os dados armazenados e transmitidos por estes sistemas não possam ser lidos ou de outro modo comprometidos.
Uma solução comum para proteger os sistemas de computador é prover uma funcionalidade de Iogin e senha. No entanto, o gerenciamento de senhas provou ser bastante dispendioso com uma grande percentagem de chamadas a apoios do usuário relativas a problemas com senhas. Mais ainda, as senhas proveem pouca segurança pelo fato de que estas estão geralmente armazenadas em um arquivo susceptível a acesso impróprio, através de, por exemplo, ataques de força bruta.
Outra solução para proteger os sistemas de computador é pro- ver infraestruturas criptográficas. A criptografia, em geral, refere-se a prote- ger os dados transformando-os, ou criptografando-os em um formato ilegí- vel. Somente aqueles que possuem a(s) chave(s) para a criptografia podem decifrar os dados para um formato utilizável. A criptografia é utilizada para identificar os usuários, por exemplo, autenticação, para permitir acesso a privilégios, por exemplo, autorização, para criar certificados e assinaturas 5 digitais, e similares. Um sistema de criptografia popular é um sistema de chave pública que utiliza duas chaves, uma chave pública conhecida de to- dos e uma chave privada conhecida somente de seu proprietário individual ou comercial. Geralmente, os dados criptografados com uma chave são de- cifrados com a outra e nenhuma chave é recriável da outra.
Infelizmente, mesmo os sistemas criptográficos de chave pública
típicos acima são altamente dependentes do usuário para segurança. Por exemplo, os sistemas criptográficos emitem a chave provada para o usuário, por exemplo, através do navegador do usuário. Os usuários não-sofisticados então geralmente armazenam a chave provada em um disco rígido acessível 15 a outros através de um sistema de computador aberto, tal como, por exem- plo, a Internet. Por outro lado, os usuários podem escolher nomes ruins para os arquivos que contém a sua chave privada, tal como, por exemplo, "cha- ve". O resultado do acima e outros atos é permitir que a chave ou chaves sejam susceptíveis de comprometimento.
Além dos comprometimentos acima, um usuário pode salvar a
sua chave privada em um sistema de computador configurado com um sis- tema de arquivamento ou de backup, potencialmente resultando em cópias da chave privada deslocando-se através de múltiplos dispositivos de arma- zenamento de computador ou outros sistemas. Esta brecha de segurança é 25 frequentemente referida como "migração de chave". Similar à migração de chave, muitos aplicativos proveem acesso á chave privada de um usuário através de, no máximo, um simples acesso de Iogin e senha. Como acima mencionado, o acesso de Iogin e senha frequentemente não provê uma se- gurança adequada.
Uma solução para aumentar a segurança dos sistemas de crip-
tografia acima é incluir a biometria como parte da autenticação ou autoriza- ção. A biometria geralmente inclui características físicas mensuráveis, tais como, por exemplo, impressões digitais ou voz que podem ser verificadas por um sistema automatizado, tal como, por exemplo, uma coincidência de padrões ou um reconhecimento de padrões de impressão digital ou de voz. Em tais sistemas a biometria e/ou as chaves de um usuário podem ser ar- mazenadas em dispositivos de computação móveis, tais como, por exemplo, um cartão inteligente, um laptop, um assistente digital pessoal, ou telefone móvel, por meio disto permitindo que a biometria ou as chaves sejam utilizá- veis em um ambiente móvel.
O sistema criptográfico biométrico móvel acima ainda sofre de uma variedade de desvantagens. Por exemplo, o usuário móvel pode perder ou quebrar o cartão inteligente ou dispositivo de computação portátil, por meio disto tendo o seu acesso a dados potencialmente importantes inteira- mente cortado. Alternativamente, uma pessoa maliciosa pode roubar o car- tão inteligente ou o dispositivo de computação portátil do usuário móvel e utilizá-lo para eficazmente roubar as credenciais digitais do usuário móvel. Por outro lado, o dispositivo de computação portátil pode ser conectado a um sistema aberto, tal como a Internet, e, como as senhas, o arquivo onde a biometria está armazenada pode ser susceptível a comprometimento através da falta de atenção do usuário à segurança e invasores maliciosos.
Um modo de proteger os dados de um acesso não-autorizado ou de utilização não-autorizada é utilizar um esquema de compartilhamento de segredo. Um esquema de compartilhamento de segredo é um método para dividir uma porção de dados reservados (por exemplo, arquivos confidenci- ais, uma chave de criptografia, ou qualquer tipo de comunicação), algumas vezes denominados o segredo, em uma coleção de porções, denominadas compartilhamentos, de modo que a possessão de um número suficiente de compartilhamentos permite a recuperação do segredo, mas a possessão de um número insuficiente de compartilhamentos provê pouca ou nenhuma in- formação sobre o segredo que foi compartilhado. Tais esquemas são impor- tantes ferramentas em criptografia e segurança de informações.
Formalmente, um esquema de compartilhamento de segredo consiste em um par de algoritmos, o algoritmo de compartilhamento Share e o algoritmo de recuperação Recover. O algoritmo de compartilhamento é tipicamente probabilístico (significando que este faz escolhas randomiza- das), e o algoritmo de recuperação é tipicamente determinístico. O algoritmo de compartilhamento pode ser utilizado para desmontar, ou dividir, o segre- 5 do em uma coleção de compartilhamentos, e o algoritmo de recuperação pode ser utilizado para remontar estes compartilhamentos. No momento da remontagem, cada compartilhamento pode estar presente, em cujo caso uma cadeia pode ser provida para o algoritmo de recuperação, ou um com- partilhamento pode estar faltando, em cujo caso um valor designado (referi- 10 do como "0" aqui) pode ser provido para o algoritmo de recuperação. Um conjunto de participantes que esta autorizado a recuperar o segredo é de- nominado um conjunto autorizado, e o conjunto de todos tais participantes é algumas vezes denominado uma estrutura de acesso.
Os esquemas de compartilhamento de segredo foram projeta- dos para funcionar em várias estruturas de acesso, mas a estrutura de aces- so mais comum é a estrutura de acesso limite, onde qualquer subconjunto de m ou mais participantes, de um total de n participantes no todo, são ditos serem autorizados. Um esquema de compartilhamento de segredo para uma estrutura de acesso limite é algumas vezes denominado um esquema de limite. Existem duas propriedades de segurança para qualquer esquema de compartilhamento de segredo: uma propriedade de privacidade e uma pro- priedade de recuperabilidade. A propriedade de privacidade assegura que coalizões não-autorizadas de participantes não aprendam nada útil sobre o segredo. A propriedade de recuperabilidade assegura que as coalizões de participantes autorizadas possam no final recuperar o segredo subjacente.
O esquema de compartilhamento de segredo de Shamir é dito ser o esquema de compartilhamento de segredo perfeito (PSS). O termo "perfeito" refere-se à garantia de privacidade sendo informações teóricas e sem nenhum erro; assim, as coalizões de participantes não-autorizadas não 30 podem aprender nada útil sobre o segredo subjacente nos esquemas de PSS.
Uma limitação com os esquemas de PSS é que o tamanho de cada compartilhamento deve ser pelo menos tão longo quanto o tamanho do segredo que está sendo compartilhado. Quando o segredo inclui um grande arquivo ou uma longa cadeia de caracteres, no entanto, esta limitação pode tornar-se de difícil controle, aumentando a complexidade total do sistema.
5 Em resposta a esta limitação, esquemas para o compartilhamento de segre- dos computacionais (CSS) foram desenvolvidos.
O esquema de CSS de Krawczyk, por exemplo, permite que os compartilhamentos sejam mais curtos do que o segredo. Por exemplo, em um esquema de limite de 2 de 3 (significando que quaisquer dois de três 10 compartilhamentos são adequados para recuperar o segredo), o segredo S pode ser dividido em compartilhamentos de tamanho aproximadamente |S|/2 bits, onde |S| denota o comprimento de S. Os compartilhamentos não são possíveis no ambiente de PSS. Os esquemas de CSS, no entanto, a propri- edade de privacidade pode não mais ser absoluta e as informações teóricas; 15 ao contrário, uma coalizão de participantes não-autorizada pode obter uma pequena quantidade de informações sobre o segredo compartilhado de seus compartilhamentos. Mas, sob uma suposição de complexidade computacio- nal, a quantidade de informações será insignificante e portanto, na prática, não muito preocupante.
Uma segunda limitação do esquema de PSS refere-se à falta de
robustez delegada. Robustez significa que um participante faltoso ou adver- sário é incapaz de forçar a recuperação de um segredo incorreto. O modelo para PSS assume que cada compartilhamento é ou "correto" ou "faltante", mas este nunca pode estar errado (por exemplo, corrompido ou intencional- 25 mente alterado). Na prática, esta é uma suposição altamente irracional por- que os compartilhamentos podem estar errados devido a qualquer número de fatores, que incluem, por exemplo, erros em armazenamento, ruído em um canal de comunicação, ou devido a atividades genuinamente adversá- rias. Além disso, a falta de robustez não é apenas uma possibilidade teórica, 30 mas um problema genuíno para os esquemas de PSS típicos, incluindo o esquema de compartilhamento de segredo de Shamir. Com o esquema de Shamir, um adversário pode de fato forçar a recuperação de qualquer se- gredo desejado mudando apropriadamente apenas um compartilhamento. As aplicações práticas de esquemas de compartilhamento de segredo tipi- camente requerem robustez.
SUMÁRIO DA INVENÇÃO 5 Com base no acima, esquemas de compartilhamento de segre-
do computacionais robustos que sejam simultaneamente eficientes e tenham fortes propriedades de segurança provável sob fracas suposições criptográ- ficas são necessários.
Consequentemente, um aspecto da presente invenção é prover um método para proteger virtualmente qualquer tipo de dados de acesso ou uso não-autorizado. O método compreende uma ou mais etapas de decom- por, dividir e/ou separar os dados a serem protegidos em duas ou mais par- tes ou porções. O método também compreende criptografar os dados a se- rem protegidos. A criptografia dos dados pode ser executada antes ou após a primeira decomposição, divisão e/ou separação dos dados. Além disso, a etapa de criptografar pode ser repetida para uma ou mais porções dos da- dos. Similarmente, as etapas de decompor, dividir e/ou separar podem ser repetidas para uma ou mais porções dos dados. O método também opcio- nalmente compreende armazenar os dados decompostos, divididos e/ou separados que foram criptografados em uma localização ou em múltiplas localizações. Este método também opcionalmente compreende reconstituir ou remontar os dados protegidos em sua forma original para um acesso ou uso autorizado. Este método pode ser incorporado nas operações de qual- quer computador, servidor, máquina ou similar, que seja capaz de executar as etapas desejadas do método.
Outro aspecto da presente invenção provê um sistema para pro- teger virtualmente qualquer tipo de dados de acesso ou uso não-autorizado. Este sistema compreende um módulo de divisão de dados, um módulo de manipulação criptográfica, e, opcionalmente, um módulo de montagem de 30 dados. O sistema pode, em uma modalidade, ainda compreender uma ou mais instalações de armazenamento de dados onde os dados protegidos podem ser armazenados. Outro aspecto da invenção inclui utilizar qualquer algoritmo de decomposição ou de divisão para gerar os compartilhamentos de dados. Ou randômico, pseudorrandômico, determinístico, ou qualquer sua combinação podem ser empregados para decompor e dividir os dados.
5 Em ainda outras modalidades, um esquema de compartilhamen-
to de segredo de n participantes com um espaço de mensagem S está pro- vido. Uma família de adversários, A, pode ser definida. O esquema de com- partilhamento de segredo de n participantes pode incluir um ou mais dos seguintes cinco primitivos: (1) um algoritmo de criptografia simétrico com 10 chaves de k bits e um espaço de mensagem S; (2) um algoritmo de PSS de n participantes sobre os adversários A com um espaço de mensagem {0,1 }k;
(3) um algoritmo de dispersão de informações (IDA) de n participantes; (4) um código de correção de erro (ECC) de n participantes sobre os adversá- rios A com um espaço de mensagem {0,1 }h; e (5) um esquema de compro- 15 metimento randomizado (ou probabilístico). Os dados podem ser protegidos primeiramente aplicando um algoritmo de compartilhamento de segredo computacional nos dados a serem protegidos. Um valor randômico ou pseu- dorrandômico pode então ser gerado. Da saída do algoritmo de comparti- lhamento de segredo e do valor randômico ou pseudorrandômico, um con- 20 junto de valores de validação e um conjunto de valores de não-validação podem ser computados. Uma pluralidade de compartilhamentos pode então ser formada combinando um compartilhamento emitido do algoritmo de compartilhamento de segredo, um valor de não-validação, e um ou mais va- lores de validação. Os compartilhamentos podem então ser armazenados 25 em uma ou mais localizações físicas (por exemplo, em um disco rígido mag- nético), ou uma ou mais localizações geográficas (por exemplo, diferentes repositórios de dados ou servidores).
Em algumas modalidades, um esquema de comprometimento probabilístico pode ser utilizado para computar o conjunto de valores de vali- dação e um conjunto de valores de não-validação. Cada compartilhamento pode ser definido por um compartilhamento emitido de um algoritmo de compartilhamento de segredo computacional, um valor de não-validação, e ; um ou mais valores de validação do conjunto de valores de validação.
Em algumas modalidades, uma chave criptográfica pode ser ge- rada e utilizada para criptografar os dados do usuário para criar uma porção de texto cifrado. Um conjunto de n compartilhamentos de chave pode ser 5 criado pela aplicação de um algoritmo de compartilhamento de segredo na chave criptográfica. Um conjunto de n blocos de textos cifrados pode então ser criado pela aplicação de um algoritmo de dispersão de informações (IDA) no texto cifrado. Um conjunto de n valores de validação e n valores de não- validação podem ser computados pela aplicação de um esquema de com- 10 prometimento probabilístico a cada um dos n compartilhamentos de chave e n blocos de textos cifrados. N fragmentos de dados podem ser formados, onde cada fragmento de dados pode ser uma função de um compartilha- mento de chave, um texto cifrado, um valor de não-validação, e um ou mais valores de validação. Finalmente, os fragmentos de dados podem ser arma- 15 zenados em um ou mais dispositivos de armazenamento lógicos (por exem- plo, n dispositivos de armazenamento lógicos). Um ou mais destes dispositi- vos de armazenamento lógicos podem estar situados em diferentes localiza- ções físicas ou geográficas. Os dados do usuário podem então ser reconsti- tuídos combinando pelo menos um número predefinido dos fragmentos de 20 dados. Em algumas modalidades, vários códigos de correção de erro podem ser utilizados para prover uma coleção adequada de valores de validação para cada participante.
BREVE DESCRIÇÃO DOS DESENHOS
A presente invenção está abaixo descrita em mais detalhes em conexão com os desenhos anexos, os quais pretendem ilustrar e não limitar a invenção, e nos quais:
Figura 1 ilustra um diagrama de blocos de um sistema criptográ- fico, de acordo com aspectos de uma modalidade de invenção;
Figura 2 ilustra um diagrama de blocos da máquina de confiança da Figura 1, de acordo com aspectos de uma modalidade da invenção;
Figura 3 ilustra um diagrama de blocos da máquina de transação da Figura 2, de acordo com aspectos de uma modalidade da invenção; Figura 4 ilustra um diagrama de blocos do depositório da Figura
2, de acordo com aspectos de uma modalidade da invenção;
Figura 5 ilustra um diagrama de blocos da máquina de autenti- cação da Figura 2, de acordo com aspectos de uma modalidade da inven- ção;
Figura 6 ilustra um diagrama de blocos da máquina criptográfica da Figura 2, de acordo com aspectos de uma modalidade da invenção;
Figura 7 é um diagrama de blocos ilustrativo que apresenta a estrutura geral de um esquema de compartilhamento de segredo computa- cional robusto (RCSS) de acordo com uma modalidade da invenção;
Figura 8 ilustra o processo de compartilhamento de segredo de acordo com uma modalidade da invenção;
Figura 9 ilustra mais detalhes das etapas de validação na Figura 8 de acordo com uma modalidade da invenção;
Figura 10 ilustra o processo de compartilhamento com base em
uma diferente abstração de construir um esquema de RCSS de um esquema de CSS e um esquema de compromisso; e
Figura 11 ilustra mais detalhes das etapas de verificação no es- quema de comprometimento probabilístico mostrado na Figura 10.
DESCRIÇÃO DETALHADA DA INVENÇÃO
Um aspecto da presente invenção é prover um sistema cripto- gráfico onde um ou mais servidores seguros, ou uma máquina de confiança, armazena as chaves criptográficas e os dados de autenticação do usuário. Os usuários acessam a funcionalidade de sistemas criptográficos conven- 25 cionais através de acesso de rede para a máquina de confiança, no entanto, a máquina de confiança não libera as chaves reais e outros dados de auten- ticação e portanto, as chaves e os dados permanecem seguros. Este arma- zenamento de chaves e de dados de autenticação centrado no servidor pro- vê segurança, portabilidade, disponibilidade, e retidão independentes do u- 30 suário.
Como os usuários podem ser confiantes, ou confiar, no sistema criptográfico para executar a autenticação de usuário e de documentos e outras funções criptográficas, uma ampla variedade de funcionalidades pode ser incorporada no sistema. Por exemplo, o provedor de máquina de confi- ança pode assegurar contra o repúdio de acordo, por exemplo, autenticando os participantes de acordo, assinando digitalmente o acordo em nome dos ou para os participantes, e armazenando um registro do acordo digitalmente assinado por cada participante. Além disso, o sistema criptográfico pode monitorar os acordos e determinar aplicar graus variáveis de autenticação, com base em, por exemplo, preço, usuário, vendedor, localização geográfi- ca, local de uso, ou similares.
Para facilitar uma compreensão completa da invenção, o restan- te da descrição detalhada descreve a invenção com referência às figuras, em que os elementos iguais estão referenciados com números iguais atra- vés de toda a descrição.
A Figura 1 ilustra um diagrama de blocos de um sistema cripto- gráfico 100, de acordo com aspectos de uma modalidade de invenção. Co- mo mostrado na Figura 1, o sistema criptográfico 100 inclui um sistema do usuário 105, uma máquina de confiança 110, uma autoridade de certificado 115, e um sistema de vendedor 120, que comunicam através de uma cone- xão de comunicação 125.
De acordo com uma modalidade da invenção, o sistema do usu- ário 105 compreende um computador de uso geral convencional que tem um ou mais microprocessadores, tais como, por exemplo, um processador ba- seado em Intel. Mais ainda, o sistema do usuário 105 inclui um sistema ope- racional apropriado, tal como um sistema operacional capaz de incluir gráfi- cos ou janelas, tais como Windows, Unix, Linux, ou similares. Como mostra- do na Figura 1, o sistema do usuário 105 pode incluir um dispositivo biomé- trico 107. O dispositivo biométrico 107 pode vantajosamente capturar a bio- metria de um usuário e transferir a biometria capturada para a máquina de confiança 110. De acordo com uma modalidade da invenção, o dispositivo biométrico pode vantajosamente compreender um dispositivo que tem atribu- tos e características similares àqueles descritos no Pedido de Patente U.S. Número 08/926.277, depositado em 05 de Setembro de 1997, intitulado "GERADOR DE IMAGEM DE OBJETO EM RELEVO", no Pedido de Patente U.S. Número 09/558.634, depositado em 26 de Abril de 2000, intitulado "DISPOSITIVO DE FORMAÇÃO DE IMAGEM PARA UM OBJETO EM RE- LEVO E SISTEMA E MÉTODO PARA UTILIZAR O DISPOSITIVO DE FOR- 5 MAÇÃO DE IMAGEM", no Pedido de Patente U.S. Número 09/435.011, de- positado em 05 de Novembro de 1999, intitulado "ADAPTADOR DE SEN- SOR DE OBJETO EM RELEVO", no Pedido de Patente U.S. 09/477.943, depositado em 05 de Janeiro de 2000, intitulado "SENSOR DE IMAGEM Ó- TICA PLANA E SISTEMA PARA GERAR UMA IMAGEM ELETRÔNICA DE 10 UM OBJETO EM RELEVO PARA LEITURA DE IMPRESSÕES DIGITAIS", todos os quais são de propriedade do cedente presente, e todos os quais estão por meio disto aqui incorporados por referência.
Além disso, o sistema do usuário 105 pode conectar na conexão de comunicação 125 através de um provedor de serviços convencional, tal 15 como, por exemplo, uma linha de discagem, uma linha de assinante digital (DSL), um modem de cabo, uma conexão de fibra, ou similares. De acordo com outra modalidade, o sistema do usuário 105 conecta na conexão de co- municação 125 através de uma conectividade de rede tal como, por exemplo, uma rede de área local ou ampla. De acordo com uma modalidade, o sistema 20 operacional inclui uma pilha de TCP/IP que manipula todo o tráfego de men- sagens de entrada e de saída passado pela conexão de comunicação 125.
Apesardo sistema do usuário 105 ser descrito com referência às modalidades acima, a invenção não pretende estar limitada a estas. Ao con- trário, uma pessoa versada na técnica reconhecerá da descrição aqui, um 25 amplo número de modalidades alternativas do sistema do usuário 105, inclu- indo praticamente qualquer dispositivo de computação capaz de enviar ou receber as informações de outro sistema de computador. Por exemplo, o sistema do usuário 105 pode incluir, mas não está limitado a, uma estação de trabalho de computador, uma televisão interativa, um quiosque interativo, 30 um dispositivo de computação móvel pessoal, tal como um assistente digital, um telefone móvel, um laptop, ou similar, um dispositivo de comunicações sem fio, um cartão inteligente, um dispositivo de computação incorporado, ou similares, os quais podem interagir com a conexão de comunicação 125. Em tais sistemas interativos, os sistemas operacionais provavelmente diferi- rão e serão adaptados para o dispositivo específico. No entanto, de acordo com uma modalidade, os sistemas operacionais vantajosamente continuam 5 a prover os protocolos de comunicações apropriados necessários para esta- belecer uma comunicação com a conexão de comunicação 125.
A Figura 1 ilustra a máquina de confiança 110. De acordo com uma modalidade, a máquina de confiança 110 compreende um ou mais ser- vidores seguros para acessar e armazenar informações reservadas, as quais 10 podem ser qualquer tipo ou forma de dados, tais como, mas não limitados a, texto, áudio, vídeo, dados de autenticação do usuário e chaves criptográficas públicas e privadas. De acordo com uma modalidade, os dados de autenti- cação incluem os dados designados a identificar singularmente um usuário do sistema criptográfico 100. Por exemplo, os dados de autenticação podem 15 incluir um número de identificação do usuário, uma ou mais biometrias, e uma série de perguntas e respostas geradas pela máquina de confiança 110 ou pelo usuário, mas respondidas inicialmente pelo usuário no registro. As questões acima podem incluir dados demográficos, tais como local de nas- cimento, endereço, aniversário, ou similares, dados pessoais, tais como o 20 nome de solteira da mãe, o sorvete favorito, ou similares, ou outros dados designados para identificar singularmente o usuário. A máquina de confiança 110 compara os dados de autenticação de um usuário associados com uma transação corrente, com os dados de autenticação providos em um momen- to anterior, tal como, por exemplo, durante o registro. A máquina de confian- 25 ça 110 pode vantajosamente requerer que o usuário produza os dados de autenticação no momento de cada transação, ou, a máquina de confiança 110 pode vantajosamente permitir que o usuário produza periodicamente os dados de autenticação, tal como no início de uma cadeia de transações ou no registro em um site da Web de vendedor específico.
De acordo com a modalidade onde o usuário produz os dados
biométricos, o usuário provê uma característica física, tal como, mas não limitado a, um escaneamento facial, um escaneamento de mão, um escane- amento de orelha, um escaneamento de íris, um escaneamento de retina, um padrão vascular, um DNA, uma impressão digital, escrita ou voz, para o dispositivo biométrico 107. O dispositivo biométrico vantajosamente produz um padrão eletrônico, ou biométrico, da característica física. O padrão ele- 5 trônico é transferido através do sistema do usuário 105 para a máquina de confiança 110 ou para registro ou propósitos de autenticação.
Uma vez que o usuário produz os dados de autenticação apro- priados e a máquina de confiança 110 determina uma coincidência positiva entre os dados de autenticação (dados de autenticação correntes) e os da- 10 dos de autenticação providos no momento do registro (dados de autentica- ção de registro), a máquina de confiança 110 provê o usuário com uma fun- cionalidade criptográfica completa. Por exemplo, o usuário apropriadamente autenticado pode vantajosamente empregar a máquina de confiança 110 para executar um hash, assinar digitalmente, criptografar e decifrar (frequen- 15 temente juntos referidos somente como criptografar), criar ou distribuir certi- ficados digitais, e similares. No entanto, as chaves criptográficas privadas utilizadas nas funções criptográficas não estarão disponíveis fora da máqui- na de confiança 110, por meio disto assegurando a integridade das chaves criptográficas.
De acordo com uma modalidade, a máquina de confiança 110
gera e armazena as chaves criptográficas. De acordo com outra modalidade, pelo menos uma chave criptográfica está associada com cada usuário. Mais ainda, quando as chaves criptográficas incluem a tecnologia de chave públi- ca, cada chave privada associada com um usuário é gerada dentro da, e 25 não-liberada da, máquina de confiança 110. Assim, desde que o usuário te- nha acesso à máquina de confiança 110, o usuário pode executar funções criptográficas utilizando a sua chave privada ou pública. Tal acesso remoto vantajosamente permite que todos os usuários permanecem completamente móveis e acessem a funcionalidade criptográfica através de praticamente 30 qualquer conexão de Internet, tal como os telefones celulares e de satélite, os quiosques, os laptops, os quartos de hotel, e similares.
De acordo com outra modalidade, a máquina de confiança 110 executa a funcionalidade criptográfica utilizando um par de chaves gerado pela máquina de confiança 110. De acordo com esta modalidade, a máquina de confiança 110 primeiro autentica o usuário, e após o usuário ter produzi- do apropriadamente os dados de autenticação que coincidem com os dados 5 de autenticações de registro, a máquina de confiança 110 utiliza o seu pró- prio par de chaves criptográficas para executar as funções criptográficas em nome do usuário autenticado.
Uma pessoa versada na técnica reconhecerá da descrição aqui que as chaves criptográficas podem vantajosamente incluir algumas ou to- 10 das as chaves simétricas, as chaves públicas, e as chaves privadas. Além disso, uma pessoa versada na técnica reconhecerá da descrição aqui que as chaves acima podem ser implementadas com um amplo número de algorit- mos disponíveis de tecnologias comerciais, tais como, por exemplo, RSA1 ELGAMAL, ou similares.
15 A Figura 1 também ilustra a autoridade de certificado 115. De
acordo com uma modalidade, a autoridade de certificado 115 pode vantajo- samente compreender uma organização ou companhia de terceiros confiada que emite os certificados digitais tais como, por exemplo, VeriSign, Baltimo- re, Entrust, ou similares. A máquina de confiança 110 pode vantajosamente
- 20 transmitir as solicitações para certificados digitais, através de um ou mais protocolos de certificado digital convencionais, tais como por exemplo PKCS10, para a autoridade de certificado 115. Em resposta, a autoridade de certificado 115 emitirá um certificado digital em um ou mais de um número de diferentes protocolos, tais como, por exemplo, PKCS7. De acordo com 25 uma modalidade da invenção, a máquina de confiança 110 solicita os certifi- cados digitais de diversas ou todas as autoridades de certificado 115 proe- minentes de modo que a máquina de confiança 110 tenha acesso a um certi- ficado digital que corresponde ao padrão de certificado de qualquer partici- pante solicitante.
30 De acordo com outra modalidade, a máquina de confiança 110
internamente executa as emissões de certificados. Nesta modalidade, a má- quina de confiança 110 pode acessar um sistema de certificado para gerar os certificados e/ou pode gerar internamente os certificados quando estes são solicitados, tal como, por exemplo, no momento de geração de chave ou no padrão de certificado solicitado no momento da solicitação. A máquina de confiança 110 será abaixo descrita em maiores detalhes.
5 A Figura 1 também ilustra o sistema de vendedor 120. De acor-
do com uma modalidade, o sistema de vendedor 120 vantajosamente com- preende um servidor da Web. Os servidores da Web típicos geralmente ser- vem o conteúdo pela Internet utilizando uma ou diversas linguagens de mar- cação de Internet ou padrões de formato de documento, tais como a Lingua- gem de Marcação de Hipertexto (HTML) ou a Linguagem de Marcação Ex- tensível (XML). O servidor da Web aceita as solicitações de navegadores tais como Netscape e Internet Explorer e então retorna os documentos ele- trônicos apropriados. Um número de tecnologias de servidor ou de lado de cliente podem ser utilizadas para aumentar a potência do servidor da Web além de sua capacidade de fornecer documentos eletrônicos-padrão. Por exemplo, estas tecnologias incluem scripts de Interface de Porta Comum (CGI), segurança de Camada de Soquetes Seguros (SSL), e Páginas de Servidor Ativo (ASPs). O sistema de vendedor 120 pode vantajosamente prover um conteúdo eletrônico em relação a transações comerciais, pesso- ais, educacionais, ou outras.
Apesar do sistema de vendedor 120 ser descrito com referência às modalidades acima, a invenção não pretende estar limitada a estas. Ao contrário, alguém versado na técnica reconhecerá da descrição aqui que o sistema de vendedor 120 pode vantajosamente compreender qualquer um 25 dos dispositivos descritos com referência ao sistema do usuário 105 ou suas combinações.
A Figura 1 também ilustra a conexão de comunicação 125 que conecta o sistema do usuário 105, a máquina de confiança 110, a autoridade de certificado 115, e o sistema de vendedor 120. De acordo com uma moda- lidade, a conexão de comunicação 125 de preferência compreende a Inter- net. A internet, como utilizada através de toda esta descrição é uma rede global de computadores. A estrutura da Internet, a qual é bem-conhecida daqueles versados na técnica, inclui uma rede de backbone com redes rami- ficando do backbone. Estas ramificações, por sua vez, têm redes ramifican- do destas, e assim por diante. Os roteadores movem os pacotes de informa- ções entre os níveis de rede, e então de rede para rede, até que o pacote 5 chegue na vizinhança de seu destino. Do destino, o hospedeiro da rede de destino direciona o pacote de informações para o terminal apropriado, ou nodo. Em uma modalidade vantajosa, os hubs de roteamento de Internet compreendem servidores de sistema de nome de domínio (DNS) que utili- zam um Protocolo de Controle de Transmissão / Protocolo de Internet 10 (TCP/IP) como é bem-conhecido na técnica. Os hubs de roteamento conec- tam a um ou mais outros hubs de roteamento através de conexões de co- municação de alta velocidade.
Uma parte popular da Internet é a World Wide Web. A World Wi- de Web contém diferentes computadores, os quais armazenam os documen- 15 tos capazes de exibir informações gráficas e textuais. Os computadores que proveem as informações para a World Wide Web são tipicamente denomi- nados "sites da Web". Um site da Web é definido por um endereço de Inter- net que tem uma página eletrônica associada. A página eletrônica pode ser identificada por um Localizador de Recurso Uniforme (URL). Geralmente, 20 uma página eletrônica é um documento que organiza a apresentação de tex- to, as imagens gráficas, o áudio, o vídeo, e assim por diante.
Apesar da conexão de comunicação 125 ser descrita em termos de sua modalidade preferida, alguém versado na técnica reconhecerá da descrição aqui que a conexão de comunicação 125 pode incluir uma ampla 25 gama de conexões de comunicação interativas. Por exemplo, a conexão de comunicação 125 pode incluir as redes de televisão interativa, as redes tele- fônicas, os sistemas de transmissão de dados sem fio, os sistemas de cabo de duas vias, as redes de computador personalizadas privadas ou públicas, as redes de quiosques interativos, as redes de caixas automáticos, as cone- 30 xões diretas, as redes de satélite ou celular, e similares.
A Figura 2 ilustra um diagrama de blocos da máquina de confi- ança 110 da Figura 1, de acordo com aspectos de uma modalidade da in- venção. Como mostrado na Figura 2, a máquina de confiança 110 inclui uma máquina de transação 205, um depositório 210, uma máquina de autentica- ção 215, e uma máquina criptográfica 220. De acordo com uma modalidade da invenção, a máquina de confiança 110 também inclui um armazenamento 5 de massa 225. Como adicionalmente mostrado na Figura 2, a máquina de transação 205 comunica com o depositório 210, a máquina de autenticação 215, e a máquina criptográfica 220, juntamente com o armazenamento de massa 225. Além disso, o depositório 210 comunica com a máquina de au- tenticação 215, a máquina criptográfica 220, e o armazenamento de massa 10 225. Mais ainda, a máquina de autenticação 215 comunica com a máquina criptográfica 220. De acordo com uma modalidade da invenção, algumas ou todas as comunicações acima podem vantajosamente compreender a transmissão de documentos de XML para os endereços de IP que corres- pondem ao dispositivo de recepção. Como mencionado acima, os documen- 15 tos de XML vantajosamente permitem que os projetistas criem os seus pró- prios identificadores de documento personalizados, permitindo a definição, a transmissão, e validação, e a interpretação dos dados entre os aplicativos e entre as organizações. Mais ainda, algumas ou todas as comunicações aci- ma podem incluir um SSL convencional.
De acordo com uma modalidade, a máquina de transação 205
compreende um dispositivo de roteamento de dados, tal como um servidor da Web convencional disponível da Netscape, Microsoft, Apache, ou simila- res. Por exemplo, o servidor da Web pode vantajosamente receber os dados que entram da conexão de comunicação 125. De acordo com uma modali- 25 dade da invenção, os dados que entram são endereçados para um sistema de segurança de interface inicial para a máquina de confiança 110. Por e- xemplo, o sistema de segurança de interface inicial pode vantajosamente incluir um firewall, um sistema de detecção de intrusão que procura por per- fis de ataque conhecidos, e/ou um escaneador de vírus. Após ultrapassarem 30 o sistema de segurança de interface inicial, os dados são recebidos pela máquina de transação 205 e roteados para um do depositório 210, da má- quina de autenticação 215, da máquina criptográfica 220, e do armazena- mento de massa 225. Além disso, a máquina de transação 205 monitora os dados que entram da máquina de autenticação 215 e da máquina criptográ- fica 220, e roteia os dados para os sistemas específicos através da conexão de comunicação 125. Por exemplo, a máquina de transação 205 pode vanta- 5 josamente rotear os dados para o sistema do usuário 105, a autoridade de certificado 115, ou o sistema de vendedor 120.
De acordo com uma modalidade, os dados são roteados utili- zando as técnicas de roteamento de HTTP convencionais, tais como, por exemplo, empregando os URLs ou os Indicadores de Recurso Uniformes 10 (URIs). Os URIs são similares aos URLs, no entanto, os URIs tipicamente indicam a fonte de arquivos ou ações, tais como, por exemplo, executáveis, scripts, e similares. Portanto, de acordo com uma modalidade, o sistema do usuário 105, a autoridade de certificado 115, o sistema de vendedor 120, e os componentes da máquina de confiança 110, vantajosamente incluem da- 15 dos suficientes dentro dos URLs ou URIs de comunicação para a máquina de transação 205 rotear apropriadamente os dados através de todo o siste- ma criptográfico.
Apesar do roteamento de dados ser descrito com referência à sua modalidade preferida, alguém versado na técnica reconhecera um am- 20 pio número de possíveis soluções ou estratégias de roteamento de dados. Por exemplo, o XML ou outros pacotes de dados podem vantajosamente ser desempacotados e reconhecidos por seu formato, conteúdo, ou similares, de modo que a máquina de transação 205 possa rotear apropriadamente os dados através de toda a máquina de confiança 110. Mais ainda, alguém ver- 25 sado na técnica reconhecerá que o roteamento de dados pode vantajosa- mente ser adaptado aos protocolos de transferência de dados em conformi- dade com os sistemas de rede específicos, tais como, por exemplo, quando a conexão de comunicação 125 compreende uma rede local.
De acordo com ainda outra modalidade da invenção, a máquina de transação 205 inclui as tecnologias de criptografia de SSL convencionais, tais como os sistemas acima e pode autenticar a si próprio, e vice versa, com a máquina de transação 205, durante comunicações específicas. Como será utilizado durante toda esta descrição, o termo "1/2 SSL" refere-se a comunicações onde um servidor mas não necessariamente o cliente, é au- tenticado por SSL, e o termo "SSL TOTAL" refere-se a comunicações onde o cliente e o servidor são autenticados por SSL. Quando a presente descrição utiliza o termo "SSL", a comunicação pode compreender 1/2 ou SSL TOTAL.
Conforme a máquina de transação 205 roteia os dados para os vários componentes do sistema criptográfico 100, a máquina de transação 205 pode vantajosamente criar um rastro de auditoria. De acordo com uma modalidade, o rastro de auditoria inclui um registro de pelo menos o tipo e o 10 formato de dados roteados pela máquina de transação 205 através de todo o sistema criptográfico 100. Tais dados de auditoria podem vantajosamente ser armazenados no armazenamento de massa 225.
A Figura 2 também ilustra o depositório 210. De acordo com uma modalidade, o depositório 210 compreende uma ou mais instalações de armazenamento de dados, tais como, por exemplo, um servidor de diretório, um servidor de banco de dados, ou similares. Como mostrado na Figura 2, o depositório 210 armazena as chaves criptográficas e os dados de autentica- ção de registro. As chaves criptográficas podem vantajosamente correspon- der à máquina de confiança 110 ou a usuários do sistema criptográfico 100, tal como o usuário ou o vendedor. Os dados de autenticação de registro po- dem vantajosamente incluir os dados designados para identificar singular- mente um usuário, tais como, a ID de usuário, as senhas, as respostas a perguntas, dados biométricos, ou similares. Estes dados de autenticação de registro podem vantajosamente ser adquiridos no registro de um usuário ou outro momento posterior alternativo. Por exemplo, a máquina de confiança 110 pode incluir dados de autenticação periódicos ou outros dados de reno- vação ou re-emissão de registro.
De acordo com uma modalidade, a comunicação da máquina de transação 205 para a e da máquina de autenticação 215 e a máquina cripto- gráfica 220 compreende uma comunicação segura, tal como, por exemplo, uma tecnologia de SSL convencional. Além disso, como acima mencionado, os dados das comunicações para o e do depositório 210 podem ser transfe- ridos utilizando URLs, URIs, HTTP ou documentos de XML, com qualquer um dos acima vantajosamente tendo solicitações de dados e formatos incor- porados nos mesmos.
Como acima mencionado, o depositório 210 pode vantajosamen- 5 te compreender uma pluralidade de instalações de armazenamento de da- dos seguras. Em tal modalidade, as instalações de armazenamento de da- dos seguras podem ser configuradas de modo que um compromisso da se- gurança em uma instalação de armazenamento de dados individuais não comprometerá as chaves criptográficas ou os dados de autenticação arma- 10 zenados na mesma. Por exemplo, de acordo com esta modalidade, as cha- ves criptográficas e os dados de autenticação são matematicamente opera- dos de modo a substancialmente e estatisticamente randomizar os dados armazenados em cada instalação de armazenamento de dados. De acordo com uma modalidade, a randomização dos dados de uma instalação de ar- 15 mazenamento de dados individuais torna os dados indecifráveis. Assim, o compromisso de uma instalação de armazenamento de dados individuais produz somente um número indecifrável randomizado e não compromete a segurança de nenhuma chave criptográfica ou os dados de autenticação como um todo.
A Figura 2 também ilustra a máquina de confiança 110 que inclui
a máquina de autenticação 215. De acordo com uma modalidade, a máquina de autenticação 215 compreende um comparador de dados configurado pa- ra comparar os dados da máquina de transação 205 com os dados do depo- sitório 210. Por exemplo, durante a autenticação, um usuário supre dados de 25 autenticação correntes para a máquina de confiança 110 de modo que a máquina de transação 205 recebe os dados de autenticação correntes. Co- mo acima mencionado, a máquina de transação 205 reconhece as solicita- ções de dados, de preferência no URL ou URI, e roteia os dados de autenti- cação para a máquina de autenticação 215. Mais ainda, quando solicitado, o 30 depositório 210 transfere os dados de autenticação de registro que corres- pondem ao usuário para a máquina de autenticação 215. Assim, a máquina de autenticação 215 tem tanto os dados de autenticação correntes quanto os dados de autenticação de registro para comparação.
De acordo com uma modalidade, as comunicações para a má- quina de autenticação compreendem comunicações seguras, tal como, por exemplo, uma tecnologia de SSL. Além disso, a segurança pode ser provida 5 dentro dos componentes da máquina de confiança 110, tal como, por exem- plo, uma supercriptografia utilizando as tecnologias de chave pública. Por exemplo, de acordo com uma modalidade, o usuário criptografa os dados de autenticação correntes com a chave pública da máquina de autenticação 215. Além disso, o depositório 210 também criptografa os dados de autenti- 10 cação de registro com a chave pública da máquina de autenticação 215. Deste modo, somente a chave privada da máquina de autenticação pode ser utilizada para decifrar as transmissões.
Como mostrado na Figura 2, a máquina de confiança 110 tam- bém inclui a máquina criptográfica 220. De acordo com uma modalidade, a máquina criptográfica compreende um módulo de manipulação criptográfico, configurado para vantajosamente prover funções criptográficas convencio- nais, tais como, por exemplo uma funcionalidade de infraestrutura de chave pública (PKI). Por exemplo, a máquina criptográfica 220 pode vantajosamen- te emitir as chaves públicas e privadas para os usuários do sistema cripto- gráfico 100. Deste modo, as chaves criptográficas são geradas na máquina criptográfica 220 e transferida para o depositório 210 de modo que pelo me- nos as chaves criptográficas privadas não sejam disponíveis fora da máqui- na de confiança 110. De acordo com outra modalidade, a máquina criptográ- fica 220 randomiza e divide pelo menos os dados de chave criptográfica pri- vada, por meio disto armazenando somente os dados divididos randomiza- dos. Similar à divisão dos dados de autenticação de registro, o processo de divisão assegura que as chaves armazenadas não sejam disponíveis fora da máquina criptográfica 220. De acordo com outra modalidade, as funções da máquina criptográfica podem ser combinadas com a e executadas pela má- quina de autenticação 215.
De acordo com uma modalidade, as comunicações para a e da máquina criptográfica incluem comunicações seguras, tal como a tecnologia de SSL. Além disso, os documentos de XML podem vantajosamente ser empregados para transferir os dados e/ou fazer solicitações de funções crip- tográficas.
A Figura 2 também ilustra a máquina de confiança 110 que tem o armazenamento de massa 225. Como acima mencionado, a máquina de transação 205 mantém os dados que correspondem a um rastro de auditoria e armazena tais dados no armazenamento de massa 225. Similarmente, de acordo com uma modalidade da invenção, o depositório 210 guarda dos da- dos que correspondem a um rastro de auditoria e armazena tais dados no dispositivo de armazenamento de massa 225. Os dados de rastro de audito- ria de depositório são similares àqueles da máquina de transação 205 pelo fato de que os dados de rastro de auditoria compreendem um registro das solicitações recebidas pelo depositório 210 e a sua resposta. Além disso, o armazenamento de massa 225 pode ser utilizado para armazenar os certifi- cados digitais que têm a chave pública de um usuário contido no mesmo.
Apesar da máquina de confiança 110 ser descrita com referência às suas modalidades preferidas e alternativas, a invenção não pretende ser limitada por isto. Ao contrário, alguém versado na técnica reconhecerá na descrição aqui, um amplo número de alternativas para a máquina de confi- 20 ança 110. Por exemplo, a máquina de confiança 110, pode vantajosamente executar somente a autenticação, ou alternativamente, somente algumas ou todas as funções criptográficas, tais como a criptografia e a decifração de dados. De acordo com tais modalidades, uma da máquina de autenticação 215 e da máquina criptográfica 220 pode vantajosamente ser removida, por 25 meio disto criando um projeto mais direto para a máquina de confiança 110. Além disso, a máquina criptográfica 220 pode também comunicar com uma autoridade de certificado de modo que a autoridade de certificado seja incor- porada na máquina de confiança 110. De acordo com ainda outra modalida- de, a máquina de confiança 110 pode vantajosamente executar a autentica- 30 ção e uma ou mais funções criptográficas, tais como, por exemplo, a assina- tura digital.
A Figura 3 ilustra um diagrama de blocos da máquina de transa- ção 205 da Figura 2, de acordo com os aspectos de uma modalidade da in- venção. De acordo com esta modalidade, a máquina de transação 205 com- preende um sistema operacional 305 que tem uma cadeia de manipulação e uma cadeia de audição. O sistema operacional 305 pode vantajosamente 5 ser similar àqueles encontrados nos servidores de alto volume convencio- nais, tais como, por exemplo, os servidores da Web disponíveis da Apache. A cadeia de audição monitora a comunicação que entra de uma da conexão de comunicação 125, da máquina autenticação, 215 e da máquina criptográ- fica 220 quanto ao fluxo de dados que entram. A cadeia de manipulação re- 10 conhece as estruturas de dados específicas do fluxo de dados que entram, tais como, por exemplo, as estruturas de dados acima, por meio disto rate- ando os dados que entram para uma da conexão de comunicação 125, do depositório 210, da máquina de autenticação 215, da máquina criptográfica 220, ou do armazenamento de massa 225. Como mostrado na Figura 3, os 15 dados que entram e saem podem vantajosamente ser protegidos através, por exemplo, da tecnologia de SSL.
A Figura 4 ilustra um diagrama de blocos do depositório 210 da Figura 2 de acordo com os aspectos de uma modalidade da invenção. De acordo com esta modalidade, o depositório 210 compreende um ou mais 20 servidores de protocolo de acesso de diretório leve (LDAP). Os servidores de diretório LDAP são disponíveis de uma ampla variedade de fabricantes tais como Netscape, ISO, e outros. A Figura 4 também mostra que o servidor de diretório de preferência armazena os dados 405 que correspondem às chaves criptográficas e dados 410 que correspondem aos dados de autenti- 25 cação de registro. De acordo com a modalidade, o depositório 210 compre- ende uma única estrutura de memória lógica que indexa os dados de auten- ticação e os dados de chave criptográfica a uma única ID de usuário. A única estrutura de memória lógica de preferência inclui mecanismos para assegu- rar um alto grau de confiança, ou de segurança, nos dados armazenados na 30 mesma. Por exemplo, a localização física do depositório 210 pode vantajo- samente incluir um amplo número de medidas de segurança convencionais, tal como um acesso a empregados limitado, sistemas de vigilância moder- nos, e similares. Além das, ou no lugar das, seguranças físicas, o sistema de computador ou servidor pode vantajosamente incluir soluções de software para proteger os dados armazenados. Por exemplo, o depositório 210 pode vantajosamente criar e armazenar os dados 415 que correspondem a um 5 rastro de auditoria de ações tomadas. Além disso, as comunicações que en- tram e saem podem vantajosamente ser criptografadas com criptografia de chave pública acoplada com as tecnologias de SSL convencionais.
De acordo com outra modalidade, o depositório 210 pode com- preender instalações de armazenamento de dados fisicamente separadas, como adicionalmente descrito com referência à Figura 7.
A Figura 5 ilustra um diagrama de blocos da máquina de autenti- cação 215 da Figura 2 de acordo com os aspectos de uma modalidade da invenção. Similar à máquina de transação 205 da Figura 3, a máquina auten- ticação 215 compreende um sistema operacional 505 que tem pelo menos 15 uma cadeia de audição e uma de manipulação de uma versão modificada de um servidor da Web convencional, tal como, por exemplo, os servidores da Web disponíveis da Apache. Como mostrado na Figura 5, a máquina de au- tenticação 215 inclui um acesso a pelo menos uma chave privada 510. A chave privada 510 pode vantajosamente ser utilizada, por exemplo, para 20 decifrar os dados da máquina de transação 205 ou do depositório 210, os quais foram criptografados com uma chave pública correspondente da má- quina de autenticação 215.
A Figura 5 também ilustra a máquina de autenticação 215 que compreende um comparador 515, um módulo de divisão de dados 520, e um 25 módulo de montagem de dados 525. De acordo com a modalidade preferida da invenção, o comparador 515 inclui uma tecnologia capaz de comparar padrões potencialmente complexos relativos aos dados de autenticação bi- ométricos acima. A tecnologia pode incluir soluções de hardware, software, ou combinadas para as comparações de padrões, tais como, por exemplo, 30 aqueles que representam os padrões de impressão digital ou os padrões de voz. Além disso, de acordo com uma modalidade, o comparador 515 da má- quina de autenticação 215 pode vantajosamente comparar os hashes de documentos convencionais de modo a passar um resultado de comparação. De acordo com uma modalidade da invenção, o comparador 515 inclui a a- plicação de heurística 530 à comparação. A heurística 530 pode vantajosa- mente resolver as circunstâncias que envolvem uma tentativa de autentica- 5 ção, tais como, por exemplo, a hora do dia, o endereço de IP ou a máscara de sub-rede, perfil de aquisição, endereço de e-mail, o número de série ou ID de processador, ou similares.
Mais ainda, a natureza de comparações de dados biométricos pode resultar em graus variáveis de confiança sendo produzidos da coinci- 10 dência dos dados de autenticação biométricos correntes com os dados de registro. Por exemplo, ao contrário de uma senha tradicional a qual pode somente retornar uma coincidência positiva ou negativa, uma impressão di- gital pode ser determinada ser uma coincidência parcial, por exemplo uma coincidência de 90%, uma coincidência de 75%, ou uma coincidência de 15 10%, ao invés de ser simplesmente correto ou incorreto. Outros identificado- res biométricos tais como a análise de impressão de voz ou reconhecimento de face podem compartilhar esta propriedade de autenticação probabilística, ao invés de uma autenticação absoluta.
Quando trabalhando com tal autenticação probabilística ou em outros casos onde uma autenticação é considerada menos do que absolu- tamente confiável, é desejável aplicar a heurística 530 para determinar se o nível de confiança na autenticação provida é suficientemente alto para au- tenticar a transação a qual está sendo feita.
Será algumas vezes o caso que a transação em questão é uma 25 transação de valor relativamente baixo onde é aceitável ser autenticada a um nível de confiança mais baixo. Isto poderia incluir uma transação a qual tem um baixo valor em dólares associado com a mesma (por exemplo, uma compra de $10) ou uma transação com baixo risco (por exemplo, a admis- são a um site da Web de membros somente).
Ao contrário, para autenticar outras transações, pode ser dese-
jável requerer um alto grau de confiança na autenticação antes de permitir que a transação prossiga. Tais transações podem incluir as transações de grande valor em dólares (por exemplo, assinar um contrato de suprimento de muitos milhões de dólares) ou uma transação com um alto risco de uma au- tenticação imprópria ocorrer (por exemplo, registrar remotamente em um computador do governo).
5 A utilização de heurística 530 em combinação com os níveis de
confiança e valores de transação pode ser utilizada como será abaixo descri- to para permitir que o comparador provenha um sistema de autenticação dinâmico sensível ao conteúdo.
De acordo com outra modalidade da invenção, o comparador 10 515 pode vantajosamente rastrear as tentativas de autenticação para uma transação específica. Por exemplo, quando uma transação falha, a máquina de confiança 110 pode solicitar ao usuário reinserir os seus dados de auten- ticação correntes. O comparador 515 da máquina de autenticação 215 pode vantajosamente empregar um limitador de tentativas 535 para limitar o nú- 15 mero de tentativas de autenticação, por meio disto proibindo as tentativas de força bruta para personificar os dados de autenticação de um usuário. De acordo com uma modalidade, o limitador de tentativas 535 compreende um módulo de software que monitora as transações para repetir as tentativas de autenticação e, por exemplo, limitar as tentativas de autenticação para uma 20 dada transação em três. Assim, o limitador de tentativas 535 limitará uma tentativa automatizada de personificar os dados de autenticação de um indi- víduo a, por exemplo, três "palpites". Quando de três falhas, o limitador de tentativas 535 pode vantajosamente negar tentativas de autenticação adicio- nais. tal negação pode vantajosamente ser implementada através, por e- 25 xemplo, do comparador 515 retornando um resultado negativo independen- temente dos dados de autenticação correntes serem transmitidos. Por outro lado, a máquina de transação 205 pode vantajosamente bloquear quaisquer tentativas de autenticação adicionais pertencentes a uma transmissão na qual três tentativas anteriormente falharam.
A máquina de autenticação 215 também inclui o módulo de divi-
são de dados 520 e o módulo de montagem de dados 525. O módulo de di- visão de dados 520 vantajosamente compreende um módulo de software, de hardware ou de combinação que tem a capacidade de operar matematica- mente sobre vários dados de modo a substancialmente randomizar e dividir os dados em porções. De acordo com uma modalidade, os dados originais não são recriáveis de uma porção individual. O módulo de montagem de da- 5 dos 525 vantajosamente compreende um módulo de software, de hardware ou de combinação configurado para operar matematicamente sobre as por- ções substancialmente randomizadas acima, de modo que a sua combina- ção provenha os dados decifrados originais. De acordo com uma modalida- de, a máquina de autenticação 215 emprega o módulo de divisão de dados 10 520 para randomizar e dividir os dados de autenticação de registro em por- ções, e emprega o módulo de montagem de dados 525 para remontar as porções em dados de autenticação de registro utilizáveis.
A Figura 6 ilustra um diagrama de blocos da máquina criptográfi- ca 220 da máquina de confiança 110 da Figura 2 de acordo com os aspectos 15 de ma modalidade da invenção. Similar à máquina de transação 205 da Fi- gura 3, a máquina criptográfica 220 compreende um sistema operacional 605 que tem pelo menos uma cadeia de audição e uma de manipulação de uma versão modificada de um servidor da Web convencional, tal como, por exemplo, os servidores da Web disponíveis da Apache. Como mostrado na 20 Figura 6, a máquina criptográfica 220 compreende um módulo de divisão de dados 610 e um módulo de montagem de dados 620 que funcionam similar àqueles da Figura 5. No entanto, de acordo com uma modalidade, o módulo de divisão de dados 610 e o módulo de montagem de dados 620 processam os dados de chave criptográfica, em oposição aos dados de autenticação de 25 registro acima. Apesar de que, alguém versado na técnica reconhecerá da descrição aqui que o módulo de divisão de dados 610 e o módulo de monta- gem de dados 620 podem ser combinados com aqueles da máquina de au- tenticação 215.
A máquina criptográfica 220 também compreende um módulo de manipulação criptográfica 625 configurado para executar uma, algumas ou todas de um amplo número de funções criptográficas. De acordo com uma modalidade, o módulo de manipulação criptográfica 625 pode compreender módulos ou programas de software, hardware, ou ambos. De acordo com outra modalidade, o módulo de manipulação criptográfica 625 pode executar comparações de dados, análise de dados, divisão de dados, separação de dados, hash de dados, criptografia ou decifração de dados, verificação ou 5 criação de assinatura digital, geração, armazenamento, ou solicitações de certificado digital, geração de chave criptográfica, ou similares. Mais ainda, alguém versado na técnica reconhecerá da descrição aqui que o módulo de manipulação criptográfica 625 pode vantajosamente compreender uma in- fraestrutura de chave pública, tal como Pretty Good Privacy (PGP), um sis- 10 tema de chave pública baseado em RSA, ou um amplo número de sistemas de gerenciamento de chave alternativos. Além disso, o módulo de manipula- ção criptográfica 625 pode executar a criptografia de chave pública, a cripto- grafia de chave simétrica, ou ambas. Além disso, o módulo de manipulação criptográfica 625 pode incluir um ou mais programas ou módulos de compu- 15 tador, hardware, ou ambos, para implementar funções de interoperabilidade contínuas transparentes.
Alguém versado na técnica também reconhecerá da descrição aqui a funcionalidade criptográfica pode incluir um amplo número ou varie- dade de funções geralmente relativas a sistemas de gerenciamento de cha- ve criptográfica.
Em esquema de compartilhamento de segredo computacional robusto (RCSS) está ilustrado na Figura 7. Um participante referido como o negociante 700 tem um segredo 701 que o negociante deseja distribuir. Para este fim, o negociante 700 pode aplicar um mecanismo de compartilhamento 25 702 de um esquema de RCSS. O mecanismo de compartilhamento 702 po- de resultar em algum número, n, de compartilhamentos sendo gerados, co- mo indicado pelos compartilhamentos 704, 705, e 706. Uma coleção 703 de todos compartilhamentos pode ser um vetor S probabilisticamente derivado do segredo 701. A coleção 703 dos compartilhamentos podem então ser 30 enviada através de uma rede ou distribuída de uma banda, de modo que cada compartilhamento seja armazenado em seu próprio repositório de da- dos (ou em diferentes localizações físicas ou geográficas em um ou mais repositórios de dados). O armazenamento dos compartilhamentos no reposi- tório de dados lógicos 720 pode ter o benefício de uma segurança aumenta- da, pelo fato de que pode ser mais difícil para um adversário obter acesso a todos os compartilhamentos, os quais podem estar armazenados nos servi- dores de dados 721, 722, e 723, do que um subconjunto apropriado destes compartilhamentos. Um ou mais dos servidores 721, 722, 723 pode estar localizado em locais fisicamente diferentes, operados sob um diferente con- trole administrativo, ou protegidos por controles de acesso de hardware e de software heterogêneos. O repositório de dados lógicos 720 pode também incluir um sistema de arquivos distribuído ou em rede.
Quando um participante deseja recuperar o segredo que foi dis- tribuído no repositório de dados lógicos 720, a entidade 740 pode tentar co- letar os compartilhamentos. O primeiro compartilhamento coletado S* [1] 744 pode ser o mesmo que o compartilhamento 704, mas este também poderia deferir a uma modificação não intencional em transmissão ou armazenamen- to (por exemplo, corrupção de dados), ou uma modificação intencional devi- do às atividades de um agente adversário. Similarmente, o segundo compar- tilhamento coletado S* [2] 745 pode ser o mesmo que o compartilhamento 705, e o último compartilhamento coletado S* [n] 746 pode ser o mesmo que o compartilhamento 706, mas estes compartilhamentos poderiam também diferir por razões similares. Além da possibilidade de ser um compartilha- mento "errado", um ou mais compartilhamentos na coleção 743 poderia também ser o valor "faltante" distinguido, representado pelo símbolo "0". Es- te símbolo pode indicar que o sistema (por exemplo, a entidade 740, é inca- paz de encontrar ou coletar este compartilhamento específico. O vetor de compartilhamentos referidos S* pode então ser provido para o algoritmo de recuperação 742 do esquema de RCSS, o qual pode retornar ou o segredo recuperado S* 741 ou o valor designado como inválido 747. O segredo com- partilhado 701 deve ser igual ao segredo recuperado 741 a menos que o grau de atividade adversária na corrupção dos compartilhamentos exceder aquele o qual o sistema foi projetado para suportar.
O objetivo do RCSS é útil através de dois domínios principais: 1 proteger os dados em repouso e proteger os dados em movimento. No cená- rio inicial, um servidor de arquivos, por exemplo, mantém os seus dados em uma variedade de servidores remotos. Mesmo se algum subconjunto destes servidores for corrompido (por exemplo, por administradores desonestos) ou 5 indisponível (por exemplo, devido a um desligamento de rede), os dados podem ainda ser disponíveis e privados. NO cenário de dados em movimen- to, o remetente pode ser conectado por uma multiplicidade de percursos, somente alguns dos quais podem ser observados pelo adversário. Enviando os compartilhamentos por estes diferentes percursos, o remetente pode 10 transmitir com segurança o segredo S apesar da possibilidade de alguns percursos serem temporariamente indisponíveis ou adversariamente contro- lados. Por exemplo, em algumas modalidades, cada compartilhamento pode ser transmitido por um diferente canal de comunicação lógico. Os sistemas e métodos para proteger os dados, e especificamente os sistemas e métodos 15 para proteger os dados em movimento, estão descritos em mais detalhes no Pedido de Patente U.S. Número 10/458.928, depositado em 11 de Junho de 2003, no Pedido de Patente U.S. Número 11/258.839, depositado em 25 de Outubro de 2005, e no Pedido de Patente U.S. Número 11/602.667, deposi- tado em 20 de Novembro de 2006. As descrições de cada um dos pedidos 20 de patente anteriormente depositados acima mencionados estão por meio disto aqui incorporadas por referência em suas totalidades.
Apesar de pelo menos um esquema de RCSS com tamanhos de compartilhamento curtos ter sido proposto por Krawczyk, o estudo científico deste esquema revela que este não é um esquema de RCSS válido sob fra- 25 cas suposições sobre o esquema de criptografia, e não é conhecido ser um esquema válido para todas as estruturas de acesso (por exemplo, estruturas de acesso outras que os esquemas de limite). Por pelo menos estas razões, as Figuras 8-11 descrevem outras propostas para o compartilhamento de segredos. Estas outras propostas são algumas vezes aqui referidas como 30 ESX ou HK2.
O mecanismo da proposta de ESX ou HK2 pode incluir um es- quema de compartilhamento de segredo computacional robusto que pode ser construído das seguintes cinco primitivas: (1) um gerador de números randô- micos ou pseudorrandômicos; (2) um esquema de criptografia; (3) um esque- ma de compartilhamento de segredo perfeito (PSS); (4) um algoritmo de dis- persão de informações (IDA); e (5) um esquema de comprometimento proba- 5 bilístico. Estas cinco primitivas estão abaixo descritas em mais detalhes.
(1) Um gerador de número randômico ou pseudorrandômico, Rand. Tal gerador de números pode tomar um número k como entrada e retornar k bits randômicos ou pseudorrandômicos. Nas Figuras 8-11, a en- trada k é omitida para facilidade de ilustração.
(2) Um esquema de criptografia, o qual pode incluir um par algo-
ritmos, um denominado Encrypt e o outro denominado Decrypt. O algoritmo de criptografia Encrypt pode tomar uma chave K de um dado comprimento k e uma mensagem de entrada M que é referida como texto puro. O algoritmo Encrypt pode retornar uma cadeia C que é referida como o texto cifrado. O 15 algoritmo Encrypt pode opcionalmente empregar bits randômicos, mas tais bits randômicos não estão expressamente mostrados nos desenhos. O algo- ritmo de decifração Decrypt pode tomar uma chave K de um dado compri- mento k e uma mensagem de entrada C que é referida como texto cifrado. O algoritmo Decrypt pode retornar uma cadeia M que é referida como o texto 20 puro. Em alguns casos, o algoritmo de decifração pode retornar um valor de falha designado, o qual pode indicar que o texto cifrado C não corresponde à criptografia de qualquer texto puro possível.
(3) Um esquema de compartilhamento de segredo perfeito (PSS), o qual pode incluir um par de algoritmos Sharepss e Recoverpss. O 25 primeiro destes algoritmos, conhecido como o algoritmo de compartilhamen- to do PSS, pode ser um mapa probabilístico que toma como entrada uma cadeia K, denominada o segredo, e retorna uma seqüência de n cadeias, K[1], ..., K[n], referidas como compartilhamentos. Cada K[i] pode incluir um compartilhamento ou os n compartilhamentos que foram negociados, ou dis- 30 tribuídos, pelo negociante (a entidade que executa o processo de comparti- lhamento). O número n pode ser um parâmetro programável pelo usuário do esquema de compartilhamento de segredo, e este pode incluir qualquer nú- mero positivo adequado. Em algumas modalidades, o algoritmo de comparti- lhamento é probabilístico pelo fato de que este emprega bits randômicos ou pseudorrandômicos. Tal dependência pode ser realizada provendo os bits randômicos ou pseudorrandômicos de algoritmo de compartilhamento, como 5 providos pelo algoritmo Rand. O segundo algoritmo, conhecido como o algo- ritmo de recuperação do PSS, pode tomar como entrada um vetor de n ca- deias referidas como os compartilhamentos pretendidos. Cada compartilha- mento pretendido é ou uma cadeia ou um símbolo distinguido "0" o qual é lido como faltante. Este símbolo pode ser utilizado para indicar que algum 10 compartilhamento específico está indisponível. O algoritmo de recuperação para o esquema de compartilhamento de segredo perfeito pode retornar uma cadeia S, ou o segredo recuperado. Duas propriedades do esquema de PSS podem ser assumidas. A primeira propriedade, a propriedade de privacida- de, assegura que nenhum conjunto de usuários não-autorizados obtenha 15 nenhuma informação útil sobre o segredo que foi compartilhado de seus compartilhamentos. A segunda propriedade, a propriedade de recuperabili- dade, assegura que um conjunto de participantes autorizados pode sempre recuperar o segredo, assumindo que os participantes autorizados contribu- am compartilhamentos corretos para o algoritmo de recuperação e que ne- 20 nhum participante adicional contribua ou um compartilhamento correto ou o valor faltante distinguido ("0"). Este esquema de PSS pode incluir o esquema de Shamir comumente referido como "Compartilhamento de Segredo de Shamir" ou o esquema de compartilhamento de segredo de Blakley.
(4) Um algoritmo de dispersão de informações (IDA), o qual po- 25 de incluir um par de algoritmos ShareIDA e RecoverIDA. O primeiro destes al- goritmos, conhecido como o algoritmo de compartilhamento do IDA, pode incluir um mecanismo que toma como entrada uma cadeia C, a mensagem a ser dispersa, e retorna uma seqüência de n cadeias, C[1], ..., C[n], as quais podem ser referidas como os blocos dos dados que resultaram da dispersão. 30 O valor de n pode ser um parâmetro programável pelo usuário ou o IDA, e pode ser qualquer número positivo adequado. O algoritmo de compartilha- mento do IDA pode ser probabilístico ou determinístico. Nas Figuras 8-11, a possibilidade de utilizar bits randômicos no IDA não está explicitamente mos- trada; no entanto, deve ser compreendido que os bits randômicos podem ser utilizados no IDA em outras modalidades.
O segundo algoritmo, conhecido como o algoritmo de recupera- ção do IDA, pode tomar como entrada um vetor de n cadeias, os blocos su- pridos. Cada bloco suprido pode ser uma cadeia ou o símbolo distinguido "0", o qual é lido como faltante e é utilizado para indicar que algum bloco de dados específico está indisponível. O algoritmo de recuperação para o IDA pode retornar uma cadeia S, o segredo recuperado. O IDA pode ser assumi- do ter uma propriedade de recuperabilidade; assim, um conjunto de partici- pantes autorizados pode sempre recuperar os dados dos blocos supridos, assumindo que os participantes autorizados contribuam blocos corretos para o algoritmo de recuperação do IDA e que nenhum participante adicional que participa na reconstrução contribua ou um bloco correto ou então o valor fal- tante distinguido ("0"). Ao contrário do caso para um esquema de PSS, pode não existir uma propriedade de privacidade associada com o IDA e, de fato, um IDA simples e prático é replicar a entrada C por n vezes, e fazer com que o algoritmo de recuperação utilize o valor que ocorre mais frequentemente como os dados recuperados. IDAs mais eficientes são conhecidos (por e- xemplo, o IDA de Rabin).
(5) Um esquema de comprometimento probabilístico, o qual po- de incluir um par de algoritmos, Ct e Vf, denominados o algoritmo de valida- ção e o algoritmo de verificação. O algoritmo de validação Ct pode ser um algoritmo probabilístico que toma uma cadeia N para validar e retorna um 25 valor de validação, H (a cadeia que um participante pode utilizar para com- prometer a M) e também um valor de não-validação, R (a cadeia que um participante pode utilizar para descomprometer à validação H para M). O algoritmo de validação pode ser probabilístico e, como tal, pode tomar um argumento final, R*, o qual é referido como as moedas do algoritmo. Estas 30 moedas podem ser anteriormente geradas por uma chamada para um gera- dor de números randômicos ou pseudorrandômicos, Rand. A notação "Ct(M; R*)" é algumas vezes aqui utilizada para indicar explicitamente o valor de retorno do algoritmo de validação Ct na entrada M com moedas randômica R*. O algoritmo de verificação, Vf, pode ser um algoritmo determinístico que toma três cadeias de entrada: um valor de validação H, uma cadeia M, e um valor de não-validação R. Este algoritmo pode retornar um bit 0 ou 1, com 0 5 indicando que a não-validação é inválida (não convincente) e um indicando que a não-validação é válida (convincente).
Em geral, um esquema de comprometimento pode satisfazer du- as propriedades: uma propriedade de ocultação e uma propriedade de liga- ção. A propriedade de ocultação impõe que, dada uma validação H randomi- camente determinada para uma mensagem adversariamente escolhida Mo ou Μι, o adversário é incapaz de determinar a qual mensagem H a validação corresponde. A propriedade de ligação impõe que um adversário, tendo com- prometido a uma mensagem M0 por meio de uma validação Ho e uma não- validação R0 correspondente, é incapaz de encontrar qualquer mensagem Mi distinta de M0 e qualquer não-validação Ri tal que Vf (H0, M-i, R-ι) = 1. Na mai- oria dos casos, o valor de não-validação R produzido por um esquema de comprometimento Ct (M; R*) é precisamente as moedas randômicas R* provi- das para o algoritmo (isto é, R = R*). No entanto, esta propriedade não é re- querida em todos os casos. Os esquemas de comprometimento probabilístico mais naturais podem ser obtidos por meio de funções hash criptográficas a- dequadas, tais como SHA-1. Existe uma variedade de técnicas naturais para processar o valor ao qual está sendo comprometido, M, e as moedas, R*, an- tes de aplicar as funções hash criptográficas. Qualquer esquema de compro- metimento que contém um mecanismo de comprometimento Ct e um algorit- mo de verificação Vf pode gerar um mecanismo de comprometimento Commit e um mecanismo de verificação Verify que aplicam-se a vetores de cadeias ao invés de cadeias individuais. O algoritmo de comprometimento Commit pode aplicar o algoritmo de Ct no sentido do componente, e o algoritmo de verifica- ção Verify pode aplicar o algoritmo de Vf no sentido do componente. Para Ct, moedas randômicas separadas podem ser utilizadas para cada cadeia de componentes em algumas modalidades.
A Figura 8 mostra um diagrama de blocos simplificado do meca- nismo de compartilhamento do esquema de RCSS de acordo com uma moda- lidade da invenção. O segredo, S, 800 pode incluir o segredo que o negociante deseja distribuir ou compartilhar. O segredo 800 pode ser um arquivo em um sistema de arquivos, uma mensagem que surge em um protocolo de comuni- 5 cações, ou qualquer outra porção de dados reservados. O segredo 800 pode ser representado como qualquer cadeia codificada adequada (por exemplo, uma cadeia codificada binária ou ASCII). Em implementações reais, no entan- to, as cadeias binárias podem ser utilizadas como o segredo 800 para facilida- de de implementação. O segredo S pode ser primeiramente criptografado utili- 10 zando o algoritmo de criptografia 803 de um esquema de criptografia de chave compartilhada para obter um texto cifrado C 804. A chave K 802 para executar esta criptografia pode ser obtida utilizando a saída do gerador de números randômicos ou pseudorrandômicos 801 de modo a produzir o número apropri- ado de bits randômicos ou pseudorrandômicos para a chave 802.
A chave 802 pode ser utilizada para somente um compartilha-
mento, e portanto pode ser referida como uma chave de uma vez. Além de ser utilizada para criptografar o segredo 800, a chave 802 pode também ser compartilhada ou distribuída utilizando um esquema de compartilhamento de segredo perfeito (PSS) 806. O esquema de PSS 806 pode incluir qualquer 20 esquema de compartilhamento de segredo perfeito, incluindo os esquemas de compartilhamento de segredo de Shamir ou de Blakley. O esquema de compartilhamento de segredo perfeito 806 pode ser randomizado, requeren- do a sua própria fonte de bits randômicos (ou pseudorrandômicos). Os bits randômicos ou pseudorrandômicos podem ser providos por um gerador de 25 números randômicos ou pseudorrandômicos separado, tal como o gerador de números 805. O esquema de PSS 806 pode emitir um vetor de comparti- lhamentos de chave K = K[1], ..., K[n] 808 o qual, conceitualmente, pode ser enviado para os diferentes "participantes", um compartilhamento por partici- pante. Primeiramente, no entanto, os compartilhamentos de chave podem 30 ser combinados com informações adicionais em algumas modalidades. O texto cifrado C 804 pode ser dividido em blocos 809 utilizando o algoritmo de dispersão de informações (IDA) 807, tal como o mecanismo de IDA de Ra- bin. O IDA 807 pode emitir um vetor de blocos de texto cifrado C[1], C[n] 809. Então, o mecanismo de comprometimento 812 de um esquema de comprometimento probabilístico pode ser empregado. Um número suficiente de bits randômicos é gerado para o processo de comprometimento utilizando 5 o gerador de números randômicos ou pseudorrandômicos 810, e a cadeia randômica 811 resultante é utilizada para todas as validações no mecanismo de comprometimento 812. O mecanismo de comprometimento 812 pode de- terminar um valor de validação H[i] e um valor de não-validação R[i], coleti- vamente mostrados no vetor 813, para cada mensagem M[i] = K[i] C[i] (dis- 10 persa através de 808 e 809). O i- compartilhamento (o qual não está explici- tamente representado na Figura 8) pode codificar K[i] 808, C[i] 809, R[i], e
H[1].....H[n] 813. Cada participante i pode receber no seu compartilhamento
a validação HO] para cada K[j], CO] (para j em 1 ... n) e não simplesmente a validação para o seu próprio compartilhamento.
A Figura 9 mostra o processo de comprometimento ilustrativo do
mecanismo de comprometimento 812 (Figura 8) em mais detalhes. O pro- cesso de comprometimento impõe n diferentes chamadas para o mecanismo de Ct de nível mais baixo do esquema de comprometimento. A randomicida- de é gerada pelo gerador de números randômicos ou pseudorrandômicos 20 900 e a cadeia randômica ou pseudorrandômica R* resultante é particionada em n segmentos, R*[1], R*[2], ... R*[n] 901. A \- porção da randomicidade (uma das porções 921, 922, ou 923 quando i é 1, 2, ou n) é utilizada para comprometer com a i- mensagem que está sendo comprometida, M[i] = K[i] C[i] (mostrada como as mensagens 910, 911, 912) utilizando os algoritmos 25 de comprometimento Ct 931, 932, e 933 de um esquema de comprometi- mento. Pares de validação e não-validação 941, 942, e 943 podem ser emi- tidos pelo algoritmo de CT. É provável que cada RO] é simplesmente R*[i], mas isto não é estritamente requerido ou assumido.
O algoritmo identificado "Share" na Tabela 1, abaixo, explica adi- cionalmente o esquema de compartilhamento apresentado nas Figuras 8 e 9. Este algoritmo toma como entrada uma cadeia S, o segredo que deve ser compartilhado. Na linha 10, um número suficiente de lançamentos de moeda randômica é gerado para prover uma chave de criptografia K para um esque- ma de criptografia simétrico que consiste nos algoritmos Encrypt e Decrypt. Na linha 11, a cadeia reservada S que deve ser compartilhada é criptografada utilizando a chave K de modo a criar um texto cifrado C. A criptografia pode 5 ser randomizada, mas não precisa ser para o mecanismo funcionar correta- mente. A seguir, na linha 12, o algoritmo de compartilhamento de um esque- ma de compartilhamento de segredo perfeito (tal como o esquema de Shamir) pode ser invocado. O algoritmo de compartilhamento é probabilístico, apesar disto não estar explicitamente indicado no código. Os resultados de comparti-
Ihamento em um vetor de compartilhamentos de chave, K = K[i].....K[n]. Na
linha 13, o texto cifrado C pode ser dividido em uma coleção de blocos dos quais uma subcoleção de blocos autorizada será adequada para recuperar o segredo. Isto pode ser executado utilizando o algoritmo de compartilhamento de um IDA (por exemplo, o IDA 807 da Figura 8). Qualquer IDA válido pode ser utilizado, tal como o mecanismo de Rabin, uma replicação, ou qualquer esquema ad hoc com a propriedade de IDA anteriormente descrito. As linhas e 16 compreendem um comprometimento probabilístico da mensagem KC[i] = K[i] C[i], com as moedas necessárias sendo geradas na linha 15 e a validação H[i] e a não-validação R[i] sendo computadas utilizando estas moe- das. A linha 17 computa o compartilhamento resultante (algumas vezes aqui referido como "fragmento") S[i] dos valores já computados. O compartilhamen- to no esquema de RCSS em assunto é S[i] = R[i] K[i] C[i] H[1] ... H[n], Os compartilhamentos podem então ser retornados para o chamador, para serem armazenados em diferentes locais ou transmitidos por uma variedade de ca- nais, de acordo com a intenção do chamador.
O algoritmo de recuperação do esquema de RCSS está também mostrado na Tabela 1, abaixo. Desta vez, o chamador provê um vetor inteiro de compartilhamentos pretendidos, S = S[1] ... S[n], Cada compartilhamento pretendido S[i] pode ser uma cadeia ou o símbolo distinguido "0", o que no- 30 vãmente significa um compartilhamento faltante. Pode também ser assumi- do, em algumas modalidades, que o chamador provê a identidade de um compartilhamento j, onde j está entre 1 e n inclusive, o qual é conhecido ser válido. Nas linhas 20-21, cada S[i] pode ser decomposto em suas cadeias componentes R[i] K[i] C[i] H[1] ... H[n], É compreendido que o símbolo faltan- te, "0", pode decompor em componentes todos os quais são estes mesmos o símbolo faltante 0. Na linha 23, o algoritmo de verificação do esquema de comprometimento pode ser executado para determinar se a mensagem KC[i] = K[i] C[i] parece ser válida. O compartilhamento j "conhecido ser válido" po- de então ser utilizado como o "valor de referência" para cada comprometi- mento Hj[i]. Sempre que um valor de K[i] C[i] parece ser inválido, este pode ser substituído pelo símbolo faltante. O vetor de valores de K[i] que foram assim revisados pode agora ser suprido o algoritmo de recuperação do es- quema de compartilhamento de segredo na linha 25, enquanto que o vetor de valores de C[i] revisados pode ser suprido para o algoritmo de recupera- ção do IDA na linha 26. Neste ponto, precisa-se somente decifrar o texto cifrado C recuperado do IDA sob a chave K recuperada do esquema de PSS para conseguir o valor S que é recuperado pelo próprio esquema de RCSS.
Algorithra Share (S) K «- Rand(Jc) 11 C <- Encrypt^(S) 12 K <- Sharepss(JC) 13 C <- ShareIDA (C) 14 for 24-1 to n do R* [i] <- Rand (Jt') 16 Uni] , i?[i] ) <-Ct(K[i ]C[i] ; R* [í] ) 17 S[i] <^R[i]K[i] C[i] H[l] 18 return S Alg orithia Recover <5, j) for i<~ 1 to n do 21 *riuri] c[i] Mi [d ..,Hl [n] S[i) 22 for i<---1 to n do 23 if -S [ JL] *0 and Vf (Hj [i] , Jf [i] C ti] , R [i]) 24 then K[i] <-0, C [i] <-0 K 4- Recover^ss (Jf) 26 C Recover(C) 27 S «- Decrypt^ (C) 28 return S Tabela 1: mecanismos de Share e Recover do esquema de RCSS Como acima indicado o algoritmo Recover da Tabela 1 assume que o usuário supre a localização de um compartilhamento conhecido ser válido. Na ausência disto, outros meios podem ser empregados para deter- minar um valor de consenso para H[i], A possibilidade mais natural utilizada 5 em algumas modalidades é o voto de maioria. Por exemplo, no lugar de Hj[i] na linha 23 um valor de H[i] pode ser utilizado que ocorre mais frequente- mente entre os valores de Hj[i] recuperados, para j variando de 1 a n.
Retornando brevemente á Figura 8, a porção da figura que está identificada 801 até 807 pode ser implementada ou considerada como um
único processo que inclui um compartilhamento de segredo computacional
(CSS) de S para obter o vetor de compartilhamentos KC = (KC[1 ].....KC[n])
onde KC[i] = K[i] C[i], com uma validação probabilística aplicada ao vetor de compartilhamentos resultante. A Figura 10 mostra um esquema descrito des- ta modalidade alternativa. Nesta modalidade, os três primitivos seguintes 15 são empregados, ao invés dos cinco primitivos anteriores definidos em co- nexão com as Figuras 8 e 9: (1) um gerador de números randômicos ou pseudorrandômicos, Rand; (2) um esquema de compartilhamento de segre- do computacional (CSS); e (3) um esquema de comprometimento probabilís- tico.
O gerador de números randômicos ou pseudorrandômicos,
Rand, pode ser definido como anteriormente. O esquema de compartilha- mento de segredo computacional pode incluir um par de algoritmos Sharecss e Recovercss. O primeiro destes algoritmos, conhecido como o algoritmo de compartilhamento do CSS, pode ser um mapa probabilístico que toma como 25 entrada uma cadeia K, denominada o segredo, e retorna uma seqüência de n cadeias, K[1], ..., K[n], referidas como compartilhamentos. Cada K[i] pode incluir um compartilhamento ou os n compartilhamentos que foram negocia- dos, ou distribuídos, pelo negociante (a entidade que executa o processo de compartilhamento). O número n pode ser um parâmetro do esquema de 30 compartilhamento de segredo, e este pode ser um número positivo arbitrário. O algoritmo de compartilhamento pode ser probabilístico pelo fato de que este pode empregar bits randômicos ou pseudorrandômicos. Tal dependên- cia pode ser realizada provendo os bits randômicos ou pseudorrandômicos de algoritmo de compartilhamento, como providos pelo gerador de números randômicos ou pseudorrandômicos, Rand.
O segundo algoritmo, conhecido como o algoritmo de recupera- ção do CSS, toma como entrada um vetor de n cadeias referidas como os compartilhamentos pretendidos. Cada compartilhamento pretendido é ou uma cadeia ou um símbolo distinguido "0", o qual é lido como faltante e é utilizado para indicar que algum compartilhamento específico está indisponí- vel ou é desconhecido. O algoritmo de recuperação para o esquema de compartilhamento de segredo computacional pode retornar uma cadeia S, o segredo recuperado. Como o par de algoritmos compõe um esquema de compartilhamento de segredo computacional, duas propriedades podem ser assumidas. A primeira propriedade, a propriedade de privacidade, pode as- segurar que nenhum conjunto de usuários não-autorizados obtenha nenhu- ma informação significativa (computacionalmente extraível) sobre o segredo que foi compartilhado de seus compartilhamentos. A segunda propriedade, a propriedade de recuperabilidade, assegura que um conjunto de participantes autorizados pode sempre recuperar o segredo, assumindo que os participan- tes autorizados contribuam compartilhamentos corretos para o algoritmo de recuperação e que nenhum participante adicional contribua ou um comparti- lhamento correto ou então o valor faltante distinguido ("0").
A terceira primitiva nesta modalidade é um esquema de com- prometimento probabilístico, o qual pode ser implementado como acima descrito em conexão com as Figuras 8 e 9.
Referindo à Figura 10, a cadeia de segredo S 1000 pode ser compartilhada ou distribuída, utilizando o algoritmo Share 1001 de um es- quema de compartilhamento de segredo computacional (probabilístico). Isto pode resultar em n compartilhamentos, KC[1], ..., KC[n] 1002. O esquema de comprometimento probabilístico 1005 pode então ser empregado para obter o vetor 1006 de validações e não-validações. A validação probabilística pode empregar lançamentos de moeda 1004 gerados por algum gerador de nú- meros randômicos ou pseudorrandômicos 1003. O compartilhamento 1 do esquema de RCSS, S[1], pode incluir o compartilhamento KC[1] do esquema de CSS 1002 juntamente com a não-validação R[1] do esquema de com- prometimento 1006 juntamente com o vetor de validações H[1] ... H[n] do esquema de comprometimento 1006. O compartilhamento 2 do esquema de 5 RCSS, S[2], pode incluir o compartilhamento KC[2] do esquema de CSS 1002 juntamente com a não-validação R[2] do esquema de comprometimen- to 1006 juntamente com o vetor de validações H[1] ... H[n] do esquema de comprometimento 1006. Este processo pode continuar, com o compartilha- mento n do esquema de RCSS, S[n], que inclui o compartilhamento KC[n] do 10 esquema de CSS 1002 juntamente com a não-validação R[n] do esquema de comprometimento 1006 juntamente com o vetor de validações H[1] ... H[n] do esquema de comprometimento 1006.
A Figura 11 ilustra o processo de recuperação do esquema RCSS apenas descrito. O algoritmo Recover 1130 está provido de um vetor de compartilhamentos pretendidos, os quais são algumas vezes aqui deno- minados fragmentos, para distinguir estes compartilhamentos dos comparti- lhamentos do esquema de CSS. O iQ fragmento recebido pelo algoritmo Re- cover 1130 é decomposto para formar uma cadeia KC[i],um valor de não- validação R[i], e um vetor de validações Hi = H,[1 ] ... Η,[η]. Da coleção de vetores de validações H1O] ... Hn[i], o algoritmo Recover 1130 deve determi- nar uma validação de consenso H[i], Para o ambiente no qual o algoritmo Recover 1130 está provido um índice j para um participante cujo comparti- lhamento é conhecido ser válido, o valor de consenso H[i] pode ser selecio- nado para ser Hj[i], Para o caso onde nenhum tal compartilhamento é co- nhecido ser autêntico, o valor de consenso pode ser selecionado como um valor de cadeia que ocorre mais frequentemente entre Hi[i] ... Hn[i]. A Figura
11 apresenta os compartilhamentos KC[1] 1100, KC[2] 1110, e KC[n] 1120 decompostos do 1-, 2-, e n-fragmentos providos para o algoritmo Recover de RCSS, respectivamente. O exemplo mostrado na Figura 11 do mesmo 30 modo apresenta os valores de não-validação R[1] 1102, R[2] 1112, e R[n] 1122 decompostos do 1Q, 2°, e n° fragmentos providos para o algoritmo Re- cover de RCSS, respectivamente. A Figura 11 também apresenta os valores de validação de consenso H[1] 1101, H[2] 1111, e H[n] 1121, determinados no modo acima descrito. Focalizando no processamento do primeiro frag- mento, o algoritmo de verificação Vf 1104 do esquema de comprometimento probabilístico é chamado na validação H[1], na mensagem KC[1], e na não- 5 validação R[1 ]. O algoritmo pode retornar um bit, com, por exemplo, 0 indi- cando que a mensagem KC[1] não deve ser aceita como tendo sido não- validada, e 1 indicando que esta deve. Consequentemente, a um demultiple- xador 1106 é alimentado o bit de decisão do algoritmo de verificação, com, por exemplo, um 0 indicando que o valor recuperado deve ser considerado 10 como faltante ("0") 1105 e um 1 indicando que o valor recuperado deve ser considerado como o próprio KC[1] 1100. A saída A é a primeira entrada su- prida para o algoritmo Recover 1130 de um esquema de CSS. Continuando deste modo, o fragmento 2 é processado (mostrado em 1110-1116 no e- xemplo da Figura 11) e cada fragmento adicional é processado, até que o 15 enésimo seja processado (mostrado em 1120-1126 no exemplo da Figura 11). A coleção de compartilhamentos é então provida para o algoritmo Re- cover 1130 do esquema de CSS de modo a recuperar o segredo. Este valor recuperado pode ser o valor emitido pelo próprio esquema de RCSS.
Aqueles versados na técnica perceberão que um grande número de variantes é possível. Por exemplo, um código de correção de erro pode ser utilizado em algumas modalidades para prover uma coleção adequada de va- lidações H[1] ... H[n] para cada participante, efetivamente substituindo o códi- go de replicação simples mas um tanto ineficiente da modalidade anterior.
Apesar de alguns aplicativos comuns serem acima descritos, de- ve ser claramente compreendido que a presente invenção pode ser integrada com qualquer aplicativo de rede de modo a aumentar a segurança, a tolerân- cia a falhas, o anonimato, ou qualquer combinação adequada dos acima.
Além disso, outras combinações, adições, substituições e modi- ficações serão aparentes para aqueles versados na técnica em vista da des- crição aqui. Consequentemente, a presente invenção não pretende ser limi- tada pela reação das modalidades preferidas mas deve ser definida por uma referência às reivindicações anexas

Claims (20)

1. Método para proteger dados pela geração de uma coleção de fragmentos dos dados, o método compreendendo: aplicar um mecanismo de compartilhamento de um esquema de compartilhamento de segredo computacional aos dados para produzir uma coleção de compartilhamentos; gerar um valor randômico ou pseudorrandômico; computar um conjunto de valores de validação e um conjunto de valores de não-validação do valor randômico ou pseudorrandômico e da co- leção de compartilhamentos; produzir cada fragmento na coleção de fragmentos pela combi- nação de um compartilhamento, um valor de não-validação, e pelo menos um valor de validação do conjunto de valores de validação; e armazenar cada fragmento em pelo menos um repositório de dados.
2. Método de acordo com a reivindicação 1, em que produzir ca- da fragmento na coleção de fragmentos compreende combinar um comparti- lhamento, um valor de não-validação e o conjunto inteiro de valores de vali- dação.
3. Método de acordo com a reivindicação 1, em que armazenar cada fragmento em pelo menos um repositório de dados compreende arma- zenar cada fragmento em diferentes localizações geográficas.
4. Método de acordo com a reivindicação 1, em que armazenar cada fragmento em pelo menos um repositório de dados compreende arma- zenar cada fragmento em diferentes localizações físicas no pelo menos um repositório.
5. Método de acordo com a reivindicação 1, em que o pelo me- nos um repositório de dados compreende um sistema de arquivo distribuído.
6. Método de acordo com a reivindicação 1, em que o esquema de compartilhamento de segredo computacional é selecionado do grupo que consiste em esquemas de compartilhamento de segredo de Shamir, Blakley, e Krawczyk.
7. Método de acordo com a reivindicação 1, em que computar um conjunto de valores de validação e um conjunto de valores de não- validação compreende empregar um esquema de comprometimento proba- bilístico.
8. Método de acordo com a reivindicação 1, ainda compreen- dendo transmitir os fragmentos produzidos por uma pluralidade de canais de comunicação.
9. Método de acordo com a reivindicação 8, em que transmitir os fragmentos produzidos por uma pluralidade de canais de comunicação com- preende transmitir cada fragmento produzido por um canal de comunicação diferente.
10. Método para proteger dados pela geração de uma coleção de fragmentos dos dados, o método compreendendo: aplicar um mecanismo de compartilhamento de um esquema de compartilhamento de segredo computacional aos dados para produzir uma coleção de compartilhamentos; utilizar um esquema de comprometimento probabilístico para computar um conjunto de valores de validação e um conjunto de valores de não-validação da coleção de compartilhamentos; produzir uma pluralidade de fragmentos, em que cada fragmento compreende um compartilhamento da coleção de compartilhamentos, um valor de não-validação do conjunto de valores de não-validação, e o conjun- to de valores de validação; e armazenar cada fragmento em pelo menos um repositório de dados.
11. Método de acordo com a reivindicação 10, em que armaze- nar cada fragmento em pelo menos um repositório de dados compreende armazenar cada fragmento em diferentes localizações geográficas.
12. Método de acordo com a reivindicação 10, em que armaze- nar cada fragmento em pelo menos um repositório de dados compreende armazenar cada fragmento em diferentes localizações físicas no pelo menos um repositório.
13. Método de acordo com a reivindicação 10, em que o pelo menos um repositório de dados compreende um sistema de arquivo distribu- ido.
14. Método de acordo com a reivindicação 10, em que o esque- ma de compartilhamento de segredo computacional é selecionado do grupo que consiste em esquemas de compartilhamento de segredo de Shamir, Blakley, e Krawczyk.
15. Método de acordo com a reivindicação 10, ainda compreen- dendo transmitir os fragmentos produzidos por uma pluralidade de canais de comunicação.
16. Método de acordo com a reivindicação 15, em que transmitir os fragmentos produzidos por uma pluralidade de canais de comunicação compreende transmitir cada fragmento produzido por um canal de comuni- cação diferente.
17. Método para proteger dados, que compreende: gerar uma chave criptográfica; criptografar os dados com a chave criptográfica para criar um texto cifrado; produzir uma coleção de n compartilhamentos de chave para aplicar um esquema de compartilhamento de segredo na chave criptográfica; produzir uma coleção de n blocos de textos cifrados pela aplica- ção de um algoritmo de dispersão de informações no texto cifrado; computar n valores de validação e n valores de não-validação pela aplicação de um esquema de comprometimento probabilístico a cada um dos n compartilhamentos de chave e n blocos de textos cifrados; produzir n fragmentos de dados, em que cada fragmento de da- dos é uma função de um compartilhamento de chave, um bloco de textos cifrados, um valor de não-validação, e os valores de validação; e armazenar os n fragmentos de dados em diferentes dispositivos de armazenamento lógicos, por meio de que os dados são recuperáveis de um número predefinido dos fragmentos de dados.
18. Método de acordo com a reivindicação 17, em que armaze- nar os n fragmentos de dados em diferentes dispositivos de armazenamento lógicos compreende armazenar os n fragmentos de dados em n diferentes dispositivos de armazenamento lógicos.
19. Método de acordo com a reivindicação 17, ainda compreen- dendo transmitir os n fragmentos de dados por n canais de comunicação antes de armazenar os n fragmentos de dados.
20. Método para recuperar os dados de uma coleção de compar- tilhamentos supostos, que compreende: receber um compartilhamento suposto designado da coleção de compartilhamentos supostos, em que o compartilhamento suposto designa- do é declarado ser válido; separar cada compartilhamento suposto em uma porção de con- teúdo e um vetor de somas de verificação; utilizar o vetor de somas de verificação associado com o com- partilhamento suposto designado para classificar cada compartilhamento da coleção de compartilhamentos supostos como um compartilhamento real ou como um compartilhamento fictício; e aplicar o algoritmo de recuperação de um esquema de comparti- lhamento de segredo computacional nos compartilhamentos classificados como compartilhamentos reais para recuperar os dados.
BRPI0718581-2A 2006-11-07 2007-11-07 Sistemas e métodos para distribuir e proteger dados BRPI0718581A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US85734506P 2006-11-07 2006-11-07
US60/857,345 2006-11-07
PCT/US2007/023626 WO2008127309A2 (en) 2006-11-07 2007-11-07 Systems and methods for distributing and securing data

Publications (1)

Publication Number Publication Date
BRPI0718581A2 true BRPI0718581A2 (pt) 2014-03-11

Family

ID=39789383

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0718581-2A BRPI0718581A2 (pt) 2006-11-07 2007-11-07 Sistemas e métodos para distribuir e proteger dados

Country Status (9)

Country Link
US (5) US8155322B2 (pt)
EP (2) EP3010174A1 (pt)
CN (2) CN103188081A (pt)
AU (2) AU2007351552B2 (pt)
BR (1) BRPI0718581A2 (pt)
CA (2) CA2904746A1 (pt)
ES (1) ES2568661T3 (pt)
HK (2) HK1134725A1 (pt)
WO (1) WO2008127309A2 (pt)

Families Citing this family (143)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
CN101375284B (zh) 2004-10-25 2012-02-22 安全第一公司 安全数据分析方法和系统
AU2006350252B2 (en) 2005-11-18 2010-10-14 Security First Corporation Secure data parser method and system
US8156168B2 (en) * 2006-08-17 2012-04-10 University Of Miami Method and system for data security
US8484263B2 (en) * 2006-08-17 2013-07-09 University Of Miami Method for keyless protection of data using a local array of disks
WO2008127309A2 (en) 2006-11-07 2008-10-23 Security First Corporation Systems and methods for distributing and securing data
CN105224417A (zh) 2006-12-05 2016-01-06 安全第一公司 改进的磁带备份方法
US8233624B2 (en) * 2007-05-25 2012-07-31 Splitstreem Oy Method and apparatus for securing data in a memory device
JP4995667B2 (ja) * 2007-08-28 2012-08-08 富士通株式会社 情報処理装置、サーバ装置、情報処理プログラム及び方法
CN102932136B (zh) 2007-09-14 2017-05-17 安全第一公司 用于管理加密密钥的系统和方法
EP2106642A4 (en) 2008-01-07 2015-12-02 Security First Corp SYSTEMS AND METHODS FOR SECURING DATA USING A KEY OR MULTI-FACTOR DISPERSION
CA2716335A1 (en) 2008-02-22 2009-08-27 Stephen C. Bono Systems and methods for secure workgroup management and communication
JP5297688B2 (ja) * 2008-05-09 2013-09-25 株式会社日立製作所 ベクトル秘匿型内積計算システム、ベクトル秘匿型内積計算方法及び暗号鍵共有システム
US8291239B2 (en) * 2008-11-25 2012-10-16 Pitney Bowes Inc. Method and system for authenticating senders and recipients in a carrier system and providing receipt of specified content by a recipient
US10447474B2 (en) 2009-04-20 2019-10-15 Pure Storage, Inc. Dispersed data storage system data decoding and decryption
US11868498B1 (en) 2009-04-20 2024-01-09 Pure Storage, Inc. Storage integrity processing in a storage network
US9483656B2 (en) * 2009-04-20 2016-11-01 International Business Machines Corporation Efficient and secure data storage utilizing a dispersed data storage system
US11991280B2 (en) 2009-04-20 2024-05-21 Pure Storage, Inc. Randomized transforms in a dispersed data storage system
CN102428686A (zh) 2009-05-19 2012-04-25 安全第一公司 用于安全保护云中的数据的系统和方法
US8375223B2 (en) * 2009-10-30 2013-02-12 Red Hat, Inc. Systems and methods for secure distributed storage
US8572282B2 (en) * 2009-10-30 2013-10-29 Cleversafe, Inc. Router assisted dispersed storage network method and apparatus
CN104917780A (zh) * 2009-11-25 2015-09-16 安全第一公司 对移动中数据进行保护的系统和方法
WO2011113874A2 (en) * 2010-03-19 2011-09-22 Martin Palzer Concept for communicating between different entities using different data portions for different channels
US9081888B2 (en) 2010-03-31 2015-07-14 Cloudera, Inc. Collecting and aggregating log data with fault tolerance
US8874526B2 (en) 2010-03-31 2014-10-28 Cloudera, Inc. Dynamically processing an event using an extensible data model
WO2011123699A2 (en) 2010-03-31 2011-10-06 Orsini Rick L Systems and methods for securing data in motion
US9082127B2 (en) 2010-03-31 2015-07-14 Cloudera, Inc. Collecting and aggregating datasets for analysis
US20130132720A1 (en) * 2010-05-17 2013-05-23 Jon Parsons System and method for multi-dimensional secretion of digital data
US10911230B2 (en) 2010-05-19 2021-02-02 Pure Storage, Inc. Securely activating functionality of a computing device in a dispersed storage network
US10193689B2 (en) * 2010-05-19 2019-01-29 International Business Machines Corporation Storing access information in a dispersed storage network
EP2577936A2 (en) 2010-05-28 2013-04-10 Lawrence A. Laurich Accelerator system for use with secure data storage
CN101882992B (zh) * 2010-06-21 2012-12-12 中国农业大学 门限秘密信息分配、还原方法及装置
JP5620792B2 (ja) * 2010-11-08 2014-11-05 株式会社デジタル・メディア総合研究所 分散アーカイブシステム並びにデータアーカイブ装置及びデータ復元装置
US8700906B2 (en) * 2011-01-14 2014-04-15 Microsoft Corporation Secure computing in multi-tenant data centers
JP5531154B2 (ja) * 2011-03-10 2014-06-25 日本電信電話株式会社 秘匿積和結合システム、計算装置、秘匿積和結合方法、及びそれらのプログラム
US8769622B2 (en) * 2011-06-30 2014-07-01 International Business Machines Corporation Authentication and authorization methods for cloud computing security
US8769310B2 (en) * 2011-10-21 2014-07-01 International Business Machines Corporation Encrypting data objects to back-up
US9338008B1 (en) * 2012-04-02 2016-05-10 Cloudera, Inc. System and method for secure release of secret information over a network
US9430655B1 (en) * 2012-12-28 2016-08-30 Emc Corporation Split tokenization
GB2522372B (en) * 2013-01-09 2020-11-25 Qatar Foundation Storage system and method of storing and managing data
WO2014108183A1 (en) 2013-01-09 2014-07-17 Qatar Foundation Storage system and method of storing and managing data
AU2014216207A1 (en) 2013-02-13 2015-09-10 Security First Corp. Systems and methods for a cryptographic file system layer
US9342557B2 (en) 2013-03-13 2016-05-17 Cloudera, Inc. Low latency query engine for Apache Hadoop
US9667530B2 (en) 2013-05-06 2017-05-30 International Business Machines Corporation Privacy preserving query method and system for use in federated coalition networks
KR101496764B1 (ko) 2013-05-14 2015-02-27 서울대학교산학협력단 일정 수 이상의 파일 조각으로 복구 가능한 파일 분산 관리 장치 및 방법
US9882881B2 (en) * 2013-06-17 2018-01-30 Jyoth Singh KOHLI System and method for providing personalized and confidential data management and sharing services
GB2519119A (en) * 2013-10-10 2015-04-15 Ibm Linear network coding in a dynamic distributed federated database
US9514326B1 (en) 2013-10-15 2016-12-06 Sandia Corporation Serial interpolation for secure membership testing and matching in a secret-split archive
US9934382B2 (en) 2013-10-28 2018-04-03 Cloudera, Inc. Virtual machine image encryption
CN103763362B (zh) * 2014-01-13 2016-12-21 西安电子科技大学 一种安全的分布式重复数据删除方法
US9621586B2 (en) 2014-02-08 2017-04-11 International Business Machines Corporation Methods and apparatus for enhancing business services resiliency using continuous fragmentation cell technology
IN2014CH00971A (pt) * 2014-02-26 2015-08-28 Samsung R & D Inst India Bangalore Private Ltd
US9608822B2 (en) * 2014-03-18 2017-03-28 Ecole Polytechnique Federale De Lausanne (Epfl) Method for generating an HTML document that contains encrypted files and the code necessary for decrypting them when a valid passphrase is provided
EP2933943A1 (en) * 2014-04-14 2015-10-21 Alcatel Lucent Storage efficient and unconditionally secure private information retrieval
US10356054B2 (en) 2014-05-20 2019-07-16 Secret Double Octopus Ltd Method for establishing a secure private interconnection over a multipath network
WO2015177789A1 (en) 2014-05-20 2015-11-26 B. G. Negev Technologies And Application Ltd., At Ben-Gurion Universitiy A method for establishing a secure private interconnection over a multipath network
WO2015182842A1 (en) * 2014-05-28 2015-12-03 Byung Chul Lee Method for controlling information registration and query for protecting private information
FR3021777B1 (fr) 2014-06-03 2018-08-17 Morpho Stockage distribue securise par calcul multipartite
WO2016048297A1 (en) * 2014-09-24 2016-03-31 Hewlett Packard Enterprise Development Lp Utilizing error correction (ecc) for secure secret sharing
WO2016081942A2 (en) 2014-11-21 2016-05-26 Security First Corp. Gateway for cloud-based secure storage
WO2017001870A1 (en) * 2015-07-02 2017-01-05 Payfont Limited Resilient secret sharing cloud based architecture for data vault
JP6034927B1 (ja) * 2015-07-27 2016-11-30 日本電信電話株式会社 秘密計算システム、秘密計算装置、およびプログラム
CN105406966B (zh) * 2015-12-30 2018-11-09 中国农业大学 一种门限秘密信息分配、还原、完整性验证方法及装置
CN105554026A (zh) * 2016-01-12 2016-05-04 中北大学 一种电子档案信息安全管理系统
JP6703706B2 (ja) * 2016-01-18 2020-06-03 リアル・テクノロジー株式会社 暗号文管理方法、暗号文管理装置及びプログラム
DE102016201989A1 (de) * 2016-02-10 2017-08-10 Robert Bosch Gmbh Primäre Einheit und Betriebsverfahren hierfür
EP3420513A1 (en) 2016-02-23 2019-01-02 Nchain Holdings Limited System and method for controlling asset-related actions via a blockchain
EP4167165A1 (en) 2016-02-23 2023-04-19 nChain Licensing AG Blockchain-based exchange with tokenisation
MX2018010048A (es) 2016-02-23 2019-01-21 Nchain Holdings Ltd Sistema universal de tokenizacion para criptomonedas basadas en cadena de bloques.
LT3257191T (lt) 2016-02-23 2018-11-12 nChain Holdings Limited Išmaniųjų kontraktų blokų grandinės technologijos ir automatinio valdymo būdas
EA201891829A1 (ru) 2016-02-23 2019-02-28 Нчейн Холдингс Лимитед Способ и система для эффективного перевода криптовалюты, связанной с заработной платой, в блокчейне для создания способа и системы автоматизированной выплаты заработной платы на основе смарт-контрактов
WO2017145048A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Cryptographic method and system for secure extraction of data from a blockchain
US11347838B2 (en) 2016-02-23 2022-05-31 Nchain Holdings Ltd. Blockchain implemented counting system and method for use in secure voting and distribution
JP6957482B2 (ja) 2016-02-23 2021-11-02 エヌチェーン ホールディングス リミテッドNchain Holdings Limited ブロックチェーンベースにおけるエンティティのセキュアな移転のための方法およびシステム
CA3010116C (en) 2016-02-23 2024-05-14 nChain Holdings Limited Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
SG10202007907PA (en) 2016-02-23 2020-09-29 Nchain Holdings Ltd Blockchain-implemented method for control and distribution of digital content
SG10202112185TA (en) * 2016-02-23 2021-12-30 Nchain Holdings Ltd Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system
BR112018016810A2 (pt) 2016-02-23 2018-12-26 nChain Holdings Limited método e sistema implementado por computador para criptografia de dados em um dispositivo eletrônico, dispositivo eletrônico e programa de computador
CN116957790A (zh) 2016-02-23 2023-10-27 区块链控股有限公司 一种实现区块链上交换的通证化方法及系统
US11455378B2 (en) 2016-02-23 2022-09-27 nChain Holdings Limited Method and system for securing computer software using a distributed hash table and a blockchain
GB2561466A (en) 2016-02-23 2018-10-17 Nchain Holdings Ltd Methods and systems for efficient transfer of entities on a peer-to-peer distributed ledger using the blockchain
CN105721146B (zh) * 2016-03-03 2018-12-21 江苏大学 一种面向云存储基于smc的大数据共享方法
US9853813B2 (en) * 2016-03-17 2017-12-26 Crater Dog Technologies, LLC Method for securing a private key
WO2017166279A1 (zh) * 2016-04-01 2017-10-05 高雄医学大学 资料加解密系统及其加解密方法
US10404469B2 (en) * 2016-04-08 2019-09-03 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof
US10346428B2 (en) 2016-04-08 2019-07-09 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof
US11048723B2 (en) 2016-04-08 2021-06-29 Chicago Mercantile Exchange Inc. Bilateral assertion model and ledger implementation thereof
IT201600079574A1 (it) * 2016-07-28 2018-01-28 Infocert S P A Metodo di autenticazione sicura di una richiesta rivolta ad un fornitore remoto e generata in un dispositivo personale mediante l'utilizzo di una password monouso dipendente anche dalla richiesta
IT201600079563A1 (it) * 2016-07-28 2018-01-28 Infocert S P A Metodo di autenticazione sicura di una richiesta rivolta ad un fornitore remoto e generata in un dispositivo personale con biforcazione della trasmissione di un mezzo di autenticazione
WO2018031597A1 (en) * 2016-08-08 2018-02-15 Google Llc Systems and methods for data aggregation based on one-time pad based sharing
CN106302472B (zh) * 2016-08-09 2019-12-24 厦门乐享新网络科技有限公司 信息的隐藏方法及装置
US10129023B2 (en) 2016-08-11 2018-11-13 International Business Machines Corporation Enhancing security for multiple storage configurations
US10885215B2 (en) * 2016-11-18 2021-01-05 Duncan MacDougall Greatwood Searching using encrypted client and server maintained indices
US11177942B2 (en) * 2016-11-18 2021-11-16 Duncan MacDougall Greatwood Security through data scattering
US11362829B2 (en) 2017-01-06 2022-06-14 Koninklijke Philips N.V. Distributed privacy-preserving verifiable computation
EP3566384B1 (en) * 2017-01-06 2021-02-17 Koninklijke Philips N.V. Pinocchio / trinocchio on authenticated data
US10419225B2 (en) 2017-01-30 2019-09-17 Factom, Inc. Validating documents via blockchain
US10411897B2 (en) 2017-02-17 2019-09-10 Factom, Inc. Secret sharing via blockchains
US20180260889A1 (en) * 2017-03-10 2018-09-13 Factom Sourcing Mortgage Documents via Blockchains
US20180268504A1 (en) * 2017-03-15 2018-09-20 Factom Indexing Mortgage Documents via Blockchains
WO2018175262A1 (en) * 2017-03-21 2018-09-27 Tora Holdings, Inc. Secure order matching by distributing data and processing across multiple segregated computation nodes
US10817873B2 (en) 2017-03-22 2020-10-27 Factom, Inc. Auditing of electronic documents
US10685399B2 (en) 2017-03-31 2020-06-16 Factom, Inc. Due diligence in electronic documents
US10505723B1 (en) 2017-04-26 2019-12-10 Wells Fargo Bank, N.A. Secret sharing information management and security system
US10270599B2 (en) 2017-04-27 2019-04-23 Factom, Inc. Data reproducibility using blockchains
CA3061047A1 (en) * 2017-04-27 2018-11-01 Financial & Risk Organisation Limited Systems and methods for distributed data mapping
US10277395B2 (en) * 2017-05-19 2019-04-30 International Business Machines Corporation Cryptographic key-generation with application to data deduplication
CN107040385B (zh) * 2017-05-23 2020-10-27 广东工业大学 一种基于sm2椭圆曲线的签名验证算法的实现方法及系统
EP3688927A4 (en) * 2017-09-29 2021-06-30 Workjam Inc. ACCESS TO SECURE INFORMATION
EP3669498B1 (de) * 2017-10-23 2021-04-07 Siemens Aktiengesellschaft Verfahren und steuersystem zum steuern und/oder überwachen von geräten
CN109726563B (zh) * 2017-10-31 2020-11-03 创新先进技术有限公司 一种数据统计的方法、装置以及设备
CN108182127B (zh) * 2017-12-27 2021-11-19 厦门市美亚柏科信息股份有限公司 一种提取已删除文件碎片的方法、终端设备及存储介质
DE102017223898A1 (de) * 2017-12-31 2019-07-04 Bundesdruckerei Gmbh Sicheres Ablegen und Zugreifen von Dateien mit einer Webanwendung
US11170366B2 (en) 2018-05-18 2021-11-09 Inveniam Capital Partners, Inc. Private blockchain services
US11134120B2 (en) 2018-05-18 2021-09-28 Inveniam Capital Partners, Inc. Load balancing in blockchain environments
US10783164B2 (en) 2018-05-18 2020-09-22 Factom, Inc. Import and export in blockchain environments
US11032068B2 (en) 2018-06-29 2021-06-08 International Business Machines Corporation Leakage-deterring encryption for message communication
CN110851487B (zh) * 2018-07-30 2023-05-30 创新先进技术有限公司 数据统计方法和装置
US11164250B2 (en) 2018-08-06 2021-11-02 Inveniam Capital Partners, Inc. Stable cryptocurrency coinage
US11989208B2 (en) 2018-08-06 2024-05-21 Inveniam Capital Partners, Inc. Transactional sharding of blockchain transactions
US11044095B2 (en) 2018-08-06 2021-06-22 Factom, Inc. Debt recordation to blockchains
US11328290B2 (en) 2018-08-06 2022-05-10 Inveniam Capital Partners, Inc. Stable cryptocurrency coinage
US20200042982A1 (en) 2018-08-06 2020-02-06 Factom Digital Contracts in Blockchain Environments
US10936406B2 (en) * 2018-10-09 2021-03-02 EMC IP Holding Company LLC Multi cloud transactional storage for availability and security
TWI707246B (zh) * 2018-11-05 2020-10-11 開曼群島商現代財富控股有限公司 分散式多層遞迴的密鑰保管系統及其方法
US11023490B2 (en) 2018-11-20 2021-06-01 Chicago Mercantile Exchange Inc. Selectively replicated trustless persistent store
HK1254273A2 (zh) * 2018-12-03 2019-07-12 Foris Ltd 安全的分佈式密鑰管理系統
US11138327B2 (en) 2018-12-27 2021-10-05 Industrial Technology Research Institute Privacy data integration method and server
CN109949472A (zh) * 2019-02-28 2019-06-28 阿里巴巴集团控股有限公司 用于投票的系统、方法和装置
CN110058820B (zh) * 2019-04-23 2022-05-17 武汉汇迪森信息技术有限公司 基于固态盘阵列的数据安全写入、删除、读取方法及装置
US11138158B2 (en) 2019-05-20 2021-10-05 Callplex, Inc. Binding a local data storage device to remote data storage
CN110601824B (zh) * 2019-08-26 2023-06-13 北京思源理想控股集团有限公司 信息的传输方法及装置
US11444749B2 (en) 2020-01-17 2022-09-13 Inveniam Capital Partners, Inc. Separating hashing from proof-of-work in blockchain environments
US11316673B2 (en) 2020-09-11 2022-04-26 Seagate Technology Llc Privacy preserving secret sharing from novel combinatorial objects
US11362816B2 (en) 2020-09-11 2022-06-14 Seagate Technology Llc Layered secret sharing with flexible access structures
US20220271933A1 (en) * 2021-02-19 2022-08-25 Samsung Electronics Co., Ltd. System and method for device to device secret backup and recovery
US12008526B2 (en) 2021-03-26 2024-06-11 Inveniam Capital Partners, Inc. Computer system and method for programmatic collateralization services
CN113098687B (zh) * 2021-04-27 2022-04-12 支付宝(杭州)信息技术有限公司 生成安全计算协议的数据元组的方法及装置
US20220385453A1 (en) * 2021-05-28 2022-12-01 Atakama LLC Secure file transfer
US12007972B2 (en) 2021-06-19 2024-06-11 Inveniam Capital Partners, Inc. Systems and methods for processing blockchain transactions
US12137179B2 (en) 2021-06-19 2024-11-05 Inveniam Capital Partners, Inc. Systems and methods for processing blockchain transactions
CN114331430B (zh) * 2021-12-24 2023-03-31 杭州钛度科技有限公司 区块链共识方法、装置、设备和介质
CN115455488B (zh) * 2022-11-15 2023-03-28 哈尔滨工业大学(深圳)(哈尔滨工业大学深圳科技创新研究院) 基于复制秘密共享的密态数据库查询方法及装置

Family Cites Families (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4453074A (en) * 1981-10-19 1984-06-05 American Express Company Protection system for intelligent cards
US4924513A (en) * 1987-09-25 1990-05-08 Digital Equipment Corporation Apparatus and method for secure transmission of data over an unsecure transmission channel
US5485474A (en) * 1988-02-25 1996-01-16 The President And Fellows Of Harvard College Scheme for information dispersal and reconstruction
FR2632469B1 (fr) 1988-06-03 1991-08-02 Pailles Jean Claude Dispositif de communication securisee de donnees
EP0354774B1 (en) 1988-08-11 1996-04-10 International Business Machines Corporation Data cryptography using control vectors
US4932057A (en) * 1988-10-17 1990-06-05 Grumman Aerospace Corporation Parallel transmission to mask data radiation
US5016274A (en) * 1988-11-08 1991-05-14 Silvio Micali On-line/off-line digital signing
GB2237670B (en) 1989-11-03 1993-04-07 De La Rue Syst Reciprocal transfer system
US5682425A (en) * 1990-04-23 1997-10-28 Canon Kabushiki Kaisha Information signal transmission system
US5010572A (en) * 1990-04-27 1991-04-23 Hughes Aircraft Company Distributed information system having automatic invocation of key management negotiations protocol and method
US5051745A (en) * 1990-08-21 1991-09-24 Pkware, Inc. String searcher, and compressor using same
US5177342A (en) 1990-11-09 1993-01-05 Visa International Service Association Transaction approval system
JPH04297157A (ja) 1991-03-14 1992-10-21 Mitsubishi Electric Corp データ暗号装置
US5276735A (en) 1992-04-17 1994-01-04 Secure Computing Corporation Data enclave and trusted path system
US5375244A (en) * 1992-05-29 1994-12-20 At&T Corp. System and method for granting access to a resource
US5268963A (en) * 1992-06-09 1993-12-07 Audio Digital Imaging Inc. System for encoding personalized identification for storage on memory storage devices
US5267314A (en) * 1992-11-17 1993-11-30 Leon Stambler Secure transaction system and method utilized therein
US5533051A (en) * 1993-03-12 1996-07-02 The James Group Method for data compression
JP2550864B2 (ja) * 1993-05-31 1996-11-06 日本電気株式会社 ジョブ実行における分散型制御方法及びその装置
GB9323489D0 (en) * 1993-11-08 1994-01-05 Ncr Int Inc Self-service business system
CZ197896A3 (en) * 1994-01-13 1997-03-12 Bankers Trust Co Encryption method with safekeeping of a key in a third person and a cryptographic system for making the same
US5748735A (en) * 1994-07-18 1998-05-05 Bell Atlantic Network Services, Inc. Securing E-mail communications and encrypted file storage using yaksha split private key asymmetric cryptography
CN1276321C (zh) * 1995-02-13 2006-09-20 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US7069451B1 (en) * 1995-02-13 2006-06-27 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5790677A (en) * 1995-06-29 1998-08-04 Microsoft Corporation System and method for secure electronic commerce transactions
US5768382A (en) * 1995-11-22 1998-06-16 Walker Asset Management Limited Partnership Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic and other protocols
JP3502200B2 (ja) * 1995-08-30 2004-03-02 株式会社日立製作所 暗号通信システム
US5717758A (en) * 1995-11-02 1998-02-10 Micall; Silvio Witness-based certificate revocation system
US5666416A (en) * 1995-10-24 1997-09-09 Micali; Silvio Certificate revocation system
US6449730B2 (en) * 1995-10-24 2002-09-10 Seachange Technology, Inc. Loosely coupled mass storage computer cluster
US6345314B1 (en) * 1995-10-27 2002-02-05 International Business Machines Corporation Technique to minimize data transfer between two computers
US6301659B1 (en) * 1995-11-02 2001-10-09 Silvio Micali Tree-based certificate revocation system
US6026163A (en) * 1995-12-13 2000-02-15 Micali; Silvio Distributed split-key cryptosystem and applications
US5615269A (en) * 1996-02-22 1997-03-25 Micali; Silvio Ideal electronic negotiations
JP2000503154A (ja) * 1996-01-11 2000-03-14 エムアールジェイ インコーポレイテッド デジタル所有権のアクセスと分配を制御するためのシステム
US5768519A (en) * 1996-01-18 1998-06-16 Microsoft Corporation Method and apparatus for merging user accounts from a source security domain into a target security domain
US5761306A (en) * 1996-02-22 1998-06-02 Visa International Service Association Key replacement in a public key cryptosystem
JPH09238132A (ja) 1996-02-29 1997-09-09 Oki Electric Ind Co Ltd 携帯用端末通信システム及びその通信方法
US5666414A (en) * 1996-03-21 1997-09-09 Micali; Silvio Guaranteed partial key-escrow
US5823948A (en) * 1996-07-08 1998-10-20 Rlis, Inc. Medical records, documentation, tracking and order entry system
US6072876A (en) 1996-07-26 2000-06-06 Nippon Telegraph And Telephone Corporation Method and system for depositing private key used in RSA cryptosystem
GB2318486B (en) * 1996-10-16 2001-03-28 Ibm Data communications system
US5903652A (en) * 1996-11-25 1999-05-11 Microsoft Corporation System and apparatus for monitoring secure information in a computer network
US6125186A (en) 1996-11-28 2000-09-26 Fujitsu Limited Encryption communication system using an agent and a storage medium for storing that agent
US5966444A (en) * 1996-12-06 1999-10-12 Yuan; Chuan K. Method and system for establishing a cryptographic key agreement using linear protocols
US5903882A (en) * 1996-12-13 1999-05-11 Certco, Llc Reliance server for electronic transaction system
US5940507A (en) * 1997-02-11 1999-08-17 Connected Corporation Secure file archive through encryption key management
JP3656688B2 (ja) 1997-03-31 2005-06-08 栄司 岡本 暗号データ回復方法及び鍵登録システム
US6119229A (en) 1997-04-11 2000-09-12 The Brodia Group Virtual property system
US6023508A (en) * 1997-05-22 2000-02-08 Currency Scientific, Inc. Polymorphic data structures for secure operation of a virtual cash system
US6240183B1 (en) * 1997-06-19 2001-05-29 Brian E. Marchant Security apparatus for data transmission with dynamic random encryption
US6085976A (en) * 1998-05-22 2000-07-11 Sehr; Richard P. Travel system and methods utilizing multi-application passenger cards
US6229894B1 (en) * 1997-07-14 2001-05-08 Entrust Technologies, Ltd. Method and apparatus for access to user-specific encryption information
US6731755B1 (en) 1997-07-28 2004-05-04 The Director, Government Communications Headquarters Split-key cryptographic system and method
SE511881C2 (sv) * 1997-08-08 1999-12-13 Ericsson Telefon Ab L M Förfarande och arrangemang för överföring av paketinformation i ett digitalt telekommunikationssystem
US5991414A (en) * 1997-09-12 1999-11-23 International Business Machines Corporation Method and apparatus for the secure distributed storage and retrieval of information
US6094485A (en) * 1997-09-18 2000-07-25 Netscape Communications Corporation SSL step-up
US6125349A (en) 1997-10-01 2000-09-26 At&T Corp. Method and apparatus using digital credentials and other electronic certificates for electronic transactions
US6092201A (en) * 1997-10-24 2000-07-18 Entrust Technologies Method and apparatus for extending secure communication operations via a shared list
US6073237A (en) * 1997-11-06 2000-06-06 Cybercash, Inc. Tamper resistant method and apparatus
US6301664B1 (en) * 1997-11-18 2001-10-09 Telcordia Technologies, Inc. Method and system for non-malleable and non-interactive cryptographic commitment in a network
US6151395A (en) * 1997-12-04 2000-11-21 Cisco Technology, Inc. System and method for regenerating secret keys in diffie-hellman communication sessions
US6185685B1 (en) * 1997-12-11 2001-02-06 International Business Machines Corporation Security method and system for persistent storage and communications on computer network systems and computer network systems employing the same
RU2124814C1 (ru) 1997-12-24 1999-01-10 Молдовян Николай Андреевич Способ шифрования блоков цифровых данных
US6415373B1 (en) * 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
EP0936805A1 (en) 1998-02-12 1999-08-18 Hewlett-Packard Company Document transfer systems
DE69917356T2 (de) * 1998-02-13 2005-02-17 Hitachi, Ltd. Sicherheitstechnik an einem Computernetzwerk
CA2323500A1 (en) 1998-03-11 1999-09-16 Cha! Technologies Services, Inc. Automatically invoked intermediation process for network purchases
US6324650B1 (en) * 1998-03-16 2001-11-27 John W.L. Ogilvie Message content protection and conditional disclosure
US6134550A (en) * 1998-03-18 2000-10-17 Entrust Technologies Limited Method and apparatus for use in determining validity of a certificate in a communication system employing trusted paths
US6553493B1 (en) * 1998-04-28 2003-04-22 Verisign, Inc. Secure mapping and aliasing of private keys used in public key cryptography
US6438690B1 (en) * 1998-06-04 2002-08-20 International Business Machines Corp. Vault controller based registration application serving web based registration authorities and end users for conducting electronic commerce in secure end-to-end distributed information system
US6308273B1 (en) 1998-06-12 2001-10-23 Microsoft Corporation Method and system of security location discrimination
US6615347B1 (en) * 1998-06-30 2003-09-02 Verisign, Inc. Digital certificate cross-referencing
US6336186B1 (en) * 1998-07-02 2002-01-01 Networks Associates Technology, Inc. Cryptographic system and methodology for creating and managing crypto policy on certificate servers
US6289509B1 (en) * 1998-09-01 2001-09-11 Pkware, Inc. Software patch generator
US6788788B1 (en) * 1998-09-16 2004-09-07 Murata Kikai Kabushiki Kaisha Cryptographic communication method, encryption method, and cryptographic communication system
US6345101B1 (en) * 1998-10-07 2002-02-05 Jayant Shukla Cryptographic method and apparatus for data communication and storage
US6347143B1 (en) 1998-12-15 2002-02-12 Philips Electronics No. America Corp. Cryptographic device with encryption blocks connected parallel
JP2000181803A (ja) 1998-12-18 2000-06-30 Fujitsu Ltd 鍵管理機能付電子データ保管装置および電子データ保管方法
US6356941B1 (en) * 1999-02-22 2002-03-12 Cyber-Ark Software Ltd. Network vaults
US6625734B1 (en) * 1999-04-26 2003-09-23 Disappearing, Inc. Controlling and tracking access to disseminated information
US6826687B1 (en) * 1999-05-07 2004-11-30 International Business Machines Corporation Commitments in signatures
US7450717B1 (en) 1999-06-08 2008-11-11 General Instruments Corporation Self authentication ciphertext chaining
US6957334B1 (en) 1999-06-23 2005-10-18 Mastercard International Incorporated Method and system for secure guaranteed transactions over a computer network
AU6053700A (en) * 1999-06-28 2001-01-31 Starpay.Com, Inc. Apparatus and method for performing secure network transactions
US20010051902A1 (en) * 1999-06-28 2001-12-13 Messner Marc A. Method for performing secure internet transactions
AU7705300A (en) 1999-09-20 2001-04-24 Ethentica, Inc. Trust arbitrage in cryptographic authentication
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
US6978367B1 (en) * 1999-10-21 2005-12-20 International Business Machines Corporation Selective data encryption using style sheet processing for decryption by a client proxy
US6879988B2 (en) 2000-03-09 2005-04-12 Pkware System and method for manipulating and managing computer archive files
US20020046359A1 (en) * 2000-03-16 2002-04-18 Boden Scott T. Method and apparatus for secure and fault tolerant data storage
US6898579B1 (en) * 2000-04-06 2005-05-24 Xerox Corporation System, method and article of manufacture for contract term certification utilizing a network
AU7182701A (en) * 2000-07-06 2002-01-21 David Paul Felsher Information record infrastructure, system and method
US7165175B1 (en) 2000-09-06 2007-01-16 Widevine Technologies, Inc. Apparatus, system and method for selectively encrypting different portions of data sent over a network
AUPQ993100A0 (en) 2000-09-06 2000-09-28 Software Engineering Australia (Western Australia) Limited System and method for transmitting and storing sensitive data transmitted over a communications network
US7191252B2 (en) * 2000-11-13 2007-03-13 Digital Doors, Inc. Data security system and method adjunct to e-mail, browser or telecom program
US7313825B2 (en) * 2000-11-13 2007-12-25 Digital Doors, Inc. Data security system and method for portable device
US7349987B2 (en) * 2000-11-13 2008-03-25 Digital Doors, Inc. Data security system and method with parsing and dispersion techniques
US20030058274A1 (en) 2000-11-17 2003-03-27 Jake Hill Interface device
US7602904B2 (en) * 2000-11-27 2009-10-13 Rsa Security, Inc. Order invariant fuzzy commitment system
US20020129235A1 (en) * 2001-01-11 2002-09-12 Ryuichi Okamoto Digital data distributing system
US20020071566A1 (en) * 2000-12-11 2002-06-13 Kurn David Michael Computer system employing a split-secret cryptographic key linked to a password-based cryptographic key security scheme
US7440953B2 (en) * 2001-01-25 2008-10-21 Content Directions, Inc. Apparatus, method and system for directory quality assurance
US6760549B2 (en) * 2001-01-30 2004-07-06 The Regents Of The University Of California Optical layer multicasting using a multiple sub-carrier header and multicasting switch
US7167565B2 (en) * 2001-03-06 2007-01-23 Arcot Systems, Inc. Efficient techniques for sharing a secret
CA2445573A1 (en) * 2001-04-27 2002-11-07 Massachusetts Institute Of Technology Method and system for micropayment transactions
FI114062B (fi) * 2001-06-08 2004-07-30 Nokia Corp Menetelmä tiedonsiirron turvallisuuden varmistamiseksi, tiedonsiirtojärjestelmä ja tiedonsiirtolaite
WO2003015376A1 (en) * 2001-08-04 2003-02-20 Kontiki, Inc. Method and apparatus for dynamically configuring network communication parameters for an application
US20030051159A1 (en) * 2001-09-11 2003-03-13 Mccown Steven H Secure media transmission with incremental decryption
CA2358980A1 (en) * 2001-10-12 2003-04-12 Karthika Technologies Inc. Distributed security architecture for storage area networks (san)
TWI259366B (en) 2002-02-20 2006-08-01 Nagracard Sa Data block storing method in a memory
US20030167408A1 (en) * 2002-03-01 2003-09-04 Fitzpatrick Gregory P. Randomized bit dispersal of sensitive data sets
AU2003251076A1 (en) * 2002-07-29 2004-02-23 Koninklijke Philips Electronics N.V. Security system for apparatuses in a wireless network
US7725730B2 (en) * 2002-08-09 2010-05-25 Emc Corporation Cryptographic methods and apparatus for secure authentication
US7428751B2 (en) * 2002-12-05 2008-09-23 Microsoft Corporation Secure recovery in a serverless distributed file system
EP1593068A4 (en) * 2003-01-25 2008-10-01 Chockstone Inc MICROPAYMENT PROCESSING AND SYSTEM
US8108678B1 (en) * 2003-02-10 2012-01-31 Voltage Security, Inc. Identity-based signcryption system
JP4292835B2 (ja) * 2003-03-13 2009-07-08 沖電気工業株式会社 秘密再構成方法、分散秘密再構成装置、及び秘密再構成システム
JP2005032130A (ja) * 2003-07-10 2005-02-03 Sony Corp データ管理装置、およびデータ管理方法、並びにコンピュータ・プログラム
CN1926793A (zh) * 2004-03-09 2007-03-07 汤姆逊许可证公司 通过多信道授权管理和控制的安全数据传送
EP1728220A2 (en) * 2004-03-25 2006-12-06 Cryptomathic A/S Electronic voting systems
US8050409B2 (en) * 2004-04-02 2011-11-01 University Of Cincinnati Threshold and identity-based key management and authentication for wireless ad hoc networks
US8015211B2 (en) * 2004-04-21 2011-09-06 Architecture Technology Corporation Secure peer-to-peer object storage system
US7886345B2 (en) * 2004-07-02 2011-02-08 Emc Corporation Password-protection module
US7451325B2 (en) * 2004-08-02 2008-11-11 At&T Intellectual Property I, L.P. Methods, systems and computer program products for detecting tampering of electronic equipment by varying a verification process
CN101375284B (zh) 2004-10-25 2012-02-22 安全第一公司 安全数据分析方法和系统
US7266692B2 (en) * 2004-12-17 2007-09-04 Ntt Docomo, Inc. Use of modular roots to perform authentication including, but not limited to, authentication of validity of digital certificates
US8156029B2 (en) * 2005-02-24 2012-04-10 Michael Gregory Szydlo Process for verifiably communicating risk characteristics of an investment portfolio
JP2005223953A (ja) 2005-04-22 2005-08-18 Fuji Xerox Co Ltd 暗号方式、暗号情報生成装置、暗号情報送信装置、および方法、並びにコンピュータ読み取り可能な記録媒体
JP2008541169A (ja) * 2005-05-13 2008-11-20 テンプル・ユニバーシティ−オブ・ザ・コモンウェルス・システム・オブ・ハイアー・エデュケイション 低オーバーヘッド情報コンテンツにおける秘密分散技法
US20060282681A1 (en) 2005-05-27 2006-12-14 Scheidt Edward M Cryptographic configuration control
US7577689B1 (en) * 2005-06-15 2009-08-18 Adobe Systems Incorporated Method and system to archive data
US20070206786A1 (en) * 2005-08-31 2007-09-06 Skyetek, Inc. Rfid security system
EP1839405B1 (en) * 2005-10-27 2013-04-24 NDS Limited Network security system
AU2006350252B2 (en) 2005-11-18 2010-10-14 Security First Corporation Secure data parser method and system
JP2007299088A (ja) * 2006-04-28 2007-11-15 Fujitsu Ltd データ保護システム、方法及びプログラム
WO2008127309A2 (en) 2006-11-07 2008-10-23 Security First Corporation Systems and methods for distributing and securing data
CN105224417A (zh) 2006-12-05 2016-01-06 安全第一公司 改进的磁带备份方法
US20090327141A1 (en) * 2007-04-18 2009-12-31 Rabin Michael O Highly efficient secrecy-preserving proofs of correctness of computation
CN102932136B (zh) 2007-09-14 2017-05-17 安全第一公司 用于管理加密密钥的系统和方法

Also Published As

Publication number Publication date
CA2668676C (en) 2016-01-05
EP2100404A2 (en) 2009-09-16
US9407431B2 (en) 2016-08-02
WO2008127309A2 (en) 2008-10-23
US20150016604A1 (en) 2015-01-15
US8787583B2 (en) 2014-07-22
AU2007351552B2 (en) 2010-10-14
HK1134725A1 (zh) 2010-05-07
CN103188081A (zh) 2013-07-03
AU2011200163C1 (en) 2015-02-05
HK1223463A1 (zh) 2017-07-28
AU2007351552A1 (en) 2008-10-23
ES2568661T3 (es) 2016-05-03
WO2008127309A3 (en) 2009-02-19
US20120163592A1 (en) 2012-06-28
CA2904746A1 (en) 2008-10-23
US8155322B2 (en) 2012-04-10
US9774449B2 (en) 2017-09-26
AU2011200163A1 (en) 2011-02-03
EP2100404B1 (en) 2016-01-27
US20080137857A1 (en) 2008-06-12
CN101569132A (zh) 2009-10-28
AU2011200163B2 (en) 2014-07-31
US20180097624A1 (en) 2018-04-05
CA2668676A1 (en) 2008-10-23
US20170005796A1 (en) 2017-01-05
CN101569132B (zh) 2013-04-17
EP3010174A1 (en) 2016-04-20

Similar Documents

Publication Publication Date Title
US9774449B2 (en) Systems and methods for distributing and securing data
JP6120895B2 (ja) クラウド内にデータを確保するシステムおよび方法
JP6118778B2 (ja) 移動中のデータをセキュア化するためのシステムおよび方法
US9135456B2 (en) Secure data parser method and system
AU2009201911B2 (en) Secure Data Parser Method and System
JP2015097095A (ja) 移動中のデータをセキュア化するためのシステムおよび方法
AU2015227516B2 (en) Secure Data Parser Method and System
AU2014240194B2 (en) Systems and methods for distributing and securing data

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 11A ANUIDADE.

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

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