ES2236145T3 - Sistema, metodo y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos. - Google Patents

Sistema, metodo y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos.

Info

Publication number
ES2236145T3
ES2236145T3 ES01307284T ES01307284T ES2236145T3 ES 2236145 T3 ES2236145 T3 ES 2236145T3 ES 01307284 T ES01307284 T ES 01307284T ES 01307284 T ES01307284 T ES 01307284T ES 2236145 T3 ES2236145 T3 ES 2236145T3
Authority
ES
Spain
Prior art keywords
key
user
messages
encrypted
encryption
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.)
Expired - Lifetime
Application number
ES01307284T
Other languages
English (en)
Inventor
Barry c/o IBM United Kingdom Ltd. Atkins
David C. c/o IBM United Kingdom Ltd. Challener
Frank c/o IBM United Kingdom Ltd. Novak
Joseph G. c/o IBM United Kingdom Ltd. Rusnak
Kenneth D. c/o IBM United Kingdom Ltd. Timmons
William W. c/o IBM United Kingdom Ltd. Vetter
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of ES2236145T3 publication Critical patent/ES2236145T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • 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
    • H04L9/3268Cryptographic 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 using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Digital Computer Display Output (AREA)

Abstract

Un método para gestionar una clave de usuario (clave 1) usada para firmar un mensaje para un sistema de procesamiento de datos (100), comprendiendo dicho método: asignar una clave de usuario a un usuario (304) para cifrar mensajes; almacenar una clave asociada (clave A) en el sistema de procesamiento de datos y cifrar la clave de usuario con la clave asociada para obtener una clave de usuario cifrada (310), caracterizándose el método porque dicha clave de usuario cifrada se usa para validar una asociación del usuario con mensajes cifrados por dicha clave de usuario; y porque el método comprende además: impedir, después, la validación de la asociación del usuario con mensajes revocando la clave asociada (320).

Description

