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

ES2568661T3 - Sistemas y métodos para distribuir y garantizar datos - Google Patents

Sistemas y métodos para distribuir y garantizar datos Download PDF

Info

Publication number
ES2568661T3
ES2568661T3 ES07873471.2T ES07873471T ES2568661T3 ES 2568661 T3 ES2568661 T3 ES 2568661T3 ES 07873471 T ES07873471 T ES 07873471T ES 2568661 T3 ES2568661 T3 ES 2568661T3
Authority
ES
Spain
Prior art keywords
data
scheme
sharing
link
engine
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
ES07873471.2T
Other languages
English (en)
Inventor
Mihir Bellare
Phillip Rogaway
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Security First Corp
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
Application granted granted Critical
Publication of ES2568661T3 publication Critical patent/ES2568661T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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)

Abstract

Un método para garantizar datos generando una recopilación de fragmentos de los datos, comprendiendo el método: aplicar un mecanismo de compartición de un esquema de compartición de secretos de cálculo a los datos para producir una recopilación de comparticiones; generar un valor aleatorio o pseudo-aleatorio; calcular un conjunto de valores de vinculación y un conjunto de valores de no vinculación a partir del valor aleatorio o pseudo-aleatorio y la recopilación de las comparticiones; producir cada fragmento en la recopilación de fragmentos combinando una compartición, un valor de no vinculación, y al menos un valor de vinculación del conjunto de valores de vinculación; y almacenar cada fragmento en al menos un depósito de datos.

Description

