ES2293377T3 - Sistema y metodo para la generacion de certificados digitales. - Google Patents

Sistema y metodo para la generacion de certificados digitales. Download PDF

Info

Publication number
ES2293377T3
ES2293377T3 ES04806422T ES04806422T ES2293377T3 ES 2293377 T3 ES2293377 T3 ES 2293377T3 ES 04806422 T ES04806422 T ES 04806422T ES 04806422 T ES04806422 T ES 04806422T ES 2293377 T3 ES2293377 T3 ES 2293377T3
Authority
ES
Spain
Prior art keywords
digital
value
function
certificate
sequence
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
ES04806422T
Other languages
English (en)
Inventor
Mart Saarepera
Ahto Buldas
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.)
GUARDTIME AS
Original Assignee
GUARDTIME AS
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 GUARDTIME AS filed Critical GUARDTIME AS
Application granted granted Critical
Publication of ES2293377T3 publication Critical patent/ES2293377T3/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/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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

Método de generación de un certificado digital en un sistema que consta de un primer ordenador de un proveedor de servicios que incorpora un depósito y un segundo ordenador de un cliente (401-404, 501-506), que comprende los siguientes pasos: - recepción en el ordenador del proveedor del servicio de un nuevo archivo digital enviado desde el segundo ordenador; - asignación de un valor de secuencia (202) al nuevo archivo digital en el ordenador del proveedor del servicio y el almacenamiento de datos incluyendo los archivos digitales y los valores resumen (hash) del depósito (215); - generación de un primer valor digital compuesto aplicando una primera función (204) a una primera pluralidad de los datos almacenados en el depósito, en el que la primera función computa un conjunto de valores raíz para un bosque binario de resúmenes no conectado (801); - generación de un primer certificado digital en el que el primer certificado digital comprende al menos el valor de secuencia y del primer valor digital compuesto; - agregación al depósito del nuevo archivo digital; - generación de una secuencia de valores resumen y almacenamiento de la secuencia de valores resumen en el depósito (215), aplicando una segunda función (216) a una segunda pluralidad de datos almacenados en el depósito, en el que la segunda pluralidad de datos incluye el nuevo archivo digital y en el que la segunda función computa el bosque binario de resúmenes no conectado (801); - generación de un valor de secuencia compuesto (217); - generación de un segundo valor digital compuesto (212) aplicando una tercera función a una tercera pluralidad de los datos almacenados en el depósito; - generación de un valor digital intervalo (214) aplicando una cuarta función a una cuarta pluralidad de los datos almacenados en el depósito, en el que el valor digital intervalo se basa en el valor de secuencia y el valor compuesto de secuencia; y - generación de un segundo certificado digital, en el que el segundo certificado digital consta de al menos el valor de secuencia y el valor digital intervalo.

Description