Sistema, método y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos.
La presente invención se refiere en general al procesamiento de datos y, en particular, a un sistema, un método y un programa para proporcionar seguridad a los datos. Todavía más particularmente, la presente invención se refiere a un sistema, un método y un programa para gestionar una clave de usuario usada para firmar un mensaje para un sistema de procesamiento de datos.
La criptografía entraña cifrar datos para proporcionar seguridad a los datos. Por ejemplo, antes de la transmisión de un mensaje de una parte a otra, el mensaje puede ser cifrado usando una función matemática conocida como algoritmo criptográfico. Los algoritmos criptográficos más corrientes se basan en claves, en que se requiere un conocimiento especial de información variable llamada "clave" para descifrar un mensaje cifrado. Existen dos tipos prevalecientes de algoritmos criptográficos basados en claves, a saber, algoritmos de clave simétrica (o clave secreta) y algoritmos de clave pública (clave asimétrica). La seguridad ofrecida por estos algoritmos criptográficos se centra en torno a las claves y no en los detalles de los algoritmos criptográficos. En otras palabras, los algoritmos criptográficos pueden ser conocidos típicamente por todos, pero las claves sólo pueden ser conocidas por las partes autorizadas. Como resultado, los algoritmos criptográficos pueden publicarse para examen público y producirse luego en masa para su incorporación en productos de seguridad.
En la mayor parte de los algoritmos de clave secreta, la clave de cifrado y la clave de descifrado son la misma clave secreta. El remitente y el receptor de un mensaje tienen que poder intercambiar información respecto de la clave secreta, y cada parte tiene que confiar en que la otra no revele la clave secreta. El remitente tiene que comunicar la clave a través de otra ruta de comunicación relativamente segura. Con algoritmos de clave pública, la clave usada para cifrado es diferente de la clave usada para descifrado. La clave de descifrado es difícil de calcular a partir de una clave de cifrado. En una operación típica, la clave pública usada para cifrado se hace pública a través de un directorio fácilmente accesible, mientras que la correspondiente clave privada usada para descifrado es conocida solamente por el receptor del mensaje cifrado. En una transacción ilustrativa de claves públicas, un remitente recupera la clave pública del receptor y la usa para firmar el mensaje antes de remitir el mensaje. El receptor recibe y descifra entonces el mensaje cifrado con la correspondiente clave privada. Son posibles el cifrado de un mensaje usando una clave privada y el descifrado del mensaje cifrado usando una clave pública, que a veces se usa en firmas digitales para autentificar la fuente de un mensaje.
Uno de los algoritmos de clave pública más populares es el RSA (citado detrás de sus inventores Rivest, Shamir y Adleman). Con el RSA, cuando un mensaje es cifrado utilizando una clave pública de usuario, el mensaje cifrado solamente puede ser descifrado utilizando una clave privada de usuario. En una ejecución, cada clave privada de usuario está también asociada con una contraseña y ambas son incluidas dentro de una envoltura segura individual. Todas las claves privadas de usuario junto con sus respectivas contraseñas son almacenadas en una zona de almacenamiento protegida dentro de un dispositivo de cifrado/descifrado, tal como una pastilla de cifrado. A fin de permitir que la pastilla de cifrado realice un procedimiento de autenticación, tal como firmar firmas, un usuario tiene que proporcionar una contraseña correcta a la pastilla de cifrado. Para fines de seguridad, no tienen que existir copias de ninguna clave privada de usuario fuera de la envoltura segura. Por tanto, una clave privada de usuario y su respectiva contraseña solamente pueden ser desenvueltas dentro de la pastilla de cifrado, no dando ninguna oportunidad de que la contraseña sea cambiada.
La criptografía de claves públicas y privadas permite que se firmen mensajes digitalmente. Un remitente puede publicar su clave de descifrado como clave pública y mantener su clave de cifrado secreta como clave privada. Si el remitente cifra un mensaje usando la clave privada, entonces cualquiera que reciba el mensaje puede descifrar el mensaje usando la clave pública del remitente. Al hacerlo así, los receptores pueden verificar que el mensaje fue cifrado por el remitente ya que él es el único poseedor de la clave privada. En realidad, el remitente ha firmado digitalmente el mensaje. Un modo alternativo de firmar digitalmente un mensaje entraña el uso de una función de resumen que se conoce también como algoritmo de "resumen de mensaje" o de "huella dactilar". Un mensaje es resumido usando una función criptográfica de resumen. La función criptográfica de resumen mapea un mensaje de longitud arbitraria a un número fijo de bits. Luego se cifra el mensaje resumido o resumen. La firma digital de un mensaje usando la función de resumen consiste en un proceso de dos pasos. El primer paso entraña resumir el mensaje y cifrar el mensaje resumido usando una clave privada. El mensaje es transmitido junto con el resumen cifrado desde el remitente al receptor. El segundo paso lleva consigo la verificación de la firma. El receptor resume el mensaje recibido, descifra el resumen recibido cifrado con la clave pública asociada y compara el par de valores resumidos. La firma es válida si los dos valores resumidos coinciden. De no ser así, el mensaje fue alterado de algún modo durante la transmisión.
Certificación es el proceso de vincular una clave, tal como una clave pública o una clave privada, con un individuo, organización, entidad o fragmento de información, tal como un permiso o credencial. Un certificado es una recopilación de información que ha sido firmada digitalmente por un emisor de certificados. El emisor de certificados es una parte que emite una clave a una persona, organización, entidad o fragmento de información y gestiona la validez de la clave emitida. Si a un usuario ya no se le permite usar una clave, el emisor de certificados necesita revocar el certificado de la clave del usuario publicando el certificado de la clave en una lista de revocación de certificados ("CRL"). Sin embargo, existe típicamente un intervalo de tiempo entre el momento en que un emisor de certificados recibe la notificación de que un certificado de una clave deberá ser revocado y el momento en que el emisor de certificados publique el certificado de la clave en la siguiente CRL. Este intervalo de tiempo da por resultado lo que se conoce como el problema de tiempo de CRL-granularidad. Durante este período de tiempo, el usuario puede intentar usar la clave aplicándola a transacciones y comunicaciones no autorizadas que deberían haber sido invalidadas por la revocación de la clave y el certificado de la clave. El usuario puede continuar entonces firmando mensajes y comunicando sin autoridad apropiada.
La solicitud de patente del Reino Unido GB 2318486 describe un sistema de comunicación en el que los mensajes pueden ser procesados usando criptografía de clave pública con una clave privada (SJu) peculiar para uno o más usuarios (150). El sistema comprende un medio servidor (130) destinado a comunicación de datos con un cliente (110) a través de una red (100), comprendiendo el medio servidor (130) primeros medios de almacenamiento de datos en los que se almacena de manera segura una clave privada para el usuario o para cada usuario, siendo cifrada la clave privada con una clave de cifrado de claves.
Por consiguiente, la invención proporciona un método para gestionar una clave de usuario usada para firmar un mensaje para un sistema de procesamiento de datos, comprendiendo dicho método; asignar una clave de usuario a un usuario para cifrar mensajes; almacenar en memoria una clave asociada en el sistema de procesamiento de datos y cifrar la clave de usuario con la clave asociada para obtener una clave de usuario cifrada, dicha clave de usuario cifrada para validar una asociación del usuario con mensajes cifrados por dicha clave de usuario; e impedir después la validación de la asociación del usuario con mensajes revocando la clave asociada.
La invención proporciona además un producto de programa informático que comprende un código de programa adaptado para realizar las operaciones descritas en el párrafo precedente cuando dicho programa trabaja en un ordenador.
En una realización preferida, se describen un sistema, un método y un programa para gestionar una clave de usuario usada para firmar un mensaje para un sistema de procesamiento de datos que tiene una pastilla de cifrado. A un usuario se le asigna una clave de usuario. Para cifrar y enviar mensajes a un receptor o receptores, los mensajes son cifrados con la clave de usuario. A su vez, la clave de usuario es cifrada con una clave asociada. La clave asociada es cifrada además usando una clave de pastilla de cifrado almacenada en la pastilla de cifrado. Los mensajes cifrados son comunicados a un receptor para validar una asociación del usuario con los mensajes cifrados. La clave asociada es descifrada con la clave de pastilla de cifrado. La clave de usuario es descifrada con la clave asociada, y los mensajes son descifrados con la clave de usuario. Posteriormente, se retira o elimina la validación de la asociación de mensajes con el usuario revocando la clave asociada.
En una realización preferida, los recursos de cifrado están centralizados en un sistema servidor que tiene la pastilla de cifrado. El sistema servidor está acoplado a servicios de cifrado y proporciona los mismos a una pluralidad de sistemas cliente. Los mensajes a cifrar son enviados desde el sistema cliente del usuario al sistema servidor, que cifra los mensajes usando la pastilla de cifrado. Los mensajes cifrados son enviados desde el sistema servidor al sistema cliente, que transmite luego los mensajes cifrados a su receptor o receptores previstos. Todos los datos relativos a los mensajes cifrados son borrados del sistema servidor después de que los mensajes cifrados son enviados desde el sistema servidor al sistema cliente.
La invención proporciona además un sistema para gestionar una clave de usuario usada para firmar un mensaje para un sistema de procesamiento de datos, comprendiendo el sistema: medios para asignar una clave de usuario a un usuario para cifrar mensajes: medios para almacenar una clave asociada en el sistema de procesamiento de datos y cifrar la clave de usuario con la clave asociada para obtener una clave de usuario cifrada, sirviendo dicha clave de usuario cifrada para validar una asociación del usuario con mensajes cifrados por dicha clave de usuario; y posteriormente, medios para impedir la validación de la asociación del usuario con mensajes revocando la clave asociada.
Se describirá ahora una realización preferida de la presente invención, a título de ejemplo solamente, y con referencia a los siguientes dibujos:
La figura 1 es un diagrama de bloques ilustrativo de un sistema de procesamiento de datos para ejecutar una realización preferida de la presente invención;
La figura 2 es un diagrama de bloques ilustrativo de un subsistema de procesamiento de datos, que puede ser el sistema cliente o el sistema servidor de la figura 1, para ejecutar una realización preferida de la presente invención;
La figura 3 es un organigrama de un método y un programa ilustrativos ejecutados por el sistema de procesamiento de datos de la figura 1 para cifrar mensajes de acuerdo con una realización preferida de la presente invención; y
La figura 4 es un organigrama de un método y programa ilustrativos ejecutados mediante el sistema de procesamiento de datos de la figura 1 para descifrar mensajes de acuerdo con una realización preferida de la presente invención.
En los sistemas informáticos convencionales, el cifrado/descifrado de mensajes son realizados utilizando una pastilla interna de cifrado que almacena los algoritmos de cifrado/descifrado y una clave o un par de claves usadas por la pastilla de cifrado para cifrar y descifrar datos. En un entorno de red, cada pastilla de cifrado del ordenador realiza las mismas funciones básicas de cifrado/descifrado, lo que invita a la consolidación de la función de cifrado/descifrado en un lugar centralizado para reducir gastos y gestiones y mejorar la seguridad física.
Sin embargo, la centralización de los servicios de cifrado y descifrado en un servidor de cifrado puede conducir a diversos problemas. Un problema es que tiene que establecerse una comunicación muy segura entre cada sistema cliente y el servidor de cifrado. De otro modo, personas no autorizadas pueden conseguir entrar ilícitamente y descifrar ilegalmente datos cifrados comunicados entre los sistemas cliente y servidor de cifrado. Otro problema que se plantea es la dificultad de la gestión de las claves. A un sistema cliente se le asigna una clave que es proporcionada al usuario de ese sistema cliente. Diversas claves para diversos sistemas cliente son usadas y gestionadas por el único servidor de cifrado. Sin embargo, si la clave emitida para un sistema cliente particular necesita ser revocada, el usuario puede mantener una copia de la clave revocada y acceder con ello ilegalmente a datos cifrados simplemente entrando en el servidor de cifrado desde un sistema cliente remoto. La realización preferida consolida las operaciones de cifrado/descifrado de datos a un lugar centralizado evitando al propio tiempo los problemas asociados con la centralización de las operaciones de cifrado/descifrado.
Haciendo ahora referencia a la figura 1, se muestra un diagrama de bloques ilustrativo de un sistema de procesamiento de datos 100 para ejecutar una realización preferida de la presente invención. El sistema de procesamiento de datos 100 incluye sistemas cliente 102A, 102B y 102C acoplados en comunicación con un sistema servidor 104. La comunicación entre los sistemas cliente 102A, 102B y 102C y el sistema servidor 104 es realizada a través de un enlace seguro de comunicación, tal como una conexión tipo Secure Sockets Layer ("SSL"). El SSL es una norma desarrollada por Netscape® Communications para establecer canales seguros de comunicación entre dispositivos a fin de evitar la interceptación y el acceso no autorizado de datos críticos o sensibles. El sistema cliente 102A tiene un sistema de memoria 103A y una unidad de procesamiento central (CPU) 114A, que están acoplados entre sí. De manera similar, el sistema cliente 102B incluye un sistema de memoria 103B y una CPU 114B, y el sistema cliente 102C contiene un sistema de memoria 103C y una CPU 114C. Un usuario 1 usa el sistema cliente 102A, y un usuario 2 utiliza el sistema cliente 102B. Además, un usuario 3 usa el sistema cliente 102C. El término "usuario" se entiende que quiere decir una persona, un servicio, una aplicación, un dispositivo o cualquiera otra entidad que pueda acceder a una aplicación. El término "usuario" no está limitado a usuario humano.
El sistema servidor 104 tiene un dispositivo de memoria 105 y una CPU 116 que también están acoplados entre sí. El sistema servidor 104 incluye además una pastilla de cifrado 106. La pastilla de cifrado 106, que está acoplada en comunicación con la CPU 116 y el dispositivo de memoria 105, contiene un motor de cifrado/descifrado ("ENG") 118 y una zona área de almacenamiento protegido ("PS") 120. El motor de cifrado/descifrado 118 ejecuta un algoritmo de cifrado/descifrado que cifra y descifra los mensajes transmitidos y recibidos por los sistemas cliente 102A, 102B y 102C, de acuerdo con una realización preferida de la presente invención.
En la figura 1, los usuarios 1, 2 y 3 utilizan el sistema de procesamiento de datos 100 para cifrar mensajes, tal como firmar mensajes, que luego son transmitidos electrónicamente a un receptor 112 a través de un sistema receptor 110. La presente invención ejecuta preferiblemente un esquema de cifrado y descifrado de claves públicas/privadas. La clave 1, que incluye una clave pública 1 ("PUK1") y una clave privada 1 ("PRK1"), es una clave de usuario asignada al usuario 1. La clave 2 es almacenada en el sistema de memoria 103A. Asimismo, la clave 2, que incluye una clave pública 2 ("PUK2") y una clave privada 2 ("PRK2"), es emitida como clave de usuario para el usuario 2, y la clave 2 es almacenada en el sistema de memoria 103B. Adicionalmente, la clave 3, que incluye una clave pública 3 ("PUK3") y una clave privada 3 ("PRK3"), es asignada como clave de usuario al usuario 3. La clave 3 es almacenada en el sistema de memoria 103C. Cuando el sistema de procesamiento de datos 100 realiza operaciones de cifrado/descifrado, las claves 1, 2 y/o 3 son enviadas a la zona de almacenamiento protegido 120 del sistema servidor 104.
La zona de almacenamiento protegido 120 puede ser ejecutada con un dispositivo de almacenamiento electrónicamente borrable. La zona de almacenamiento protegido 120 abarca un dispositivo de memoria 105 y una clave de pastilla de cifrado 107 ("ECK"). La zona de almacenamiento protegido 120 almacena los pares de claves públicas/privadas de usuario. Los pares de claves públicas/privadas de usuario enviadas y/o almacenadas dentro de la zona de almacenamiento protegido 120 están protegidos por el motor de cifrado/descifrado 118 y no pueden acceder directamente al sistema servidor 104 o a sus otros componentes.
En el sistema servidor 104, las claves A, B y C (llamadas también "claves asociadas") son almacenadas en el dispositivo de memoria 105. La clave A contiene una clave pública A ("PUKA") y una clave privada A ("PRKA"), y la clave A es una clave asociada que está especialmente asociada con la clave 1. La clave B incluye una clave pública B ("PUKB") y una clave privada B ("PRKB"), y la clave B es una clave asociada que está particularmente asociada con la clave 2. Asimismo, la clave C contiene una clave pública C ("PUKC") y una clave privada C ("PRKC"), y la clave C es una clave asociada que está asociada con la clave 3. La ECK 107 tiene una ECK pública ("PUECK") y una ECK privada ("PRECK") y es utilizada para cifrar las claves asociadas A, B o C, y las claves asociadas A, B y C, a su vez, son utilizadas, respectivamente, para cifrar las claves de usuario 1, 2 y 3. Las claves de usuario 1,2 y 3 cifran o firman mensajes enviados por los usuarios 1, 2 y 3, respectivamente.
Como se ha indicado anteriormente, la certificación es el proceso de vincular una clave, tal como una clave pública o una clave privada, a un individuo, organización, entidad o dato de información, tal como un permiso o una credencial. Un certificado es una recopilación de información que ha sido firmada digitalmente por un emisor de certificados. Un certificado puede ser establecido dentro de un sistema cliente, tal como el sistema cliente 102A, 102B o 102C, para un usuario, tal como el usuario 1, 2 ó 3, para acceder a una solicitud particular. El certificado puede ser establecido específicamente para un usuario particular y una aplicación particular y ser asociado a los mismos. El certificado incluye preferiblemente un indicador para su aplicación asociada, una identidad del usuario asociado con este certificado, y un indicador para la clave privada de usuario asociada con el usuario de este certificado y esta aplicación. Cuando una aplicación desea que se transmita un mensaje cifrado o que se realice un procedimiento de autentificación, el motor de cifrado/descifrado 118 accede a la clave privada de usuario indicada por el certificado asociado de la aplicación, y luego cifra el mensaje o genera una firma digital utilizando la clave privada de usuario.
El emisor de certificados es una persona que emite una clave y gestiona la validez de la clave emitida a una persona, organización, entidad o dato de información. Las claves para el sistema de procesamiento de datos 100 son emitidas por un emisor o emisores de certificados. El emisor de certificados gestiona la validez de las claves emitiendo certificados que validan el uso de las claves. Si ha de revocarse una clave, entonces el emisor de certificados revoca la clave publicando el certificado para la clave en una lista de revocación de certificados. Los usuarios 1, 2 y 3 son los usuarios de certificados que usan los certificados.
Haciendo ahora referencia a la figura 2, se muestra un diagrama de bloques de un sistema informático 10 que puede ser un sistema cliente 102A, 102B o 102C, o un sistema servidor 104, en que se ejecuta una realización preferida de la presente invención. Como se muestra, un procesador (CPU) 12, una memoria sólo de lectura (ROM) 13 y una memoria de acceso directo (RAM) 14 están conectados a un bus de sistema 11 de un sistema informático 10. La CPU 12 puede ser la CPU 114A, 114B o 114C para los respectivos sistemas cliente 102A, 102B o 102C o puede ser la CPU 116 para el sistema servidor 104. La CPU 12, la ROM 13 y la RAM 14 están también acopladas a un bus de PCI 20 del sistema informático 10 a través de un puente de anfitrión PCI 15.El puente de anfitrión PCI 15 proporciona una trayectoria de baja latencia a través de la cual la CPU 12 puede acceder directamente a dispositivos de PCI mapeados en cualquier lugar dentro de la memoria del bus y/o espacios de direcciones de entrada/salida. El puente de anfitrión PCI 15 proporciona también una trayectoria de alta banda ancha permitiendo que los dispositivos de PCI accedan directamente a la RAM 14.
También fijada al bus PCI 20 hay una interfaz de red de área local (LAN) 16 y una pequeña interfaz de sistema informático (SCSI) 18. La interfaz de LAN 16 conecta el sistema informático 10 a la LAN 17. La SCSI 18 se utiliza para controlar una unidad de disco de SCSI de alta velocidad 19. Un puente de bus de expansión, tal como un puente de bus PCI a ISA, puede utilizarse para acoplar un bus ISA 25 a un bus PCI 20. Como se muestra, un teclado 26, un micrófono 27, un ratón 28 y un dispositivo de almacenamiento 29 pueden estar fijados al bus ISA 25 para realizar funciones básicas de entrada/salida. El dispositivo de almacenamiento 29 puede ser un sistema de memoria 103A, 103B o 103C para los respectivos sistemas cliente 102A, 102B o 102C o puede ser un dispositivo de memoria 105 para el sistema servidor 104. Además, al bus PCI 20 pueden estar fijados un adaptador de audio 23 y un adaptador de gráficos 21. El adaptador de gráficos 21 controla la salida visual a través de un monitor de visualización 22 y el adaptador de audio 23 controla la salida de audio a través de un altavoz 24.
Con referencia ahora a las figuras 3 y 4, se muestran organigramas de métodos ilustrativos 300 y 400 y programas ejecutados por el sistema de procesamiento de datos 100 para cifrar y descifrar mensajes de acuerdo con una realización preferida de la presente invención. Los métodos 300 y 400 se describirán en unión de un ejemplo para firmar digitalmente un mensaje resumido por una función criptográfica. El mensaje resumido es enviado por el usuario 1 y cifrado y descifrado por los métodos 300 y 400 utilizando la clave de usuario 1, la clave asociada A, y la ECK 107. Los métodos 300 y 400 no se limitan en modo alguno a esta aplicación ilustrativa. Los métodos 300 y 400 cifran y descifran mensajes de la misma manera para los usuarios 2 y 3 usando las claves de usuario 2 y 3, las claves asociadas B y C, y la ECK 107. Los métodos 300 y 400 pueden usarse para cifrar/descifrar cualesquiera mensajes adecuados.
Como se muestra en la figura 3, el método 300 para cifrar mensajes de acuerdo con una realización preferida de la presente invención comienza en el bloque 302. El método 300 pasa a continuación al bloque 304, que ilustra que al usuario 1 le es asignada la clave de usuario 1. El usuario 1 usa la clave de usuario 1 para cifrar o firmar mensajes que son procesados por el sistema de procesamiento de datos 100. A continuación del bloque 304, el bloque 305 muestra un mensaje enviado por el usuario 1 que es resumido por una función criptográfica de resumen en el sistema cliente 102A. El método 300 pasa luego al bloque 306, que muestra un mensaje resumido (incluida la identidad de la clave de usuario 1) que es transmitido desde el sistema cliente 102A al sistema servidor 104. Cualesquiera números de identificación personal (PIN) o contraseñas asociados con el uso de la clave de usuario 1 son enviados también desde el sistema cliente 102A al sistema servidor 104. La clave de usuario 1 y todos los PIN o contraseñas asociados, si los hubiere, son recibidos y mantenidos con seguridad dentro del área protegida de almacenamiento 120 del sistema servidor 104.
A continuación del bloque 306, el bloque 308 representa el mensaje resumido que es cifrado por PRK1 de la clave de usuario 1 en el sistema servidor 104.
El método 300 pasa entonces a los bloques 310, 312 y 314. El bloque 310 ilustra el sistema servidor 104 cifrando la clave de usuario 1 con PRKA de la clave asociada A almacenada en el sistema servidor 104. A continuación del bloque 310, el bloque 312 muestra el sistema servidor 104 cifrando la clave asociada A con PRECK de la ECK 107. El método 300 prosigue luego al bloque 314, que representa el sistema servidor 104 enviando el mensaje cifrado resumido, la clave de usuario cifrada 1 y la clave asociada cifrada A al sistema cliente 102A.
El método 300 pasa desde el bloque 314 al bloque 316, que muestra que cualquier traza del mensaje resumido cifrado, clave de usuario 1 y los PIN/contraseñas asociados son borrados del sistema servidor 104. A continuación del bloque 316, el bloque 318 muestra el sistema cliente 102A transmitiendo electrónicamente el mensaje resumido cifrado en unión de la clave de usuario cifrada 1 y la clave asociada cifrada A a un sistema receptor 110. El mensaje cifrado incluye el mensaje original. El sistema receptor 110 recibe el mensaje resumido cifrado (que incluye el mensaje de usuario 1 manipulado o no), la clave de usuario cifrada 1 y la clave asociada cifrada A. El receptor 112 usa el sistema receptor 110 para descifrar el mensaje resumido cifrado a fin de validar una asociación del usuario 1 con el mensaje resumido cifrado.
El método 300 prosigue luego al bloque 320. El bloque 320 ilustra que si se desea la revocación de la clave de usuario 1 para el usuario 1 (por ejemplo, el usuario 1 ya no está empleado en la compañía que mantiene el sistema de procesamiento de datos 100 y la validación de la clave de usuario 1 necesita ser revocada), entonces puede impedirse la validación de mensajes resumidos cifrados asociados con el usuario 1 revocando la clave asociada A en el sistema servidor 104. Las claves asociadas, tales como las claves asociadas A, B y C no se usan nunca fuera del sistema servidor 104 y en general sólo son accedidas y gestionadas por un administrador autorizado del sistema. La clave asociada A puede ser revocada borrándola simplemente del sistema servidor 104. Como la clave asociada A es revocada y ya no existe en el sistema servidor 104, la ECK 107 no tiene una clave asociada para descifrar, y la clave de usuario cifrada 1 no puede, a su vez, ser descifrada ya que la clave asociada A no existe para descifrar la clave de usuario 1. El método 300 termina por último en el bloque 322.
En la figura 4, el método 400 para descifrar mensajes de acuerdo con una realización preferida de la presente invención comienza en el bloque 402. El método 400 pasa desde el bloque 402 al bloque 403, lo que representa que se está estableciendo y manteniendo comunicación entre el sistema de procesamiento de datos 100 y el sistema receptor 110. A continuación del bloque 403, el bloque 404 ilustra el sistema receptor 110 recibiendo desde el sistema cliente 102A el mensaje resumido cifrado, la clave de usuario cifrada 1 y la clave asociada cifrada A. El receptor 112 usa el sistema receptor 110 para validar una asociación del usuario 1 con el mensaje resumido cifrado.
El método 400 prosigue luego a los bloques 408, 410 y 412. El bloque 408 representa el sistema receptor 110 descifrando la clave asociada cifrada A accediendo y usando la PUECK de la ECK 107. El bloque 410 ilustra el sistema receptor 110 descifrando la clave de usuario cifrada 1 accediendo y usando PUKA de la clave asociada A. El bloque 412 muestra el sistema receptor 110 descifrando el mensaje resumido cifrado accediendo y usando PUK1 de la clave de usuario 1. El método 400 prosigue a continuación al bloque 414, que representa el sistema receptor 110 accediendo y usando la misma función criptográfica de resumen usada por el sistema cliente 102A para resumir el mensaje unido al mensaje resumido cifrado recibido del usuario 1 a través del sistema cliente 102A.
El método 400 pasa luego al bloque de decisiones 416, que muestra una determinación de si el mensaje resumido generado pro el sistema receptor 110 es igual que el mensaje resumido descifrado. Si se toma una determinación en el bloque de decisiones 416 de que los mensajes resumido son iguales, entonces el método 400 prosigue desde el bloque de decisiones 416 al bloque 418, que representa el sistema receptor 110 notificando al receptor 112 que el mensaje recibido es válido y es verificado como siendo enviado desde el usuario 1. Por otra parte, si en el bloque de decisiones 416 los mensajes resumidos no son iguales, entonces el método 400 en lugar de ello prosigue desde el bloque de decisiones 416 al bloque 420, que ilustra el sistema receptor 110 notificando al receptor 112 que el mensaje recibido no es válido y no es verificado como siendo enviado desde el usuario 1. Por último, el método 400 termina en el bloque 422.
Como se ha descrito, se explican un sistema, un método y un programa de acuerdo con una realización preferida de la presente invención para gestionar una clave de usuario usada par firmar un mensaje para un sistema de procesamiento de datos que tiene una pastilla de cifrado. La presente invención ayuda preferiblemente a impedir que se produzcan transacciones y comunicaciones no autorizadas debido al problema de tiempo de CRL- granularidad anteriormente mencionado. La presente invención consolida preferiblemente la función de cifrado/descifrado en un lugar centralizado. La presente invención describe además de preferencia el uso de una comunicación segura y un esquema de revocación de claves para resolver los problemas asociados con la centralización de la función de cifrado/descifrado.
Deberá apreciarse que también son posibles realizaciones alternativas de la invención. Por ejemplo, aunque se han descrito aspectos de la presente invención con respecto a un sistema informático que ejecuta software que implementa la mencionada funcionalidad, deberá entenderse que la presente invención puede ejecutarse de manera alternativa como un producto de programa para su uso con un sistema de procesamiento de datos. Pueden suministrarse programas que proporcionan la funcionalidad apropiada a un sistema de procesamiento de datos a través de una diversidad de medios de soporte de señales, que incluyen, sin limitación, medios de almacenamiento no reescribibles (por ejemplo, CD-ROM), medios de almacenamiento reescribibles (por ejemplo, un disquete flexible o una unidad de disco duro), y medios de comunicación, tales como redes digitales y analógicas.
Resumiendo, de acuerdo con una realización preferida, se describen un sistema, un método y un programa para gestionar una clave de usuario usada para firmar un mensaje para un sistema de procesamiento de datos que tiene una pastilla de cifrado. A un usuario le es asignada una clave de usuario. Para cifrar y enviar mensajes a un receptor o receptores, los mensajes son cifrados con la clave de usuario. La clave de usuario es, a su vez, cifrada con una clave asociada. La clave asociada es cifrada además usando una clave de pastilla de cifrado almacenada en la pastilla de cifrado. Los mensajes cifrados son comunicados a un receptor para validar una asociación del usuario con los mensajes cifrados. La clave asociada es descifrada con la clave de pastilla de cifrado. La clave de usuario es descifrada con la clave asociada, y los mensajes son descifrados con la clave de usuario. Posteriormente, se elimina la validación de la asociación de mensajes con el usuario revocando la clave asociada. Los recursos de cifrado están centralizados en un sistema servidor que tiene la pastilla de cifrado. El sistema servidor está acoplado a una pluralidad de sistemas clientes y proporciona servicios de cifrado a los mismos. Los mensajes a cifrar son enviados desde un sistema cliente de usuario al sistema servidor, que cifra los mensajes usando la pastilla de cifrado. Los mensajes cifrados son enviados desde el sistema servidor al sistema cliente, que transmite entonces los mensajes cifrados a sus receptores previstos. Todos los datos relacionados con los mensajes cifrados son borrados del sistema servidor después de que se envían los mensajes cifrados desde el sistema servidor al sistema cliente.