5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Sistemas y metodos para distribuir y garantizar datos Referenda cruzada a las solicitudes relacionadas
Esta solicitud reivindica el beneficio de la solicitud provisional de Estados Unidos N.° 60/857.345, presentada el 7 de noviembre de 2006.
Campo de la invencion
La presente invencion se refiere, en general, a un sistema para garantizar los datos contra el acceso o el uso no autorizado. La presente invencion tambien se refiere, en general, a tecnicas de cifrado para la construccion de esquemas de comparticion de secretos, y mas especlficamente a sistemas y metodos para soportar un esquema de comparticion de secretos que puede tolerar el dano a una o mas comparticiones.
Antecedentes de la invencion
En la sociedad actual, los individuos y las empresas realizan una cantidad cada vez mayor de actividades en y sobre los sistemas informaticos. Estos sistemas informaticos, que incluyen las redes informaticas propietarias y no propietarias, a menudo almacenan, archivan y transmiten todo tipo de information sensible. Por lo tanto, existe una necesidad cada vez mayor de garantizar que los datos almacenados y transmitidos a traves de estos sistemas no pueden leerse o comprometerse de algun otro modo.
Una solution comun para garantizar los sistemas informaticos es proporcionar de manera funcional un nombre de usuario y contrasena. Sin embargo, la gestion de contrasenas ha demostrado ser bastante costosa con un gran porcentaje de las llamadas al servicio de ayuda relacionadas con los problemas de contrasenas. Por otra parte, las contrasenas proporcionan poca seguridad en cuanto a que, en general, se almacenan en un archivo susceptible a un acceso inadecuado, a traves de, por ejemplo, los ataques de fuerza bruta.
Otra solucion para garantizar los sistemas informaticos es proporcionar unas infraestructuras de cifrado. La criptografla, en general, se refiere a la protection de datos mediante la transformation o el cifrado de los mismos a un formato ilegible. Solo aquellos que poseen la clave(s) del cifrado pueden descifrar los datos en un formato utilizable. La criptografla se usa para identificar usuarios, por ejemplo, la autenticacion, para permitir privilegios de acceso, por ejemplo, la autorizacion, para crear certificados y firmas digitales, y similares. Un sistema de criptografla popular es un sistema de clave publica que usa dos claves, una clave publica conocida por todos y una clave privada que solo conoce el propietario individual o negocio de la misma. En general, los datos cifrados con una clave se descifran con la otra y la clave no puede recrearse a partir de la otra.
Desafortunadamente, incluso los sistemas criptograficos de clave publica tlpicos anteriores son aun muy dependientes del usuario para la seguridad. Por ejemplo, los sistemas criptograficos entregan la clave privada al usuario, por ejemplo, a traves del navegador del usuario. A continuation, los usuarios no sofisticados, en general, almacenan la clave privada en un disco duro accesible a los demas a traves de un sistema informatico abierto, como, por ejemplo, Internet. Por otro lado, los usuarios pueden escoger nombres pobres para los archivos que contienen su clave privada, como, por ejemplo “clave”. El resultado de lo anterior y otros actos es permitir que la clave o las claves sean susceptibles de comprometerse.
Ademas de los compromisos anteriores, un usuario puede guardar su clave privada en un sistema informatico configurado con un sistema de copia de seguridad o archivado, dando como resultado potencialmente en copias de la clave privada que viaja a traves de multiples dispositivos de almacenamiento informaticos u otros sistemas. Esta brecha de seguridad se denomina a menudo como “migration de clave”. Al igual que en la migration de clave, muchas aplicaciones proporcionan acceso a la clave privada de un usuario a traves de, a lo sumo, un simple acceso de nombre de usuario y contrasena. Como se ha mencionado anteriormente, el acceso de nombre de usuario y contrasena a menudo no proporciona una seguridad adecuada.
Una solucion para aumentar la seguridad de los sistemas criptograficos anteriores es incluir la biometrla como parte de la autenticacion o autorizacion. La biometrla, en general, incluye unas caracterlsticas flsicas medibles, tales como, por ejemplo, las huellas dactilares o la voz que pueden comprobarse mediante un sistema automatizado, como, por ejemplo, la coincidencia de patrones o el reconocimiento de patrones de huellas digitales o patrones de voz. En tales sistemas, los datos biometricos y/o las claves de un usuario pueden almacenarse en los dispositivos informaticos moviles, tales como, por ejemplo, una tarjeta inteligente, un ordenador portatil, un asistente digital personal o un telefono movil, permitiendo de este modo que los datos biometricos o las claves puedan usarse en un ambiente movil.
El sistema criptografico biometrico movil anterior sufre todavla de una variedad de inconvenientes. Por ejemplo, el usuario movil puede perder o romper la tarjeta inteligente o el dispositivo informatico portatil, teniendo de este modo
5
10
15
20
25
30
35
40
45
50
55
60
65
cortado enteramente su acceso a los datos potencialmente importantes. Como alternativa, una persona con malas intenciones puede robar la tarjeta inteligente movil o el dispositivo informatico portatil del usuario y usarlo para robar efectivamente las credenciales digitales del usuario movil. Por otra parte, el dispositivo informatico portatil puede estar conectado a un sistema abierto, tal como Internet, y, como con las contrasenas, el archivo en el que se almacenan los datos biometrics puede ser susceptible de comprometerse a traves de la falta de atencion del usuario para la seguridad o los intrusos maliciosos.
Una forma de proteger los datos contra el acceso no autorizado o el uso no autorizado es usar un esquema de comparticion de secretos. Un esquema de comparticion de secretos es un metodo para dividir una pieza sensible de los datos (por ejemplo, los archivos confidenciales, una clave de cifrado, o cualquier tipo de comunicacion), a veces llamado el secreto, en una recopilacion de piezas, llamadas comparticiones, de tal manera que la posesion de un numero suficiente de comparticiones permite la recuperacion del secreto, pero la posesion de un numero insuficiente de comparticiones proporciona poca o ninguna informacion sobre el secreto que se ha compartido. Estos esquemas son herramientas importantes en la criptografla y la seguridad de la informacion.
Formalmente, un esquema de comparticion de secretos consiste en un par de algoritmos, el algoritmo de comparticion Compartir y el algoritmo de recuperacion Recuperar. El algoritmo de comparticion es normalmente probabilistic (lo que significa que hace elecciones aleatorias), y el algoritmo de recuperacion es normalmente deterministic. El algoritmo de comparticion puede usarse para desmontar o dividir, el secreto en una recopilacion de comparticiones, y el algoritmo de recuperacion puede usarse para volver a montar dichas comparticiones. A la hora del montaje, cada comparticion puede estar presente, en cuyo caso puede proporcionarse una cadena al algoritmo de recuperacion, o es posible que falte una comparticion, en cuyo caso puede suministrarse un valor designado (denominado como, (“◊”) en el presente documento) al algoritmo de recuperacion. Un conjunto de actores que esta autorizado a recuperar el secreto se llama conjunto autorizado, y el conjunto de todos estos actores a veces se llama estructura de acceso.
Los esquemas de comparticion de secretos se han disenado para trabajar en diversas estructuras de acceso, pero la estructura de acceso mas comun es una estructura de acceso umbral, en la que cualquier subconjunto de m o mas actores, de un total de n actores en total, se dice que estan autorizados. Un esquema de comparticion de secretos de una estructura de acceso umbral a veces se llama esquema umbral. Hay dos propiedades de seguridad para cualquier esquema de comparticion de secretos: una propiedad de privacidad y una propiedad de recuperabilidad. La propiedad de privacidad garantiza que las coaliciones no autorizadas de actores no aprenden nada util sobre el secreto. La propiedad de recuperabilidad garantiza que las coaliciones autorizadas de actores en ultima instancia, pueden recuperar el secreto subyacente.
El esquema de comparticion de secretos de Shamir se dice que es un esquema de comparticion de secretos perfecto (PSS). El termino “perfecto” se refiere a que la garantla de privacidad es una informacion teorica y sin ningun error; por lo tanto, las coaliciones no autorizadas de actores no pueden aprender nada util sobre el secreto subyacente en los esquemas de PSS.
Una limitacion con los esquemas de PSS es que el tamano de cada comparticion debe ser al menos tan largo como el tamano del secreto que se comparte. Sin embargo, cuando el secreto incluye un archivo grande o una cadena larga de caracteres, esta limitacion puede llegar a ser diflcil de manejar, aumentando la complejidad global del sistema. En respuesta a esta limitacion, se han desarrollado los esquemas para la comparticion de secretos de calculo (CSS).
Por ejemplo, el esquema CSS de Krawczyk permite que las comparticiones sean mas cortas que el secreto. Por ejemplo, en un esquema umbral de 2 de 3 (lo que significa que dos de tres comparticiones son adecuadas para recuperar el secreto), el secreto S puede dividirse en comparticiones de un tamano aproximadamente de |S|/2 bits, en la que |S| indica la longitud de S. Estas comparticiones cortas no son posibles en la configuracion de pSs. Sin embargo, en los esquemas de CSS la propiedad de privacidad ya no puede ser una informacion absoluta y teorica; mas bien, una coalicion no autorizada de actores puede obtener una pequena cantidad de informacion sobre el secreto compartido a partir de sus comparticiones. Pero, bajo un supuesto de complejidad de calculo, la cantidad de informacion sera insignificante y por lo tanto, en la practica, no es una gran preocupacion.
Una segunda limitacion de los esquemas de PSS se refiere a la falta de robustez encomendada. La robustez significa que un participante defectuoso o contradictorio es incapaz de obligar a la recuperacion de un secreto incorrecto. El modelo para PSS supone que cada comparticion es o “correcto” o “perdido”, pero nunca puede ser incorrecto (por ejemplo, danado o intencionadamente alterado). En la practica, esta suposicion es muy irrazonable porque las comparticiones pueden ser erroneas debido a una serie de factores, entre ellos, por ejemplo, los errores en el almacenamiento, el ruido en un canal de comunicaciones, o debido a las actividades genuinamente contradictorias. Ademas, la falta de robustez no es solo una posibilidad teorica, sino un problema genuino para los esquemas de PSS normales, incluyendo el esquema de comparticion de secretos de Shamir. Con el esquema de Shamir, un adversario puede forzar de hecho la recuperacion de cualquier secreto deseado cambiando de manera apropiada solo una comparticion. Las aplicaciones practicas de los esquemas de comparticion de secretos normalmente necesitan robustez.
5
10
15
20
25
30
35
40
45
50
55
60
65
Sumario de la invencion
Basandose en lo anterior, se necesitan unos sistemas de comparticion de secretos de calculos robustos que sean a la vez eficientes y tengan unas fuertes propiedades de seguridad demostrables bajo unos supuestos criptograficos debiles.
En consecuencia, un aspecto de la presente invencion es proporcionar un metodo para garantizar de manera virtual cualquier tipo de datos de un acceso o uso no autorizado. El metodo comprende una o mas etapas de analizar, dividir y/o separar los datos a garantizarse en dos o mas partes o porciones. El metodo tambien comprende encriptar los datos a garantizarse. El cifrado de los datos puede realizarse antes o despues del primer analisis, division y/o separacion de los datos. Ademas, la etapa de cifrado puede repetirse para una o mas porciones de los datos. Del mismo modo, las etapas de analisis, division y/o separacion pueden repetirse para una o mas porciones de los datos. El metodo tambien comprende de manera opcional almacenar los datos analizados, divididos y/o separados que se han cifrado en una localizacion o en multiples localizaciones. Este metodo tambien comprende de manera opcional reconstituir o volver a montar los datos protegidos en su forma original para el acceso o uso autorizado. Este metodo puede incorporarse en las operaciones de cualquier ordenador, servidor, motor o similares, que sea capaz de ejecutar las etapas deseadas del metodo.
Otro aspecto de la presente invencion proporciona un sistema para garantizar de manera virtual cualquier tipo de datos de un acceso o uso no autorizado. Este sistema comprende un modulo de division de datos, un modulo de manipulacion criptografica, y, de manera opcional, un modulo de ensamble de datos. El sistema puede, en una realizacion, comprender ademas, una o mas instalaciones de almacenamiento de datos en las que pueden almacenarse datos seguros.
Otro aspecto de la invencion incluye usar cualquier algoritmo de analisis y de division adecuado para generar comparticiones de datos. Cualquier combination aleatoria, pseudo-aleatoria, determinista, de los mismos puede emplearse para analizar y dividir los datos.
En otras realizaciones mas, se proporciona un esquema de comparticion de secretos de n partes con un espacio de mensajes S. Puede definirse una familia de adversarios, A. El esquema de comparticion de secretos de n partes puede incluir una o mas de las siguientes cinco primitivas: (1) un algoritmo de cifrado simetrico con claves de k bits y un espacio de mensaje S; (2) un algoritmo de pSs de n partes sobre unos adversarios A con un espacio de mensaje {0,1}k; (3) un algoritmo de dispersion de information de n partes (IDA); (4) un codigo de correction de errores de n partes (ECC) sobre unos adversarios A con un espacio de mensaje {0,1}h; y (5) un esquema de vinculacion aleatorio (o probabillstico). Los datos pueden garantizarse aplicando primero un algoritmo de comparticion de secretos de calculo para los datos a garantizarse. A continuation, puede generarse un valor aleatorio o pseudo-aleatorio. A parti r de la salida del algoritmo de comparticion de secretos y el valor aleatorio o pseudo-aleatorio, puede calcularse un conjunto de valores de vinculacion y de valores de no vinculacion. A continuacion, puede formarse una pluralidad de comparticiones combinando una salida de comparticion del algoritmo de comparticion de secretos, un valor de no vinculacion, y uno o mas valores de vinculacion. A continuacion, las comparticiones pueden almacenarse en una o mas localizaciones flsicas (por ejemplo, en una unidad de disco duro magnetico), o en una o mas localizaciones geograficas (por ejemplo, diferentes depositos de datos o servidores).
En algunas realizaciones, puede usarse un esquema de vinculacion probabillstica para calcular el conjunto de valores de vinculacion y un conjunto de valores de no vinculacion. Cada comparticion puede definirse por una salida de comparticion de un algoritmo de comparticion de secretos de calculo, un valor de no vinculacion, y uno o mas valores de vinculacion del conjunto de valores de vinculacion.
En algunas realizaciones, puede generarse y usarse una clave de cifrado para cifrar los datos de usuario para crear una portion de texto cifrado. Un conjunto de n comparticiones de clave puede crearse aplicando un algoritmo de comparticion de secretos a la clave de cifrado. A continuacion, un conjunto de n fragmentos de texto cifrado puede crearse aplicando un algoritmo de dispersion de informacion (IDA) para el texto cifrado. Un conjunto de n valores de vinculacion y de n valores de no vinculacion puede calcularse aplicando un esquema de vinculacion probabillstica para cada una de las n comparticiones de clave y los fragmentos de texto cifrado. Pueden formarse N fragmentos de datos, en el que cada fragmento de datos puede ser una funcion de una comparticion de clave, un texto cifrado, un valor de no vinculacion, y uno o mas valores de vinculacion. Finalmente, los fragmentos de datos pueden almacenarse en uno o mas dispositivos de almacenamiento logicos (por ejemplo, n dispositivos de almacenamiento logicos). Uno o mas de estos dispositivos de almacenamiento logicos pueden estar localizados en diferentes localizaciones geograficas o flsicas. A continuacion, los datos de usuario pueden reconstituirse combinando al menos un numero predefinido de fragmentos de datos. En algunas realizaciones, pueden usarse diversos codigos de correccion de errores para proporcionar una recopilacion adecuada de los valores de vinculacion a cada actor.
Breve description de los dibujos
La presente invencion se describe con mas detalle a continuacion en conexion con los dibujos adjuntos, que estan destinados a ilustrar y no a limitar la invencion, y en los que:
5
10
15
20
25
30
35
40
45
50
55
60
65
La figura 1 ilustra un diagrama de bloques de un sistema criptografico, de acuerdo con los aspectos de una realizacion de la invention;
La figura 2 ilustra un diagrama de bloques del motor de confianza de la figura 1, de acuerdo con los aspectos de una realizacion de la invencion;
La figura 3 ilustra un diagrama de bloques del motor de transaction de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion;
La figura 4 ilustra un diagrama de bloques del depositario de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion;
La figura 5 ilustra un diagrama de bloques del motor de autenticacion de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion;
La figura 6 ilustra un diagrama de bloques del motor de cifrado de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion;
La figura 7 es un diagrama de bloques ilustrativo que representa la estructura global de un esquema de comparticion de secretos de calculo robusto (RCSS), de acuerdo con una realizacion de la invencion;
La figura 8 ilustra el proceso de comparticion de secretos, de acuerdo con una realizacion de la invencion;
La figura 9 ilustra con mayor detalle las etapas de vinculacion mostradas en la figura 8, de acuerdo con una realizacion de la invencion;
La figura 10 ilustra el proceso de comparticion basado en una abstraction diferente de la construction de un esquema de RCSS a partir de un esquema de CSS y de un esquema de vinculacion; y
La figura 11 ilustra con mas detalle las etapas de verification en el esquema de vinculacion probabillstica mostrado en la figura 10.
Description detallada de la invencion
Un aspecto de la presente invencion es proporcionar un sistema criptografico en el que uno o mas servidores seguros, o un motor de confianza, almacenan las claves de cifrado y los datos de autenticacion de usuario. Los usuarios acceden a la funcionalidad de los sistemas criptograficos convencionales a traves del acceso de red al motor de confianza, sin embargo, el motor de la confianza no divulga las claves reales y otros datos de autenticacion y, por lo tanto, las claves y los datos permanecen seguros. Este almacenamiento centrado en el servidor de claves y de datos de autenticacion mantiene la seguridad independiente del usuario, la portabilidad, la disponibilidad y la sencillez.
Debido a que los usuarios pueden confiar en el sistema criptografico para realizar la autenticacion de usuario y documentos y otras funciones de cifrado, puede incorporarse una amplia variedad de funcionalidades en el sistema. Por ejemplo, el proveedor del motor de confianza puede garantizar contra el acuerdo de repudio, por ejemplo, autenticando a los participantes del acuerdo, firmando de manera digital el acuerdo en nombre de o para los participantes, y almacenar un registro del acuerdo firmado de manera digital por cada participante. Ademas, el sistema criptografico puede monitorizar los acuerdos y determinar la aplicacion de diferentes grados de autenticacion, a partir de, por ejemplo, el precio, el usuario, el proveedor, la localization geografica, el lugar de uso, o similares.
Para facilitar una comprension completa de la invencion, el resto de la descripcion detallada describe la invencion con referencia a las figuras, en las que los elementos similares estan referenciados con numeros similares completamente.
La figura 1 ilustra un diagrama de bloques de un sistema criptografico 100, de acuerdo con los aspectos de una realizacion de la invencion. Como se muestra en la figura 1, el sistema criptografico 100 incluye un sistema de usuario 105, un motor de confianza 110, una autoridad de certification 115, y un sistema de proveedor 120, que se comunica a traves de un enlace de comunicaciones 125.
De acuerdo con una realizacion de la invencion, el sistema de usuario 105 comprende un ordenador de fin general convencional que tiene uno o mas microprocesadores, tales como, por ejemplo, un procesador basado en Intel. Ademas, el sistema de usuario 105 incluye un sistema operativo apropiado, tal como, por ejemplo, un sistema operativo capaz de incluir graficos o ventanas, tales como Windows, Unix, Linux, o similares. Como se muestra en la figura 1, el sistema de usuario 105 puede incluir un dispositivo biometrico 107. El dispositivo biometrico 107 puede capturar de manera ventajosa unos datos biometricos del usuario y transferir los datos biometricos capturados al motor de confianza 110. De acuerdo con una realizacion de la invencion, el dispositivo biometrico puede comprender de manera ventajosa un dispositivo que tenga atributos y caracterlsticas similares a los divulgados en la solicitud de patente de Estados Unidos N.° 08/926.277, presentada el 5 de septiembre de 1997, titulada “ “RELIEF OBJECT IMAGE GENERATOR”, en la solicitud de patente de Estados Unidos N.° 09/558.634, presentada el 26 de abril de 2000, titulada “IMAGING DEVICE FOR A RELIEF OBJECT AND SYSTEM AND METHOD OF USING THE IMAGE DEVICE”, en la solicitud de Patente de Estados Unidos N.° 09/435.011, presentada el 5 de noviembre de 1999, titulada “RELIEF OBJECT SENSOR ADAPTOR”, y en la solicitud de patente de Estados Unidos N.° 09/477.943, presentada el 5 de enero del ano 2000, titulada “PLANAR OPTICAL IMAGE SENSOR AND SYSTEM FOR GENERATING AN ELECTRONIC IMAGE OF A RELIEF OBJECT FOR FINGER-PRINT READING”, todas las cuales son propiedad de la cesionaria presente.
5
10
15
20
25
30
35
40
45
50
55
60
65
Ademas, el sistema de usuario 105 puede conectarse al enlace de comunicaciones 125 a traves de un proveedor de servicios convencional, tal como, por ejemplo, una conexion telefonica, una llnea de abonado digital (DSL), un modem por cable, una conexion de fibra, o similares. De acuerdo con otra realization, el sistema de usuario 105 se conecta al enlace de comunicaciones 125 a traves de una conectividad de red, tal como, por ejemplo, una red de area local o amplia. De acuerdo con una realizacion, el sistema operativo incluye una pila TCP/IP que maneja todo el trafico de mensajes entrantes y salientes que pasa a traves del enlace de comunicaciones 125.
Aunque el sistema de usuario 105 se divulga con referencia a las realizaciones anteriores, la invention no esta destinada a limitarse por las mismas. Mas bien, un experto en la materia reconocera a partir de la divulgation en el presente documento, un gran numero de realizaciones alternativas del sistema de usuario 105, incluyendo casi cualquier dispositivo informatico capaz de enviar o recibir information desde otro sistema informatico. Por ejemplo, el sistema de usuario 105 puede incluir, pero no se limitan a, una estacion de trabajo informatica, una television interactiva, un kiosco interactivo, un dispositivo de informatization movil personal, como por ejemplo, un asistente digital, un telefono movil, un ordenador portatil, o similares, un dispositivo de comunicaciones inalambricas, una tarjeta inteligente, un dispositivo informatico integrado, o similares, que pueden interactuar con el enlace de comunicaciones 125. En estos sistemas alternativos, los sistemas operativos son probablemente diferentes y se adaptan al dispositivo especlfico. Sin embargo, de acuerdo con una realizacion, los sistemas operativos siguen proporcionando de manera ventajosa los protocolos de comunicaciones apropiados necesarios para establecer la comunicacion con el enlace de comunicaciones 125.
La figura 1 ilustra el motor de confianza 110. De acuerdo con una realizacion, el motor de confianza 110 comprende uno o mas servidores seguros para acceder y almacenar la informacion sensible, que puede ser cualquier tipo o forma de datos, tales como, pero no limitado a texto, audio, video, datos de autenticacion de usuario y claves de cifrado publicas y privadas. De acuerdo con una realizacion, los datos de autenticacion incluyen datos disenados para identificar de manera unica a un usuario del sistema criptografico 100. Por ejemplo, los datos de autenticacion pueden incluir un numero de identification de usuario, uno o mas datos biometricos, y una serie de preguntas y respuestas generadas por el motor de confianza 110 o el usuario, pero respondidas inicialmente por el usuario en el registro. Las preguntas anteriores pueden incluir datos demograficos, tales como el lugar de nacimiento, la direction, el aniversario, o similares, datos personales, tales como el nombre de soltera de la madre, el helado favorito, o similares, u otros datos disenados para identificar de manera unlvoca al usuario. El motor de confianza 110 compara los datos de autenticacion del usuario asociados con una transaction en curso, con los datos de autenticacion proporcionados en un momento anterior tales como, por ejemplo, durante el registro. El motor de confianza 110 puede necesitar de manera ventajosa que el usuario produzca los datos de autenticacion en el momento de cada transaccion, o, el motor de confianza 110 puede permitir de manera ventajosa que el usuario produzca de manera periodica los datos de autenticacion, tal como en el principio de una cadena de transacciones o al iniciar sesion en un sitio web de proveedor especlfico.
De acuerdo con la realizacion en la que el usuario produce unos datos biometricos, el usuario proporciona una caracterlstica flsica; tal como, pero no limitado a, una exploration facial, una exploration de mano, una exploration de oldo, una exploracion del iris, una exploracion de retina, el patron vascular, el ADN, una huella digital, la escritura o el habla, al dispositivo biometrico 107. El dispositivo biometrico produce de manera ventajosa un patron electronico, o biometrico, de la caracterlstica flsica. El patron electronico se transfiere a traves del sistema de usuario 105 al motor de confianza 110, o para fines de autenticacion o de registro.
Una vez que el usuario produce los datos de autenticacion adecuados y que el motor de confianza 110 determina una coincidencia positiva entre esos datos de autenticacion (los datos de autenticacion actuales) y los datos de autenticacion proporcionados en el momento del registro (los datos de autenticacion de registro), el motor de confianza 110 proporciona al usuario la funcionalidad de cifrado completa. Por ejemplo, el usuario autenticado de manera correcta puede emplear de manera ventajosa el motor de confianza 110 para realizar un calculo de clave, una firma digital, un cifrado y un descifrado (a menudo denominado en conjunto solo como el cifrado), la creation o la distribution de certificados digitales, y similares. Sin embargo, las claves de cifrado privadas usadas en las funciones de cifrado no estaran disponibles fuera del motor de confianza 110, garantizando de este modo la integridad de las claves de cifrado.
De acuerdo con una realizacion, el motor de confianza 110 genera y almacena las claves de cifrado. De acuerdo con otra realizacion, al menos una clave de cifrado esta asociada con cada usuario. Por otra parte, cuando las claves de cifrado incluyen la tecnologla de clave publica, cada clave privada asociada con un usuario se genera dentro de, y no se libera de, el motor de confianza 110. Por lo tanto, siempre que el usuario tiene acceso al motor de confianza 110, el usuario puede realizar las funciones de cifrado usando su clave privada o publica. Este acceso remoto permite de manera ventajosa que los usuarios permanezcan completamente moviles y accedan a la funcionalidad de cifrado a traves de practicamente cualquier conexion a Internet, tales como los telefonos moviles y satelitales, los kioscos, los ordenadores portatiles, las habitaciones de hotel y similares.
De acuerdo con otra realizacion, el motor de confianza 110 realiza la funcionalidad de cifrado usando un par de claves generadas por el motor de confianza 110. De acuerdo con esta realizacion, el motor de confianza 110 primero autentica al usuario, y despues de que el usuario haya producido de manera correcta que los datos de autenticacion
5
10
15
20
25
30
35
40
45
50
55
60
65
coincidan con los datos de autenticacion registrados, el motor de confianza 110 usa su propio par de claves de cifrado para realizar las funciones de cifrado en nombre del usuario autenticado.
Un experto en la materia reconocera a partir de la divulgacion en el presente documento que las claves de cifrado pueden incluir de manera ventajosa algunas o todas las claves simetricas, las claves publicas y las claves privadas. Ademas, un experto en la materia reconocera a partir de la divulgacion en el presente documento que las claves anteriores pueden implementarse con un amplio numero de algoritmos disponibles a partir de tecnologlas comerciales, tales como, por ejemplo, RSA, ELGAMAL, o similares.
La figura 1 ilustra tambien la autoridad de certificacion 115. De acuerdo con una realizacion, la autoridad de certificacion 115 puede comprender de manera ventajosa una organizacion o empresa de terceros de confianza que emite los certificados digitales, tales como, por ejemplo, VeriSign, Baltimore, Entrust, o similares. El motor de confianza 110 puede transmitir de manera ventajosa las solicitudes de certificados digitales, a traves de uno o mas protocolos de certificados digitales convencionales, tales como, por ejemplo, PKCS10, a la autoridad de certificacion 115. En respuesta, la autoridad de certificacion 115 emitira un certificado digital en uno o mas de un numero de diferentes protocolos, tales como, por ejemplo, PKCS7. De acuerdo con una realizacion de la invencion, el motor de confianza 110 solicita los certificados digitales de varias o todas las autoridades de certificacion prominentes 115 de tal manera que el motor de confianza 110 tiene acceso a un certificado digital correspondiente a la norma de certificacion de cualquier parte solicitante.
De acuerdo con otra realizacion, el motor de confianza 110 realiza internamente emisiones de certificados. En esta realizacion, el motor de confianza 110 puede acceder a un sistema de certificados para generar los certificados y/o puede generar internamente los certificados cuando se solicitan, tal como, por ejemplo, en el momento de la generacion de las claves o en el certificado convencional solicitado en el momento de la solicitud. El motor de confianza 110 se divulgara en mayor detalle a continuacion.
La figura 1 tambien ilustra el sistema de proveedor 120. De acuerdo con una realizacion, el sistema de proveedor 120 comprende de manera ventajosa un servidor web. Los servidores de web normales, en general, sirven contenido a traves de Internet usando uno de diversos lenguajes de marcado de Internet o las normas de formato de documento, tales como el lenguaje de marcado de hipertexto (HTML) o el lenguaje de marcado extensible (XML). El servidor web acepta las solicitudes de los navegadores como Netscape e Internet Explorer y, a continuacion, devuelve los documentos electronicos adecuados. Una serie de tecnologlas del lado del servidor o del cliente pueden usarse para aumentar la potencia del servidor web mas alla de su capacidad de entregar los documentos electronicos convencionales. Por ejemplo, estas tecnologlas incluyen las secuencias de comandos de interfaz de pasarela comun (CGI), la capa de conexion segura (SSL) y las paginas de servidor activas (ASP). El sistema del proveedor 120 puede proporcionar de manera ventajosa contenidos electronicos relativos a las transacciones comerciales, personales, educativas o de otro tipo.
Aunque el sistema del proveedor 120 se divulga con referencia a las realizaciones anteriores, la invencion no esta destinada a limitarse por las mismas. Mas bien, un experto en la materia reconocera a partir de la divulgacion en el presente documento que el sistema de proveedor 120 puede comprender de manera ventajosa cualquiera de los dispositivos descritos con referencia al sistema de usuario 105 o a una combinacion de los mismos.
La figura 1 tambien ilustra el enlace de comunicaciones 125 que conecta el sistema de usuario 105, el motor de confianza 110, la autoridad de certificacion 115, y el sistema de proveedor 120. De acuerdo con una realizacion, el enlace de comunicaciones 125 comprende preferentemente la Internet. La Internet, tal como se usa en esta divulgacion es una red mundial de ordenadores. La estructura de la Internet, que es bien conocida por los expertos en la materia, incluye una estructura principal de red con unas redes que se ramifican desde la estructura principal. Estas ramificaciones, a su vez, tienen ramificaciones de redes a partir de las mismas, y as! sucesivamente. Los routers mueven los paquetes de informacion entre los niveles de la red, y a continuacion de una red a otra red, hasta que el paquete llega a la vecindad de su destino. Desde el destino, el host de la red de destino dirige el paquete de informacion al terminal apropiado, o nodo. En una realizacion ventajosa, los hubs de enrutamiento de Internet comprenden los servidores del sistema de nombres de dominio (DNS) que usan el protocolo de control de transmision/protocolo de internet (TCP/IP) como es bien conocido en la tecnica. Los hubs de enrutamiento se conectan a uno o mas hubs de enrutamiento a traves de los enlaces de comunicaciones de alta velocidad.
Una parte popular de la Internet es la World Wide Web. La World Wide Web contiene diferentes ordenadores, que almacenan los documentos capaces de visualizar informacion grafica y textual. Los ordenadores que proporcionan informacion sobre la World Wide Web normalmente se denominan “sitios web”. Un sitio web esta definido por una direccion de Internet que tiene una pagina electronica asociada. La pagina electronica puede identificarse por un localizador de recursos uniforme (URL). En general, una pagina electronica es un documento que organiza la presentacion del texto, de las imagenes graficas, el audio, el video, y asi sucesivamente.
Aunque el enlace de comunicaciones 125 se divulga en terminos de su realizacion preferida, un experto en la materia reconocera a partir de la divulgacion en el presente documento que el enlace de comunicaciones 125 puede incluir una amplia gama de enlaces de comunicaciones interactivos. Por ejemplo, el enlace de comunicaciones 125
5
10
15
20
25
30
35
40
45
50
55
60
65
puede incluir redes de television interactivas, redes telefonicas, sistemas de transmision inalambrica de datos, sistemas de cable de dos vias, redes informaticas privadas o publicas personalizadas, redes de kioscos interactivos, redes de cajeros automaticos, enlaces directos, redes por satelite o moviles, y similares.
La figura 2 ilustra un diagrama de bloques del motor de confianza 110 de la figura 1, de acuerdo con los aspectos de una realizacion de la invencion. Como se muestra en la figura 2, el motor de confianza 110 incluye un motor de transaccion 205, un depositario 210, un motor de autenticacion 215, y un motor de cifrado 220. De acuerdo con una realizacion de la invencion, el motor de confianza 110 incluye tambien un almacenamiento masivo 225. Como se muestra ademas en la figura 2, el motor de transaccion 205 se comunica con el depositario 210, el motor de autenticacion 215, y el motor de cifrado 220, junto con el almacenamiento masivo 225. Ademas, el depositario 210 se comunica con el motor de autenticacion 215, el motor de cifrado 220, y el almacenamiento masivo 225. Por otra parte, el motor de autenticacion 215 se comunica con el motor de cifrado 220. De acuerdo con una realizacion de la invencion, algunas o todas de las comunicaciones anteriores pueden comprender de manera ventajosa la transmision de documentos XML a direcciones IP que corresponden al dispositivo de recepcion. Como se ha mencionado anteriormente, los documentos XML permiten de manera ventajosa a los disenadores crear sus propias etiquetas de documentos personalizadas, lo que permite la definicion, la transmision, la validacion y la interpretacion de los datos entre las aplicaciones y entre las organizaciones. Ademas, algunas o todas de las comunicaciones anteriores pueden incluir las tecnologias SSL convencionales.
De acuerdo con una realizacion, el motor de transaccion 205 comprende un dispositivo de enrutamiento de datos, tal como un servidor web convencional disponible de Netscape, Microsoft, Apache, o similares. Por ejemplo, el servidor web puede recibir de manera ventajosa unos datos de entrada desde el enlace de comunicaciones 125. De acuerdo con una realizacion de la invencion, los datos de entrada se dirigen a un sistema de seguridad de front-end para el motor de confianza 110. Por ejemplo, el sistema de seguridad de front-end puede incluir de manera ventajosa un cortafuegos, un sistema de deteccion de intrusiones que busca los perfiles de ataque conocidos, y/o un escaner de virus. Despues de limpiar el sistema de seguridad de front-end, los datos se reciben por el motor de transaccion 205 y se enrutan a uno de entre el depositario 210, el motor de autenticacion 215, el motor de cifrado 220, y el almacenamiento masivo 225. Ademas, el motor de transaccion 205 monitoriza los datos de entrada del motor de autenticacion 215 y del motor de cifrado 220, y enruta los datos hacia los sistemas especificos a traves del enlace de comunicaciones 125. Por ejemplo, el motor de transaccion 205 puede enrutar de manera ventajosa los datos hacia el sistema de usuario 105, la autoridad de certificacion 115, o el sistema de proveedor 120.
De acuerdo con una realizacion, los datos se enrutan usando tecnicas de enrutamiento HTTP convencionales, tales como, por ejemplo, las que emplean las URL o los indicadores de recursos uniforme (URI). Los URI son similares a las URL, sin embargo, los URI indican normalmente la fuente de los archivos o las acciones, tal como, por ejemplo, ejecutables, secuencias de comandos, y similares. Por lo tanto, de acuerdo con la una realizacion, el sistema de usuario 105, la autoridad de certificacion 115, el sistema de proveedor 120, y los componentes del motor de confianza 210, incluyen de manera ventajosa datos suficientes dentro de las URL o los URI de comunicacion al motor de transaccion 205 para enrutar adecuadamente los datos en todo el sistema criptografico.
Aunque el enrutamiento de datos se divulga con referencia a su realizacion preferida, un experto en la materia reconocera un gran numero de posibles soluciones o estrategias de enrutamiento de datos. Por ejemplo, XML u otros paquetes de datos pueden desempaquetarse y reconocerse de manera ventajosa por su formato, su contenido, o similares, de tal manera que el motor de transaccion 205 puede enrutar datos adecuadamente a traves del motor de confianza 110. Por otra parte, un experto en la materia reconocera que el enrutamiento de datos puede adaptarse de manera ventajosa a los protocolos de transferencia de datos que se ajustan a los sistemas de red especificos, tales como, por ejemplo, cuando el enlace de comunicaciones 125 comprende una red local.
De acuerdo con otra realizacion mas de la invencion, el motor de transaccion 205 incluye las tecnologias de cifrado SSL convencionales, de tal manera que los sistemas anteriores pueden autenticarse a si mismos, y viceversa, con el motor de transaccion 205, durante las comunicaciones especificas. Tal como se usa en esta divulgacion, el termino “SSL /” se refiere a las comunicaciones en las que se autentica con SSL un servidor pero no necesariamente el cliente, y el termino “SSL COMPLETA” se refiere a las comunicaciones en las que el cliente y el servidor se autentican con SSL. Cuando la presente divulgacion usa el termino “SSL”, la comunicacion puede comprender una SSL / o COMPLETA.
A medida que el motor de transaccion 205 enruta los datos a los diversos componentes del sistema criptografico 100, el motor de transaccion 205 pueden crear de manera ventajosa una pista de auditoria. De acuerdo con una realizacion, la pista de auditoria incluye un registro de al menos el tipo y el formato de los datos enrutados por el motor de transaccion 205 en todo el sistema criptografico 100. Estos datos de auditoria pueden almacenarse de manera ventajosa en el almacenamiento masivo 225.
La figura 2 ilustra tambien el depositario 210. De acuerdo con una realizacion, el depositario 210 comprende una o mas instalaciones de almacenamiento de datos, tales como, por ejemplo, un servidor de directorio, un servidor de base de datos, o similares. Como se muestra en la figura 2, el depositario 210 almacena claves de cifrado y datos de autenticacion de registro. Las claves de cifrado pueden corresponder de manera ventajosa al motor de confianza
5
10
15
20
25
30
35
40
45
50
55
60
65
110 o a los usuarios del sistema criptografico 100, tal como el usuario o el proveedor. Los datos de autenticacion de registro pueden incluir de manera ventajosa unos datos disenados para identificar de manera unica a un usuario, tal como por ejemplo, el ID de usuario, contrasenas, respuestas a preguntas, datos biometricos, o similares. Estos datos de autenticacion de registro pueden adquirirse de manera ventajosa en el registro de un usuario o en otro momento posterior alternativo. Por ejemplo, el motor de confianza 110 puede incluir la renovacion o la reedicion de los datos de autenticacion de registro.
De acuerdo con una realizacion, la comunicacion del motor de transaccion 205 hacia y desde el motor de autenticacion 215 y el motor de cifrado 220 comprende una comunicacion segura, tal como, por ejemplo la tecnologla SSL convencional. Ademas, como se ha mencionado anteriormente, los datos de las comunicaciones hacia y desde el depositario 210 pueden transferirse usando las URL, los URI, HTTP o documentos XML, con cualquiera de los anteriores, teniendo de manera ventajosa unas solicitudes de datos y formatos integrados en los mismos.
Como se ha mencionado anteriormente, el depositario 210 puede comprender de manera ventajosa una pluralidad de instalaciones de almacenamiento de datos seguros. En tal realizacion, las instalaciones de almacenamiento de datos seguros pueden configurarse de tal manera que un compromiso de la seguridad en una instalacion de almacenamiento de datos individual no comprometera las claves de cifrado o los datos de autenticacion almacenados en las mismas. Por ejemplo, de acuerdo con esta realizacion, las claves de cifrado y los datos de autenticacion se operan de manera matematica con el fin de aleatorizar estadlstica y sustancialmente los datos almacenados en cada instalacion de almacenamiento de datos. De acuerdo con una realizacion, la aleatorizacion de los datos de una instalacion de almacenamiento de datos individual convierte a estos datos en indescifrables. Por lo tanto, el compromiso de una instalacion de almacenamiento de datos individual produce solo un numero aleatorio indescifrable y no compromete la seguridad de ninguna de las claves de cifrado o los datos de autenticacion en su conjunto.
La figura 2 ilustra tambien el motor de confianza 110 que incluye el motor de autenticacion 215. De acuerdo con una realizacion, el motor de autenticacion 215 comprende un comparador de datos configurado para comparar los datos del motor de transaccion 205 con los datos del depositario 210. Por ejemplo, durante la autenticacion, un usuario suministra unos datos de autenticacion actuales al motor de confianza 110 de tal manera que el motor de transaccion 205 recibe los datos de autenticacion actuales. Como se ha mencionado anteriormente, el motor de transaccion 205 reconoce las solicitudes de datos, preferentemente en la URL o el URI, y enruta los datos de autenticacion al motor de autenticacion 215. Por otra parte, tras la solicitud, el depositario los 210 reenvla los datos de autenticacion de registro que corresponden al usuario al motor de autenticacion 215. De este modo, el motor de autenticacion 215 tiene tanto los datos de autenticacion actuales como los datos de autenticacion de registro para su comparacion.
De acuerdo con una realizacion, las comunicaciones hacia el motor de autenticacion comprenden unas comunicaciones seguras, tales como, por ejemplo, la tecnologla SSL. Ademas, la seguridad puede proporcionarse dentro de los componentes del motor de confianza 110, tales como, por ejemplo, el super cifrado que usa tecnologlas de clave publica. Por ejemplo, de acuerdo con una realizacion, el usuario cifra los datos de autenticacion actuales con la clave publica del motor de autenticacion 215. Ademas, el depositario 210 tambien cifra los datos de autenticacion de registro con la clave publica del motor de autenticacion 215. De esta manera, solamente la clave privada del motor de autenticacion puede usarse para descifrar las transmisiones.
Como se muestra en la figura 2, el motor de confianza 110 incluye tambien el motor de cifrado 220. De acuerdo con una realizacion, el motor de cifrado comprende un modulo de manipulacion criptografica, configurado para proporcionar de manera ventajosa unas funciones de cifrado convencionales, tales como, por ejemplo, una funcionalidad de infraestructura de clave publica (PKI). Por ejemplo, el motor de cifrado 220 puede emitir de manera ventajosa las claves publicas y privadas para los usuarios del sistema criptografico 100. De esta manera, las claves de cifrado se generan en el motor de cifrado 220 y se reenviaran al depositario 210 de tal manera que al menos las claves de cifrado privadas no estan disponibles fuera del motor de confianza 110. De acuerdo con otra realizacion, el motor de cifrado de 220 aleatoriza y divide al menos los datos de clave de cifrado privadas, almacenando de este modo solamente los datos divididos aleatoriamente. De igual manera que la division de los datos de autenticacion de registro, el proceso de division garantiza que las claves almacenadas no estan disponibles fuera el motor de cifrado 220. De acuerdo con otra realizacion, las funciones del motor de cifrado pueden combinarse con y realizarse por el motor de autenticacion 215.
De acuerdo con una realizacion, las comunicaciones hacia y desde el motor de cifrado incluyen unas comunicaciones seguras, tal como la tecnologla SSL. Ademas, los documentos XML pueden emplearse de manera ventajosa para transferir datos y/o hacer solicitudes de funcion de cifrado.
La figura 2 ilustra tambien el motor de confianza 110 que tiene el almacenamiento masivo 225. Como se ha mencionado anteriormente, el motor de transaccion 205 mantiene los datos que corresponden a una pista de auditorla y almacena estos datos en el almacenamiento masivo 225. Del mismo modo, de acuerdo con una realizacion de la invencion, el depositario 210 mantiene los datos que corresponden a una pista de auditorla y
5
10
15
20
25
30
35
40
45
50
55
60
65
almacena estos datos en el dispositivo de almacenamiento masivo 225. Los datos de pista de auditorla de depositario son similares a los del motor de transaction 205 en que los datos de pista de auditorla comprenden un registro de las solicitudes recibidas por el depositario 210 y la respuesta a las mismas. Ademas, el almacenamiento masivo 225 puede usarse para almacenar certificados digitales que tienen la clave publica de un usuario contenida en los mismos.
Aunque el motor de confianza 110 se divulga con referencia a sus realizaciones preferidas y alternativas, la invention no esta destinada a limitarse por las mismas. Mas bien, un experto en la materia reconocera en la divulgation en el presente documento, un gran numero de alternativas para el motor de confianza 110. Por ejemplo, el motor de confianza 110, puede realizar de manera ventajosa solo la autenticacion, o como alternativa, solo algunas o la totalidad de las funciones de cifrado, tales como el cifrado y el descifrado de los datos. De acuerdo con estas realizaciones, uno de los motores de autenticacion 215 y el motor de cifrado 220 pueden eliminarse de manera ventajosa, creando de este modo un diseno mas sencillo del motor de confianza 110. Ademas, el motor de cifrado 220 tambien puede comunicarse con una autoridad de certification de tal manera que la autoridad de certification esta incorporada en el motor de confianza 110. De acuerdo con otra realization mas, el motor de confianza 110 puede realizar de manera ventajosa la autenticacion y una o mas funciones de cifrado, tales como, por ejemplo, la firma digital.
La figura 3 ilustra un diagrama de bloques del motor de transaccion 205 de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion. De acuerdo con esta realizacion, el motor de transaccion 205 comprende un sistema operativo 305 que tiene un subproceso de manipulation y un subproceso de escucha. El sistema operativo 305 puede ser de manera ventajosa similar a los encontrados en los servidores convencionales de gran volumen, tales como, por ejemplo, servidores web disponibles de Apache. El subproceso de escucha monitoriza la comunicacion entrante de uno de entre el enlace de comunicaciones 125, el motor de autenticacion 215, y el motor de cifrado 220 para el flujo de datos entrante. El subproceso de manipulacion reconoce las estructuras de datos especlficas del flujo de datos entrante, tal como, por ejemplo, las estructuras de datos precedentes, enrutando de este modo los datos de entrada a uno de entre el enlace de comunicaciones 125, el depositario 210, el motor de autenticacion 215, el motor de cifrado 220, o el almacenamiento masivo 225. Como se muestra en la figura 3, los datos entrantes y salientes pueden garantizarse de manera ventajosa a traves de, por ejemplo, la tecnologla SSL.
La figura 4 ilustra un diagrama de bloques del depositario 210 de la figura 2 de acuerdo con los aspectos de una realizacion de la invencion. De acuerdo con esta realizacion, el depositario 210 comprende uno o mas servidores de protocolo ligero de acceso a directorios (LDAP). Los servidores de directorio LDAP estan disponibles en una amplia variedad de fabricantes tales como Netscape, ISO, y otros. La figura 4 muestra tambien que el servidor de directorio almacena preferentemente los datos 405 correspondientes a las claves de cifrado y los datos 410 correspondientes a los datos de autenticacion de registro. De acuerdo con una realizacion, el depositario 210 comprende una unica estructura de memoria logica que indexa los datos de autenticacion y los datos de clave de cifrado para un unico ID de usuario. La unica estructura de memoria logica incluye preferentemente unos mecanismos para garantizar un alto grado de confianza o seguridad, en los datos almacenados en la misma. Por ejemplo, la localization flsica del depositario 210 puede incluir de manera ventajosa un amplio numero de medidas de seguridad convencionales, tales como el acceso limitado de empleados, los sistemas de vigilancia modernos, y similares. Ademas de, o en lugar de, las garantlas flsicas, el sistema o servidor informatico puede incluir de manera ventajosa unas soluciones de software para proteger los datos almacenados. Por ejemplo, el depositario 210 puede crear y almacenar los datos 415 de manera ventajosa que corresponden a una pista de auditorla de las acciones tomadas. Ademas, las comunicaciones entrantes y salientes pueden cifrarse de manera ventajosa con el cifrado de clave publica junto con las tecnologlas SSL convencionales.
De acuerdo con otra realizacion, el depositario 210 puede comprender unas instalaciones de almacenamiento de datos distintas y flsicamente separadas, como se divulga adicionalmente con referencia a la figura 7.
La figura 5 ilustra un diagrama de bloques del motor de autenticacion 215 de la figura 2, de acuerdo con los aspectos de una realizacion de la invencion. Al igual que en el motor de transaccion 205 de la figura 3, el motor de autenticacion 215 comprende un sistema operativo 505 que tiene al menos un subproceso de escucha y un subproceso de manipulacion de una version modificada de un servidor web convencional, tal como, por ejemplo, los servidores web disponibles de Apache. Como se muestra en la figura 5, el motor de autenticacion 215 incluye el acceso a al menos una clave privada 510. La clave privada 510 puede usarse de manera ventajosa, por ejemplo, para descifrar los datos del motor de transaccion 205 o del depositario 210, que se han cifrado con una clave publica correspondiente del motor de autenticacion 215.
La figura 5 ilustra tambien el motor de autenticacion 215 que comprende un comparador 515, un modulo de division de datos 520, y un modulo de ensamblaje de datos 525. De acuerdo con la realizacion preferida de la invencion, el comparador 515 incluye una tecnologla capaz de comparar los patrones potencialmente complejos relacionados con los datos de autenticacion biometricos anteriores. La tecnologla puede incluir hardware, software, o soluciones combinadas para las comparaciones de patrones, tales como, por ejemplo, los que representan los patrones de huellas digitales o los patrones de voz. Ademas, de acuerdo con una realizacion, el comparador 515 del motor de autenticacion 215 puede comparar de manera ventajosa calculos de clave convencionales de documentos con el fin
5
10
15
20
25
30
35
40
45
50
55
60
65
de hacer un resultado de comparacion. De acuerdo con una realizacion de la invencion, el comparador 515 incluye la aplicacion de la heurlstica 530 para la comparacion. La heurlstica 530 puede abordar de manera ventajosa las circunstancias que rodean un intento de autenticacion, tales como, por ejemplo, la hora del dla, la direccion IP o la mascara de subred, el perfil de compra, la direccion de correo electronico, el numero de serie o el ID del procesador, o similares.
Por otra parte, la naturaleza de las comparaciones de datos biometricos puede resultar en un grado de variacion de la confianza que se produce a partir de la coincidencia de los datos de autenticacion biometricos actuales con los datos de registro. Por ejemplo, a diferencia de una contrasena tradicional, que solo puede devolver una coincidencia positiva o negativa, una huella digital puede determinarse para que sea una coincidencia parcial, por ejemplo, una coincidencia del 90 %, una coincidencia del 75 %, o una coincidencia del 10 %, en lugar de simplemente que sea correcta o incorrecta. Otros identificadores biometricos tales como el analisis de impresion de voz o el reconocimiento de rostros pueden compartir esta caracterlstica de autenticacion probabillstica, en lugar de una autenticacion absoluta.
Cuando se trabaja con esta autenticacion probabillstica o en otros casos en los que una autenticacion se considera menos que absolutamente fiable, es deseable aplicar la heurlstica 530 para determinar si el nivel de confianza proporcionado en la autenticacion es suficientemente alto como para autentificar la transaccion que se esta realizando.
A veces sera el caso de que la transaccion en cuestion es una transaccion de valor relativamente bajo, en la que es aceptable para autenticarse un menor nivel de confianza. Esto podrla incluir una transaccion que tiene un bajo valor en dolares asociado con la misma (por ejemplo, una compra de 10 $) o una transaccion con bajo riesgo (por ejemplo, la admision en un sitio web solo para miembros).
Por el contrario, para autenticar otras transacciones, puede ser deseable necesitar un alto grado de confianza en la autenticacion antes de permitir que se produzca la transaccion. Estas operaciones pueden incluir transacciones de un gran valor en dolares (por ejemplo, firmar un contrato de suministro de multiples millones de dolares) o una transaccion con un alto riesgo si se produce una autenticacion irregular (por ejemplo, de manera remota iniciar sesion en un ordenador del gobierno).
El uso de la heurlstica 530 en combinacion con los niveles de confianza y los valores de transacciones pueden usarse como se describira a continuacion para permitir que el comparador proporcione un sistema de autenticacion dinamico sensible al contexto.
De acuerdo con otra realizacion de la invencion, el comparador 515 puede realizar un seguimiento de los intentos de autenticacion de manera ventajosa para una transaccion especlfica. Por ejemplo, cuando una transaccion falla, el motor de confianza 110 puede solicitar al usuario que vuelva a introducir sus datos de autenticacion actuales. El comparador 515 del motor de autenticacion 215 puede emplear de manera ventajosa un limitador de intentos 535 para limitar el numero de intentos de autenticacion, prohibiendo de este modo los intentos de fuerza bruta para suplantar a los datos de autenticacion de un usuario. De acuerdo con una realizacion, el limitador de intentos 535 comprende un modulo de software que monitoriza las transacciones para repetir los intentos de autenticacion y, por ejemplo, limitar los intentos de autenticacion a tres para una transaccion dada. De este modo, el limitador de intentos 535 limitara un intento automatizado para suplantar a los datos de autenticacion de un usuario para, por ejemplo, simplemente a tres “conjeturas”. Tras tres fallos, el limitador de intentos 535 puede denegar de manera ventajosa los intentos de autenticacion adicionales. Esta negacion puede implementarse de manera ventajosa a traves de, por ejemplo, el comparador 515 que devuelve un resultado negativo, independientemente de los datos de autenticacion actuales que se transmiten. Por otra parte, el motor de transaccion 205 puede bloquear de manera ventajosa cualquier intento de autenticacion adicional relativo a una transaccion en la que tres intentos han fallado anteriormente.
El motor de autenticacion 215 incluye tambien el modulo de division de datos 520 y el modulo de ensamblaje de datos 525. El modulo de division de datos 520 comprende de manera ventajosa un software, un hardware, o un modulo de combinacion que tiene la capacidad de operar de manera matematica con diversos datos con el fin de aleatorizar y dividir sustancialmente los datos en porciones. De acuerdo con una realizacion, los datos originales no pueden recrearse a partir de una porcion individual. El modulo de ensamblaje de datos 525 comprende de manera ventajosa un software, un hardware, o un modulo de combinacion configurado para operar de manera matematica en las porciones sustancialmente aleatorias anteriores, de tal manera que la combinacion de las mismas proporciona los datos descifrados originales. De acuerdo con una realizacion, el motor de autenticacion 215 emplea el modulo de division de datos 520 para aleatorizar y dividir los datos de autenticacion de registro de division en porciones, y emplea el modulo de ensamblaje de datos 525 para reensamblar las porciones en los datos de autenticacion de registro utilizables.
La figura 6 ilustra un diagrama de bloques del motor de cifrado 220 del motor de confianza 200 de la figura 2 de acuerdo con los aspectos de una realizacion de la invencion. Al igual que en el motor de transaccion 205 de la figura 3, el motor de cifrado 220 comprende un sistema operativo 605 que tiene al menos un subproceso de escucha y un
5
10
15
20
25
30
35
40
45
50
55
60
65
subproceso de manipulacion de una version modificada de un servidor web convencional, tal como, por ejemplo, los servidores web disponibles de Apache. Como se muestra en la figura 6, el motor de cifrado 220 comprende un modulo de division de datos 610 y un modulo de ensamblaje de datos 620 con una funcion similar a los de la figura 5. Sin embargo, de acuerdo con una realizacion, el modulo de division de datos 610 y el modulo de ensamblaje de datos 620 procesan los datos de clave de cifrado, en oposicion a los datos de autenticacion de registro anteriores. Aunque, un experto en la materia reconocera a partir de la divulgacion en el presente documento que el modulo de division de datos 910 y el modulo de division de datos 620 pueden combinarse con los del motor de autenticacion 215.
El motor de cifrado 220 comprende tambien un modulo de manipulacion criptografica 625 configurado para realizar una, algunas o la totalidad de un gran numero de funciones de cifrado. De acuerdo con una realizacion, el modulo de manipulacion criptografica 625 puede comprender unos modulos o programas de software, hardware, o ambos. De acuerdo con otra realizacion, el modulo de manipulacion criptografica 625 puede realizar comparaciones de datos, analisis de datos, division de datos, separacion de datos, calculos de clave de datos, cifrado o descifrado de datos, verificacion o creacion de firmas digitales, generation de certificados digitales, almacenamiento o solicitudes, generation de claves de cifrado, o similares. Por otra parte, un experto en la materia reconocera a partir de la divulgacion en el presente documento que el modulo de manipulacion criptografica 825 puede comprender de manera ventajosa una infraestructura de clave publica, tal como la Pretty Good Privacy (privacidad bastante buena) (PGP), un sistema de clave publica basado en RSA, o un gran numero de sistemas de gestion de claves alternativas. Ademas, el modulo de manipulacion criptografica 625 puede realizar un cifrado de clave publica, un cifrado de clave simetrica, o ambos. Ademas de lo anterior, el modulo de manipulacion criptografica 625 puede incluir uno o mas programas o modulos informaticos, hardware, o ambos, para implementar unas funciones de interoperabilidad sin fisuras y transparentes.
Un experto en la materia reconocera tambien a partir de la divulgacion en el presente documento que la funcionalidad de cifrado puede incluir un gran numero o variedad de funciones, en general, relacionadas con los sistemas de gestion de claves de cifrado.
Un esquema de comparticion de secretos de calculo robusto (RCSS) se ilustra en la figura 7. Un parte denominada como el distribuidor 700 tiene un secreto 701 que el distribuidor desea distribuir. Con este fin, el distribuidor 700 puede aplicar el mecanismo de comparticion de un esquema de RCSS 702. El mecanismo de comparticion 702 puede dar como resultado algun numero, n, de las comparticiones que se generan, como se indica por las comparticiones 704, 705, y 706. 703. La recopilacion de todas las comparticiones puede ser un vector S derivado de manera probabillstica del secreto 701. A continuation, la recopilacion 703 de las comparticiones puede enviarse a traves de una red o distribuirse fuera de banda, de tal manera que cada comparticion se almacena en su propio deposito de datos (o en diferentes localizaciones flsicas o geograficas en uno o mas depositos de datos). El almacenamiento de las comparticiones en un deposito de datos logico 720 puede tener el beneficio de una mayor seguridad, por que puede ser mas diflcil para un adversario obtener un acceso a todas las comparticiones que pueden estar almacenados en los servidores de datos 721, 722, y 723, que a un subconjunto propio de estas comparticiones. Uno o mas de los servidores 721, 722 y 723 pueden estar localizados en lugares flsicamente diferentes, operados bajo un control administrativo diferente, o protegidos por unos controles de acceso de hardware y software heterogeneos. El deposito de datos logico 720 puede incluir tambien un sistema de archivos distribuido o en red.
Cuando una parte quiere recuperar el secreto que se ha distribuido en el deposito de datos logico 720, la entidad 740 puede intentar recopilar las comparticiones. La primera comparticion recopilada S*[1] 744 puede ser la misma que la comparticion 704, pero tambien podrla diferir debido a la modification no intencionada en la transmision o el almacenamiento (por ejemplo, una corruption de datos), o una modificacion intencionada debido a las actividades de un agente adversario. Del mismo modo, una segunda comparticion recopilada S*[2] 745 puede ser la misma que la comparticion 705, y una ultima comparticion recopilada S*[n] 746 puede ser la misma que la comparticion 706, pero estas comparticiones podrlan diferir tambien por razones similares. Ademas de la posibilidad de ser una comparticion “erronea”, una o mas comparticiones en la recopilacion 743 podrlan ser tambien el valor distinguido “desaparecido”, representado por el slmbolo, (“◊”). Este slmbolo puede indicar que el sistema (por ejemplo, la entidad 740) no es capaz de encontrar o recopilar esta comparticion especlfica. A continuacion, puede proporcionarse el vector de comparticiones pretendidas S* al algoritmo de recuperation 742 del esquema de RCSS, que puede devolver o el secreto recuperado S* 741 o el valor designado como invalido 747. El secreto compartido 701 deberla ser igual al secreto recuperado 741, a menos que el grado de actividad del adversario en las comparticiones corruptas exceda del que se ha disenado que puede soportar el esquema.
El objetivo de RCSS es util a traves de dos dominios principales: garantizar los datos en reposo y garantizar los datos en movimiento. En el primer escenario, un servidor de archivos, por ejemplo, mantiene sus datos en una variedad de servidores remotos. Incluso si algun subconjunto de esos servidores esta danado (por ejemplo, por unos administradores deshonestos) o no esta disponible (por ejemplo, debido a una calda de la red), los datos aun pueden estar disponibles y ser privados. En el escenario de datos en movimiento, el remitente de un mensaje secreto y el receptor del mensaje pueden estar conectados por una multiplicidad de rutas, solo algunas de las cuales pueden observarse por el adversario. Enviando las comparticiones a traves de estas rutas diferentes, el remitente
5
10
15
20
25
30
35
40
45
50
55
60
65
puede transmitir de manera segura el secreto S a pesar de la posibilidad de que algunas rutas esten temporalmente no disponibles o controladas por el adversario. Por ejemplo, en algunas realizaciones, cada comparticion puede transmitirse a traves de un canal logico de comunicaciones diferente. Los sistemas y metodos para garantizar los datos, y en particular los sistemas y metodos para garantizar los datos en movimiento especlficos, se describen en mas detalle en la solicitud de patente de Estados Unidos N.° 10/458.928, presentada el 11 de junio 2003, en la solicitud de patente de Estados Unidos N.° 11/258.839, presentada el 25 de octubre de 2005, y en la solicitud de patente de Estados Unidos N.° 11/602.667, presentada el 20 de noviembre de 2006.
A pesar de que al menos se ha propuesto por Krawczyk un esquema de RCSS con tamanos de comparticiones cortos, el estudio cientlfico de este esquema revela que no es un esquema de RCSS valido bajo supuestos debiles en el esquema de cifrado, y no se sabe que sea una esquema valido para todas las estructuras de acceso (por ejemplo, unas estructuras de acceso distintas de los esquemas de umbral). Por al menos estas razones, las figuras 8-11 describen otros enfoques para la comparticion de secretos. Estos otros enfoques a veces se denominan en el presente documento como ESX o HK2.
El mecanismo del enfoque ESX o HK2 puede incluir un esquema de comparticion de secretos de calculo robusto que puede construirse a partir de las siguientes cinco primitivas: (1) un generador de numeros aleatorios o pseudo- aleatorios, (2) un esquema de cifrado; (3) un esquema de comparticion de secretos perfecto (PSS); (4) un algoritmo de dispersion de informacion (IDA); y (5) un esquema de vinculacion probabillstica. Estas cinco primitivas se describen con mas detalle a continuation.
(1) Un generador de numeros aleatorios o pseudo-aleatorios, Rand. Un generador de numeros de este tipo puede tomar un numero k como entrada y devolver k bits aleatorios o pseudo-aleatorios. En las figuras 8-11, se evita la entrada k para facilitar la ilustracion.
(2) Un esquema de cifrado, que puede incluir un par de algoritmos, uno llamado Cifrar y el otro llamado Descifrar. El algoritmo de cifrado Cifrar puede tomar una clave K de una longitud dada k y un mensaje de entrada M que se denomina como el texto sin cifrar. El algoritmo Cifrar puede devolver una cadena C que se conoce como el texto cifrado. El algoritmo Cifrar puede emplear de manera opcional bits aleatorios, pero estos bits aleatorios no se muestran de manera expllcita en los dibujos. El algoritmo de descifrado Descifrar puede tomar una clave K de una longitud dada k y un mensaje de entrada C que se denomina como el texto cifrado. El algoritmo Descifrar puede devolver una cadena M que se denomina como el texto sin cifrar. En algunos casos, el algoritmo de descifrado puede devolver un valor de fallo designado, que puede indicar que el texto cifrado C no se corresponde con el cifrado de cualquier posible texto sin cifrar.
(3) Un esquema de comparticion de secretos perfecto (PSS), que puede incluir un par de algoritmos CompartirPSS y RecuperarPSS. El primero de estos algoritmos, conocido como el algoritmo de comparticion de la PSS, puede ser un mapa probabilistic que toma como entrada una cadena K, llamada el secreto, y devuelve una secuencia de n cadenas, K[1],..., K[n], denominada como comparticiones. Cada K[i] puede incluir una comparticion o las n comparticiones que se han tratado, o distribuido, por el distribuidor (la entidad que realiza el proceso de comparticion). El numero n puede ser un parametro programable por el usuario del sistema de comparticion de secretos, y puede incluir cualquier numero positivo adecuado. En algunas realizaciones, el algoritmo de comparticion es probabilistic por que emplea bits aleatorios o pseudo-aleatorios. Una dependencia de este tipo puede realizarse proporcionando los bits aleatorios o pseudo-aleatorios del algoritmo de comparticion, como proporcionados por el algoritmo Rand. El segundo algoritmo, conocido como el algoritmo de recuperacion de la PSS, puede tomar como entrada un vector de n cadenas denominadas como las comparticiones pretendidas. Cada comparticion pretendida es o una cadena o un slmbolo distinguido (“◊”) que se lee como desaparecido. Este slmbolo puede usarse para indicar que alguna comparticion especlfica no esta disponible. El algoritmo de recuperacion para el esquema de comparticion de secretos perfecto puede devolver una cadena S, o el secreto recuperado. Pueden suponerse dos propiedades del esquema de PSS. La primera propiedad, la propiedad de privacidad, garantiza que ningun conjunto no autorizado de usuarios obtenga cualquier informacion util sobre el secreto que se ha compartido a partir de sus comparticiones. La segunda propiedad, la propiedad de recuperacion, garantiza que un conjunto autorizado de partes siempre puede recuperar el secreto, suponiendo que las partes autorizadas contribuyen con las comparticiones correctas al algoritmo de recuperacion y que cualquier parte adicional contribuye o con una comparticion correcta o con el valor desaparecido distinguido (“◊”). Este esquema de PSS puede incluir el esquema de Shamir, denominado comunmente como “comparticion de secretos de Shamir” o el esquema de comparticion de secretos Blakley.
(4) Un algoritmo de dispersion de informacion (IDA), que puede incluir un par de algoritmos CompartirIDA y Recuperar™ El primero de estos algoritmos, conocido como el algoritmo de comparticion del IDA, puede incluir un mecanismo que toma como entrada una cadena C, el mensaje a dispersarse, y devuelve una secuencia de n cadenas, C[1],..., C[n], que se denominan como los fragmentos de los datos que han resultado de la dispersion. El valor de n puede ser un parametro programable por el usuario del IDA, y puede ser cualquier numero positivo adecuado. El algoritmo de comparticion del IDA puede ser probabilistic o determinista. En las figuras 8-11, no se muestra de manera expllcita la posibilidad de usar bits aleatorios en el IDA; sin embargo, deberla entenderse que los bits aleatorios pueden usarse en el IDA en otras realizaciones.
El segundo algoritmo, conocido como el algoritmo de recuperacion del IDA, podra tomar como entrada un vector de n cadenas, los fragmentos suministrados. Cada fragmento suministrado puede ser una cadena o el slmbolo distinguido (“◊”) que se lee como desaparecido y se usa para indicar que algun fragmento de datos especlfico no
5
10
15
20
25
30
35
40
45
50
55
60
65
esta disponible. El algoritmo de recuperacion para el IDA puede devolver una cadena S, el secreto de recuperation. El IDA puede suponer que tiene una propiedad de recuperabilidad; por lo tanto, un conjunto autorizado de partes siempre puede recuperar los datos a partir de los fragmentos suministrados, suponiendo que las partes autorizadas contribuyen con los fragmentos correctos al algoritmo de recuperacion del IDA y que cualquier parte adicional que participa en la reconstruccion contribuye o con un fragmento correcto o si no con el valor desaparecido distinguido ("◊"). A diferencia del caso de un esquema de PSS, puede no haber una propiedad de privacidad asociada con el IDA y, de hecho, un IDA simple y practico es replicar la entrada C durante n veces, y tener el algoritmo de recuperacion que usar el valor que se produce mas a menudo como los datos recuperados. Se conocen unos IDA mas eficientes (por ejemplo, el IDA de Rabin).
(5) Un esquema de vinculacion probabillstica, que puede incluir un par de algoritmos, Ct y Vf, llamados el algoritmo de vinculacion y el algoritmo de verification. El algoritmo de vinculacion Ct puede ser un algoritmo probabilistic que toma una cadena M para vincular y devuelve un valor de vinculacion, H (la cadena que un actor puede usar para vincular M) y tambien un valor de no vinculacion, R (la cadena que un actor puede usar para no vincular el H de vinculacion de M). El algoritmo de vinculacion puede ser probabilistic y, como tal, puede tomar un argumento final, R*, que se denomina como las monedas del algoritmo. Estas monedas pueden generarse anteriormente por una llamada a un generador de numeros aleatorios o pseudo-aleatorios, Rand. La notacion “Ct(M; R*)” se usa a veces en el presente documento para indicar de manera expllcita el valor de retorno del algoritmo de vinculacion Ct en la entrada M con las monedas aleatorias R*. El algoritmo de verification, Vf, puede ser un algoritmo determinista que tiene tres cadenas de entrada: un valor de vinculacion H, una cadena M, y un valor de no vinculacion R. Este algoritmo puede devolver un bit 0 o 1, con 0 indicando que la no vinculacion es invalida (no convincente) y 1 indicando que la no vinculacion es valida (convincente).
En general, un esquema de vinculacion puede satisfacer dos propiedades: una propiedad de ocultacion y una propiedad de union. La propiedad de ocultacion implica que, dada una vinculacion determinada de manera aleatoria H para un mensaje elegido de manera adversa Mo o M1, el adversario no puede determinar que mensaje H corresponde a la vinculacion. La propiedad de union implica que un adversario, que ha vinculado un mensaje Mo por medio de una vinculacion Ho y la no vinculacion correspondiente Ro, es incapaz de encontrar algun mensaje M1 distinto de M0 y cualquier no vinculacion R1 de tal manera que Vf(H0, M1, R1) = 1. En la mayorla de los casos, el valor de no vinculacion R producido por un esquema de vinculacion Ct (M; R*) es, precisamente, las monedas aleatorias R* proporcionadas al algoritmo (es decir, R = R*). Sin embargo, esta propiedad no se necesita en todos los casos. Los esquemas de vinculacion probabillsticas mas naturales pueden obtenerse por medio de las funciones hash de cifrado adecuadas, tales como SHA-1. Hay una variedad de tecnicas naturales para procesar el valor que se ha vinculado para, M, y las monedas, R*, antes de aplicar las funciones hash de cifrado. Cualquier esquema de vinculacion que contiene un mecanismo de vinculacion Ct y un algoritmo de verificacion Vf puede producir un mecanismo de vinculacion Vincular y un mecanismo de verificacion Verificar que se aplica a los vectores de las cadenas en lugar de a las cadenas individuales. El algoritmo de vinculacion Vincular puede aplicar el algoritmo Ct por componentes, y el algoritmo de verificacion Verificar puede aplicar el algoritmo Vf por componentes. Para Ct, pueden usarse las monedas aleatorias independientes para cada cadena de componente en algunas realizaciones.
La figura 8 muestra un diagrama de bloques simplificado del mecanismo de comparticion del esquema de RCSS de acuerdo con una realization de la invention. El secreto, S, 800 puede incluir el secreto que el distribuidor desea distribuir o compartir. El secreto 800 puede ser un archivo en un sistema de archivos, un mensaje procedente de un protocolo de comunicaciones, o cualquier otra pieza de datos sensible. El secreto 800 puede representarse como cualquier cadena codificada adecuada (por ejemplo, una cadena ASCII o codificada en binario). Sin embargo, en implementaciones reales las cadenas binarias pueden usarse como el secreto 800 para facilidad de la implementation. Primero, el secreto S puede cifrarse usando el algoritmo de cifrado 803 de un esquema de cifrado de clave compartida para obtener un texto cifrado C 804. La clave K 802 para realizar este cifrado puede obtenerse usando la salida del generador de numeros aleatorios o pseudo-aleatorios 801 con el fin de producir el numero apropiado de bits aleatorios o pseudo-aleatorios para la clave 802.
La clave 802 puede usarse para solo una comparticion, y por lo tanto puede denominarse como una clave de una vez. Ademas de usarse para cifrar el secreto 80o, la clave 802 puede compartirse o distribuirse tambien usando un esquema de comparticion de secretos perfecto (PSS) 806. El esquema de PSS 806 puede incluir cualquier esquema de comparticion de secretos perfecto, incluyendo los esquemas de comparticion de secretos de Shamir o Blakley. El esquema de comparticion de secretos perfecto 806 puede ser aleatorio, lo que requiere su propia fuente de bits aleatorios (o pseudo-aleatorios). Los bits aleatorios o pseudo-aleatorios pueden proporcionarse por un generador de numeros aleatorios o pseudo-aleatorio independiente, tal como generador de numeros 805. El esquema de PSS 806 puede emitir un vector de comparticiones de clave K = K[1 ],..., K[n] 808, que, conceptualmente, puede enviarse a los diferentes “actores”, una comparticion por cada actor. En primer lugar, sin embargo, las comparticiones de clave pueden combinarse con information adicional en algunas realizaciones. El texto cifrado C 804 puede dividirse en fragmentos 809 usando un algoritmo de dispersion de informacion (IDA) 807, tal como el mecanismo de IDA de Rabin. El IDA 807 puede emitir un vector de fragmentos de texto cifrado C[1],..., C[n] 809. A continuation, puede emplearse el mecanismo de vinculacion 812 de un esquema de vinculacion probabillstica. Un numero suficiente de bits aleatorios se generan durante el proceso de vinculacion usando el generador de numeros aleatorios o pseudo- aleatorio 810, y la cadena aleatoria resultante 811 se usa para todas las vinculaciones en el mecanismo de vinculacion 812. El mecanismo de vinculacion 812 puede determinar un valor de vinculacion H[i] y un valor de no
5
10
15
20
25
30
35
40
45
50
vinculacion R[/], mostrados de manera conjunta en el vector 813, para cada mensaje M[i] = K[i] C[/] (extendido a traves de 808 y 809). La /-esima comparticion (que no se representa de manera expllcita en la figura 8) puede codificar K[i] 808, C[i] 809, R[/j, y H[1],..., H[n] 813. Cada parte i puede recibir en su comparticion la vinculacion H[j] para cada Kj], C[j] (para j en 1... n) y no simplemente la vinculacion de su propia comparticion.
La figura 9 muestra, con mayor detalle, el proceso de vinculacion ilustrativo del mecanismo de vinculacion 812 (figura 8). El proceso de vinculacion implica n diferentes llamadas al mecanismo de Ct de nivel inferior del esquema de vinculacion. La aleatoriedad se genera por el generador de numeros aleatorios o pseudo-aleatorios 900 y la cadena aleatoria o pseudo-aleatoria resultante R* se particiona en n segmentos, R*[1] R*[2],..., R*[n] 901. La /-esima porcion de la aleatoriedad (una de las porciones 921, 922, o 923 cuando i es 1, 2 o n) se usa para vincular el /-esimo mensaje que se esta procesando, M[/] = K[/] C[/] (mostrado como los mensajes 910, 911, 912) usando los algoritmos de vinculacion Ct 931, 932, y 933 de un esquema de vinculacion. Los pares de vinculacion y de no vinculacion 941, 942, y 943, pueden emitirse por el algoritmo Ct. Es probable que cada R[/] sea simplemente R*[/], pero esto no es estrictamente necesario o supuesto.
El algoritmo etiquetado “Compartir” en la Tabla 1, a continuacion, explica adicionalmente el sistema de comparticion representado en las figuras 8 y 9. Este algoritmo toma como entrada una cadena S, el secreto que se va a compartir. En la llnea 10, se generan un numero suficiente de lanzamientos de moneda aleatorios para proporcionar una clave de cifrado K para un esquema de cifrado simetrico que consiste en los algoritmos de Cifrar y Descifrar. En la llnea 11, la cadena sensible S que se va a compartir se cifra usando la clave K con el fin de crear un texto cifrado C. El cifrado puede ser aleatorio, pero no es necesario para que el mecanismo funcione de manera correcta. A continuacion, en la llnea 12, puede recurrirse el algoritmo de comparticion de un esquema de comparticion de secretos perfecto (tal como el esquema de Shamir). El algoritmo de comparticion es probabillstico, aunque esto no se indica de manera expllcita en el codigo. La comparticion da como resultado un vector de comparticiones de clave, K = K[1 ]... K[n]. En la llnea 13, el texto cifrado C puede dividirse en una recopilacion de fragmentos a partir de la que una subrecopilacion autorizado de fragmentos se adecuara para recuperar el secreto. Esto puede realizarse usando el algoritmo de comparticion de un IDA (por ejemplo, el IDA 807 de la figura 8). Cualquier IDA valido puede usarse, tal como el mecanismo de Rabin, una replication, o cualquier esquema ad hoc con el IDA descrito anteriormente de manera adecuada. Las llneas 15 y 16 comprenden una vinculacion probabillstica del mensaje KC[/] = K[i] C[/], con las monedas necesarias que se generan en la llnea 15 y la vinculacion H[f] y la no vinculacion R[/] que se calculan usando estas monedas. La llnea 17 calcula la comparticion resultante (algunas veces denominada como “fragmento” en el presente documento) S[/] a partir de los valores ya calculados. La comparticion en el esquema RCSS objeto es S[/] = R[/] K[/] C[] H[1]... H[n]. A continuacion, las comparticiones pueden devolverse al llamante, para almacenarse en diferentes localizaciones o transmitirse a traves de una variedad de canales, de acuerdo con la intention del llamante.
El algoritmo de recuperation del esquema de RCSS se muestra tambien, a continuacion, en la Tabla 1. Esta vez, el llamante proporciona un vector de la totalidad de las comparticiones pretendidas, S = S[l]... S[n]. Cada comparticion pretendida S[/] puede ser una cadena o el slmbolo distinguido "◊", que a su vez representa una comparticion desaparecida. Tambien puede suponerse, en algunas realizaciones, que el llamante proporciona la identidad de una comparticion j, en la que j esta entre 1 y n inclusive, que se sabe que es valido. En las llneas 20-21, cada S[/] puede analizarse en sus cadenas de componentes R[/] K[/], C[/], y H[1]... H[n]. Se entiende que el slmbolo desaparecido "◊", puede analizarse en los componentes todos los cuales son a su vez el slmbolo desaparecido 0. En la llnea 23, puede ejecutarse el algoritmo de verification del esquema de vinculacion para determinar si el mensaje KC[f] = K[/] C[/] parece ser valido. A continuacion, puede usarse la comparticion “valida conocida” j como el “valor de referenda” para cada vinculacion H[f], Siempre que un valor K[/] C[/] parece ser invalido, puede reemplazarse por el slmbolo desaparecido. El vector de los valores K[/] que se han revisado en ese sentido puede ahora suministrarse al algoritmo de recuperacion del esquema de comparticion de secretos en la llnea 25, mientras que el vector de los valores revisados C[/] puede suministrarse con el algoritmo de recuperacion del IDA en llnea 26. En este punto, uno solo tiene que descifrar el texto cifrado C recuperado a partir de la IDA en la clave K recuperada a partir del esquema de PSS para obtener el valor S que se recupera por el propio esquema de RCSS.
Tabla 1: Mecanismos de comparticion y recuperacion del esquema de RCSS.
Algoritmo Compartir (S)
10
K — Rand (k)
11
C — CifrarK(S)
12
K — Comparti rPSS(K)
13
C — Comparti rIDA(C)
14
for /—1 to n do
15
R*[ /] — Rand (k)
16
(H[ /], R[/]) - Ct(K[/] C[ /]; R*M)
17
S[t] - R[/] K[/] CM H[1] ...H[n]
5
10
15
20
25
30
35
40
45
Algoritmo Compartir (S) 18 return S
Algoritmo Recuperar (S, j)
20
for i^1 to n do
21
R[i] K[i] C[i] H,[1] ... H[n] ^ S[i]
22
for i^1 to n do
23
if S[i] t ◊ and Vf (H[i\, K[i] C[i], R[i])
24
then K[i] ^ ◊, C[/] ^ ◊
25
K ^ RecuperarPSS (K)
26
C ^ RecuperarIDA(C)
27
S ^ DescifrarK(C)
28
return S
Como se ha indicado anteriormente, el algoritmo Recuperar de la Tabla 1 supone que el usuario suministra la localization de una comparticion conocida valida. En la ausencia de esta, pueden emplearse otros medios para determinar un valor de consenso para H[i]. La posibilidad mas natural usada en algunas realizaciones es el voto de la mayorla. Por ejemplo, en lugar de Hj[i] en la llnea 23, puede usarse un valor de H[i] que se produce con mayor frecuencia entre los valores recuperados H[i], para j variando de 1 a n.
Volviendo brevemente a la figura 8, la portion de la figura que esta etiquetada de 801 a 807 puede implementarse o considerarse como un unico proceso que incluye una comparticion de secretos de calculo (CSS) de S para obtener el vector de las comparticiones KC = (KC[1],..., KC[n]), en la que KC[i] = K[i] C^], con una vinculacion probabillstica aplicada al vector resultante de las comparticiones. La figura 10 muestra un esquema descrito a partir de esta realization alternativa. En esta realization, se emplean las tres primitivas siguientes, en lugar de las anteriores cinco primitivas definidas en relation con las figuras 8 y 9: (1) un generador de numeros aleatorios o pseudo-aleatorios, Rand; (2) un esquema de comparticion de secretos de calculo (CSS); y (3) un esquema de vinculacion probabillstica.
El generador de numeros aleatorios o pseudo-aleatorios, Rand, puede definirse como anteriormente. El esquema de
1 1 CSS CSS 1
comparticion de secretos de calculo puede incluir un par de algoritmos Compartir y Recuperar . El primero de estos algoritmos, conocido como el algoritmo de comparticion de la CSS, puede ser un mapa probabilistic que toma como entrada una cadena K, llamada el secreto, y devuelve una secuencia de n cadenas, K[1],..., K[n], denominadas como las comparticiones. Cada K[i] puede incluir una comparticion o las n comparticiones que se han tratado, o distribuido, por el distribuidor (la entidad que realiza el proceso de comparticion). El numero n puede ser un parametro del esquema de comparticion de secretos, y puede ser un numero positivo arbitrario. El algoritmo de comparticion puede ser probabilistic por que puede emplear unos bits aleatorios o pseudo-aleatorios. Una dependencia de este tipo puede realizarse proporcionando los bits aleatorios o pseudo-aleatorios del algoritmo de comparticion, como proporcionados por el generador de numeros aleatorios o pseudo-aleatorios, Rand.
El segundo algoritmo, que se conoce como el algoritmo de recuperacion de la CSS, toma como entrada un vector de n cadenas, denominado como las comparticiones pretendidas. Cada comparticion pretendida es o una cadena o un slmbolo distinguido "◊", que se lee como desaparecido y se usa para indicar que algunas comparticiones especlficas no estan disponibles o se desconocen. El algoritmo de recuperacion para el esquema de comparticion de secretos de calculo puede devolver una cadena S, el secreto recuperado. Ya que el par de algoritmos conforman un esquema de comparticion de secretos de calculo, pueden suponerse dos propiedades. La primera propiedad, la propiedad de privacidad, puede garantizar que ningun conjunto de usuarios no autorizado obtiene alguna information significativa (que puede extraerse mediante calculos) sobre el secreto que se ha compartido a partir de sus comparticiones. La segunda propiedad, la propiedad de recuperacion, garantiza que un conjunto autorizado de partes siempre puede recuperar el secreto, suponiendo que las partes autorizadas contribuyen con las comparticiones correctas al algoritmo de recuperacion y que cualquier parte adicional contribuye o con la comparticion correcta o si no con el valor desaparecido distinguido ("◊").
La tercera primitiva en esta realizacion es un esquema de vinculacion probabillstica, que puede implementarse como se ha descrito anteriormente en relacion con las figuras 8 y 9.
Haciendo referencia a la figura 10, la cadena secreta S 1000 puede compartirse, o distribuirse, usando el algoritmo Compartir 1001 de un esquema de comparticion de secretos de calculo (probabilistic). Esto puede dar como resultado n comparticiones, KC[1],..., KC[n] 1002. A continuation, puede emplearse un esquema de vinculacion probabillstica 1005 para obtener el vector 1006 de vinculacion y de no vinculacion. La vinculacion probabillstica puede emplear lanzamientos de monedas 1004 generados por algun generador de numeros aleatorios o pseudo-
5
10
15
20
25
30
35
40
45
50
aleatorios 1003. Compartir 1 del esquema de RCSS, S[1], puede incluir la comparticion KC[1] a partir del esquema de CSS 1002 junto con la no vinculacion R[1] a partir del esquema de vinculacion 1006 junto con el vector de vinculacion H[1]... H[n] a partir del esquema de vinculacion 1006. Compartir 2 del esquema de RCSS, S[2], pueden incluir la comparticion KC[2] a partir del esquema de CSS 1002 junto con la no vinculacion R[2] a partir del esquema de vinculacion 1006 junto con el vector de vinculacion H[1]... H[n] a partir del esquema de vinculacion 1006. Este proceso puede continuar, con una comparticion n del esquema de RCSS, S[n], que incluye la comparticion KC[n] a partir del esquema de CSS 1002 junto con la no vinculacion R[n] a partir del esquema de vinculacion 1006 junto con el vector de vinculacion H[1]... H[n] a partir del esquema de vinculacion 1006.
La figura 11 ilustra el proceso de recuperacion del esquema de RCSS que se acaba de describir. El algoritmo Recuperar 1130 esta provisto de un vector de comparticiones pretendidas, que algunas veces se llaman fragmentos en el presente documento, para distinguir estas comparticiones de las comparticiones del esquema de CSS. El i- esimo fragmento recibido por el algoritmo Recuperar 1130 se analiza para formar una cadena KC[i], un valor de no vinculacion R[i], y un vector de vinculacion Hi = Hi[1]... Hi[n]. A partir de la recopilacion de los vectores de vinculacion H1[i]... Hn[i], el algoritmo Recuperar 1130 debe determinar una vinculacion de consenso H[i]. Para el escenario en el que el algoritmo Recuperar 1130 esta provisto de un Indice j para un actor cuya comparticion se sabe que es valida, el valor de consenso H[i] puede seleccionarse para que sea HjJ], Para el caso en que no se sabe que tal comparticion es autentica, el valor de consenso puede seleccionarse como un valor de cadena que se produce con mayor frecuencia entre H1 [i],..., Hn[i]. La figura 11 representa las comparticiones KC[1] 1100, KC[2] 1110, y KC[n] 1120 analizadas fuera de los fragmentos primero, segundo, y n-esimo proporcionados al algoritmo Recuperar de RCSS, respectivamente. El ejemplo mostrado en la figura 11 representa igualmente los valores de no vinculacion R[1] 1102, R[2] 1112, y R[n] 1122 analizados fuera de los fragmentos primero, segundo, y n-esimo proporcionados al algoritmo Recuperar de RCSS, respectivamente. La figura 11 representa tambien los valores de vinculacion de consenso H[1] 1101, H[2] 1111, y H[n] 1121, determinados de la manera descrita anteriormente. Centrandose en el procesamiento del primer fragmento, el algoritmo de verificacion Vf 1104 del esquema de vinculacion probabillstica se llama en la vinculacion H[1], el mensaje KC[1], y la no vinculacion R[1]. El algoritmo puede devolver un bit, con, por ejemplo, 0 indicando que el mensaje KC[1] no deberla aceptarse como teniendo que no vincularse, y 1 indicando que deberla. En consecuencia, se alimenta un demultiplexor 1106 con el bit de decision del algoritmo de verificacion, con, por ejemplo, un 0 indicando que el valor recuperado deberla considerarse como desaparecido ("◊") 1105 y un 1 indicando que el valor recuperado deberla considerarse como el propio KC[1] 1100. La salida A es la primera entrada suministrada al algoritmo Recuperar 1130 de un esquema de CSS. Continuando de esta manera, se procesa el fragmento 2 (mostrado en 1110-1116 en el ejemplo de la figura 11) y cada fragmento adicional se procesa, hasta que se procesa el n-esimo (mostrado en 1120-1126 en el ejemplo de la figura 11). A continuacion, se proporciona la recopilacion de comparticiones al algoritmo Recuperar 1130 del esquema de CSS con el fin de recuperar el secreto. Este valor recuperado puede ser el valor emitido por el propio esquema de RCSS.
Los expertos en la materia se daran cuenta de que son posibles un gran numero de variantes. Por ejemplo, puede usarse un codigo de correccion de errores en algunas realizaciones para proporcionar una recopilacion adecuada de vinculaciones H[1]... H[n] para cada actor, sustituyendo de manera eficaz el simple pero algo ineficaz codigo de replicacion de la realizacion anterior.
A pesar de que algunas aplicaciones comunes se describen anteriormente, deberla entenderse claramente que la presente invencion puede integrarse con cualquier aplicacion de red con el fin de aumentar la seguridad, la tolerancia a fallos, el anonimato, o cualquier combinacion adecuada de los anteriores.
Ademas, otras combinaciones, adiciones, sustituciones y modificaciones seran evidentes para los expertos en la materia en vista de la divulgacion en el presente documento. En consecuencia, la presente invencion no pretende estar limitada por la respuesta de las realizaciones preferidas, pero ha de definirse por referencia a las reivindicaciones adjuntas.