Sistema y método para la generación de certificados digitales.
Referencia cruzada a solicitudes relacionadas
La presente solicitud reivindica la prioridad de la Solicitud Provisional EE.UU. nº 60/531.865 presentada el 22 de diciembre de 2003.
Sector técnico
La presente invención se refiere a la creación y renovación de los certificados digitales. Más concretamente, la presente invención trata de un sistema seguro y un método de generación de un certificado digital.
Antecedentes de la invención
Los documentos electrónicos digitales se utilizan cada vez más para constatar hechos. Se utilizaba anteriormente sellos, firmas, tipos especiales de papel y otras herramientas para demostrar la autenticidad de documentos y otros archivos. Aparte de acreditar la autenticidad de documentos y archivos, estas herramientas y otras han sido utilizadas para demostrar que un documento ha sido recibido o emitido en un cierto orden. Estos formas de demostrar la autenticidad y el orden son útiles en varios sectores, entre otros la banca, los negocios, las actas jurídicas y la administración pública. Hoy en día, dichos servicios suelen ser ofrecidos por notarios, auditores y similares.
Se requieren servicios similares de autenticación y verificación de orden en el mercado de contenidos electrónicos digitalizados. En distintos sectores de este mercado, los proveedores de servicios electrónicos reciben documentos o archivos digitales. Por ejemplo, un sistema de banca electrónica recibe un justificante digital de una compra por parte de un consumidor. Dichos proveedores de servicios registran la secuencia de recepción de los archivos y asignan a cada archivo un "valor de secuencia". Una vez que el proveedor de servicios ha recibido y registrado el archivo, se suele emitir una certificación digital a la parte que proporciona el archivo. Posteriormente es posible que el proveedor del servicio u otra parte necesite verificar el orden en el que se han registrado unos archivos concretos. Pare cumplir esta necesidad de verificación, se puede asociar valores de secuencia con los archivos digitales de modo que se pueda demostrar posteriormente que los valores de secuencia reflejan correcta y auténticamente el orden de registro.
Dicha asociación de números de secuencia a los archivos digitales se realiza típicamente mediante la criptografía asimétrica o, como método alternativo, por la publicación. Una asociación verificable se denomina un certificado de orden. Sin las asociaciones verificables correspondientes, los proveedores de servicios podrían denegar la validez que cualquier cosa presentada como certificado.
Cuando se utiliza la criptografía asimétrica para realizar la asociación verificable, el proveedor de servicios suele firmar un archivo digital (que contiene un valor de secuencia correspondiente) con una firma digital o sistema de encriptación como el RSA. La criptografía de clave pública es suficientemente rápida para permitir una generación casi instantánea de certificados. Sin embargo, existe un punto débil inherente al uso de la criptografía asimétrica para crear las firmas digitales: las claves de firmas criptográficas pueden ser comprometidas. Una vez comprometida una clave, los certificados creados con dicha clave ya no son verificables. Puesto que la probabilidad de que una clave se comprometa aumenta con el tiempo, los certificados creados por la criptografía con claves sólo son útiles durante poco tiempo.
Cuando se utiliza la publicación para realizar la asociación verificable, el proveedor del servicio suele publicar un archivo digital junto con un valor secuencial de un modo ampliamente verificable, por ejemplo, en un periódico. Si el proveedor del servicio se compromete a cumplir ciertas reglas en relación con la publicación, se puede confiar en el contenido publicado como certificado por el proveedor del servicio. Puesto que no se utilizan claves criptográficas en el método de publicación, el problema de compromiso de claves no existe. Sin embargo, el método de publicación es tan lento que resulta ineficaz. La publicación diaria o semanal es realista, pero la creación instantánea de certificados es imposible, aunque el mercado electrónico moderno lo exige.
Para verificar a largo plazo la autenticidad del certificado, y hacerlo eficientemente, se puede utilizar una combinación de las asociaciones en base a la publicación y/o las firmas de claves múltiples. Sin embargo, puesto que este enfoque combinado implica las desventajas de ambos sistemas, los certificados deben ser actualizados frecuentemente, lo que implica un gasto adicional para mantener la validez de las asociaciones.
Existe otro problema fundamental relativo a las propiedades de los mismos valores de secuencia, representados típicamente como números enteros. En alguna medida, las asociaciones verificables entre archivos digitales y números enteros pueden ser visualizadas por las partes que las verifican para que conste que los archivos realmente fueron asignados esos valores de secuencia.
Sin embargo, los números de secuencia asignados a los archivos digitales a menudo no reflejan exactamente el orden temporal real en el que se recibieron los archivos. Un proveedor de servicios malicioso pueden asignar números de secuencia a los archivos en cualquier orden que desee. Por ello, ha surgido la necesidad de detectar la conducta errónea de un proveedor de servicios. El concepto de enumerar archivos puede ser demasiado abstracto para reflejar el proceso de registro. Por ejemplo, la afirmación de que tres archivos fueron registrados antes de un archivo concreto no proporciona información alguna del modo en que se registraron los archivos. Una forma de superar este problema es definir el valor de secuencia de un archivo concreto como el conjunto de todos los archivos que preceden a un archivo concreto en el depósito. Dichos "valores de secuencia" representan el orden de inscripción, pero como además registran la historia del depósito, no pueden ser denegados por el proveedor del servicio. Sin embargo, si cada uno de los valores de secuencia refleja la historia completa del depósito, los valores pueden llegar a ser tan grandes que su cálculo y transmisión resulten inviables.
Una forma de confirmar la historia de un proveedor de servicios es incluir en el certificado digital entregado a la parte que proporciona los archivos un compendio criptográfico de todos los archivos registrados anteriormente. Por ejemplo, un resumen (hash) de cadena lineal puede ser creado aplicando una función de resumen criptográfico a una concatenación de un archivo recién recibido y el archivo cuya recepción fue inmediatamente anterior. Dicho método se divulga en la Patente EE.UU. nº 5,136,646 a favor de Haber et al.. Los compendios criptográficos que se incluyen en los certificados de orden crean relaciones causales de un solo sentido entre las confirmaciones y de este modo pueden ser utilizados para verificar su orden sin el riesgo de una conducta errónea por parte del proveedor del servicio, puesto que cualquier confirmación errónea es detectable por un verificador que examina la cadena de resumen causal de un solo sentido. Los valores de secuencia creados por dichos procesos son más cortos a causa del uso de las funciones de resumen criptográfico. Sin embargo, la verificación de dichos valores sigue necesitando el cálculo de todos los archivos en el depósito y por tanto puede consumir importantes recursos de tratamiento. Este proceso acarrea la desventaja adicional de que no se puede realizar sin una interacción con el proveedor del servicio.
"Mejorando la disponibilidad de los servicios de sellado de tiempo" Ame Ansper, Ahto Buldas, Mart Saarepera, Jan Willemson, ACISP 2002, [Online] del 11 de julio de 2001, páginas 1-16, Sydney, Australia, describe un método de sellado de tiempo digital utilizado para conservar el valor probatorio de los documentos electrónicos, los protocolos de sellado de tiempo y el sellado de tiempo por señal resumen. Dicho documento describe un enfoque en base a enlaces, en concreto los sistemas de asignación lineal y enlaces de árbol enhebrado para proporcionar servicios de sellado digital de tiempo.
Actualmente es posible crear asociaciones verificables eficientes con la criptografía asimétrica. Sin embargo, en una serie de aplicaciones existe la necesidad de asociaciones verificables durante un plazo más largo que sean preferentemente verificables sin utilizar claves criptográficas. Por consiguiente, ha surgido la necesidad de un sistema de registro de archivos electrónicos digitales con procedimientos que permitan que los clientes sustituyan los certificados firmados digitalmente a corto plazo (por métodos de criptografía asimétrica) por pruebas certificadas a largo plazo en base a compendios criptográficos y métodos de publicación.
La presente invención consigue superar estos problemas, entre otros.
Resumen de la invención
Se divulga un sistema y método de generación de un certificado digital en el que los clientes remiten archivos digitales a un proveedor del servicio de registro. Los archivos se registran y los clientes reciben un certificado firmado digitalmente que verifica el registro (y el número de registro) del archivo. Estos certificados con firma digital pueden ser sustituidos a continuación por una prueba certificada que se genera aplicando una función de resumen criptográfico al depósito de todos los registros.
En una realización de la presente invención, se divulga un sistema y método de generación de un certificado digital en el que un cliente remite un archivo digital a un proveedor del servicio de registro. Se genera un valor digital compuesto que representa al menos un subconjunto del historial completo de los registros recibidos anteriormente, en el que el valor digital compuesto se genera aplicando un algoritmo determinístico a los elementos almacenados en un depósito. Se genera y se transmite al cliente a continuación un certificado de confirmación, en el que dicho certificado consta de al menos el archivo digital, un número de secuencia asignado al registro y el valor digital compuesto. El certificado se firma digitalmente utilizando un sistema criptográfico asimétrico. Posteriormente, el archivo digital o una representación del mismo se añade al depósito.
En otra realización de la presente invención, se divulga un sistema y método de publicación de un compendio criptográfico de un depósito de archivos digitales. Se general un valor digital compuesto que representa al menos un subconjunto del historial completo de los registros recibidos. Dicho valor digital compuesto se genera aplicando un algoritmo determinístico a los elementos almacenados en el depósito. Además, se genera un número de secuencia compuesto que se establece igual al número de secuencia actual del depósito. Dicho valor digital compuesto, y el número de secuencia compuesto del depósito se divulgan a continuación al público.
En otra realización de la presente invención, se divulga un sistema y método de creación de una prueba certificable para un archivo digital en el que se genera un valor digital intervalo para el archivo relativo a un valor digital compuesto publicado. Se genera a continuación una prueba certificada, que incluye al menos el valor digital intervalo y el número de secuencia del registro y que puede incluir además un subconjunto del archivo digital mismo, el valor digital compuesto y el número de secuencia compuesto.
La siguiente especificación, junto con las figuras siguientes, mostrará otros aspectos y ventajas de la invención.
Breve descripción de las figuras
Para comprender la presente invención, se describirá a continuación como ejemplo, en relación con las figuras que se acompañan, en las cuales:
La Figura 1 es el organigrama general del sistema y método de generación de un certificado digital, que ilustra de forma general los pasos necesarios para registrar un archivo digital en un depósito, publicar de forma criptográfica un compendio del depósito y generar una prueba certificada del archivo digital.
La Figura 2 es un organigrama de una parte del sistema y método de generación de un certificado digital, que ilustra detalladamente el procedimiento de registro de un archivo digital en un depósito y genera un certificado digital que certifica el registro del archivo.
La Figura 3 es un organigrama de una parte del sistema y método de generación de un certificado digital para un archivo digital.
Figura 4 es un organigrama de una aplicación del sistema y método de generación de un certificado digital, que ilustra el procedimiento de utilización de una prueba certificada para verificar el número de secuencia y recepción de un archivo digital.
La Figura 5 es un organigrama de una aplicación del sistema y método de generación de un certificado digital, que ilustra el procedimiento de utilización de pruebas certificadas para verificar los números de secuencia y recepción de más de un archivo digital.
La Figura 6 es un diagrama de transición de estados de una parte del sistema y método de generación de un certificado digital, que ilustra los estados y transiciones intermedias de la generación de un primer certificado digital.
La Figura 7 es un diagrama de transición de estados de una parte del sistema y método de generación de un certificado digital, que ilustra los estados y transiciones intermedias de la generación de un segundo certificado digital.
La Figura 8 es una ilustración de la estructura de datos utilizada en el sistema y método de generación de un certificado digital, que ilustra un bosque de árboles binarios de resumen.
La Figura 9 es una ilustración de la estructura de datos utilizada en el sistema y método de generación de un certificado digital, que ilustra un bosque de árboles binarios de resumen representado como matriz indexada.
La Figura 10 es una ilustración de la estructura de datos utilizada en el sistema y método de generación de un certificado digital, que ilustra un bosque de árboles binarios de resumen dispuestos en una estructura de datos estratificada.
La Figura 11 es una ilustración de una tabla utilizada con el sistema y método de generación de un certificado digital, que ilustra el flujo de trabajo de un algoritmo de registro de archivos digitales.
La Figura 12 es una ilustración de una tabla utilizada con el sistema y método de generación de un certificado digital, que ilustra el flujo de trabajo de un algoritmo de generación de un valor digital intervalo.
La Figura 13 es una ilustración de una tabla utilizada con el sistema y método de generación de un certificado digital, que ilustra adicionalmente el flujo de trabajo de un algoritmo de generación de un valor digital intervalo.
Descripción detallada
Aunque la presente invención puede materializarse en realizaciones de muchas formas diferentes, las figuras muestran unas realizaciones preferentes que se describen detalladamente en la presente especificación, entendiendo que la presente divulgación se ha de considerar como una ejemplificación de los principios de la invención y no pretende limitar a las realizaciones ilustradas el aspecto más amplio de la invención.
Refiriéndonos de forma detallada a las figuras e inicialmente a la Figura 1, se proporciona un sistema y método de generación de un certificado digital. De forma resumida, el sistema y método consta de tres funcionalidades principales. La primera funcionalidad principal es el registro de un nuevo archivo digital. En el paso 101, el nuevo archivo se crea o se recibe. Un archivo digital es una representación de un dato, y el dato puede representar cualquier tipo de información digital. Por ejemplo, el dato puede ser un documento electrónico, información de un pedido, información de identificación o cualquier otro tipo de información representada digitalmente. Como representación del dato, el archivo digital puede incluir el dato entero, puede constar de una parte del dato o puede ser otra representación cualquiera del dato. En una realización preferente, el nuevo archivo digital se recibe en el paso 101. En otra realización preferente, el nuevo archivo digital se crea en el paso 101 en base a un dato recibido, y se almacena a continuación en un depósito de archivos digitales.
En la fase 102, se aplica una nueva función determinística a por lo menos un subconjunto de los archivos digitales almacenados en el depósito, generando de este modo un primer valor digital compuesto. En una realización preferente, la primera función determinística se aplica a todo los ficheros digitales almacenados en el deposito, asegurando de este modo que el primer valor digital compuesto sea una representación del historial completo del depósito y reduciendo por lo tanto la posibilidad de que el propietario del depósito pueda manipular posteriormente el contenido del depósito.
Además, en la fase 102, se asigna un número de secuencia al nuevo archivo digital. En una realización preferente, el número de secuencia representa el orden en que se recibe el nuevo archivo digital. Por ejemplo, si existen diez archivos digitales almacenados en el depósito cuando se recibe el nuevo archivo digital, el número de secuencia 11 será asignado al nuevo archivo digital. Sin embargo, el número de secuencia puede ser cualquier representación del tiempo u orden en que se recibe el nuevo archivo digital.
En el paso 103, se genera un primer certificado, de modo que el certificado verifique la recepción del nuevo archivo digital. El primer certificado consta al menos del número de secuencia asignado al nuevo archivo digital y del valor digital compuesto. En una realización preferente, puesto que el número de secuencia indica el momento, o el orden en que se recibe el nuevo archivo digital, y el primer valor digital compuesto representa el historial del depósito al recibir el nuevo archivo digital, el primer certificado se puede utilizar, por tanto, para verificar el número de secuencia.
En el paso 104, se puede añadir opcionalmente información adicional al primer certificado. Por ejemplo, en una realización preferente, el primer certificado consta adicionalmente del nuevo archivo digital o de una parte del mismo. Dicha inclusión es útil para verificar que el contenido del archivo digital ha sido recibido correctamente por el depósito. En otra realización preferente, la información adicional puede ser un sello de tiempo que indica el momento exacto en que se recibe el nuevo archivo digital.
En el paso 105, se aplica una firma digital al primer certificado. La firma digital puede ser cualquier tipo de firma que permita autenticar la identidad del propietario del depósito. Por ejemplo, la firma digital puede realizarse en base a un sistema privado/público de encriptación por claves, como RSA. En una realización preferente, el primer certificado se firma digitalmente utilizando una clave privada del propietario del depósito. Preferentemente, el primer certificado se transmite al creador o al proveedor del archivo digital.
En el paso 106, el nuevo archivo digital o una representación del mismo se añade al depósito. El paso 106, en el que se añade el nuevo archivo digital al depósito, puede ser realizado antes o después de la generación del primer valor digital compuesto en el paso 102. En una realización preferente, el nuevo archivo digital se añade al depósito tras la generación del primer certificado digital en el paso 103, de modo que se reduzca el tiempo de espera necesario para que el proveedor del nuevo archivo digital reciba el primer certificado digital. Después de añadir el nuevo archivo digital al depósito en el paso 106, es posible crear o recibir otros archivos digitales adicionales, o, expresado de otro modo, el sistema puede volver al paso 101. La segunda funcionalidad principal del sistema y método de generación de un certificado digital es la publicación de información correspondiente al depósito. En el paso 107, se general un segundo valor digital compuesto aplicando una segunda función determinística a por lo menos un subconjunto de los archivos digitales almacenados en el depósito. Como el primer valor digital compuesto, el segundo valor digital compuesto representa el historial del depósito en un momento concreto. En una realización concreta, las funciones determinísticas primera y segunda no son las mismas funciones. Preferentemente, la segunda función determinística se aplica a todos los archivos digitales almacenados en el depósito y, por tanto, el segundo valor digital compuesto representa el historial completo del depósito, reduciendo de este modo el riesgo de que el propietario del depósito manipule el depósito.
En el paso 108, se genera un número de secuencia compuesto, en el que el número de secuencia se corresponde con el orden en el que se genera el segundo valor digital compuesto. El número de secuencia compuesto de este modo es una indicación de la calidad temporal del segundo valor digital compuesto. En el paso 108, el segundo valor digital compuesto y el número de secuencia compuesto se publican, es decir, se transmiten a un foro público. El foro público puede ser cualquier fuente de información disponible al público en general. Por ejemplo, el foro público puede ser un periódico, una revista, un sitio web en Internet, o el correo electrónico.
La tercera funcionalidad principal del sistema y método de generación de un certificado digital es la creación de un segundo certificado que avala la autenticidad del número de secuencia del nuevo certificado digital. En el paso 109, se genera un valor digital intervalo que se basa en los valores digitales compuestos primero y segundo. En una realización preferente, el valor digital intervalo es el resultado de la aplicación de una tercera función determinística aplicada a los archivos digitales almacenados en el depósito de la recepción del nuevo archivo digital y la generación del segundo valor digital compuesto. Por lo tanto, el valor digital intervalo puede reflejar el historial del depósito entre la recepción del nuevo archivo digital y la publicación del segundo valor digital compuesto. Sin embargo, el valor digital intervalo también puede ser el resultado de la aplicación de una función determinística aplicada a todos los archivos digitales almacenados en el depósito y reflejará, por lo tanto, el historial completo del depósito.
En el paso 110, se genera un segundo certificado, que incluye al menos el valor digital intervalo y el número de secuencia del nuevo archivo digital.
Puesto que el valor digital intervalo refleja el historial del depósito desde el momento en que se añadió el nuevo archivo digital al depósito, o un momento anterior, el valor digital intervalo se puede utilizar para verificar la exactitud del número de secuencia. Asimismo, el valor digital intervalo se puede utilizar para renovar, es decir, prorrogar, la autenticidad del nuevo archivo digital. Ya que la generación del valor de intervalo digital no se basa en el uso de las claves de encriptación, la seguridad del segundo certificado digital no está sujeta al riesgo de compromiso de la clave de encriptación.
La Figura 2 muestra una indicación detallada de los pasos del método de generación de un certificado digital. En el paso 106, el nuevo archivo digital 200 se añade al depósito 210. En el paso 205, una primera función determinística se aplica a por lo menos un subconjunto de los archivos digitales almacenados en el depósito para producir un primer valor digital compuesto 204. El paso de añadir el nuevo fichero digital 200 al depósito 106 se puede realizar o antes o después del paso de la aplicación de la primera función determinística 205 al depósito 210. Se asigna un número de secuencia 202 al nuevo fichero digital 200, en el que el número de secuencia representa el valor temporal del nuevo archivo digital 200, es decir, el orden en que se ha recibido el nuevo archivo digital 200.
En el paso 103, se genera el primer certificado 201. El primer certificado 201 incluye al menos el primer valor digital compuesto 204 y el número de secuencia 202 del nuevo certificado digital 200. Además, el primer certificado 201 puede incluir el nuevo fichero digital 200 y otros datos adicionales 207. En el paso 208, el primer certificado 201 se firma con una firma digital 209, preferentemente en base a un sistema de encriptación pública por claves.
En el paso 213, se aplica una segunda función determinística a los archivos digitales almacenados en el depósito 210 para generar un segundo valor digital compuesto 212. Se genera un número de secuencia compuesto 217, preferentemente idéntico al próximo número de secuencia disponible en ese momento en el depósito 210. En el paso 109, se genera un valor digital intervalo 214, que refleja la diferencia temporal entre la recepción del nuevo archivo digital 200 y la generación del segundo valor digital compuesto 212.
Por último, en el paso 110, se genera un segundo certificado 215, que consta de al menos el número de secuencia 202 del nuevo archivo digital 200 y el valor digital intervalo 212. Adicionalmente, según las indicaciones del paso 110, el segundo certificado 215 puede constar de todo o parte del primer certificado 201, y el número de secuencia compuesto 217.
La Figura 3 indica de forma detallada los pasos de verificación del segundo certificado 215. Un cliente 301 recibe del servidor 302 un primer certificado 201, que fue firmado preferentemente con una firma digital 209. Opcionalmente, al recibir el primer certificado 201, se realiza un procedimiento de verificación de firma 308 para comprobar inicialmente la autenticidad del primer certificado 201. Preferentemente, el procedimiento de verificación de la firma 308 consta del uso de un sistema de encriptación en base a claves.
El primer certificado 201 es recibido por un segundo cliente 303 y se realiza un procedimiento de verificación de la firma 308 para verificar la autenticidad del primer certificado 201. En una realización preferente, si se determina en el paso 308 que la firma digital 209 del primer certificado 201 es inválido, el segundo cliente 303 no podrá confirmar ni validar el primer certificado 201. Si se detecta que la firma digital 209 del primer certificado 201 es válida, el primer certificado 201 se transmite a un segundo servidor 304 en el que se renueva, se prorroga y se valida el primer certificado aplicando el método descrito en este informe para generar el segundo certificado 215. El segundo certificado 215 se transmite a continuación al segundo servidor 304. El segundo valor digital compuesto 212 y el número de secuencia compuesto 217 publicados están disponibles de forma pública para el segundo cliente 303. Por lo tanto, en base a dichos valores, el segundo certificado 215 y el primer certificado 201, el segundo cliente 303 puede verificar la validez del número de secuencia 202 mediante el proceso de verificación 307. Al determinar que el primer certificado 201 y el segundo certificado 215 son coherentes, el segundo cliente 303 puede confiar en la autenticidad del número de secuencia 202 y el archivo digital 200 proporcionado por el primer cliente 301.
En relación con la Figura 4, se ilustra de forma detallada otra realización del sistema y método de verificación de un archivo digital 200. Un archivo digital 200 se transmite de un cliente 402 a un servidor de verificación 401. El segundo certificado 215 es recibido de un servidor de prórroga 403, donde se ha realizado el proceso de generación del segundo certificado 215. El segundo valor digital compuesto 212 y el número de secuencia compuesto 217, denominados colectivamente los "valores públicos" 212, se publican en el servidor público 404 y llegan al servidor de verificación 401. El segundo certificado 215, el archivo digital 200 y los valores públicos 212 se utilizan en el proceso de verificación 405 ahora descrito. Por consiguiente, el servidor de verificación 401 puede confiar en la validez del archivo digital 200 remitido por el cliente 402.
En relación con la Figura 5, se ilustra de forma detallada una realización del sistema y método de registro de archivos digitales, en el que un servidor de verificación 501 puede verificar el orden de los valores de secuencia 202 de archivos digitales 200 "rivales" proporcionados por los clientes primero y segundo 502 y 504 respectivamente. Un primer cliente 502 transmite al servidor de verificación 501 un primer archivo digital 503, acompañado del segundo certificado 509 correspondiente al primer archivo digital 503. Un segundo cliente 504 transmite al servidor de verificación 501 un segundo archivo digital 510, acompañado del segundo certificado 511, que corresponde al segundo archivo digital 510. Por consiguiente, el servidor de verificación 501 puede utilizar el sistema y método ahora descritos para determinar cuál de los archivos digitales rivales 200 fue registrado primero.
Los valores públicos 512, publicados en un servidor público 506, llegan al servidor de verificación 501. Utilizando el proceso de verificación 507 descrito, el servidor de verificación 501 puede confiar en los archivos digitales primer y segundo 200 y los segundos certificados que se acompañan para determinar cuáles de los archivos digitales 200 son auténticos. Además, puesto que los números de secuencia 202 de los archivos digitales 200 se reflejan en los segundos certificados 215, el servidor de verificación 501 puede determinar también el orden auténtico en el que se recibieron los archivos digitales 200.
En relación con la Figura 6, se proporciona un diagrama de transición de estados que ilustra adicionalmente los estados y las transiciones entre ellos para registrar un nuevo archivo digital y generar un primer certificado digital. En el paso 603, se inicializa el sistema de registro. El valor de secuencia se fija a cero, se borran los archivos digitales del depósito y se eliminan los valores digitales compuestos. En el paso 602, el sistema espera recibir un archivo digital. Cuando se recibe un fichero digital, el primer valor digital compuesto se genera en el paso 604. En el paso 605, se asigna un valor de secuencia al nuevo archivo digital, y se genera un primer certificado digital de acuerdo con los procedimientos descritos en este informe. El primer certificado digital se firma digitalmente. Por último, el nuevo archivo digital se añade al depósito. Una vez completo el registro en 605, el sistema vuelve a un estado de espera 602 para recibir otro fichero digital nuevo.
En relación con la Figura 7, se proporciona un diagrama de transición de estados que ilustra adicionalmente los estados y transiciones entre ellos para prorrogar el primer certificado digital. El sistema empieza en el paso 701 y en el paso 703 el sistema se inicializa. El segundo valor digital compuesto se genera aplicando la segunda función determinística al depósito y se genera el valor de secuencia compuesto. A continuación el sistema procede a un estado de espera 702 para la recepción de un certificado digital. Si no se recibe ningún certificado digital, el sistema pueden volver intermitentemente al paso 703 para reiniciarse y regenerar los valores compuestos. Cuando se recibe un certificado digital, el valor digital intervalo se genera en el paso 704, de acuerdo con el proceso descrito en el presente informe. Una vez generado el valor digital intervalo, el sistema genera un segundo certificado digital en el paso 705. Por último, el sistema vuelve a un estado de espera 702 para recibir otro certificado digital. En una realización preferente, puesto que la generación del segundo certificado digital queda en función del contenido del primer certificado digital, el sistema se puede utilizar para renovar o prorrogar la autenticidad del primer certificado digital. El sistema se puede utilizar además para verificar la autenticidad del primer certificado digital, y se puede utilizar también para verificar la autenticidad del archivo digital correspondiente al primer certificado digital.
En relación con la Figura 8, se proporciona un diagrama que ilustra una estructura de datos para utilizar con el sistema y método de generación de un certificado digital. En una realización preferente, la estructura de datos es un bosque de árboles binarios de resumen en el que cada vértice padre de un árbol binario es un resumen criptográfico de los vértices hijo. La construcción del árbol binario de resumen se realiza en el acto en base a la recepción de nuevos archivos digitales. Los nuevos archivos digitales son representados por valores resumen de un tamaño predeterminado y se almacenan como hojas 802 de los árboles binarios de resumen. El uso de una estructura de datos de árbol binario significa que no se necesita saber el número de archivos digitales almacenados en el depósito y que no es necesario determinar los parámetros topológicos del depósito, por ejemplo, la altura y la anchura. Así, la Figura 8 representa la estructura de datos en forma de bosque de árboles binarios resumen del depósito después de recibir seis archivos digitales.
Los vértices de hoja 802 del bosque se organizan de forma natural. El número de secuencia n de una hoja determina su posición en el bosque. Si se recibe un nuevo archivo de datos x_{n}, se almacena en primera lugar como hoja con valor de secuencia n y a continuación se actualiza dicho árbol. El proceso de actualización se organiza de modo que sólo los vértices raíz 801 del bosque participen en las futuras generaciones de valores digitales compuestos. De este modo la lista de vértices raíz sirve a un resumen de estado para su uso en la generación de valores digitales compuestos. Durante el proceso de generación de un valor digital compuesto, cualquier vértice de la estructura que se pueda computar se computa y se almacena inmediatamente. Todas las hojas 802 se almacenan en su orden computacional, correspondiente preferentemente al transversal post-orden del árbol. Puesto que los vértices raíz 801 ya representan los valores resumen de los vértices hoja 802, los vértices hoja 802 no necesitan tenerse en cuenta en la generación de un valor digital compuesto. De este modo, la estructura de datos de bosque de árboles binarios resumen facilita un tratamiento muy rápido de los valores digitales compuestos.
En relación con la Figura 9, se proporciona un diagrama que ilustra una estructura de datos para su uso con el sistema y método de generación de un certificado digital, en el que la estructura de datos de árboles binarios resumen se ilustra además como conjunto indizado. Los elementos de un conjunto que representan el bosque se almacenan en su orden computacional. Para indicarlo de otra forma, los elementos calculados anteriormente en el tiempo tienen índices menores que los elementos calculados posteriormente.
El proceso de construcción de la estructura de datos en forma de bosque depende preferentemente del uso de una pila que contiene los valores resumen raíz h_{i}...h_{s}, con h_{s} en la parte superior de la pila. Si (x_{0}...x_{n-1}) son las hojas del bosque, el número de elementos en la pila es idéntico al número de bits puestos en la representación binaria de n. Cada hoja añadida modifica algunos valores en la parte superior de la pila, y el número de valores que se modifican es igual al número de bits-1 más hacia la derecha en la representación binaria de n. Por ejemplo, si n=23 la n-ésima adición cambia tres elementos de la pila porque 23=10111_{2}.
La Figura 10 es un diagrama que ilustra una estructura de datos para utilizar con el sistema y método de generación de un certificado digital, en el que la estructura de datos se ilustra además como bosque estratificado de árboles binarios resumen. Es preferible organizar el árbol binario en estratos a fin de calcular eficientemente el valor digital intervalo. El estrato n -ésimo1001 se define como subconjunto mínimo de vértices que cumplen dos supuestos. En primer lugar, el estrato cumple el supuesto que, para todos los n, la hoja x_{n} pertenezca al estrato n-ésimo. En segundo lugar, el estrato satisface el supuesto de que si uno de los vértices hijo de un vértice v pertenece al n-ésimo estrato y el otro hijo pertenece al (n-k)-ésimo estrato (donde k
\euro
{0...n}, entonces el vértice v también ha de pertenecer al n-ésimo estrato. La Figura 10 muestra un ejemplo de un árbol binario resumen de seis nodos organizados en estratos.
En relación con la Figura 11, se proporciona una tabla que ilustra el flujo de trabajo de un algoritmo para su uso con el sistema y método de generación de un certificado digital. En una realización preferente, se proporciona el algoritmo de registro de un archivo digital, en el que n representa el número de secuencia del depósito y x representa un nuevo archivo digital, como sigue:
1
En la Figura 11 se muestra un flujo de trabajo que ilustra la aplicación de este algoritmo con entradas de archivos digitales (x_{0}, x_{1}, x_{2}, x_{3}, x_{4}). La función Actualizar (Depósito, valor_compuesto, n, x) se puede definir además como:
2
En relación con la Figura 12, se proporciona una tabla que ilustra el flujo de trabajo para su uso con el sistema y método de generación de un certificado digital. En una realización preferente, el algoritmo de generación de un valor digital intervalo, donde n representa el número de secuencia del depósito y N representa el valor de secuencia compuesto, será como sigue:
3
En la Figura 12 se muestra un flujo de trabajo que ilustra la aplicación de este algoritmo en el que n = 4 y N = 7. En la Figura 13 se muestra un flujo de trabajo que ilustra la aplicación de este algoritmo donde n = 3 y N = 7.
Se comprenderá que la invención se puede realizar de otras formas específicas sin abandonar el espíritu o las características principales de la misma. Por lo tanto, las presentes realizaciones se han de considerar en todos los aspectos como ilustrativas y no limitadoras, y la invención no se ha de limitar a los detalles de la presente descripción.

Claims (19)

1. Método de generación de un certificado digital en un sistema que consta de un primer ordenador de un proveedor de servicios que incorpora un depósito y un segundo ordenador de un cliente (401-404, 501-506), que comprende los siguientes pasos:
-
recepción en el ordenador del proveedor del servicio de un nuevo archivo digital enviado desde el segundo ordenador;
-
asignación de un valor de secuencia (202) al nuevo archivo digital en el ordenador del proveedor del servicio y el almacenamiento de datos incluyendo los archivos digitales y los valores resumen (hash) del depósito (215);
-
generación de un primer valor digital compuesto aplicando una primera función (204) a una primera pluralidad de los datos almacenados en el depósito, en el que la primera función computa un conjunto de valores raíz para un bosque binario de resúmenes no conectado (801);
-
generación de un primer certificado digital en el que el primer certificado digital comprende al menos el valor de secuencia y del primer valor digital compuesto;
-
agregación al depósito del nuevo archivo digital;
-
generación de una secuencia de valores resumen y almacenamiento de la secuencia de valores resumen en el depósito (215), aplicando una segunda función (216) a una segunda pluralidad de datos almacenados en el depósito, en el que la segunda pluralidad de datos incluye el nuevo archivo digital y en el que la segunda función computa el bosque binario de resúmenes no conectado (801);
-
generación de un valor de secuencia compuesto (217);
-
generación de un segundo valor digital compuesto (212) aplicando una tercera función a una tercera pluralidad de los datos almacenados en el depósito;
-
generación de un valor digital intervalo (214) aplicando una cuarta función a una cuarta pluralidad de los datos almacenados en el depósito, en el que el valor digital intervalo se basa en el valor de secuencia y el valor compuesto de secuencia; y
-
generación de un segundo certificado digital, en el que el segundo certificado digital consta de al menos el valor de secuencia y el valor digital intervalo.
2. Método de acuerdo con la Reivindicación 1, en el que el valor de secuencia es representativo del orden en que se recibió el nuevo archivo digital.
3. Método de acuerdo con la Reivindicación 1, que consta además del paso de aplicar al primera certificado digital una firma digital.
4. Método de acuerdo con la Reivindicación 3, en el que el primer certificado digital se genera utilizando un algoritmo criptográfico asimétrico.
5. Método de acuerdo con la Reivindicación 1, en el que el paso de generar el primer valor digital compuesto se realiza aplicando la primera función a todos los archivos digitales almacenados en el depósito.
6. Método de acuerdo con la Reivindicación 1, en el que la primera y la tercera función no son la misma función.
7. Método de acuerdo con la Reivindicación 1, en el que la primera y la tercera función son la misma función.
8. Método de acuerdo con la Reivindicación 1, en el que el paso de la generación del segundo valor digital compuesto se realiza aplicando la tercera función a todos los archivos digitales almacenados en el depósito.
9. Método de acuerdo con la Reivindicación 1, en el que el primer certificado digital consta además del nuevo archivo digital.
10. Método de acuerdo con la Reivindicación 1, en el que el segundo certificado digital incorpora además al menos uno de los siguientes elementos: el nuevo archivo digital y el valor de secuencia compuesto.
11. Método de acuerdo con la Reivindicación 1, en el que el depósito informático de los archivos digitales consta de una estructura de datos de un bosque binario de resúmenes no conectado.
12. Método de acuerdo con la Reivindicación 1, que consta además del paso de transmitir el segundo valor digital compuesto a un ordenador de un foro público.
13. Método de acuerdo con la Reivindicación 1, que consta además del paso de transmitir el valor de secuencia compuesto a un ordenador de un foro público.
14. Método de acuerdo con la Reivindicación 1, en el que el paso de la generación del primer valor digital compuesto se realiza antes del paso de generar el segundo valor digital compuesto.
15. Método de evaluación de un certificado digital tal y como se genera de acuerdo con el método de cualesquiera de las reivindicaciones 1 a 14 que consta al menos de un valor de secuencia, un primer valor digital compuesto y un valor digital intervalo, en el que se genera el valor digital compuesto aplicando una primera función a una primera pluralidad de datos almacenados en un depósito de un proveedor de servicios, en el que la primera función computa un conjunto de valores raíz para un bosque binario de resúmenes no conectado y en el que el segundo valor digital se genera aplicando una segunda función a una segunda pluralidad de datos almacenados en un depósito del proveedor de servicios, en que dicho método comprende los siguientes pasos: generación de un segundo valor digital compuesto aplicando una tercera función al primer valor digital compuesto y el valor digital intervalo, y determinación de si o no el segundo valor digital compuesto refleja exactamente una tercera pluralidad de los datos almacenados en un ordenador de un foro público.
16. Método de acuerdo con la Reivindicación 15, en el que el valor de secuencia es representativo del orden en que se ha recibido un archivo digital.
17. Método de acuerdo con la Reivindicación 15, en el que el certificado digital consta además de un archivo digital.
18. Método de acuerdo con la Reivindicación 15, en que el certificado digital consta además de un sello de tiempo digital.
19. Método de acuerdo con la Reivindicación 1, adaptado para generar una pluralidad de certificados digitales en el que: el valor de secuencia aplicado al nuevo archivo digital en el ordenador del proveedor de servicios representa el orden en que se recibió el nuevo archivo digital; el paso de la generación del nuevo certificado digital es realizada aplicando la primera función a todos los archivos digitales almacenados en el depósito y en que la primera función consta de una primera función determinística con un componente de función resumen, y el nuevo archivo digital no se almacena en el depósito del ordenador del proveedor del servicio cuando se aplica la primera función determinística y en que la primera función determinística computa al menos un valor resumen raíz para un bosque binario de resúmenes no conectado; el nuevo certificado digital consta además del nuevo archivo digital; el método consta además del paso de aplicar una firma digital al primer certificado digital, en que la firma digital se aplica utilizando un algoritmo criptográfico asimétrico; tras la adición de un nuevo valor digital al depósito, el paso de la generación de una secuencia de valores resumen se realiza aplicando la segunda función a todos los archivos digitales almacenados en el depósito y en que la segunda función consta de una segunda función determinística con un componente de función resumen a todos los archivos digitales almacenados en el depósito; el paso de generación del segundo valor digital compuesto se realiza aplicando una tercera función a todos los archivos digitales almacenados en el depósito en el que la tercera función consta de una tercera función determinística con un componente de función resumen; el valor de secuencia compuesto es igual al número de archivos digitales almacenados en el depósito del ordenador del proveedor de servicios cuando se genera el segundo valor digital compuesto; el paso de la generación del valor digital intervalo se realiza por la aplicación de la cuarta función a una pluralidad de datos almacenados en el depósito, en que la cuarta función consta de una cuarta función determinística con un componente de función resumen; y el segundo certificado digital comprende adicionalmente al menos uno de los siguientes elementos: el nuevo archivo digital y el valor de secuencia compuesta.
ES04806422T 2003-12-22 2004-12-22 Sistema y metodo para la generacion de certificados digitales. Active ES2293377T3 (es)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US53186503P 2003-12-22 2003-12-22
US531865P 2003-12-22
US5838 2004-12-07
US11/005,838 US7698557B2 (en) 2003-12-22 2004-12-07 System and method for generating a digital certificate

Publications (1)

Publication Number Publication Date
ES2293377T3 true ES2293377T3 (es) 2008-03-16

Family

ID=34680816

Family Applications (1)

Application Number Title Priority Date Filing Date
ES04806422T Active ES2293377T3 (es) 2003-12-22 2004-12-22 Sistema y metodo para la generacion de certificados digitales.

Country Status (10)

Country Link
US (3) US7698557B2 (es)
EP (1) EP1698100B1 (es)
JP (1) JP4742049B2 (es)
CY (1) CY1107889T1 (es)
DE (1) DE602004010300T2 (es)
DK (1) DK1698100T3 (es)
ES (1) ES2293377T3 (es)
PL (1) PL1698100T3 (es)
PT (1) PT1698100E (es)
WO (1) WO2005064846A1 (es)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7558563B2 (en) * 1999-09-17 2009-07-07 Silverbrook Research Pty Ltd Retrieving contact details via a coded surface
US8209246B2 (en) 2001-03-20 2012-06-26 Goldman, Sachs & Co. Proprietary risk management clearinghouse
US7899722B1 (en) * 2001-03-20 2011-03-01 Goldman Sachs & Co. Correspondent bank registry
US8121937B2 (en) * 2001-03-20 2012-02-21 Goldman Sachs & Co. Gaming industry risk management clearinghouse
US8140415B2 (en) 2001-03-20 2012-03-20 Goldman Sachs & Co. Automated global risk management
US8762191B2 (en) 2004-07-02 2014-06-24 Goldman, Sachs & Co. Systems, methods, apparatus, and schema for storing, managing and retrieving information
US8996481B2 (en) 2004-07-02 2015-03-31 Goldman, Sach & Co. Method, system, apparatus, program code and means for identifying and extracting information
US8510300B2 (en) 2004-07-02 2013-08-13 Goldman, Sachs & Co. Systems and methods for managing information associated with legal, compliance and regulatory risk
US8442953B2 (en) 2004-07-02 2013-05-14 Goldman, Sachs & Co. Method, system, apparatus, program code and means for determining a redundancy of information
US7724399B2 (en) * 2005-09-19 2010-05-25 Silverbrook Research Pty Ltd Method of downloading and installing a software object
US20070064075A1 (en) * 2005-09-19 2007-03-22 Silverbrook Research Pty Ltd Printing a membership using a mobile device
US7738674B2 (en) * 2005-09-19 2010-06-15 Silverbrook Research Pty Ltd Retrieving location data by sensing coded data on a surface
US7403797B2 (en) * 2005-09-19 2008-07-22 Silverbrook Research Pty Ltd Obtaining a physical product via a coded surface
US20070085332A1 (en) * 2005-09-19 2007-04-19 Silverbrook Research Pty Ltd Link object to sticker and location on surface
US7992213B2 (en) 2005-09-19 2011-08-02 Silverbrook Research Pty Ltd Gaining access via a coded surface
US7880911B2 (en) * 2005-09-19 2011-02-01 Silverbrook Research Pty Ltd Printing a position using a mobile device
US7558599B2 (en) * 2005-09-19 2009-07-07 Silverbrook Research Pty Ltd Printing a bill using a mobile device
US7689249B2 (en) * 2005-09-19 2010-03-30 Silverbrook Research Pty Ltd Printing a security identification using a mobile device
US7945943B2 (en) * 2005-09-19 2011-05-17 Silverbrook Research Pty Ltd Retrieving an access token via a coded surface
US7668540B2 (en) * 2005-09-19 2010-02-23 Silverbrook Research Pty Ltd Print on a mobile device with persistence
US7855805B2 (en) 2005-09-19 2010-12-21 Silverbrook Research Pty Ltd Printing a competition entry form using a mobile device
US8072629B2 (en) * 2005-09-19 2011-12-06 Silverbrook Research Pty Ltd Print subscribed content on a mobile device
US7438215B2 (en) * 2005-09-19 2008-10-21 Silverbrook Research Pty Ltd Printing location-based information using a mobile device
US7848777B2 (en) 2005-09-19 2010-12-07 Silverbrook Research Pty Ltd Printing a puzzle using a mobile device
US7920896B2 (en) * 2005-09-19 2011-04-05 Kia Silverbrook Printing an almanac using a mobile device
US7654444B2 (en) * 2005-09-19 2010-02-02 Silverbrook Research Pty Ltd Reusable sticker
US7953387B2 (en) * 2005-09-19 2011-05-31 Silverbrook Research Pty Ltd Retrieving a program via a coded surface
US7970435B2 (en) * 2005-09-19 2011-06-28 Silverbrook Research Pty Ltd Printing an advertisement using a mobile device
US7697714B2 (en) * 2005-09-19 2010-04-13 Silverbrook Research Pty Ltd Associating an object with a sticker and a surface
US7843595B2 (en) 2005-09-19 2010-11-30 Silverbrook Research Pty Ltd Printing a calendar using a mobile device
US7380709B2 (en) * 2005-09-19 2008-06-03 Silverbrook Research Pty Ltd Printing a trading card using a mobile device
US7953386B2 (en) 2005-09-19 2011-05-31 Silverbrook Research Pty Ltd Bill per card print
US20070064130A1 (en) * 2005-09-19 2007-03-22 Silverbrook Research Pty Ltd Link object to form field on surface
US7357311B2 (en) * 2005-09-19 2008-04-15 Silverbrook Research Pty Ltd Printing educational material using a mobile device
US7641115B2 (en) 2005-09-19 2010-01-05 Silverbrook Research Pty Ltd Type-specific sticker
US7738862B2 (en) * 2005-09-19 2010-06-15 Silverbrook Research Pty Ltd Retrieve information via card on mobile device
US7407092B2 (en) * 2005-09-19 2008-08-05 Silverbrook Research Pty Ltd Printing gaming information using a mobile device
US7856225B2 (en) 2005-09-19 2010-12-21 Silverbrook Research Pty Ltd Retrieving a program state via a coded surface
US7747280B2 (en) * 2005-09-19 2010-06-29 Silverbrook Research Pty Ltd Retrieving a product via a coded surface
US7843596B2 (en) 2005-09-19 2010-11-30 Silverbrook Research Pty Ltd Printing a ticket using a mobile device
US7506802B2 (en) * 2005-09-19 2009-03-24 Silverbrook Research Pty Ltd Method of performing an action in relation to a software object
US7621442B2 (en) * 2005-09-19 2009-11-24 Silverbrook Research Pty Ltd Printing a subscription using a mobile device
US7920854B2 (en) * 2005-09-19 2011-04-05 Silverbrook Research Pty Ltd Printing a map using a mobile device
US7672664B2 (en) * 2005-09-19 2010-03-02 Silverbrook Research Pty Ltd Printing a reminder list using mobile device
US20070065206A1 (en) * 2005-09-19 2007-03-22 Silverbrook Research Pty Ltd Printing a coupon using a mobile device
US7575172B2 (en) * 2005-09-19 2009-08-18 Silverbrook Research Pty Ltd Printing a greeting card using a mobile device
US7738919B2 (en) * 2005-09-19 2010-06-15 Silverbrook Research Pty Ltd Link object to card
US7924450B2 (en) * 2005-09-19 2011-04-12 Silverbrook Research Pty Ltd Reprint card on a mobile device
US7558597B2 (en) * 2005-09-19 2009-07-07 Silverbrook Research Pty Ltd. Retrieving a ringtone via a coded surface
US7917171B2 (en) * 2005-09-19 2011-03-29 Silverbrook Research Pty Ltd Printing a receipt using a mobile device
US7428986B2 (en) * 2005-09-19 2008-09-30 Silverbrook Research Pty Ltd Printing a health report using a mobile device
US7637424B2 (en) * 2005-09-19 2009-12-29 Silverbrook Research Pty Ltd Printing audio information using a mobile device
US7756526B2 (en) * 2005-09-19 2010-07-13 Silverbrook Research Pty Ltd Retrieving a web page via a coded surface
US7708203B2 (en) 2005-09-19 2010-05-04 Silverbrook Research Pty Ltd Link object to sticker
US7742755B2 (en) * 2005-09-19 2010-06-22 Silverbrook Research Pty Ltd Retrieving a bill via a coded surface
US7469829B2 (en) * 2005-09-19 2008-12-30 Silverbrook Research Pty Ltd Printing video information using a mobile device
US7761090B2 (en) * 2005-09-19 2010-07-20 Silverbrook Research Pty Ltd Print remotely to a mobile device
US7805162B2 (en) 2005-09-19 2010-09-28 Silverbrook Research Pty Ltd Print card with linked object
US7822985B2 (en) * 2006-08-21 2010-10-26 The Boeing Company Real-time electronic signature validation systems and methods
JP5304076B2 (ja) * 2008-07-28 2013-10-02 日本電気株式会社 タイムスタンプ圧縮装置、検証装置、要求装置、サーバ、制御方法、プログラム、及び記憶媒体
GB2501645B (en) * 2011-03-16 2014-08-27 Ibm System for enablng digital signature auditing
US9032492B2 (en) 2011-09-01 2015-05-12 Microsoft Corporation Distributed computer systems with time-dependent credentials
US9058467B2 (en) 2011-09-01 2015-06-16 Microsoft Corporation Distributed computer systems with time-dependent credentials
US8640210B2 (en) * 2011-09-01 2014-01-28 Microsoft Corporation Distributed computer systems with time-dependent credentials
WO2014038034A1 (ja) * 2012-09-06 2014-03-13 富士通株式会社 情報処理システム,情報処理方法,プログラム
US20140245020A1 (en) * 2013-02-22 2014-08-28 Guardtime Ip Holdings Limited Verification System and Method with Extra Security for Lower-Entropy Input Records
US9425966B1 (en) 2013-03-14 2016-08-23 Amazon Technologies, Inc. Security mechanism evaluation service
US9391980B1 (en) 2013-11-11 2016-07-12 Google Inc. Enterprise platform verification
US9252958B1 (en) * 2014-03-12 2016-02-02 Crimson Corporation Systems and methods for providing a self-maintaining PKI infrastructure among loosely connected entities
US9614682B2 (en) 2014-04-11 2017-04-04 Guardtime IP Holdings, Ltd. System and method for sequential data signatures
US10116441B1 (en) 2015-06-11 2018-10-30 Amazon Technologies, Inc. Enhanced-security random data
TWI569166B (zh) * 2016-01-05 2017-02-01 精品科技股份有限公司 資料驗證方法
US10484181B2 (en) * 2016-12-12 2019-11-19 Datiphy Inc. Streaming non-repudiation for data access and data transaction
KR20200081101A (ko) * 2018-12-27 2020-07-07 부산대학교 산학협력단 개인정보의 익명성을 제공하는 블록체인 시스템 및 블록체인에서 개인정보의 익명성을 제공하는 방법

Family Cites Families (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US36918A (en) * 1862-11-11 Improvement in platform-scales
US35808A (en) * 1862-07-08 Improvement in cushions for shuttle-boxes
US34954A (en) * 1862-04-15 Cord-windek
US4200770A (en) * 1977-09-06 1980-04-29 Stanford University Cryptographic apparatus and method
US4218582A (en) * 1977-10-06 1980-08-19 The Board Of Trustees Of The Leland Stanford Junior University Public key cryptographic apparatus and method
US4309569A (en) * 1979-09-05 1982-01-05 The Board Of Trustees Of The Leland Stanford Junior University Method of providing digital signatures
US4881264A (en) * 1987-07-30 1989-11-14 Merkle Ralph C Digital signature system and method based on a conventional encryption function
DE3827172A1 (de) * 1987-08-13 1989-03-16 Peter Elsner Einrichtung zur identifizierung von nachrichten
US4944009A (en) * 1988-02-25 1990-07-24 Massachusetts Institute Of Technology Pseudo-random sequence generator
US4995081A (en) * 1988-03-21 1991-02-19 Leighton Frank T Method and system for personal identification using proofs of legitimacy
US4879747A (en) * 1988-03-21 1989-11-07 Leighton Frank T Method and system for personal identification
US5191573A (en) * 1988-06-13 1993-03-02 Hair Arthur R Method for transmitting a desired digital video or audio signal
US5016274A (en) * 1988-11-08 1991-05-14 Silvio Micali On-line/off-line digital signing
US5003597A (en) * 1989-12-21 1991-03-26 Xerox Corporation Method and apparatus for data encryption
US5136647A (en) 1990-08-02 1992-08-04 Bell Communications Research, Inc. Method for secure time-stamping of digital documents
WO1992003000A1 (en) * 1990-08-02 1992-02-20 Bell Communications Research, Inc. Method for secure time-stamping of digital documents
US5136646A (en) * 1991-03-08 1992-08-04 Bell Communications Research, Inc. Digital document time-stamping with catenate certificate
US5988078A (en) * 1991-12-04 1999-11-23 Gemstar Development Corp. Method and apparatus for receiving customized television programming information by transmitting geographic location to a service provider through a wide-area network
US5157726A (en) * 1991-12-19 1992-10-20 Xerox Corporation Document copy authentication
US5297206A (en) * 1992-03-19 1994-03-22 Orton Glenn A Cryptographic method for communication and electronic signatures
US5276737B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
USRE36918E (en) 1992-04-20 2000-10-17 Certco Llc Fair cryptosystems and methods of use
US5315658B1 (en) * 1992-04-20 1995-09-12 Silvio Micali Fair cryptosystems and methods of use
US6130621A (en) * 1992-07-09 2000-10-10 Rsa Security Inc. Method and apparatus for inhibiting unauthorized access to or utilization of a protected device
US5373561A (en) * 1992-12-21 1994-12-13 Bell Communications Research, Inc. Method of extending the validity of a cryptographic certificate
US5351302A (en) * 1993-05-26 1994-09-27 Leighton Frank T Method for authenticating objects identified by images or other identifying information
CA2169449A1 (en) * 1993-08-13 1995-02-23 Frank Thomson Leighton Secret key exchange
US5400403A (en) * 1993-08-16 1995-03-21 Rsa Data Security, Inc. Abuse-resistant object distribution system and method
US5432852A (en) * 1993-09-29 1995-07-11 Leighton; Frank T. Large provably fast and secure digital signature schemes based on secure hash functions
US5825880A (en) * 1994-01-13 1998-10-20 Sudia; Frank W. Multi-step digital signature method and system
MX9602773A (es) * 1994-01-13 1997-05-31 Bankers Trust Co Sistema criptografico y metodo con aspecto de deposito de plica de clave.
US5420928A (en) * 1994-01-25 1995-05-30 Bell Communications Research, Inc. Pseudo-random generator
US5420927B1 (en) * 1994-02-01 1997-02-04 Silvio Micali Method for certifying public keys in a digital signature scheme
US5537475A (en) * 1994-02-01 1996-07-16 Micali; Silvio Efficient digital signature algorithm and use thereof technical field
US5420925A (en) * 1994-03-03 1995-05-30 Lectron Products, Inc. Rolling code encryption process for remote keyless entry system
ATE305682T1 (de) * 1994-07-19 2005-10-15 Certco Llc Verfahren zur sicheren anwendung digitaler unterschriften in einem kommerziellen verschlüsselungssystem
EP0695056B1 (en) * 1994-07-29 2005-05-11 Canon Kabushiki Kaisha A method for sharing secret information, generating a digital signature, and performing certification in a communication system that has a plurality of information processing apparatuses and a communication system that employs such a method
US5515307A (en) * 1994-08-04 1996-05-07 Bell Communications Research, Inc. Pseudo-random generator
JPH10511471A (ja) * 1994-08-12 1998-11-04 リートン,フランク、タムスン フェイルセイフキィ捺印システム
US5499296A (en) * 1994-08-22 1996-03-12 Micali; Silvio Natural input encryption and method of use
JP3554765B2 (ja) * 1994-10-28 2004-08-18 シュアティ コム インコーポレイテッド ドキュメントをユニークに特定し認証する証明書を発行するデジタルドキュメント証明システム
US6157721A (en) * 1996-08-12 2000-12-05 Intertrust Technologies Corp. Systems and methods using cryptography to protect secure computing environments
US6134326A (en) * 1996-11-18 2000-10-17 Bankers Trust Corporation Simultaneous electronic transactions
US5553145A (en) * 1995-03-21 1996-09-03 Micali; Silvia Simultaneous electronic transactions with visible trusted parties
US6141750A (en) * 1995-03-21 2000-10-31 Micali; Silvio Simultaneous electronic transactions with subscriber verification
US6137884A (en) * 1995-03-21 2000-10-24 Bankers Trust Corporation Simultaneous electronic transactions with visible trusted parties
AU4958396A (en) * 1995-03-27 1996-10-16 Stefanus Alfonsus Brands System for ensuring that the blinding of secret-key certific ates is restricted, even if the issuing protocol is performe d in parallel mode
DE69638307D1 (de) * 1995-06-05 2011-01-27 Cqrcert Llc Verfahren und Einrichtung zur digitalen Unterschrift in mehreren Schritten
JPH11508707A (ja) * 1995-06-30 1999-07-27 ブランズ,ステファヌス・アルフォンスス 秘密鍵上の制限的にブラインド可能な証明書
US5633929A (en) * 1995-09-15 1997-05-27 Rsa Data Security, Inc Cryptographic key escrow system having reduced vulnerability to harvesting attacks
US5717757A (en) * 1996-08-29 1998-02-10 Micali; Silvio Certificate issue lists
US5793868A (en) * 1996-08-29 1998-08-11 Micali; Silvio Certificate revocation system
US6097811A (en) * 1995-11-02 2000-08-01 Micali; Silvio Tree-based certificate revocation system
US5666416A (en) * 1995-10-24 1997-09-09 Micali; Silvio Certificate revocation system
US5604804A (en) * 1996-04-23 1997-02-18 Micali; Silvio Method for certifying public keys in a digital signature scheme
US5699528A (en) * 1995-10-31 1997-12-16 Mastercard International, Inc. System and method for bill delivery and payment over a communications network
US5724428A (en) * 1995-11-01 1998-03-03 Rsa Data Security, Inc. Block encryption algorithm with data-dependent rotations
US5608801A (en) * 1995-11-16 1997-03-04 Bell Communications Research, Inc. Efficient cryptographic hash functions and methods for amplifying the security of hash functions and pseudo-random functions
US5727063A (en) * 1995-11-27 1998-03-10 Bell Communications Research, Inc. Pseudo-random generator
US6026163A (en) * 1995-12-13 2000-02-15 Micali; Silvio Distributed split-key cryptosystem and applications
US5754659A (en) * 1995-12-22 1998-05-19 General Instrument Corporation Of Delaware Generation of cryptographic signatures using hash keys
US5812670A (en) * 1995-12-28 1998-09-22 Micali; Silvio Traceable anonymous transactions
US5615269A (en) * 1996-02-22 1997-03-25 Micali; Silvio Ideal electronic negotiations
US5790665A (en) * 1996-01-17 1998-08-04 Micali; Silvio Anonymous information retrieval system (ARS)
US5664018A (en) * 1996-03-12 1997-09-02 Leighton; Frank Thomson Watermarking process resilient to collusion attacks
US5949885A (en) * 1996-03-12 1999-09-07 Leighton; F. Thomson Method for protecting content using watermarking
US5666414A (en) * 1996-03-21 1997-09-09 Micali; Silvio Guaranteed partial key-escrow
FR2747257B1 (fr) * 1996-04-09 1998-09-11 Gilbert Henri Procede d'identification et/ou de signature
EP0804003A3 (en) * 1996-04-26 2000-11-15 Canon Kabushiki Kaisha Digital signature method and communication system
US5903651A (en) * 1996-05-14 1999-05-11 Valicert, Inc. Apparatus and method for demonstrating and confirming the status of a digital certificates and other data
US5610982A (en) * 1996-05-15 1997-03-11 Micali; Silvio Compact certification with threshold signatures
US6085320A (en) * 1996-05-15 2000-07-04 Rsa Security Inc. Client/server protocol for proving authenticity
US5638447A (en) * 1996-05-15 1997-06-10 Micali; Silvio Compact digital signatures
EP0917781A4 (en) * 1996-08-07 2003-08-13 Silvio Micali SIMULTANEOUS ELECTRONIC TRANSACTIONS WITH VISIBLE TRUTH AGENTS
CA2262551C (en) * 1996-08-16 2002-09-17 Bell Communications Research, Inc. Improved cryptographically secure pseudo-random bit generator for fast and secure encryption
US6029150A (en) * 1996-10-04 2000-02-22 Certco, Llc Payment and transactions in electronic commerce system
GB9621274D0 (en) * 1996-10-11 1996-11-27 Certicom Corp Signature protocol for mail delivery
US5948061A (en) * 1996-10-29 1999-09-07 Double Click, Inc. Method of delivery, targeting, and measuring advertising over networks
US5903882A (en) * 1996-12-13 1999-05-11 Certco, Llc Reliance server for electronic transaction system
JPH10198272A (ja) * 1996-12-27 1998-07-31 Canon Inc 階層を有する鍵管理方法及び暗号システム、分散デジタル署名システム
WO1998031122A1 (en) * 1997-01-08 1998-07-16 Bell Communications Research, Inc. A method and apparatus for generating secure hash functions
US6188766B1 (en) * 1997-03-05 2001-02-13 Cryptography Research, Inc. Apparatus and method for confirming, timestamping, and archiving printer and telecopier transmissions
US5995625A (en) * 1997-03-24 1999-11-30 Certco, Llc Electronic cryptographic packing
US6035041A (en) * 1997-04-28 2000-03-07 Certco, Inc. Optimal-resilience, proactive, public-key cryptographic system and method
US5854759A (en) 1997-05-05 1998-12-29 Rsa Data Security, Inc. Methods and apparatus for efficient finite field basis conversion
US5978475A (en) * 1997-07-18 1999-11-02 Counterpane Internet Security, Inc. Event auditing system
US6240184B1 (en) * 1997-09-05 2001-05-29 Rsa Security Inc. Password synchronization
US5960411A (en) * 1997-09-12 1999-09-28 Amazon.Com, Inc. Method and system for placing a purchase order via a communications network
US6170060B1 (en) * 1997-10-03 2001-01-02 Audible, Inc. Method and apparatus for targeting a digital information playback device
US6079018A (en) * 1997-10-08 2000-06-20 Agorics, Inc. System and method for generating unique secure values for digitally signing documents
US6157920A (en) 1997-11-19 2000-12-05 Lucent Technologies Inc. Executable digital cash for electronic commerce
US6226743B1 (en) * 1998-01-22 2001-05-01 Yeda Research And Development Co., Ltd. Method for authentication item
US6108783A (en) * 1998-02-11 2000-08-22 International Business Machines Corporation Chameleon hashing and signatures
JP4081855B2 (ja) * 1998-05-14 2008-04-30 日産自動車株式会社 電池の昇温装置
AU4407299A (en) * 1998-05-22 1999-12-13 Certco Inc Robust efficient distributed rsa-key generation
US6317829B1 (en) * 1998-06-19 2001-11-13 Entrust Technologies Limited Public key cryptography based security system to facilitate secure roaming of users
US6085321A (en) * 1998-08-14 2000-07-04 Omnipoint Corporation Unique digital signature
WO2002048843A2 (en) 2000-12-14 2002-06-20 Silanis Technology Inc. Web-based method and system for applying a legally enforceable signature on an electronic document
JP3793024B2 (ja) * 2001-01-18 2006-07-05 日本電信電話株式会社 時刻公証方法
JP2002244555A (ja) * 2001-02-21 2002-08-30 Nippon Telegr & Teleph Corp <Ntt> データ改竄検出方法及び装置及びデータ改竄検出プログラム及びデータ改竄検出プログラムを格納した記憶媒体
WO2004068264A2 (en) * 2003-01-31 2004-08-12 Linuxprobe Co. System and method for creating electronic signatures

Also Published As

Publication number Publication date
EP1698100A1 (en) 2006-09-06
PL1698100T3 (pl) 2008-05-30
US8347372B2 (en) 2013-01-01
EP1698100B1 (en) 2007-11-21
DE602004010300T2 (de) 2008-10-16
US20100199087A1 (en) 2010-08-05
DE602004010300D1 (de) 2008-01-03
WO2005064846A1 (en) 2005-07-14
PT1698100E (pt) 2008-01-15
US8312528B2 (en) 2012-11-13
US7698557B2 (en) 2010-04-13
DK1698100T3 (da) 2008-04-07
JP4742049B2 (ja) 2011-08-10
US20100199342A1 (en) 2010-08-05
US20050138361A1 (en) 2005-06-23
JP2007515890A (ja) 2007-06-14
CY1107889T1 (el) 2013-06-19

Similar Documents

Publication Publication Date Title
ES2293377T3 (es) Sistema y metodo para la generacion de certificados digitales.
US11481518B2 (en) Blockchain-based method for registration and verification of a file
US11233657B2 (en) Method and system for registering digital documents
CN109040082B (zh) 用户的身份内容信息的认证、验证方法和装置
CN112699081B (zh) 基于区块链的文件自证方法及装置
US7047404B1 (en) Method and apparatus for self-authenticating digital records
CN109194466A (zh) 一种基于区块链的云端数据完整性检测方法及系统
KR20200106000A (ko) 블록체인-기반 디지털 인증서를 구현하기 위한 시스템 및 방법
US20130132718A1 (en) System And Method For Long-Term Digital Signature Verification Utilizing Light Weight Digital Signatures
WO2018114585A1 (en) Improved blockchain-based method for registration and verification of a file
US11863678B2 (en) Rendering blockchain operations resistant to advanced persistent threats (APTs)
JP2007110180A5 (es)
WO2020143318A1 (zh) 数据验证方法及终端设备
US20080109651A1 (en) System and methods for digital file management and authentication
US20090313171A1 (en) Electronic transaction verification
Karamachoski et al. Blockchain-based application for certification management
WO2023035477A1 (zh) 一种基于区块链的文书验真方法
US6993656B1 (en) Time stamping method using aged time stamp receipts
JP4608845B2 (ja) 署名記録の公開方法
US7490241B1 (en) Time stamping method employing user specified time
Pinkas et al. Cms advanced electronic signatures (cades)
CN110493011A (zh) 基于区块链的证书颁发管理方法以及装置
CN109919766A (zh) 数据存证以及验证交易用户真实性的方法及终端、服务器
Yuan et al. Blockchain‐Based Self‐Auditing Scheme with Batch Verification for Decentralized Storage
Petcu et al. A Practical Implementation Of A Digital Document Signature System Using Blockchain