Claims (11)

1. Un método para gestionar una clave de usuario (clave 1) usada para firmar un mensaje para un sistema de procesamiento de datos (100), comprendiendo dicho método: asignar una clave de usuario a un usuario (304) para cifrar mensajes; almacenar una clave asociada (clave A) en el sistema de procesamiento de datos y cifrar la clave de usuario con la clave asociada para obtener una clave de usuario cifrada (310), caracterizándose el método porque dicha clave de usuario cifrada se usa para validar una asociación del usuario con mensajes cifrados por dicha clave de usuario; y porque el método comprende además: impedir, después, la validación de la asociación del usuario con mensajes revocando la clave asociada (320).
2. El método de la reivindicación 1, que comprende las operaciones de cifrar mensajes con la clave de usuario (306); y comunicar mensajes cifrados en unión de la clave de usuario cifrada.
3. El método según la reivindicación 2, que comprende además: descifrar la clave de usuario con la clave asociada (410) y descifrar los mensajes con la clave de usuario (412).
4. El método según la reivindicación 2 ó 3, en el que el sistema de procesamiento de datos (100) comprende además un sistema cliente (102A) que tiene un dispositivo de memoria de cliente (103A); y un sistema servidor que tiene una pastilla de cifrado (107) y un dispositivo de memoria de servidor (105) y en el que la clave de usuario es almacenada en el dispositivo de memoria de cliente, comprendiendo además el método las operaciones de almacenar la clave asociada en el sistema de procesamiento de datos que comprende además almacenar la clave asociada en el dispositivo de memoria de servidor; e impedir la validación que comprende además impedir la validación de los mensajes asociados con el usuario eliminando la clave asociada del dispositivo de memoria de servidor.
5. El método según la reivindicación 4, en el que el cifrado de mensajes comprende además: enviar los mensajes a cifrar desde el sistema cliente (102A) al sistema servidor (104); cifrar los mensajes usando la pastilla de cifrado (107) del sistema servidor; y enviar los mensajes cifrados desde el sistema servidor al sistema cliente.
6. El método según la reivindicación 5, que comprende además: borrar del sistema servidor todos los datos relativos a los mensajes cifrados después de que los mensajes cifrados sean enviados desde el sistema servidor al sistema cliente.
7. El método según cualquier reivindicación precedente, que comprende además: cifrar la clave asociada usando una clave de pastilla de cifrado que es almacenada en una pastilla de cifrado del sistema de procesamiento de datos.
8. El método según la reivindicación 7, que comprende además comunicar una clave asociada cifrada para validar la asociación del usuario con mensajes cifrados por dicha clave de usuario.
9. El método según la reivindicación 8, que comprende además descifrar la clave asociada con la clave de pastilla de cifrado.
10. Un sistema para gestionar una clave de usuario (clave 1) usada para firmar un mensaje para un sistema de procesamiento de datos (100), comprendiendo dicho sistema: medios para asignar una clave de usuario a un usuario (304) para cifrar mensajes; medios para almacenar una clave asociada (clave A) en un sistema de procesamiento de datos y cifrar la clave de usuario con la clave asociada para obtener una clave de usuario cifrada (310), caracterizándose el sistema porque dicha clave de usuario cifrada se usa para validar una asociación del usuario con mensajes cifrados por dicha clave de usuario; y porque el sistema comprende además medios para impedir la validación de la asociación del usuario con mensajes revocando la clave asociada (320).
11. Un producto de programa informático, que comprende un código de programa destinado a realizar todas las operaciones de cualquiera de las reivindicaciones 1 a 9 cuando dicho programa funciona en un ordenador.
ES01307284T 2000-08-29 2001-08-24 Sistema, metodo y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos. Expired - Lifetime ES2236145T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US651548 2000-08-29
US09/651,548 US8307098B1 (en) 2000-08-29 2000-08-29 System, method, and program for managing a user key used to sign a message for a data processing system