Claims (11)

  1. 5
    10
    15
    20
    25
    30
    35
    40
    45
    50
    REIVINDICACIONES
    1. Un metodo para garantizar datos generando una recopilacion de fragmentos de los datos, comprendiendo el metodo:
    aplicar un mecanismo de comparticion de un esquema de comparticion de secretos de calculo a los datos para producir una recopilacion de comparticiones; generar un valor aleatorio o pseudo-aleatorio;
    calcular un conjunto de valores de vinculacion y un conjunto de valores de no vinculacion a partir del valor aleatorio o pseudo-aleatorio y la recopilacion de las comparticiones;
    producir cada fragmento en la recopilacion de fragmentos combinando una comparticion, un valor de no vinculacion, y al menos un valor de vinculacion del conjunto de valores de vinculacion; y almacenar cada fragmento en al menos un deposito de datos.
  2. 2. El metodo de la reivindicacion 1, en el que producir cada fragmento en la recopilacion de fragmentos comprende combinar una comparticion, un valor de no vinculacion, y todo el conjunto de valores de vinculacion.
  3. 3. El metodo de la reivindicacion 1, en el que calcular un conjunto de valores de vinculacion y un conjunto de valores de no vinculacion comprende emplear un esquema de vinculacion probabillstica.
  4. 4. Un metodo para garantizar los datos, comprendiendo el metodo:
    aplicar un mecanismo de comparticion de un esquema de comparticion de secretos de calculo a los datos para producir una recopilacion de comparticiones;
    usar un esquema de vinculacion probabillstica para calcular un conjunto de valores de vinculacion y un conjunto de valores de no vinculacion a partir de la recopilacion de las comparticiones;
    producir una pluralidad de fragmentos, en el que cada fragmento comprende una comparticion de la recopilacion de comparticiones, un valor de no vinculacion del conjunto de valores de no vinculacion, y el conjunto de valores de vinculacion; y
    almacenar cada fragmento en al menos un deposito de datos.
  5. 5. El metodo de la reivindicacion 1 o 4, en el que almacenar cada fragmento en al menos un deposito de datos comprende almacenar cada fragmento en diferentes localizaciones geograficas.
  6. 6. El metodo de la reivindicacion 1 o 4, en el que almacenar cada fragmento en al menos un deposito de datos comprende almacenar cada fragmento en diferentes localizaciones flsicas en el al menos un deposito de datos.
  7. 7. El metodo de la reivindicacion 1 o 4, en el que el al menos un deposito de datos comprende un sistema de archivos distribuido.
  8. 8. El metodo de la reivindicacion 1 o 4, en el que el esquema de comparticion de secretos de calculo se selecciona del grupo que consiste en los esquemas de comparticion de secretos Shamir, Blakley, y Krawczyk.
  9. 9. El metodo de la reivindicacion 1 o 4, que comprende ademas transmitir los fragmentos producidos a traves de una pluralidad de canales de comunicacion.
  10. 10. El metodo de la reivindicacion 9, en el que transmitir los fragmentos producidos a traves de una pluralidad de canales de comunicacion comprende transmitir cada fragmento producido a traves de un canal de comunicacion diferente.
  11. 11. Un sistema que comprende al menos un procesador de ordenador configurado para realizar el metodo de acuerdo con una cualquiera de las reivindicaciones 1-10.