Publications (1)

Publication Number Publication Date
ES2236145T3 true ES2236145T3 (es) 2005-07-16

Family

ID=24613264

Family Applications (1)

Application Number Title Priority Date Filing Date
ES01307284T Expired - Lifetime ES2236145T3 (es) 2000-08-29 2001-08-24 Sistema, metodo y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos.

Country Status (5)

Country Link
US (1) US8307098B1 (es)
EP (1) EP1185024B1 (es)
AT (1) ATE291798T1 (es)
DE (1) DE60109537T2 (es)
ES (1) ES2236145T3 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
IL148834A (en) * 2000-09-10 2007-03-08 Sandisk Il Ltd Removable, active, personal storage device, system and method
US7711965B2 (en) * 2004-10-20 2010-05-04 Intel Corporation Data security
JP4529639B2 (ja) 2004-10-28 2010-08-25 富士通株式会社 電子情報譲渡等機能付装置、電子情報譲渡等プログラム及び電子情報譲渡等方法
CN110166236B (zh) * 2019-05-31 2022-01-18 北京中金国信科技有限公司 密钥处理方法、装置和系统及电子设备
US11032062B2 (en) * 2019-09-17 2021-06-08 Switchbit, Inc. Data processing permits system with keys
US12007911B2 (en) 2022-03-10 2024-06-11 Samsung Electronics Co., Ltd System and method for efficiently obtaining information stored in an address space
CN115361140B (zh) * 2022-08-19 2023-11-24 广州万协通信息技术有限公司 安全芯片密钥验证方法及装置

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8704920D0 (en) * 1987-03-03 1987-04-08 Hewlett Packard Co Secure messaging system
CA2169449A1 (en) * 1993-08-13 1995-02-23 Frank Thomson Leighton Secret key exchange
NZ329891A (en) * 1994-01-13 2000-01-28 Certco Llc Method of upgrading firmware of trusted device using embedded key
US5557765A (en) * 1994-08-11 1996-09-17 Trusted Information Systems, Inc. System and method for data recovery
US5666416A (en) 1995-10-24 1997-09-09 Micali; Silvio Certificate revocation system
US6487658B1 (en) * 1995-10-02 2002-11-26 Corestreet Security, Ltd. Efficient certificate revocation
GB2318486B (en) 1996-10-16 2001-03-28 Ibm Data communications system
US6400823B1 (en) * 1996-12-13 2002-06-04 Compaq Computer Corporation Securely generating a computer system password by utilizing an external encryption algorithm
CN1272934A (zh) 1997-09-02 2000-11-08 科迪科思公司 数字签名准备服务器和方法
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
US6760752B1 (en) * 1999-06-28 2004-07-06 Zix Corporation Secure transmission system
US6704868B1 (en) * 1999-11-12 2004-03-09 International Business Machines Corporation Method for associating a pass phase with a secured public/private key pair
US6807277B1 (en) * 2000-06-12 2004-10-19 Surety, Llc Secure messaging system with return receipts
US6732101B1 (en) * 2000-06-15 2004-05-04 Zix Corporation Secure message forwarding system detecting user's preferences including security preferences

Also Published As

Publication number Publication date
EP1185024A2 (en) 2002-03-06
ATE291798T1 (de) 2005-04-15
DE60109537D1 (de) 2005-04-28
EP1185024B1 (en) 2005-03-23
EP1185024A3 (en) 2003-01-29
US8307098B1 (en) 2012-11-06
DE60109537T2 (de) 2006-04-13

Similar Documents

Publication Publication Date Title
US8943311B2 (en) System and methods for online authentication
US9860245B2 (en) System and methods for online authentication
US6718468B1 (en) Method for associating a password with a secured public/private key pair
US7685421B2 (en) System and method for initializing operation for an information security operation
JP2004530346A (ja) セキュアな暗号鍵の生成、証明、および使用のための方法および装置
ES2665887T3 (es) Sistema de datos seguro
WO2020050390A1 (ja) 権利者端末、利用者端末、権利者プログラム、利用者プログラム、コンテンツ利用システムおよびコンテンツ利用方法
JP6627043B2 (ja) Ssl通信システム、クライアント、サーバ、ssl通信方法、コンピュータプログラム
EP1379930A2 (en) Security system for preventing a personal computer from being used by unauthorized people
US6704868B1 (en) Method for associating a pass phase with a secured public/private key pair
ES2236145T3 (es) Sistema, metodo y programa para gestionar una clave de usuario utilizada para firmar un mensaje para un sistema de procesamiento de datos.
JP3984570B2 (ja) 署名/検証システムにおける鍵管理サーバおよび検証装置を制御するプログラム
JP2010028689A (ja) 公開パラメータ提供サーバ、公開パラメータ提供方法、公開パラメータ提供プログラム、暗号化処理実行装置、暗号化処理実行方法、暗号化処理実行プログラム、署名処理実行装置、署名処理実行方法及び署名処理実行プログラム
CN105187213B (zh) 一种计算机信息安全的方法
AU2015202661B2 (en) System and methods for online authentication
JP2000261428A (ja) 分散処理システムにおける認証装置
CN113114458A (zh) 加密证书生成、解密方法及装置、加密证书系统
US12261946B2 (en) System and method of creating symmetric keys using elliptic curve cryptography
KR20240063531A (ko) 일회성 코드를 활용한 클라우드 전자서명 메시지 생성 및 검증 시스템과 그 방법
KR20190088941A (ko) 공인인증서 비밀번호를 관리하는 방법 및 애플리케이션
KR20210056111A (ko) 사용자 정보의 관리 방법 및 단말
JP2001144751A (ja) 電算機による個人認証アルゴリズム
KR20180105324A (ko) 공인인증서 비밀번호를 관리하는 방법 및 애플리케이션
AU2015202677A1 (en) System and methods for online authentication
CN101534188A (zh) 一次性密码的产生方法