ES07873471.2T 2006-11-07 2007-11-07 Sistemas y métodos para distribuir y garantizar datos Active ES2568661T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US85734506P 2006-11-07 2006-11-07
US857345P 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
ES2568661T3 true ES2568661T3 (es) 2016-05-03

Family

ID=39789383

Family Applications (1)

Application Number Title Priority Date Filing Date
ES07873471.2T Active ES2568661T3 (es) 2006-11-07 2007-11-07 Sistemas y métodos para distribuir y garantizar datos

Country Status (9)

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

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 (es) * 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
BRPI0718581A2 (pt) 2014-03-11
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
ES2568661T3 (es) Sistemas y métodos para distribuir y garantizar datos
ES2658097T3 (es) Método y sistema de análisis de datos seguro
JP6118778B2 (ja) 移動中のデータをセキュア化するためのシステムおよび方法
ES2449790T3 (es) Sistemas y métodos para la gestión y la comunicación seguras en un grupo de trabajo
JP6120895B2 (ja) クラウド内にデータを確保するシステムおよび方法
US9298937B2 (en) Secure data parser method and system
ES2581548T3 (es) Sistemas y procedimientos para asegurar entornos informáticos de máquinas virtuales
AU2015227516B2 (en) Secure Data Parser Method and System
AU2014240194B2 (en) Systems and methods for distributing and securing data