ES2445535T3 - Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de claves, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento - Google Patents
Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de claves, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento Download PDFInfo
- Publication number
- ES2445535T3 ES2445535T3 ES10767177.8T ES10767177T ES2445535T3 ES 2445535 T3 ES2445535 T3 ES 2445535T3 ES 10767177 T ES10767177 T ES 10767177T ES 2445535 T3 ES2445535 T3 ES 2445535T3
- Authority
- ES
- Spain
- Prior art keywords
- information
- predicate
- attribute
- encryption
- conversion rule
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
- H04L9/3073—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/14—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3093—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3263—Cryptographic 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)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Algebra (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
Un sistema criptográfico (1 - Figura 1) que usa un cifrado de predicado, que comprende al menos: un aparato de cifrado (10 - Figura 5); un aparato de generación de claves (20 - Figura 9); y un aparato de descifrado (30 - Figura 7); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan poradelantado para el aparato de generación de claves (20 - Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada parde los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, queprescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivollamada información de designación de atributo, a una información de atributo usada en un algoritmo einformación de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado,que prescribe una regla de conversión para convertir una información que designa un predicado, en losucesivo llamada información de designación de predicado, a una información de predicado usada en elalgoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y lainformación de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 - Figura 5) comprende: una primera unidad de adquisición de información de lógica de predicado (12 - Figura 5) adaptadapara usar una de una información de regla de conversión de la información de regla de conversión deatributo y la información de regla de conversión de predicado incluida en un par de información deregla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla deconversión, la una de una información de regla de conversión que se selecciona junto con lainformación de política según si la información de entrada introducida al aparato de cifrado (10 - Figura5) es o bien una información de designación de atributo o bien una información de designación depredicado, para obtener una información de atributo, en lo sucesivo llamada primera información deatributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, apartir de la información de entrada; y una unidad de cifrado (13 - Figura 5) adaptada para usar la primera información de atributo o laprimera información de predicado, junto con la clave pública del aparato de generación de claves (20 -Figura 9), para obtener una clave común, y una información de cifrado que corresponde a la clavecomún o corresponde a una información usada para generar la clave común, según el algoritmo decifrado de predicado; el aparato de generación de claves (20 - Figura 9) comprende: una segunda unidad de adquisición de información de lógica de predicado (23 - Figura 9) adaptadapara usar la información de regla de conversión emparejada con la información de regla de conversiónidentificada por la información de política para obtener una información de atributo, en lo sucesivollamada segunda información de atributo, o una información de predicado, en lo sucesivo llamadasegunda información de predicado, a partir de una información de designación de atributo o unainformación de designación de predicado que corresponde a un usuario del aparato de descifrado (30 -Figura 7); y una unidad de generación de claves (25 - Figura 9) adaptada para usar la segunda información deatributo o la segunda información de predicado, junto con la clave privada del aparato de generaciónde claves (20 - Figura 9), para generar una clave de descifrado usada para descifrar la información decifrado; y el aparato de descifrado (30 - Figura 7) comprende una unidad de descifrado (33 - Figura 7) adaptadapara usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifradosegún el algoritmo de cifrado de predicado.
Description
Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de claves, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento
CAMPO TÉCNICO La presente invención se refiere a una tecnología de comunicación criptográfica, y más específicamente, a una tecnología de comunicación criptográfica basada en cifrado de predicado.
ANTECEDENTES DE LA TÉCNICA Las tecnologías criptográficas conocidas incluyen un sistema criptográfico de clave común y un sistema criptográfico de clave pública.
En el sistema criptográfico de clave común, un remitente de mensaje cifra un mensaje con una clave común para obtener un mensaje cifrado, y el receptor descifra el mensaje cifrado con la misma clave común para obtener el mensaje original. Por lo tanto, es necesario establecer un procedimiento para que el remitente y el receptor posean la clave común de manera segura.
En el sistema criptográfico de clave pública, (1) un receptor prepara una clave pública y una clave privada que corresponden a la misma, (2) un remitente cifra un mensaje con la clave pública para obtener un mensaje cifrado, y
- (3)
- el receptor descifra el mensaje cifrado con la clave privada para obtener el mensaje original. Por lo tanto, el remitente necesita obtener la clave pública preparada por el receptor antes de cifrar el mensaje. En otras palabras, el cifrado es imposible a menos que el receptor genere la clave pública.
Se ha propuesto recientemente un cifrado de predicado. En el cifrado de predicado, una información X se incorpora en un mensaje cifrado durante el cifrado por el remitente, el receptor que tiene una información Y que tiene una relación específica con la información X puede descifrar el mensaje cifrado u obtener una información relacionada con el mensaje sin conocer el mensaje. El remitente no necesita necesariamente conocer la información Y poseída por el receptor durante el cifrado. Además, el remitente no necesita necesariamente determinar el receptor antes del cifrado. El remitente puede determinar la información X activamente, libremente y con iniciativa. En teoría, la información X es llamada un atributo I (variable) y la información Y es llamada un predicado f (función de proposición
- o función Booleana). La relación específica que la información X y la información Y necesitan satisfacer durante el descifrado es, por ejemplo, f(I) = verdadero.
LITERATURA DE LA TÉCNICA ANTERIOR Literatura no de patente
Literatura no de patente 1: Proyecto de Seguridad de Información de los Laboratorios de la Plataforma de Compartición de Información de NTT, “NTT Cryptographic Primitives”, URL: http://info.isl.ntt.co.jp/crypt/, obtenido el 14 de abril de 2009.
Literatura no de patente 2: Tatsuaki Okamoto y Hirosuke Yamamoto, “Information Science Mathematics Series: Modern Cryptographic”, Tercera Edición, Corporación Sangyo-Tosyo, 2000.
Literatura no de patente 3: J. Katz, A. Sahai, y B. Waters, “Predicate Encryption Supporting Disjunction, Polynomial Equations, and Inner Products”, Eurocryp 2008, páginas 146-162.
EXPOSICIÓN DE LA INVENCIÓN
PROBLEMAS A SER RESUELTOS POR LA INVENCIÓN
Un objeto de la presente invención es proporcionar una tecnología de comunicación criptográfica que está basada en cifrado de predicado y que puede operar flexiblemente.
MEDIOS PARA RESOLVER LOS PROBLEMAS
Un primer aspecto de la presente invención se perfilará más adelante.
Un sistema criptográfico que usa cifrado de predicado incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado.
Una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado.
Se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o bien una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a la información usada para generar la clave común, según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de la información de designación de atributo o la información de designación de predicado que corresponde a un usuario del aparato de descifrado; y un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de cifrado usada para descifrar la información de cifrado.
Cada uno del uno o la pluralidad de aparatos de descifrado usa la clave de cifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Alternativamente, se perfilará más adelante el primer aspecto de la presente invención.
Un sistema criptográfico que usa cifrado de predicado incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado.
Una clave privada y la clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado.
Se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de descifrado realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y usa una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Alternativamente, se perfilará más adelante el primer aspecto de la presente invención.
Un sistema criptográfico que usa cifrado de predicado incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado.
Una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Se determinan por adelantado uno o una pluralidad de pares de información de regla de conversión, cada par de los cuales tiene información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado.
Se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada información primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado.
Cada uno del uno o la pluralidad de aparatos de descifrado usa la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Alternativamente, se perfilará más adelante el primer aspecto de la presente invención.
Un sistema criptográfico que usa cifrado de predicado incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado.
Una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado.
Se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realizada un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o bien una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información en entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de descifrado realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y usa una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Un segundo aspecto de la presente invención se perfilara más adelante.
En un sistema criptográfico que usa cifrado de predicado y que incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y una pluralidad de aparatos de descifrado, una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado.
Cada uno del uno o la pluralidad de aparatos de descifrado usa la clave de descifrado para aplicar un proceso de descifrado a la información cifrada según el algoritmo de cifrado de predicado. El aparato de descifrado también realiza un proceso de transferencia para transferir la información de cifrado a otro aparato de descifrado. La información de cifrado a ser transferida se puede enviar desde el aparato de cifrado o se puede transferir desde otro aparato de descifrado. Al menos una parte de los aparatos de descifrado incluidos en el sistema criptográfico tiene una función para realizar el proceso de transferencia, pero no se requiere que todos los aparatos de descifrado tengan esta función. Un aparato de descifrado que ha recibido la información de cifrado transferida pide al aparato de generación de claves generar la clave de descifrado, si es necesario, y realiza el proceso descifrado.
Alternativamente, se perfilará más adelante el segundo aspecto de la presente invención.
En un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y una pluralidad de aparatos de descifrado, una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de descifrado realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y usa una clave de cifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada de del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
El aparato de descifrado también realiza un proceso de transferencia para transferir la información de cifrado a otro aparato de descifrado. La información de cifrado a ser transferida se puede enviar desde el aparato de cifrado o se puede transferir desde otro aparato de descifrado. Al menos una parte del aparato de descifrado incluida en el sistema criptográfico tiene una función para realizar el proceso de transferencia, pero no se requiere que todos los aparatos de descifrado tengan esta función. Un aparato de descifrado que ha recibido la información de cifrado transferida pide al aparato de generación de claves generar la clave de descifrado, si es necesario, y realiza el proceso de descifrado.
Alternativamente, se perfilará más adelante el segundo aspecto de la presente invención.
En un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y una pluralidad de aparatos de descifrado, una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de conversión de predicado incluida en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o bien una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado.
Cada uno del uno o la pluralidad de aparatos de descifrado usa la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado. El aparato de descifrado también realiza un proceso de transferencia para transferir la información de cifrado a otro aparato de descifrado. La información de cifrado a ser transferida se puede enviar desde el aparato de cifrado o se puede transferir desde otro aparato de descifrado. Al menos una parte de los aparatos de descifrado incluida en el sistema criptográfico tiene una función de realización del proceso de transferencia, pero no se requiere que todos los aparatos de descifrado tengan esta función. Un aparato de descifrado que ha recibido la información de cifrado transferida pide al aparato de generación de claves generar la clave de descifrado, si es necesario, y realiza el proceso de descifrado.
Alternativamente, se perfilará más adelante el segundo aspecto de la presente invención.
En un sistema criptográfico que usa un cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y una pluralidad de aparatos de descifrado, una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y se determina por adelantado una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado.
Cada uno del uno o la pluralidad de aparatos de cifrado realiza un primer proceso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y un proceso de cifrado para usar la primera información de atributo
o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de descifrado realiza un segundo proceso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y usa una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Cada uno del uno o la pluralidad de aparatos de generación de claves realiza un proceso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
El aparato de descifrado también realiza un proceso de transferencia para transferir la información de cifrado a otro aparato de descifrado. La información de cifrado a ser transferida se puede enviar desde el aparato de cifrado o se puede transferir desde otro aparato de descifrado. Al menos una parte de los aparatos de descifrado incluidos en el sistema criptográfico tiene una función para realizar el proceso de transferencia, pero no se requiere que todos los aparatos de descifrado tengan esta función. Un aparato de descifrado que ha recibido la información de cifrado transferida pide al aparato de generación de claves generar la clave de descifrado, si es necesario, y realiza el proceso de descifrado.
EFECTOS DE LA INVENCIÓN Según la presente invención, usando una parte de una información de regla de conversión seleccionada en base a si una información de entrada introducida a un aparato de cifrado es en una información de designación de atributo o una información de designación de predicado, donde la una parte de una información de regla de conversión es o bien una de una información de regla de conversión de atributo y una información de regla de conversión de predicado contenida en un par de información de regla de conversión seleccionado de pares de información de regla de conversión, la información de atributo o la información de predicado se obtiene a partir de la información de entrada; por lo tanto, una comunicación criptográfica basada en un cifrado de predicado se puede operar de una manera flexible.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Figura 1 es una vista estructural de un sistema criptográfico según cada realización en un primer aspecto
de la presente invención;
La Figura 2 es una vista (Nº 1) que muestra un procedimiento de procesamiento de un método de
comunicación criptográfico según cada realización en el primer aspecto;
La Figura 3 es una vista (Nº 2) que muestra el procedimiento de procesamiento del método de comunicación
criptográfico según cada realización en el primer aspecto;
La Figura 4 es una vista (Nº 3) que muestra el procedimiento de procesamiento del método de comunicación
criptográfico según cada realización en el primer aspecto;
La Figura 5 es un diagrama de bloques funcional de un aparato de cifrado según una primera realización del
primer aspecto;
La Figura 6 es la vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado
según la primera realización del primer aspecto;
La Figura 7 es un diagrama de bloques funcional de un aparato de descifrado según la primera realización del
primer aspecto;
La Figura 8 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
descifrado según la primera realización del primer aspecto;
La Figura 9 es un diagrama de bloques funcional de un aparato de generación de claves según la primera
realización del primer aspecto;
La Figura 10 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
generación de claves según la primera realización del primer aspecto;
La Figura 11 es la vista que muestra cómo obtener una información de atributo o una información de
predicado a partir de una información de entrada o una información de usuario usando un esquema
correspondiente a una política;
La Figura 12 es una vista que muestra cómo obtener una información de atributo a partir de una información
de designación de atributo usando un esquema de atributo;
La Figura 13 es una vista que muestra cómo obtener una información de predicado a partir de una
información de designación de predicado usando un esquema de predicado;
La Figura 14 es una vista que muestra ejemplos de políticas;
La Figura 15 es una vista que muestra un ejemplo de tabla de claves de descifrado;
La Figura 16 es una vista que muestra un ejemplo de tabla de autentificación;
La Figura 17 es una vista que muestra un ejemplo de tablas de información de usuario;
La Figura 18 es un diagrama de bloques funcional de un aparato de descifrado según una segunda
realización del primer aspecto;
La Figura 19 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
descifrado según la segunda realización del primer aspecto;
La Figura 20 es un diagrama de bloques funcional de un aparato de generación de claves según la segunda
realización del primer aspecto;
La Figura 21 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
generación de claves según la segunda realización del primer aspecto;
La Figura 22 es un diagrama de bloques funcional de un aparato de cifrado según una tercera realización del
primer aspecto;
La Figura 23 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado
según la tercera realización del primer aspecto;
La Figura 24 es un diagrama de bloques funcional de un aparato de descifrado según la tercera realización
del primer aspecto;
La Figura 25 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
descifrado según la tercera realización del primer aspecto;
La Figura 26 es un diagrama de bloques funcional de un aparato de descifrado según una cuarta realización
del primer aspecto;
La Figura 27 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de
descifrado según la cuarta realización del primer aspecto;
La Figura 28 es una vista estructural de un sistema criptográfico según cada realización en un segundo
aspecto de la presente invención;
La Figura 29 es una vista (Nº 1) que muestra un procedimiento de procesamiento de un método de
comunicación criptográfico según cada realización en el segundo aspecto;
La Figura 30 es una vista (Nº 2) que muestra el procedimiento de procesamiento del método de comunicación
criptográfico según cada realización en el segundo aspecto;
La Figura 31 es una vista (Nº 3) que muestra el procedimiento de procesamiento del método de comunicación
criptográfico según cada realización en el segundo aspecto;
La Figura 32 es una vista (Nº 4) que muestra el procedimiento de procesamiento del método de comunicación
criptográfico según cada realización en el segundo aspecto;
La Figura 33 es un diagrama de bloques funcional de un aparato de cifrado según una primera realización del
segundo aspecto;
La Figura 34 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado
según la primera realización del segundo aspecto;
La Figura 35 es un diagrama de bloques funcional de un primer aparato de descifrado según la primera
realización del segundo aspecto;
La Figura 36 es una vista que muestra un procedimiento de procesamiento detallado de un primer proceso de
descifrado según la primera realización del segundo aspecto;
La Figura 37 es un diagrama de bloques funcional de un segundo aparato de descifrado según la primera
realización del segundo aspecto;
La Figura 38 es una vista que muestra un procedimiento de procesamiento detallado de un segundo proceso
de descifrado según la primera realización del segundo aspecto;
La Figura 39 es un diagrama de bloques funcional de un aparato de generación de claves según la primera
realización del segundo aspecto;
La Figura 40 es una vista que muestra un procedimiento de procesamiento detallado (que corresponde al
primer aparato de descifrado) de un proceso de generación de claves según la primera realización del
segundo aspecto;
La Figura 41 es una vista que muestra un procedimiento de procesamiento detallado (que corresponde al
segundo aparato de descifrado) de un proceso de generación de claves según la primera realización del
segundo aspecto; La Figura 42 es un diagrama de bloques funcional de un primer aparato de descifrado según una segunda realización del segundo aspecto; La Figura 43 es una vista que muestra un procedimiento de procesamiento detallado de un primer proceso de descifrado según la segunda realización del segundo aspecto; La Figura 44 es un diagrama de bloques funcional de un segundo aparato de descifrado según la segunda realización del segundo aspecto; La Figura 45 es una vista que muestra un procedimiento de procesamiento detallado de un segundo proceso de descifrado según la segunda realización del segundo aspecto; La Figura 46 es un diagrama de bloques funcional de un aparato de generación de claves según la segunda realización del segundo aspecto; La Figura 47 es una vista que muestra un procedimiento de procesamiento detallado (que corresponde al primer aparato de descifrado) de un proceso de generación de claves según la segunda realización del segundo aspecto; La Figura 48 es una vista que muestra un procedimiento de procesamiento detallado (que corresponde al segundo aparato de descifrado) de un proceso de generación de claves según la segunda realización del segundo aspecto; La Figura 49 es un diagrama de bloques funcional de un aparato de cifrado según una tercera realización del segundo aspecto; La Figura 50 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado según la tercera realización del segundo aspecto; La Figura 51 es un diagrama de bloques funcional de un primer aparato de descifrado según la tercera realización del segundo aspecto; La Figura 52 es una vista que muestra un procedimiento de procesamiento detallado de un primer proceso de descifrado según la tercera realización del segundo aspecto; La Figura 53 es un diagrama de bloques funcional de un segundo aparato de descifrado según la tercera realización del segundo aspecto; La Figura 54 es una vista que muestra un procedimiento de procesamiento detallado de un segundo proceso de descifrado según la tercera realización del segundo aspecto; La Figura 55 es un diagrama de bloques funcional de un primer aparato de descifrado según una cuarta realización del segundo aspecto; La Figura 56 es una vista que muestra un procedimiento de procesamiento detallado de un primer proceso de descifrado según la cuarta realización del segundo aspecto; La Figura 57 es un diagrama de bloques funcional de un segundo aparato de descifrado según la cuarta realización del segundo aspecto; La Figura 58 es una vista que muestra un procedimiento de procesamiento detallado de un segundo proceso de descifrado según la cuarta realización del segundo aspecto; La Figura 59 es una vista que muestra una estructura ejemplo de datos intercambiados cuando la presente invención se aplica a un sistema de correo electrónico o un sistema de mensajería instantánea; La Figura 60 es una vista estructural de un sistema criptográfico según cada ejemplo en un tercer aspecto relativo a la presente invención; La Figura 61 es una vista (Nº 1) que muestra un procedimiento de procesamiento de un método de comunicación criptográfico según cada ejemplo el tercer aspecto; La Figura 62 es una vista (Nº 2) que muestra el procedimiento de procesamiento del método de comunicación criptográfico según cada ejemplo en el tercer aspecto; La Figura 63 es una vista (Nº 3) que muestra el procedimiento de procesamiento del método de comunicación criptográfico según cada ejemplo en el tercer aspecto; La Figura 64 es una vista (Nº 4) que muestra el procedimiento de procesamiento del método de comunicación criptográfico según cada ejemplo en el tercer aspecto; La Figura 65 es un diagrama de bloques funcional de un aparato de cifrado según un primer ejemplo del tercer aspecto; La Figura 66 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado según el primer ejemplo del tercer aspecto; La Figura 67 es un diagrama de bloques funcional de un servidor de contenidos según el primer ejemplo del tercer aspecto; La Figura 68 es un diagrama de bloques funcional de un aparato de descifrado según el primer ejemplo del tercer aspecto; La Figura 69 es una vista que muestra un procedimiento de procesamiento detallado de un segundo proceso de descifrado según el primer ejemplo del tercer aspecto; La Figura 70 es un diagrama de bloques funcional de un aparato de generación de claves según el primer ejemplo del tercer aspecto; La Figura 71 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de generación de claves según el primer ejemplo del tercer aspecto; La Figura 72 es un diagrama de bloques funcional de un aparato de descifrado según un segundo ejemplo del tercer aspecto; La Figura 73 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de descifrado según el segundo ejemplo del tercer aspecto; La Figura 74 es un diagrama de bloques funcional de un aparato de generación de claves según el segundo ejemplo del tercer aspecto; La Figura 75 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de generación de claves según el segundo ejemplo del tercer aspecto; La Figura 76 es un diagrama de bloques funcional de un aparato de cifrado según un tercer ejemplo del tercer aspecto; La Figura 77 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de cifrado según el tercer ejemplo del tercer aspecto; La Figura 78 es un diagrama de bloques funcional de un aparato de descifrado según el tercer ejemplo del tercer aspecto; La Figura 79 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de descifrado según el tercer ejemplo del tercer aspecto; La Figura 80 es un diagrama de bloques funcional de un aparato de descifrado según un cuarto ejemplo del tercer aspecto; La Figura 81 es una vista que muestra un procedimiento de procesamiento detallado de un proceso de descifrado según el cuarto ejemplo del tercer aspecto; y La Figura 82 es una vista que muestra una estructura ejemplo de datos intercambiados en un sistema de entrega de contenidos basada en el tercer aspecto.
DESCRIPCIÓN DETALLADA DE LAS REALIZACIONES
Se describirán primero realizaciones según un primer aspecto de la presente invención que se refiere a una
tecnología de comunicación criptográfica que se basa en un cifrado de predicado y que puede operar flexiblemente.
(Primera realización según el primer aspecto)
Una primera realización según el primer aspecto de la presente invención se describirá más adelante con referencia
a la Figura 1 a la Figura 17.
Como se muestra en la Figura 1, un sistema criptográfico 1 incluye una pluralidad de aparatos clientes 10 y 30, uno
o una pluralidad de aparatos de generación de claves 20, uno o una pluralidad de aparatos de gestión de información de usuario 40 (en lo sucesivo cada uno llamado un aparato de gestión), aparatos de gestión de par de información de regla de conversión 50 (en lo sucesivo cada uno llamado un aparato de registro), uno o una pluralidad de aparatos de mantenimiento 80, y uno o una pluralidad de aparatos de autentificación 90. Estos aparatos pueden comunicar unos con otros a través de una red de comunicación 5, tal como Internet.
Los aparatos cliente funcionan como aparatos de cifrado o aparatos de descifrado en base a sus funciones de procesamiento. A la luz de sus funciones, los aparatos cliente se llaman aparatos de cifrado 10 o aparatos de descifrado 30. El sistema criptográfico 1 puede incluir aparatos cliente que funcionan solamente como aparatos de cifrado y/o aparatos cliente que funcionan solamente como aparatos de descifrado.
En el sistema criptográfico 1, el cifrado y el descifrado se realizan usando cifrado de predicado. En el primer aspecto de la presente invención, el algoritmo de cifrado de predicado a ser usado no está limitado, y se puede usar el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo. En la primera realización del primer aspecto, se usará un algoritmo de cifrado de predicado de tipo KEM (el mecanismo de encapsulación de claves).
Un método de comunicación criptográfico usado en el sistema criptográfico 1 se describirá con referencia a las Figura 2, 3, 4, 6, 8, y 10. Ver las Figura 5, 7, y 9 para la estructura funcional de cada aparato.
<<Proceso de preparación>> Una unidad de generación de parámetros (no mostrada) del aparato de generación de claves 20 genera una clave privada y una entrada usada en el algoritmo de cifrado de predicado (paso S1). La entrada incluye un parámetro público (abreviado como un P público en las figuras) usado en el algoritmo de cifrado de predicado, la dirección del aparato de generación de claves 20, una lista de políticas que se pueden usar por el aparato de generación de claves 20, y una lista de esquemas que se pueden usar por el aparato de generación de claves 20.
El parámetro público incluye, por ejemplo, generar los elementos g1, g2, y gT de grupos cíclicos G1, G2, y GT que tienen un orden q, un mapeo bilineal no degenerado e: G1 x G2 � GT (donde e(g1, g2) = gT), el orden q, y la base ortogonal B de un espacio de vector (n+1) dimensional V. La clave privada incluye la base ortogonal B* de un espacio de vector dual V*. Cuando la estructura algebraica es un campo finito Fq, q es un número primo o una potencia de un número primo. El mapeo bilineal e es, por ejemplo, un emparejamiento Tate o un emparejamiento Weil.
La base ortogonal B y la base ortogonal B* se describirán a continuación. Se supone que un elemento arbitrario del espacio de vector (n+1) dimensional V se expresa como un elemento de un producto directo (n+1) dimensional G1n+1 del grupo cíclico G1, como se muestra la Expresión (1). Un elemento arbitrario de espacio de vector (n+1) dimensional V también se puede expresar usando la base canónica A del espacio de vector (n+1) dimensional V, como se muestra en la Expresión (2), donde ai es un elemento del producto directo (n+1) dimensional G1n+1, zi es un elemento de un producto directo (n+1) dimensional Fqn+1, y 1 indica una identidad aditiva.
La base ortogonal B se obtiene aplicando una matriz cuadrada (n +1) dimensional X a la base canónica A, como se 10 muestra en la Expresión (3), donde el símbolo T indica transposición. La matriz X es un secreto mantenido como la clave privada.
15 También se supone que un elemento arbitrario del espacio de vector dual V* que corresponde al espacio de vector V se expresa como un elemento de un producto directo (n +1) dimensional G2n+1 del grupo cíclico G2, como se muestra en la Expresión (4). Un elemento arbitrario del espacio de vector dual V* también se puede expresar usando la base canónica A* del espacio de vector dual V*, como se muestra en la Expresión (5), donde ai* es un elemento del producto directo (n+1) dimensional G2n+1, yi* es un elemento del producto directo (n+1) dimensional Fqn+1, y 1 indica
20 una identidad aditiva.
La base ortogonal B* se obtiene aplicando una matriz cuadrada (n+1) dimensional T(X-1) a la base canónica A*, como se muestra en la Expresión (6), donde el símbolo E indica una matriz unidad.
La lista de esquemas se describirá a continuación. Un par de elementos de información de regla de conversión se llaman un par esquemas (ver las Figura 11 a 13): uno de los elementos de información de regla de conversión es una información (información de regla de conversión de atributo, o esquema de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (información de designación de atributo, es decir, información que identifica un atributo tal como un nombre o una fecha de nacimiento específicamente y únicamente, también llamado un valor de atributo) a una información de atributo usada en el algoritmo de cifrado de predicado, y el otro de los elementos de información de regla de conversión es una información (información de regla de conversión de predicado, o esquema de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (información de designación de predicado, es decir, una información que especifica una condición relacionada con un atributo, tal como una edad o una autoridad específicamente por una expresión lógica, también llamada una función proposicional) a una información de predicado usada en el algoritmo de cifrado de predicado. Un conjunto (lista de datos) de uno o una pluralidad de pares de esquemas se llama una lista de esquemas. Cada aparato de generación de claves 20 puede determinar una lista de esquemas de una manera deseada. Cada elemento de datos incluido en cada esquema en la lista de esquemas se escribe, por ejemplo, en XML (el Lenguaje de Marcas Extensible) o ASN.1 (el Número de Notación Abstracto Uno).
Un ejemplo del esquema de atributo mostrado en la Figura 12 se describirá más adelante. La información de designación de atributo de usuario (valor de atributo) está asociada con un nombre de atributo y un tipo de datos. En el ejemplo mostrado en la Figura 12, un tipo de datos ‘cadena de caracteres’ se especifica para un nombre de atributo ‘correo electrónico 1’, y el nombre de atributo ‘correo electrónico 1’ y el tipo de datos ‘cadena de caracteres’ se asocia con un valor de atributo ‘XXX@XXX.ntt.co.jp’, por ejemplo.
El esquema de atributo prescribe una regla de conversión en la que un número de elemento está asociado con un nombre de atributo y una función de conversión de tipo. En el ejemplo mostrado en la Figura 12, un número elemento ‘1’ está asociado con un nombre atributo ‘tipo de sangre’ y una función de conversión de tipo, por ejemplo. La función de conversión de tipo que corresponde al número de elemento ‘1’ convierte el valor de atributo a 0 cuando el valor de atributo del tipo de sangre es ‘O’, a 1 cuando el valor de atributo del tipo de sangre es ‘A’, a 2 cuando el valor de atributo del tipo de sangre es ‘B’, y a 3 cuando el valor de atributo del tipo de sangre es ‘AB’. Los números de elemento ‘2’ y ’3’ están asociados con un nombre de atributo “fecha de nacimiento” y funciones de conversión de tipo. Las funciones de conversión de tipo que corresponden a los números de elemento ‘2’ y ‘3’ convierten el año del valor de atributo de la fecha de nacimiento al valor de una función de cálculo de claves que tiene el año como la entrada para el número de elemento ‘2’ y el día y el mes del valor de atributo de la fecha de nacimiento al valor de la función de cálculo de claves que tiene el día y el mes como la entrada para el número de elemento ‘3’.
Cuando se aplica al esquema de atributo ejemplo mostrado la Figura 12 a la información de designación de atributo ejemplo (valor de atributo) de un usuario mostrado en la Figura 12, se obtiene una información de atributo ejemplo (información de vector) mostrada en la Figura 12. Esta información de atributo se puede considerar como un vector disponiendo las salidas de las funciones de conversión de tipo usando los números de elemento del esquema de atributo como los números de elemento del vector.
En la descripción anterior, las salidas de las funciones de conversión de tipo son enteros y los valores de salida de la función de cálculo de claves. En realidad, las salidas de las funciones de conversión de tipo dependen del algoritmo de cifrado de predicado y son, por ejemplo, elementos del campo finito Fq.
Un ejemplo del esquema de predicado mostrado en la Figura 13 se describirá más adelante. Como información de designación de predicado, se dan las expresiones lógicas que especifican condiciones para los atributos. En el ejemplo mostrado en la Figura 13, se da la información de designación de predicado de ‘nombre = Taro Tanaka Y edad = 20 o más’ que significa que el valor de atributo de un nombre de atributo ‘nombre’ es ‘Taro Tanaka’ y el valor de atributo de un nombre de atributo ‘edad’ es 20 o más.
El esquema de predicado prescribe una regla de conversión en la que un número de elemento está asociado con un nombre atributo y una función de conversión de tipo. El ejemplo mostrado en la Figura 13, un número de elemento ‘1’ está asociado con un nombre atributo ‘tipo de sangre’ y una función de conversión de tipo, por ejemplo. La función de conversión de tipo que corresponde al número de elemento ‘1’ convierte el valor de atributo a 0 cuando el valor de atributo del tipo de sangre es ‘O’, a 1 cuando el valor de atributo del tipo de sangre es ‘A’, a 2 cuando el valor de atributo del tipo de sangre es ‘B’, y a 3 cuando el valor de atributo del tipo de sangre es ‘AB’. Los números de elemento ‘2’ y ’3’ están asociados con un nombre de atributo “fecha de nacimiento” y funciones de conversión de tipo. Las funciones de conversión de tipo que corresponden a los números de elemento ‘2’ y ‘3’ convierten el año del valor de atributo de la fecha de nacimiento al valor de una función de cálculo de claves que tiene el año como la entrada para el número de elemento ‘2’ y el día y el mes del valor de atributo de la fecha de nacimiento al valor de la función de cálculo de claves que tiene el día y el mes como la entrada para el número de elemento ‘3’.
Cuando el esquema de predicado ejemplo mostrado en la Figura 13 se aplica a la información de designación de predicado ejemplo mostrada en la Figura 13, se obtiene una información de predicado ejemplo (información de vector) mostrada en la Figura 13. Específicamente, en este ejemplo, el esquema de predicado se aplica a la información de designación de predicado para obtener un polinomio de variable múltiple f que tiene variables que corresponden a los números de elemento, y el polinomio de variable múltiple f se convierte a una información de vector para obtener una información de predicado (información de vector). Este proceso se describirá más adelante usando la información de designación de predicado ejemplo mostrada en la Figura 13. Cuando se aplica el esquema de predicado a la información de designación de predicado de ‘nombre = Taro Tanaka Y edad = 20 o más’, se obtienen el valor de salida ‘Cálculo de clave (Taro Tanaka)’ de la función de conversión de tipo que corresponde a un número de elemento ‘0’ y el valor de salida ‘1’ de la función de conversión de tipo que corresponde a un número elemento ‘23’. Un polinomio con un grado de uno con respecto a una variable X0 que corresponde al número elemento ‘0’, que tiene el valor de salida ‘Cálculo de claves(Taro Tanaka)’ de función de conversión de tipo que corresponde al número de elemento ‘0’ como un cero, y un polinomio con un grado de uno con respecto a una variable X23 que corresponde al número de elemento ‘23’, que tiene el valor de salida ‘1’ de la función de conversión de tipo que corresponde al número de elemento ‘23’ como un cero, se combinan linealmente para obtener un polinomio de variable múltiple f = r1(X0 – H(Taro Tanaka)) + r2(X23-1), donde r1 y r2 son números aleatorios. Entonces, este polinomio de variable múltiple f se expande y los coeficientes de los términos se disponen a convertir el polinomio de variable múltiple f a una información de vector. El ejemplo de la información de predicado (información de vector) mostrado en la Figura 13 se obtiene de esta manera.
En la descripción anterior, las salidas de las funciones de conversión de tipo son enteros o los valores de salida de la función de cálculo de claves. En realidad, las salidas de las funciones de conversión de tipo dependen del algoritmo de cifrado de predicado y son, por ejemplo, elementos del campo finito Fq.
Ambos esquemas que constituyen un par de esquemas necesitan tener las mismas combinaciones de nombres de atributo y funciones de conversión de tipo, los mismos tipos de datos de valores de atributo a ser introducidos, y similares.
La lista de políticas se describirá a continuación con referencia a la Figura 14. Una información que identifica o bien el esquema de atributo o bien el esquema de predicado se llama información de política (en lo sucesivo llamada sólo política). Una lista de datos en la que se escribe la política se llama una lista de política. Cuando el aparato de generación de claves 20 usa tanto el esquema de atributo como el esquema de predicado, se preparan dos tipos de políticas: Cipher_Text_Policy y Key_Policy. Cuando el aparato de generación de claves 20 usa solamente el esquema de atributo, sólo se prepara un tipo de política: Key_Policy. Cuando el aparato de generación de claves 20 usa solamente el esquema de predicado, sólo se prepara un tipo de política: Cipher_Text_Policy. La política se escribe, por ejemplo, con XML (el Lenguaje de Marcas Extensible) o ASN.1 (el Número de Notación Abstracto Uno). El aparato de generación de claves 20 puede determinar libremente el objetivo de política: solamente el esquema de atributo, solamente el esquema de predicado, o tanto el esquema de atributo como el esquema de predicado.
Después del proceso del paso S1, una unidad de transmisor del aparato de generación de claves 20 envía la entrada al aparato de autentificación 90, y una unidad de receptor del aparato de autentificación 90 recibe la entrada (paso S2). Una unidad de asignación de firmas (no mostrada) del aparato de autentificación 90 asigna una firma electrónica a la entrada con, por ejemplo, un método convencional (paso S3), una unidad de transmisor del aparato de autentificación 90 envía la entrada con la firma al aparato de generación de claves 20, y una unidad de receptor del aparato de generación de claves 20 recibe la entrada con la firma (paso S4). Entonces, la unidad de transmisor del aparato de generación de claves 20 envía la entrada con la firma al aparato de mantenimiento 80, y una unidad de receptor del aparato de mantenimiento 80 recibe la entrada con la firma (paso S5).
Una unidad de transmisor del aparato de mantenimiento 80 envía una consulta de búsqueda, la cual incluye información (tal como una dirección) que identifica el aparato de generación de claves 20, al aparato de registro 50, y una unidad de receptor del aparato de registro 50 recibe la consulta de búsqueda (paso S6). Una unidad de búsqueda (no mostrada) del aparato de registro 50 busca el contenido registrado (entrada) que concierne al aparato de generación de claves 20 (paso S7), una unidad de transmisor del aparato de registro 50 envía un resultado de la búsqueda, el cual incluye si se ha hecho un registro y el contenido registrado, al aparato de mantenimiento 80, y la unidad de receptor del aparato de mantenimiento 80 recibe el resultado de la búsqueda (paso S8).
Una unidad de comprobación (no mostrada) del aparato de mantenimiento 80 compara la entrada con la firma recibida en el proceso del paso S5 con el resultado de la búsqueda recibido en el proceso del paso S8 para comprobar si la entrada ya ha sido registrada (paso S9). Si se determina que la entrada no ha sido registrada aún, la unidad de transmisor del aparato de mantenimiento 80 envía la entrada con la firma al aparato de registro 50, y la unidad de receptor del aparato de registro 50 recibe la entrada con la firma (paso S10). Una unidad de registro (no mostrada) del aparato de registro 50 almacena la entrada con la firma en una unidad de almacenamiento del aparato de registro 50 en asociación con el aparato de generación de claves 20 (paso S11). La unidad de transmisor del aparato de registro 50 envía el resultado del registro al aparato de mantenimiento 80, y la unidad de receptor del aparato de mantenimiento 80 recibe el resultado del registro (paso S12). La unidad de transmisor del aparato de mantenimiento 80 envía el resultado de registro al aparato de generación de claves 20, y el aparato de generación de claves 20 recibe el resultado del registro (paso S13).
Cuando se proporciona una pluralidad de aparatos de generación de claves 20, cada uno de la pluralidad de aparatos de generación de claves 20 separadamente realiza los procesos del paso S1 al paso S13. Por ejemplo, cada aparato de generación de claves especifica un parámetro público y una clave privada. No obstante, esto no impide que cada aparato de generación de claves tenga un parámetro público común y una clave privada común. Los aparatos de generación de claves pueden registrar sus entradas en el mismo aparato de registro 50 o en diferentes aparatos de registro 50.
Cuando la clave privada y la entrada se especifican por adelantado y la entrada se registra en el aparato de registro 50 por adelantado, se pueden omitir los procesos desde el paso S1 al paso S13.
El aparato de autentificación 90 y aparato de mantenimiento 80 pueden ser la misma entidad hardware. El sistema criptográfico 1 puede tener una estructura de sistema que no tiene aparato de mantenimiento 80, aparato de autentificación 90, o aparato de mantenimiento 80 y aparato de autentificación 90 cuando no se requiere autentificación para registrar una entrada o cuando se garantiza que una unicidad de la entrada se registra en el aparato de registro 50.
La descripción del <<proceso de preparación>> finaliza aquí.
<<Proceso de cifrado>> Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 14 del aparato de cifrado 10 envía una consulta de búsqueda al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe la consulta de búsqueda (paso S14). La unidad de búsqueda del aparato de registro 50 busca algunas o todas las entradas registradas en la unidad de almacenamiento del aparato de registro 50 y elige una entrada (paso S15). La unidad de transmisor de aparato de registro 50 envía la entrada al aparato de cifrado 10, y una unidad de receptor del aparato de cifrado 10 recibe la entrada (paso S16). Esta entrada incluye la dirección del aparato de generación de claves, el parámetro público y el aparato de generación de claves, la lista de políticas que se puede usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por aparato de generación de claves. La entrada recibida se almacena en una memoria 11 del aparato de cifrado 10.
Cuando el aparato de cifrado 10 tiene el parámetro público, la lista de esquemas, la lista de políticas, y una dirección de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S14 a S16. Se debería señalar que el sistema criptográfico 1 puede no tener aparato de registro 50.
Una primera unidad de adquisición de información de lógica de predicado 12 del aparato de cifrado 10 lee la información de entrada, la política, y los esquemas desde la memoria 11 y obtiene una información de atributo (en lo sucesivo llamada primera información de atributo) y una información de predicado (en lo sucesivo llamada primera información de predicado) (paso S17a). Los detalles de este proceso se describirán más adelante con referencia a las Figura 12 y 13.
Cuando la lista de esquemas tiene una pluralidad de pares de esquemas, se selecciona un par de esquemas en base al uso o similar. El usuario del aparato de cifrado 10 puede seleccionar un par de esquemas y una información de designación de entrada del mismo. Alternativamente, la primera unidad de adquisición de información de lógica de predicado 12 puede seleccionar un par de esquemas según una regla predeterminada.
Según si la información de entrada es una información de designación de atributo o una información de designación de predicado, se selecciona uno de los esquemas junto con la política. El usuario del aparato de cifrado 10 puede seleccionar la política y uno de los esquemas y una información de designación de entrada de los mismos. Alternativamente, la primera unidad de adquisición de información de lógica de predicado 12 puede seleccionar la política y uno de los esquemas según una regla predeterminada. Cuando solamente se prepara un tipo de política en el aparato de generación de claves 20, se selecciona un esquema del par de esquemas según la política. Si el esquema seleccionado no corresponde al tipo de la información de entrada, necesita ser seleccionado de nuevo un
par de esquemas a partir de la lista de esquemas o necesita ser proporcionada de nuevo una entrada por el aparato de registro 50.
La información de entrada puede ser una información introducida por el usuario del aparato de cifrado 10 o una información adquirida por una unidad de adquisición (no mostrada) del aparato de cifrado 10 desde un medio de almacenamiento tal como una tarjeta IC 39.
Entonces, la primera unidad de adquisición de información de lógica de predicado 12 usa el esquema seleccionado a partir del par de esquemas según la política para obtener la primera información de atributo o la primera información de predicado a partir de la información de entrada. Cuando la política es Key_Policy y el esquema seleccionado es un esquema de atributo, se obtiene la primera información de atributo. Cuando la política es Cipher_Text_Policy y el esquema seleccionado es un esquema de predicado, se obtiene la primera información de predicado. La primera información de atributo y la primera información de predicado son información de vector que tiene elementos del campo finito Fq como componentes en la primera realización según el primer aspecto (ver las Figura 11 a 13). El esquema se usa para extraer o disponer los valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), una base ortogonal B (clave pública sustancial) incluida en el parámetro público leído desde la memoria 11, y un texto plano M para obtener una clave común K, información de cifrado C1, y texto de cifrado C2 (pasos S17b y S17c). Los detalles de estos procesos se describirán más adelante. Cuando la primera realización del primer aspecto se dedica a la entrega de la clave común K, no es necesario generar el texto de cifrado C2.
Una primera unidad de cifrado 13a genera números aleatorios r y p que son elementos del campo finito Fq según el algoritmo de cifrado de predicado, especifica la clave común K como se muestra por la Expresión (7), y obtiene la información de cifrado C1 según la Expresión (8) (paso S17b), donde H indica, por ejemplo, una función de cálculo de claves. En este ejemplo, se usa la primera información de atributo v. Para usar la primera información de
predicado, v necesita ser sustituida con w en la Expresión (8). En este ejemplo, la información de cifrado C1 corresponde a p usado para generar la clave común K. La información de cifrado C1 puede corresponder a la clave común K.
A continuación, la segunda unidad de cifrado 13b usa la clave común K y el texto plano M para obtener el texto de cifrado C2 según la Expresión (9) (paso S17c). Un método de cifrado Enck que usa la clave privada puede ser un método conocido. Por ejemplo, puede ser el método descrito en la literatura no de patente 1. Como se describió anteriormente, cuando la primera realización del primer aspecto se dedica a la entrega de la clave común K, se omite el proceso del paso S17c. En otras palabras, el aparato de cifrado 10 tiene incluso la función de la segunda unidad de cifrado 13b pero no realiza el proceso del paso S17c.
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 14 del aparato de cifrado 10 genera un mensaje de cifrado que incluye la información de cifrado C1 y el texto de cifrado C2 (si es necesario), junto con el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 11 (paso S17d). La unidad de transmisor 14 del aparato de cifrado 10 envía entonces el mensaje cifrado al aparato de descifrado 30, y una unidad de receptor del aparato de descifrado 30 recibe el mensaje cifrado (paso S18).
La descripción del <<proceso de cifrado>> finaliza aquí.
<<Proceso de descifrado>> Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 34 del aparato de descifrado 30 envía una consulta de búsqueda que incluye la dirección del aparato de generación de claves, la dirección que se incluye en el mensaje cifrado, al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe la consulta de búsqueda (paso S19). La unidad de búsqueda del aparato de registro 50 busca la entrada del aparato de generación de claves especificada por la dirección y la selecciona (paso S20). La unidad de transmisor del aparato de registro 50 envía la entrada del resultado de búsqueda al aparato de descifrado 30, y la unidad de receptor del aparato de descifrado 30 recibe la entrada (paso S21). Esta entrada incluye la dirección del aparato de generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas que se puede usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación de claves. La entrada recibida se almacena en una memoria 31 del aparato de descifrado 30.
Cuando el aparato de descifrado 30 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S19 a S21. En ese caso, el aparato de descifrado 30 busca en la memoria 31 la entrada del aparato de generación de claves que corresponde a la dirección incluida en el mensaje cifrado y la recupera.
Bajo el control de la unidad de controlador, una unidad de verificación (no mostrada) del aparato de descifrado 30 verifica que el par de esquemas y la política incluidos en el mensaje cifrado se incluyen en la lista de esquemas y la lista de políticas incluidas en la entrada obtenida desde el aparato de registro 50 (paso S22a). Si esta verificación falla, el proceso finaliza con un fallo de procesamiento de descifrado (paso S22g).
Cuando la verificación tiene éxito, una unidad de adquisición 32 del aparato de descifrado 30 lee la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado 30 desde un medio de almacenamiento tal como la tarjeta IC 39 (paso S22f). Si se lee la información de designación de atributo o la información de designación de predicado depende de la política incluida en el mensaje cifrado. Más específicamente, la información de designación de lectura corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado. Cuando la política es Cipher_Text_Policy, la unidad de adquisición 32 lee la información de designación de atributo desde el medio de almacenamiento. Cuando la política es Key_Policy, la unidad de adquisición 32 lee la información de designación de predicado desde el medio de almacenamiento. La información de designación de lectura es en lo sucesivo llamada información de usuario. La unidad de adquisición 32 del aparato de descifrado 30 puede leer desde el aparato de gestión 40 la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado 30, de la misma forma que en <<un proceso de adquisición de información de usuario>> en el aparato de generación de claves 20, descrito más tarde. En la primera realización del primer aspecto, se puede omitir el proceso del paso S22f. Cuando el aparato de descifrado 30 tiene la información de designación de atributo y la información de designación de predicado que corresponde al usuario por adelantado, o bien la información de designación de atributo o bien la información de designación de predicado sirve como una información de usuario, según la política.
A continuación, la unidad de verificación del aparato de descifrado 30 verifica que el aparato descifrado 30 tiene la clave de descifrado a ser usada para descifrar la información de cifrado incluida en el mensaje de cifrado (paso S22b).
El aparato de descifrado 30 almacena una tabla de claves de descifrado en la memoria 31. En la tabla de claves de descifrado, como se muestra en la Figura 15, por ejemplo, el identificador de cada aparato de generación de claves está asociado con el parámetro público, el par de esquemas, el objetivo de clave de descifrado, la información de designación de predicado, y la clave de descifrado. La unidad de verificación verifica que el aparato de descifrado 30 tiene la clave de descifrado que corresponde al identificador del aparato de generación de claves determinado a partir de la dirección incluida en el mensaje cifrado, al parámetro público, al par de esquemas, y al objetivo de clave de descifrado (que corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado). Cuando el aparato de descifrado 30 tiene la clave de descifrado, se realizará el proceso del paso S29. Si el aparato de descifrado 30 no tiene la clave de descifrado, se realizará el proceso del paso S23.
La descripción del <<proceso de descifrado>> se detiene temporalmente aquí y se describirá más adelante <<un proceso de generación de claves>>.
Si el aparato de descifrado 30 no tiene la clave de descifrado, la unidad de trasmisor 34 del aparato de descifrado 30 genera, bajo el control de la unidad de controlador, un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, la información de usuario (en su caso), y la información de autentificación, todos estos elementos que se leen desde la memoria 31. La información de autentificación incluye, por ejemplo, el ID de usuario y una contraseña. La unidad de trasmisor 34 del aparato de descifrado 30 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave (paso S23). El mensaje de petición de claves recibido se almacena en una memoria 21 del aparato de generación de claves 20.
Bajo el control de una unidad de controlador, una unidad de verificación (no mostrada) del aparato de generación de claves 20 verifica que el par de esquemas y la política incluida en el mensaje de petición de claves se incluyen en la lista de esquemas y la lista de políticas incluidas en la entrada propiedad del aparato de generación de claves 20 (por ejemplo, la entrada generada en el paso S1) y que el parámetro público incluido en el mensaje de petición de claves es idéntico al parámetro público del aparato de generación de claves 20 (paso S24a). Si esta verificación falla, el proceso finaliza con un fallo del proceso de generación de claves (paso S24g). Cuando la información de autentificación se incluye en el mensaje de petición de claves, la información de autentificación se verifica también en el proceso del paso S24a. El aparato de generación de claves 20 almacena una tabla de autentificación en la memoria 21. En la tabla de autentificación, como se muestra la Figura 16, por ejemplo, cada ID de usuario está asociado con una contraseña. La unidad de verificación verifica que el ID de usuario y la contraseña incluidos en el mensaje de petición de clave son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación. Si la verificación falla, se realiza el proceso del paso S24g.
Cuando esta verificación tiene éxito, la unidad de verificación del aparato de generación de claves 20 verifica que el mensaje de petición de clave incluye la información de usuario (paso S24b). Cuando el mensaje de petición de claves incluye la información de usuario, se realizará el proceso del paso S24c. Si el mensaje de petición de claves no incluye la información de usuario, se realizará el proceso del paso S25. Cuando se emplea un método en el que un mensaje de petición de clave siempre incluye una información de usuario, el proceso del paso S24b y <<un proceso de adquisición de información de usuario>>, descritos más tarde, son innecesarios.
La descripción del <<proceso de generación de claves>> se detiene temporalmente aquí y el <<proceso de adquisición de información de usuario>> se describirá más adelante.
La unidad de trasmisor 24 del aparato de generación de claves 20 envía una petición que incluye la política y la información de autentificación (en su caso) incluidas en el mensaje de petición de clave al aparato de gestión 40, y el aparato de gestión 40 recibe la petición (paso S25). La petición recibida se almacena en una memoria del aparato de gestión 40.
El aparato de gestión 40 almacena una tabla de autentificación en la memoria. De la misma forma que en la tabla de autentificación descrita anteriormente, el ID de usuario se asocia con la contraseña en esta tabla de autentificación (ver la Figura 16). La unidad de verificación (no mostrada) del aparato de gestión 40 verifica que el ID de usuario y la contraseña incluidos en la petición son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación.
Cuando esta verificación tiene éxito, una unidad de búsqueda (no mostrada) del aparato de gestión 40 busca una tabla de información de usuario almacenada en la memoria de la información de designación de atributo o la información de designación de predicado según la política incluida en la petición (paso S26). La tabla de información de usuario incluye, por ejemplo, una primera tabla formada de cada ID de usuario, y un nombre de atributo y una información de designación de atributo asociadas con el ID del usuario, y una segunda tabla formada del ID de usuario y la información de designación de predicado asociada con el ID de usuario (ver la Figura 17). Si se lee la información de designación de atributo o la información de designación de predicado se determina por la política incluida en la petición. Más específicamente, la información leída corresponde al contenido de una política que identifica el esquema emparejado con el otro esquema identificado por la política incluida en la petición. Cuando la política es Cipher_Text_Policy, la unidad de búsqueda lee la información de designación de atributo que corresponde al ID de usuario incluido en la petición desde la primera tabla. Cuando la política es Key_Policy, la unidad de búsqueda lee la información de designación de predicado que corresponde al ID de usuario incluido en la petición desde la segunda tabla. La información de designación leída es en lo sucesivo llamada información de usuario.
Bajo el control de una unidad de controlador, una unidad de trasmisor del aparato de gestión 40 envía la información de usuario al aparato de generación de claves 20, y la unidad de receptor del aparato de generación de claves 20 recibe la información de usuario (paso S27). La información de usuario recibida se almacena en la memoria 21 del aparato de generación de claves 20.
La descripción del <<proceso de adquisición de información de usuario>> finaliza aquí, y la descripción del <<proceso de generación de claves>> se resumirá.
Cuando el aparato de generación de claves 20 ya tiene la información de usuario o recibe la información de usuario a través del proceso de adquisición de información de usuario (paso S27), una segunda unidad de adquisición de información de lógica de predicado 23 del aparato de generación de claves 20 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 21, y obtiene una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (segunda información de predicado) a partir de la información de usuario (paso S24c). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la primera realización del primer aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13). El esquema se usa para extraer y disponer los valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de generación de claves 25 del aparato de generación de claves 20 genera un número aleatorio a que es un elemento del campo finito Fq, en base al parámetro público q según el algoritmo de cifrado de predicado, y usa el numero aleatorio a , la segunda información de atributo v(p) = (v(p)1, …, v(p)n) o la segunda información de predicado w(p) = (w(p)1, …, w(p)n) leídos desde la memoria 21 y una clave privada B* del aparato de generación de claves para obtener una clave de descifrado R según la Expresión (10) (paso S24d). La segunda información de predicado w(p) se usa en este ejemplo debido a que la información de entrada usada en el proceso de cifrado es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, se usa la segunda información de atributo v(p). Por lo tanto, w(p) necesita ser sustituida con v(p) en la Expresión (10).
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 24 del aparato de generación de claves 20 envía la clave de descifrado R al aparato de descifrado 30, y la unidad de receptor del aparato de descifrado 30 recibe la clave de descifrado R (paso S28). La clave de descifrado R recibida se almacena en la memoria 31 del aparato de descifrado 30.
La descripción del <<proceso de generación de claves>> finaliza aquí, y se resumirá la descripción del <<proceso de descifrado>>.
Cuando el aparato de descifrado 30 ya tiene la clave de descifrado o recibe la clave de descifrado a través del proceso de generación de claves (paso S28), una unidad de descifrado 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, la información de cifrado C1, y el texto de cifrado C2 (si es necesario) desde la memoria 31, y obtiene la clave común K y el texto plano M (si es necesario) (paso S29).
Los detalles del proceso en el paso S29 se describirán más adelante. Una primera unidad de descifrado 33a lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31, y obtiene e(C1, R) según el algoritmo de cifrado de predicado. Como se muestra en la Expresión (11), el resultado del cálculo depende del resultado de producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) sacada de la información de cifrado C1 y la clave de descifrado R según una bilinealidad cuando la información de entrada es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, v necesita ser sustituida con v(p) y w(p) necesita ser sustituida con w en la Expresión (11). El resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) sacada de la información de cifrado C1 y la clave de descifrado R según una bilinealidad. En la Expresión (11), e(bi, bi*) se define como se muestra en la
Expresión (12), donde 5 es el símbolo de la delta de Kronecker.
Por lo tanto, cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) es cero), se obtiene el resultado del cálculo en la Expresión (11), gT p . Cuando se
obtiene el resultado del cálculo, gT p , la primera unidad de descifrado 33a del aparato de descifrado 30 obtiene la clave común K, que es correcta, según la Expresión (7) (paso S22c). Cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) no es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) no es cero), la primera unidad de descifrado 33a obtiene un valor incorrecto según la Expresión (7). En este ejemplo, se supone que la función de cálculo de claves H es común al sistema o está incluida en el parámetro público. La información de cifrado C1 se corresponde a la información p usada para generar la clave común K en este ejemplo. Cuando la información de cifrado C1 corresponde a la clave común K, el resultado del cálculo en la Expresión (11) es la clave
común K (o un valor incorrecto). En otras palabras, un usuario autorizado del aparato de descifrado 30 tiene una información de designación de predicado que da la segunda información de predicado w(p) que hace el producto interior canónico con la primera información de atributo v cero, o una información de designación de atributo que da la segunda información de atributo v(p) que hace el producto interior canónico con la primera información de predicado w cero.
Entonces, una segunda unidad de descifrado 33b usa la clave común K y el texto cifrado C2 para calcular el texto plano M según la Expresión (13) (paso S22d). Un método de descifrado Deck que usa la clave privada corresponde al método de cifrado Enck. Como se describió anteriormente, cuando la primera realización del primer aspecto se dedica a la entrega de la clave común K, se omite el proceso del paso S22d. Más específicamente, incluso si el aparato de descifrado 30 tiene la función de la segunda unidad de descifrado 33b, no realiza el proceso del paso S22d.
Si el resultado del cálculo en la Expresión (11) es un valor incorrecto, el texto plano correcto M no se puede obtener mediante la Expresión (13).
El aparato de descifrado 30 puede almacenar la clave de descifrado R en la tabla de claves de descifrado. Además, el aparato de descifrado 30 puede almacenar la clave común K en la tabla de claves de descifrado.
La descripción del <<proceso de descifrado>> finaliza aquí.
(Segunda realización según el primer aspecto) Una segunda realización del primer aspecto difiere de la primera realización del primer aspecto en que el aparato de descifrado 30 genera la segunda información de atributo o la segunda información de predicado. Debido a esta diferencia, la segunda realización del primer aspecto difiere en varios puntos de la primera realización del primer aspecto. Una descripción de las partes en común entre la primera y la segunda realizaciones del primer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias de la primera realización del primer aspecto se hará con referencia a las Figura 18 a 21.
Los procesos de los pasos S1 a S22b son los mismos que aquéllos en la primera realización del primer aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S22b, una segunda unidad de adquisición de información de lógica de predicado 35 del aparato de descifrado 30 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S23g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la segunda realización del primer aspecto, la segunda información de atributo y la segunda información de predicado son una información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S23g, se realiza el proceso de paso 23. En este proceso la unidad de trasmisor 34 del aparato de descifrado 30 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del aparato de descifrado 30 envía un mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S24a, se realiza el proceso del paso S24d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el aparato de descifrado 30, la función y el proceso para generar la información son innecesarios, a diferencia de la primera realización del primer aspecto.
Los procesos de los pasos S28 y S29, a ser realizados después del proceso del paso S24d, son los mismos que aquéllos en la primera realización del primer aspecto.
(Tercera realización según el primer el primer aspecto) Una tercera realización del primer aspecto difiere de la primera realización del primer aspecto en que la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leídos desde la memoria 11, para obtener un información de cifrado C1. En otras palabras, el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo, se usa en la tercera realización del primer aspecto. Debido a esta diferencia, la tercera realización del primer aspecto difiere en varios puntos de la primera realización del primer aspecto. Una descripción de las partes en común entre la primera y tercera realizaciones del primer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias de la primera realización del primer aspecto se hará con referencia a las Figura 22 a 25.
Los procesos de los pasos S1 a S17a son los mismos que aquéllos en la primera realización del primer aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado de la tercera realización del primer aspecto. Para una información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
En el proceso del paso S17b1, que sigue al proceso del paso S17a, la unidad de cifrado 13 del aparato de cifrado 10 usa en la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leídos desde la memoria 11, para obtener una información de cifrado C1 según el algoritmo de cifrado de predicado (paso S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso S17d. En este proceso, la unidad de trasmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye la información de cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d). Los procesos de los pasos S18 a S28, que siguen al proceso del paso S17d, son los mismos que aquéllos en la primera realización del primer aspecto.
En el proceso del paso S22c1, que sigue al proceso del paso S28, la unidad de descifrado 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S22c1).
(Cuarta realización según el primer aspecto) Una cuarta realización del primer aspecto corresponde a una combinación de la segunda realización del primer aspecto y la tercera realización del primer aspecto. La cuarta realización del primer aspecto difiere de la primera realización del primer aspecto en que (1) el aparato de descifrado 30 genera la segunda información de atributo o la segunda información de predicado, y (2) la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leídos desde la memoria 11, para obtener una información de cifrado C1. Debido a estas diferencias, la cuarta realización del primer aspecto difiere en varios puntos de la primera realización del primer aspecto. Una descripción de las partes en común entre la primera y cuarta realizaciones del primer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias de la primera realización del primer aspecto se hará con referencia a las Figura 26 y 27.
Los procesos de los pasos S1 a S17a son los mismos que aquéllos en la primera realización del primer aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado de la cuarta realización del primer aspecto. Para una información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
En el proceso del paso S17b1, que sigue al proceso del paso S17a, la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leídos desde la memoria 11, para obtener una información de cifrado según el algoritmo de cifrado de predicado paso (S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso 17d. En este proceso, la unidad de trasmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye la información de cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d).
Los procesos de los pasos S18 a S22b, que siguen al proceso del paso S17d, son los mismos que aquéllos en la primera realización del primer aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S22b, la segunda unidad de adquisición de información de lógica de predicado 35 del aparato de descifrado 30 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S23g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por la Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la cuarta realización del primer aspecto, la segunda información de atributo y la segunda información de predicado son una información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S23g, se realiza el proceso del paso 23. En este proceso, la unidad de transmisor 34 del aparato de descifrado 30 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de transmisor 34 del aparato de descifrado 30 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de claves.
Cuando la verificación tiene éxito en el proceso del paso S24a, se realiza el proceso del paso S24d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el aparato de descifrado 30, la función y el proceso para generar la información son innecesarios.
El proceso del paso S28, que sigue al proceso del paso S24d, es el mismo que en la primera realización del primer aspecto.
En el proceso del paso S22c1, que sigue al proceso del paso S28, la unidad de descifrado 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, y la información de descifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S22c1).
Realizaciones según un segundo aspecto de la invención, que se refieren a una tecnología de comunicación criptográfica que puede operar de manera flexible, que se basa en un cifrado de predicado, y que permite que una información de cifrado cifrada con el cifrado de predicado sea distribuida se describirán a continuación mientras que se pone atención a la tecnología de comunicación criptográfica del primer aspecto, descrito anteriormente. Dado que un aparato de descifrado tiene una función de transferencia en la tecnología de comunicación criptográfica del segundo aspecto, se puede distribuir una información de cifrado cifrada con el cifrado de predicado.
La descripción de la tecnología de comunicación criptográfica del segundo aspecto y la descripción de la tecnología de comunicación criptográfica del primer aspecto tienen muchas partes en común sustanciales, pero, para evitar referirse a la descripción de la tecnología de comunicación criptográfica del primer aspecto, la tecnología de comunicación criptográfica del segundo aspecto se describirá más adelante con explicaciones y figuras que se solapan que se incluyen tanto como sea posible. Por lo tanto, en ambas descripciones, se usan números de expresión idénticos, números de referencia idénticos asignados a bloques de función, y números de referencia idénticos asignados a pasos. Debido a que los contenidos son diferentes, no debería haber riesgo de confusión.
(Primera realización según el segundo aspecto)
Una primera realización según el segundo aspecto de la presente invención se describirá más adelante con
referencia a la Figura 28 a la Figura 41.
Como se muestra en la Figura 28, un sistema criptográfico 1 según el segundo aspecto incluye una pluralidad de aparatos cliente 10, 30-1, y 30-2, o una pluralidad de aparatos de generación de claves 20, uno o una pluralidad de aparatos de gestión de información de usuario 40 (en lo sucesivo cada uno llamado un aparato de gestión), aparatos de gestión de par de información de regla de conversión 50 (en lo sucesivo cada uno llamado un aparato de registro), uno o una pluralidad de aparatos de mantenimiento 80, y uno o una pluralidad de aparatos de identificación 90. Estos aparatos pueden comunicar unos con otros a través de una red de comunicación 5, tal como Internet.
Los aparatos cliente funcionan como aparatos de cifrado o como aparatos de descifrado en base a sus funciones de
procesamiento. A la luz de sus funciones, los aparatos cliente se llaman aparatos de cifrado 10 o aparatos de
descifrado. Los aparatos de descifrado incluyen un primer aparato de descifrado 30-1 que sirve como un aparato
para intercambiar un mensaje cifrado, descrito más tarde, con el aparato de cifrado 10 y un segundo aparato de
descifrado 30-2 que no realiza tal intercambio. El sistema criptográfico 1 según el segundo aspecto puede incluir
unos aparatos cliente que funcionan solamente como aparatos de cifrado y/o aparatos cliente que funcionan
solamente como aparatos de descifrado.
En el sistema criptográfico 1 según el segundo aspecto, se realiza un cifrado y descifrado usando un cifrado de
predicado. En el segundo aspecto de la presente invención, el algoritmo de cifrado de predicado a ser usado no está
limitado, y se puede usar el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo.
En la primera realización del segundo aspecto, se usará un algoritmo de cifrado de predicado de tipo KEM (el
mecanismo de encapsulación de clave).
Un método de comunicación criptográfico usado en el sistema criptográfico 1 según el segundo aspecto se
describirá con referencia a las Figura 29, 30, 31, 32, 34, 36, 38, 40, y 41. Ver las Figura 33, 35, 37, y 39 para la
estructura funcional de cada aparato.
<<Proceso de preparación>>
La descripción entera del <<proceso de preparación>> en la primera realización del primer aspecto según la
presente invención se incorpora aquí y se omite una descripción del <<proceso de preparación>>. Ver la Figura 29
para el proceso de preparación, las Figura 11 a 13 para pares de esquemas, y la Figura 14 para listas de políticas.
La descripción del proceso de preparación finaliza aquí.
<<Proceso de cifrado>>
Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 14 del aparato de cifrado 10
envía una consulta de búsqueda al aparato de registro 50, y la unidad de recepción de del aparato de registro 50
recibe la consulta de búsqueda (paso S14). La unidad de búsqueda del aparato de registro 50 busca algunas o
todas las entradas registradas en la unidad de almacenamiento del aparato de registro 50 y elige una entrada (paso
S15). La unidad de transmisor del aparato de registro 50 envía la entrada al aparatos de cifrado 10, y una unidad de
receptor del aparato de cifrado 10 recibe la entrada (paso S16). Esta entrada incluye la dirección del aparato de
generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas que se puede
usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación
de claves. La entrada recibida se almacena en una memoria 11 del aparato de cifrado 10.
Cuando el aparato de cifrado 10 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección
de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S14 a S16. Se
debería señalar que el sistema criptográfico 1 puede no tener que el aparato de registro 50.
Una primera unidad de adquisición de información de lógica de predicado 12 del aparato de cifrado 10 lee la
información de entrada, la política, y los esquemas desde la memoria 11 y obtiene una información de atributo (en lo
sucesivo llamada primera información de atributo) y una información de predicado (en lo sucesivo llamada primera
información de predicado) (paso S17a). Los detalles de este proceso se describirán más adelante con referencia a
las Figura 12 y 13.
Cuando la lista de esquemas tiene una pluralidad de pares de esquemas, se selecciona un par de esquemas en
base al uso o similar. El usuario del aparato de cifrado 10 puede seleccionar un par de esquemas y una información
de designación de entrada del mismo. Alternativamente, la primera unidad de adquisición de información de lógica
de predicado 12 puede seleccionar un par de esquemas según una regla predeterminada.
Según si la información de entrada es una información de designación de atributo o una información de designación
de predicado, se selecciona uno de los esquemas junto con la política. El usuario del aparato de cifrado 10 puede
seleccionar la política y uno de los esquemas y una información de designación de entrada de los mismos.
Alternativamente, la primera unidad de adquisición de información de lógica de predicado 12 puede seleccionar la
política y uno de los esquemas según una regla predeterminada. Cuando solamente está preparada un tipo de
política en el aparato de generación de claves 20, se selecciona un esquema del par de esquemas según la política.
Si el esquema seleccionado no corresponde al tipo de la información en entrada, un par de esquemas necesita ser
seleccionado de nuevo de la lista de esquemas o una entrada necesita ser proporcionada de nuevo por el aparato
de registro 50.
La información de entrada puede ser una información introducida por el usuario del aparato de cifrado 10 o una
información adquirida por una unidad de adquisición (no mostrada) del aparato de cifrado 10 desde un medio de
almacenamiento tal como una tarjeta IC 39.
Entonces, la primera unidad de adquisición de información de lógica de predicado 12 usa el esquema seleccionado del par de esquemas según la política para tener la primera información de atributo o la primera información de predicado a partir de la información de entrada. Cuando la política es Key_Policy y el esquema seleccionado es un esquema de atributo, se obtiene la primera información de atributo. Cuando la política es Cipher_Text_Policy y el esquema seleccionado es un esquema de predicado, se obtiene la primera información de predicado. La primera información de atributo y la primera información de predicado son una información de vector que tiene elementos del campo finito Fq como componentes en la primera realización según el segundo aspecto (ver las Figura 11 a 13). El esquema se usa para extraer o disponer valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), una base ortogonal B (clave pública sustancial) incluida en el parámetro público leídos desde la memoria 11, y un texto plano M para obtener una clave común K, una información de cifrado C1 y un texto cifrado C2 (pasos S17b y S17c). Los detalles de estos procesos se describirán más adelante. Cuando la primera realización del segundo aspecto se dedica a la entrega de la clave común K, no es necesario generar el texto de cifrado C2.
Una primera unidad de cifrado 13a genera números aleatorios r y p que son elementos del campo finito Fq según el algoritmo de cifrado de predicado, especifica la clave común K como se muestra por la Expresión (7), y obtiene la información de cifrado C1 según la Expresión (8) (paso S17b), donde H indica, por ejemplo, una función de cálculo de claves. En este ejemplo, se usa la primera información de atributo v. Para usar la primera información de
predicado, v necesita ser sustituida con w en la Expresión (8). En este ejemplo, la información de cifrado C1 corresponde a p usado para generar la clave común K. La información de cifrado C1 puede corresponder a la clave común K.
A continuación, la segunda unidad de cifrado 13 usa la clave común K y el texto plano M para obtener el texto de cifrado C2 según la Expresión (9) (paso S17c). Un método de cifrado Enck que usa la clave privada puede ser un método conocido. Por ejemplo, puede ser el método lo descrito en la literatura no de patente 1. Como se describió anteriormente, cuando la primera realización del segundo aspecto se dedica a la entrega de la clave común K, se omite el proceso del paso S17c. En otras palabras, el aparato de cifrado 10 tiene incluso la función de la segunda unidad de cifrado 13b pero no realiza el proceso del paso S17c.
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye la información de cifrado C1 y el texto cifrado C2 (si es necesario), junto con el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 11 (paso S17d). La unidad de transmisor 14 del aparato de cifrado 10 entonces envía el mensaje cifrado al primer aparato de descifrado 30-1, y una unidad de receptor del primer aparato de descifrado 30-1 recibe el mensaje cifrado (paso S18). El aparato de cifrado 10 se permite que envíe un mensaje cifrado a una pluralidad de primeros aparatos de descifrado 30-1.
La descripción del <<proceso de cifrado>> finaliza aquí.
<<Primer proceso de descifrado>> Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 34 del primer aparato de descifrado 30-1 envía una consulta de búsqueda que incluye la dirección del aparato de generación de claves, la dirección que se incluye en el mensaje cifrado, al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe la consulta de búsqueda (paso S19). La unidad de búsqueda del aparato de registro 50 busca la entrada del aparato de generación de claves especificada por la dirección y la selecciona (paso S20). La unidad de transmisor del aparato de registro 50 envía la entrada del resultado de búsqueda al primer aparato de descifrado 301, y la unidad del receptor del primer aparato de descifrado 30-1 recibe la entrada (paso S21). Esta entrada incluye la dirección del aparato de generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas que se puede usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación de claves. La entrada recibida se almacena en una memoria 31 del primer aparato de descifrado 30-1.
Cuando el primer aparato de descifrado 30-1 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S19 a S21. En ese caso, el primer aparato de descifrado 30-1 busca en la memoria 31 la entrada del aparato de generación de claves que corresponde a la dirección incluida en el mensaje cifrado y la recupera.
Bajo el control de la unidad de controlador, una unidad de verificación (no mostrada) del primer aparato de descifrado 30-1 verifica que el par de esquemas y la política incluidos en el mensaje cifrado están incluidos en la lista de esquemas y la lista de políticas incluida en la entrada obtenida desde el aparato de registro 50 (paso S22a). Si esta verificación falla, el proceso finaliza con un fallo de procesamiento de descifrado (paso S22g).
Cuando la verificación tiene éxito, una unidad de adquisición 32 del primer aparato de descifrado 30-1 lee la información de designación de atributo o la información de designación de predicado que corresponde al usuario del primer aparato de descifrado 30-1 desde un medio de almacenamiento tal como la tarjeta IC 39 (paso S22f). Si se lee la información de designación de atributo o la información de designación de predicado depende de la política incluida en el mensaje cifrado. Más específicamente, la información de designación de lectura corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado. Cuando la política es Cipher_Text_Policy, la unidad de adquisición 32 lee la información de designación de atributo desde el medio de almacenamiento. Cuando la política es Key_Policy, la unidad de adquisición 32 lee la información de designación de predicado desde el medio de almacenamiento. La información de designación de lectura es en lo sucesivo llamada información de usuario. La unidad de adquisición 32 del primer aparato de descifrado 30-1 puede leer desde el aparato de gestión 40 la información de designación de atributo o la información de designación de predicado que corresponde al usuario del primer aparato de descifrado 30-1, de la misma forma que en <<un proceso de adquisición de información de usuario>> en el aparato de generación de claves 20 descrito más tarde. En la primera realización del segundo aspecto, se puede omitir el proceso del paso S22f. Cuando el primer aparato de descifrado 30-1 tiene la información de designación de atributo y la información de designación de predicado que corresponde al usuario por adelantado, o bien la información de designación de atributo o bien la información de designación de predicado sirve como información de usuario, según la política.
A continuación, la unidad de verificación del primer aparato de descifrado 30-1 verifica que el aparato de descifrado 30 tiene la clave de descifrado a ser usada para descifrar la información de cifrado incluida en el mensaje de cifrado (paso S22b).
El primer aparato de descifrado 30-1 almacena una tabla de claves de descifrado en la memoria 31. En la tabla de claves de descifrado, como se muestra en la Figura 15, por ejemplo, el identificador de cada aparato de generación de claves está asociado con el parámetro público, el par de esquemas, el objetivo de clave de descifrado, la información de designación de predicado, y la clave de descifrado. La unidad de verificación verifica que el aparato de descifrado 30 tiene la clave de descifrado que corresponde al identificador del aparato de generación de claves determinado a partir de la dirección incluida en el mensaje cifrado, al parámetro público, al par de esquemas, y al objetivo de clave de descifrado (que corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluido en el mensaje cifrado). Cuando el aparato de descifrado 30 tiene la clave de descifrado, se realiza el proceso del paso S29. Si el aparato de descifrado 30 no tiene la clave de descifrado, se realiza el proceso del paso S23.
La descripción del <<proceso de descifrado>> se detiene temporalmente aquí y se describirá más adelante <<un proceso de generación de claves>>.
Si el primer aparato de descifrado 30-1 no tiene la clave de descifrado, la unidad de transmisor 34 del primer aparato de descifrado 30-1 genera, bajo el control de la unidad de controlador, un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, la información de usuario (en su caso), y la información de autentificación, todos estos elementos que se leen desde la memoria 31. La información de autentificación incluye, por ejemplo, el ID del usuario y una contraseña. La unidad de transmisor 34 del primer aparato de descifrado 30-1 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave (paso S23). El mensaje de petición de clave recibido se almacena en una memoria 21 del aparato de generación de claves 20.
Bajo el control de una unidad de controlador, una unidad de verificación (no mostrada) del aparato de generación de claves 20 verifica que el par de esquemas y la política incluida en el mensaje de petición de claves están incluidos en la lista de esquemas y la lista de políticas incluida en la entrada propiedad del aparato de generación de claves 20 (por ejemplo, la entrada generada en el paso S1) y que el parámetro público incluido en el mensaje de petición de claves es idéntico al parámetro público del aparato de generación de claves 20 (paso S24a). Si esta verificación falla, el proceso finaliza con un fallo del proceso de generación de claves (paso S24g). Cuando la información de autentificación se incluye en el mensaje de petición de clave, la información de autentificación también se verifica en el proceso del paso S24a. El aparato de generación de claves 20 almacena una tabla de autentificación en la memoria 21. En la tabla de autentificación, como se muestra la Figura 16, por ejemplo, cada ID de usuario está asociado con una contraseña. La unidad de verificación verifica que el ID de usuario y contraseña incluidos en el mensaje de petición de clave son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación. Si la verificación falla, se realiza el proceso del paso S24g.
Cuando esta verificación tiene éxito, la unidad de verificación del aparato de generación de claves 20 verifica que el mensaje de petición de clave incluye la información de usuario (paso S24b). Cuando el mensaje de petición de clave incluye la información de usuario, se realiza el proceso del paso S24c. Si el mensaje de petición de clave no incluye la información de usuario, se realiza el proceso del paso S25. Cuando se emplea un método en el cual un mensaje de petición de clave siempre incluye una información de usuario, son innecesarios el proceso del paso S24b y <<un proceso de adquisición de información de usuario>>, descritos más tarde.
La descripción del <<proceso de generación de claves>> se detiene temporalmente aquí y se describirá más adelante <<el proceso de adquisición de información de usuario>>.
La unidad de transmisor 24 del aparato de generación de claves 20 envía una petición que incluye la política y la información de autentificación (en su caso) incluidas en el mensaje de petición de clave al aparato de gestión 40, y el aparato de gestión 40 recibe la petición (paso S25). La petición recibida se almacena en la memoria del aparato de gestión 40.
El aparato de gestión 40 almacena una tabla de autentificación en la memoria. De la misma forma que en la tabla de autentificación descrita anteriormente, el ID de usuario está asociado con la contraseña en esta tabla de autentificación (ver la Figura 16). Una unidad de verificación (no mostrada) del aparato de gestión 40 verifica que el ID de usuario y la contraseña incluidos en la petición son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación.
Cuando esta verificación tiene éxito, una unidad de búsqueda (no mostrada) del aparato de gestión 40 busca una tabla de información de usuario almacenada en la memoria para la información de designación de atributo o la información de designación de predicado según la política incluida en la petición (paso S26). La tabla de información de usuario incluye, por ejemplo, una primera tabla formada de cada ID de usuario, y un nombre atributo y una información de designación de atributo asociados con el ID de usuario, y una segunda tabla formada del ID de usuario y una información de designación de predicado asociada con el ID de usuario (ver la Figura 17). Si se lee la información de designación de atributo o la información de designación de predicado se determina por la política incluida en la petición. Más específicamente, la información leída corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en la petición. Cuando la política es Cipher_Text_Policy, la unidad de búsqueda lee la información de designación de atributo que corresponde al ID de usuario incluido en la petición desde la primera tabla. Cuando la política es Key_Policy, la unidad de búsqueda lee la información de designación de predicado que corresponde al ID de usuario incluido en la petición desde la segunda tabla. La información de designación de lectura es en lo sucesivo llamada información de usuario.
Bajo el control de una unidad de controlador, una unidad de transmisor del aparato de gestión 40 envía la información de usuario al aparato de generación de claves 20, y la unidad del receptor del aparato de generación de claves 20 recibe la información de usuario (paso S27). La información de usuario recibida se almacena en la memoria 21 del aparato de generación de claves 20.
La descripción del <<proceso de adquisición de información de usuario>> finaliza aquí, y se resumirá la descripción del <<proceso de generación de claves>>.
Cuando el aparato de generación de claves 20 ya tiene la información de usuario o recibe la información de usuario a través del proceso de adquisición de información de usuario (paso S27), una segunda unidad de adquisición de información de lógica de predicado 23 del aparato de generación de claves 20 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 21, y obtiene una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (segunda información de predicado) a partir de la información de usuario (paso S24c). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. La política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la primera realización del segundo aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13). El esquema se usa para extraer y disponer los valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de generación de claves 25 del aparato de generación de claves 20 genera un numero aleatorio a qué es un elemento del campo finito Fq, en base al parámetro público q según el algoritmo de cifrado de predicado, y usa el numero aleatorio a , la segunda información de atributo v(p) = (v(p)1, …, v(p)n) o la segunda información de predicado w(p) = (w(p)1, …, w(p)n) leídos desde la memoria 21, y una clave privada B* del aparato de generación de claves para obtener una clave de descifrado R según la Expresión (10) (paso S24d). La segunda información de predicado w(p) se usa en este ejemplo debido a que la información de entrada usada en el proceso de cifrado es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, se usa la segunda información de atributo v(p). Por lo tanto, w(p) necesita ser sustituida con v(p) en la Expresión (10), descrita anteriormente.
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 24 del aparato de generación de claves 20 envía la clave de descifrado R al primer aparato descifrado 30-1, y la unidad de receptor del primer aparato de descifrado 30 recibe la clave de descifrado R (paso S28). La clave de descifrado recibida R se almacena en la memoria 31 del primer aparato de descifrado 30.
La descripción del <<proceso de generación de claves>> finaliza aquí, y se resumirá la descripción del <<proceso de descifrado>>.
Cuando el primer aparato de descifrado 30-1 ya tiene la clave de descifrado o recibe la clave de descifrado a través del proceso de generación de claves (paso S28), una unidad de descifrado 33 del primer aparato de descifrado 30-1 lee el parámetro público, la clave de descifrado R, la información de cifrado C1, y el texto descifrado C2 (si es necesario) desde la memoria 31, y obtiene la clave común K y el texto plano M (si es necesario) (paso S29).
Los detalles del proceso en el paso S29 se describirán más adelante. Una primera unidad de descifrado 33a lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31, y obtiene e(C1, R) según el algoritmo de cifrado de predicado. Como se muestra en la Expresión (11), descrita anteriormente, el resultado del cálculo depende del resultado del producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) sacadas a partir de la información de cifrado C1 y la clave de descifrado R según una bilinealidad cuando la información de entrada es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, v necesita ser sustituida por con v(p) y w(p) necesita ser sustituida con w en la Expresión (11), descrita anteriormente. El resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) sacadas a partir de la información de cifrado C1 y la clave de descifrado R según la bilinealidad. En la
Expresión (11), e(bi, bi*) se define como se muestra en la Expresión (12), descrita anteriormente, donde 5 ij es el símbolo de la delta de Kronecker.
Por lo tanto, cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) es cero), se obtiene el resultado del cálculo en la Expresión (11), gT p . Cuando se
obtiene resultado del cálculo, gT p , la primera unidad de descifrado 33a del primer aparato de descifrado 30-1 obtiene la clave común K, que es correcta, según la Expresión (7), descrita anteriormente (paso S22c). Cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) no es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) no es cero), la unidad de descifrado 33a obtiene un valor incorrecto según la Expresión (7), descrita anteriormente. En este ejemplo, se supone que la función de cálculo de claves H es común al sistema o está incluida en el parámetro público. Esta información de cifrado C1 corresponde a la información p usada para generar la clave común K en este ejemplo. Cuando la información de cifrado C1 corresponde a la clave común K, el resultado del
cálculo en la Expresión (11), descrita anteriormente, es la clave común K (o un valor incorrecto). En otras palabras, un usuario autorizado del primer aparato de descifrado 30 tiene una información de designación de predicado que da la segunda información de predicado w(p) que hace el producto interior canónico con la primera información de atributo v cero, o una información de designación de atributo que da la segunda información de atributo v(p) que hace el producto interior canónico con la primera información de predicado w cero.
Entonces, una segunda unidad de descifrado 33b usa la clave común K y el texto cifrado C2 para calcular el texto plano M según la Expresión (13), descrita anteriormente (paso S22d). Un método de descifrado Deck que usa la clave privada corresponde al método de cifrado Enck. Como se describió anteriormente, cuando la primera realización del segundo aspecto se dedica a la entrega de la clave común K, se omite el proceso del paso S22d. Más específicamente, incluso si el primer aparato de descifrado 30-1 tiene la función de la segunda unidad de descifrado 33b, no realiza el proceso del paso S22d.
Si el resultado del cálculo de la Expresión (11), descrita anteriormente, es un valor incorrecto, el texto plano correcto M no se puede obtener mediante la Expresión (13), descrita anteriormente.
El primer aparato de descifrado 30-1 puede almacenar la clave de descifrado R en la tabla de claves de descifrado. Además, el primer aparato de descifrado 30-1 puede almacenar la clave común K en la tabla de claves de descifrado.
La descripción del <<primer proceso de descifrado>> finaliza aquí.
<<Proceso de transferencia>> Una unidad de transferencia 37 del primer aparato de descifrado 30-1 transfiere el mensaje cifrado recibido desde el aparato de cifrado 10, al segundo aparato de descifrado 30-2, y una unidad de receptor del segundo aparato de descifrado 30-2 recibe el mensaje cifrado (paso S30). El aparato de descifrado al cual se transfiere el mensaje cifrado no está limitado al segundo aparato de descifrado (aparato de descifrado que no intercambia un mensaje cifrado con el aparato de cifrado) y puede ser otro primer aparato de descifrado (aparato de descifrado que intercambia un mensaje cifrado con el aparato de cifrado). Por conveniencia de la descripción, el proceso del paso S30 sigue al proceso del paso S29. El proceso de paso S30, no obstante, se puede realizar en cualquier momento después de que el primer aparato de descifrado 30-1 recibe el mensaje cifrado desde el aparato de cifrado 10.
La descripción del <<proceso de transferencia>> finaliza aquí.
Un segundo proceso de descifrado (que incluye un proceso de generación de claves y, si es necesario, un proceso de adquisición de información de usuario) realizado por el segundo aparato de descifrado 30-2 se describirá más adelante. Esta serie de procesamiento es sustancialmente la misma que el primer proceso de descifrado. El segundo aparato de descifrado 30-2 tiene la misma estructura funcional que el primer aparato de descifrado 30-1 excepto que la unidad de transferencia 37 no se requiere necesariamente. Por lo tanto, los mismos números de referencia se asignan a los mismos componentes funcionales.
<<Segundo proceso de descifrado>> Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 34 del segundo aparato de descifrado 30-2 envía una consulta de búsqueda que incluye la dirección del aparato de generación de claves, la dirección que se incluye en el mensaje cifrado, al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe la consulta de búsqueda (paso S31). La unidad de búsqueda del aparato de registro 50 busca la entrada del aparato de generación de claves especificada por la dirección y la selecciona (paso S32). La unidad de transmisor del aparato de registro 50 envía la entrada del resultado buscado al segundo aparato de descifrado 30-2, y la unidad de receptor del segundo aparato de descifrado 30-2 recibe la entrada (paso S33). Esta entrada incluye la dirección del aparato de generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas que se puede usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación de claves. La entrada recibida se almacena en una memoria 31 del segundo aparato de descifrado 30-2.
Cuando el segundo aparato de descifrado 30-2 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S31 a S33. En ese caso, el segundo aparato de descifrado 30-2 busca en la memoria 31 la entrada del aparato de generación de claves que corresponde a la dirección incluida en el mensaje cifrado y la recupera.
Bajo el control de la unidad de controlador, una unidad de verificación (no mostrada) del segundo aparato de descifrado 30-2 verifica que el par de esquemas y la política incluida en el mensaje cifrado están incluidos en la lista de esquemas y la lista de políticas incluidas en la entrada obtenida a partir del aparato de registro 50 (paso S34a). Si esta verificación falla, el proceso finaliza con un fallo de procesamiento de descifrado (paso S34g).
Cuando la verificación tiene éxito, una unidad de adquisición 32 del segundo aparato de descifrado 30-2 lee la información de designación de atributo o la información de designación de predicado que corresponde al usuario del segundo aparato de descifrado 30-2 desde un medio de almacenamiento tal como la tarjeta IC 39 (paso S34f). Si se lee la información de designación de atributo o la información de designación de predicado depende de la política incluida en el mensaje cifrado. Más específicamente, la información de designación de lectura corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado. Cuando la política es Cipher_Text_Policy, la unidad de adquisición 32 lee la información de designación de atributo desde el medio de almacenamiento. Cuando la política es Key_Policy, la unidad de adquisición 32 lee la información de designación de predicado desde el medio de almacenamiento. La información de designación de lectura es en lo sucesivo llamada información de usuario. La unidad de adquisición 32 del segundo aparato de descifrado 32-2 puede leer desde el aparato de gestión 40 la información de designación de atributo o la información de designación de predicado que corresponde al usuario del segundo aparato de descifrado 30-2, de la misma forma que en <<un proceso de adquisición de información de usuario>> en el aparato de generación de claves 20, descrito más tarde. En la primera realización del segundo aspecto, se puede omitir el proceso del paso S34f. Cuando el segundo aparato de descifrado 30-2 tiene la información de designación de atributo y la información de designación de predicado que corresponde al usuario por adelantado, o bien la información de designación de atributo o bien la información de designación de predicado sirve como información de usuario, según la política.
A continuación, la unidad de verificación del segundo aparato de descifrado 30-2 verifica que el aparato de descifrado 30 tiene la clave de descifrado a ser usada para descifrar la información de cifrado incluida en el mensaje de cifrado (paso S34b).
El segundo aparato de descifrado 30-2 almacena una tabla de claves de descifrado en la memoria 31. En la tabla de claves de descifrado, como se muestra en la Figura 15, por ejemplo, el identificador de cada aparato de generación de claves está asociado con el parámetro público, el par de esquemas, el objetivo de clave de descifrado, la información de designación de predicado, y la clave de descifrado. La unidad de verificación verifica que el aparato de descifrado 30 tiene la clave de descifrado que corresponde al identificador del aparato de generación de claves determinado a partir de la dirección incluida en el mensaje cifrado, al parámetro público, al par de esquemas, y al objetivo de clave de descifrado (que corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado). Cuando el aparato de descifrado 30 tiene la clave de descifrado, se realiza el proceso del paso S41. Si el aparato de descifrado 30 no tiene la clave de descifrado, se realiza el proceso del paso S35.
La descripción del <<proceso de descifrado>> se detiene temporalmente aquí y se describirá más adelante <<un proceso de generación de claves>>.
Si el segundo aparato de descifrado 30-2 no tiene la clave de descifrado, la unidad de transmisor 34 del segundo aparato de descifrado 30-2 genera, bajo el control de la unidad de controlador, un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, la información de usuario (en su caso), y la información de autentificación, todos estos elementos que se leen desde la memoria 31. La información de autentificación incluye, por ejemplo, el ID de usuario y una contraseña. La unidad de transmisor 34 del segundo aparato de descifrado 30-2 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave (paso S35). El mensaje de petición de clave recibido se almacena en una memoria 21 del aparato de generación de claves 20. Este aparato de generación de claves 20 no necesita ser necesariamente el aparato de generación de claves 20 emparejado con el primer aparato de descifrado 30-1.
Bajo el control de una unidad de controlador, una unidad de verificación (no mostrada) del aparato de generación de claves 20 verifica que el par de esquemas y la política incluida en el mensaje de petición de clave están incluidos en la lista de esquemas y la lista de políticas incluidas en la entrada propiedad del aparato de generación de claves 20 (por ejemplo, la entrada generada en el paso S1) y que el parámetro público incluido en el mensaje de petición de claves es idéntico al parámetro público del aparato de generación de claves 20 (paso S36a). Si esta verificación falla, el proceso finaliza con un fallo del proceso de generación de claves (paso S36g). Cuando la información de autentificación está incluida en el mensaje de petición de clave, la información de autentificación también se verifica en el proceso del paso S36a. El aparato de generación de claves 20 almacena una tabla de autentificación en la memoria 21. En la tabla autentificación, como se muestra la Figura 16, por ejemplo, cada ID de usuario está asociado con una contraseña. La unidad de verificación verifica que el ID de usuario y la contraseña incluidos en el mensaje de petición de clave son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación. Si la verificación falla, se realiza el proceso del paso S36g.
Cuando esta verificación tiene éxito, la unidad de verificación del aparato de generación de claves 20 verifica que el mensaje de petición de clave incluye la información de usuario (paso S36b). Cuando el mensaje de petición de clave incluye la información de usuario, se realiza el proceso del paso S36c. Si el mensaje de petición de clave no incluye la información de usuario, se realiza el proceso del paso S37. Cuando se emplea un método en el cual un mensaje de petición de clave siempre incluye una información de usuario, el proceso del paso S36b y <<un proceso de adquisición de información de usuario>>, descrito más tarde, son innecesarios.
La descripción del <<proceso de generación de claves>> se detiene temporalmente aquí y se describirá más adelante <<el proceso de adquisición de información de usuario>>.
La unidad de transmisor 24 del aparato de generación de claves 20 envía una petición que incluye la política y la información de autentificación (en su caso) incluidas en el mensaje de petición de clave al aparato de gestión 40, y el aparato de gestión 40 recibe la petición (paso S37). La petición recibida se almacena en una memoria del aparato de gestión 40.
El aparato de gestión 40 almacena una tabla de autentificación en la memoria. De la misma forma que en la tabla de autentificación descrita anteriormente, el ID de usuario está asociado con la contraseña en esta tabla de autentificación (ver la Figura 16). Una unidad de verificación (no mostrada) del aparato de gestión 40 verifica que el ID de usuario y la contraseña incluidos en la petición son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación.
Cuando esta verificación tiene éxito, una unidad de búsqueda (no mostrada) del aparato de gestión 40 busca una tabla de información de usuario almacenada en la memoria para la información de designación de atributo o la información de designación de predicado según la política incluida en la petición (paso S38). La tabla de información de usuario incluye, por ejemplo, una primera tabla formada de cada ID de usuario, y un nombre de atributo y una información de designación de atributo asociados con el ID de usuario, y una segunda tabla formada del ID de usuario y una información de designación de predicado asociada con el ID de usuario (ver la Figura 17). Si se lee la información de designación de atributo o la información de designación de predicado se determina por la política incluida en la petición. Más específicamente, la información leída corresponde al contenido de la política que identifica un esquema emparejado con otro esquema identificado por la política incluida en la petición. Cuando la política es Cipher_Text_Policy, la unidad de búsqueda lee la información de designación de atributo que corresponde al ID de usuario incluido en la petición desde la primera tabla. Cuando la política es Key_Policy, la unidad de búsqueda lee la información de designación de predicado que corresponde al ID de usuario incluido en la petición desde la segunda tabla. La información de designación de lectura es en lo sucesivo llamada información de usuario.
Bajo el control de una unidad de controlador, una unidad de transmisor del aparato de gestión 40 envía la información de usuario al aparato de generación de claves 20, y la unidad de receptor del aparato de generación de claves 20 recibe la información de usuario (paso S27). La información de usuario recibida se almacena la memoria 21 del aparato de generación de claves.
La descripción del <<proceso de adquisición de información de usuario>> finaliza aquí, y se resumirá la descripción del <<proceso de generación de claves>>.
Cuando el aparato de generación de claves 20 ya tiene la información de usuario o recibe la información de usuario a través del proceso de adquisición de información de usuario (paso S39), una segunda unidad de adquisición de información de lógica de predicado 23 del aparato de generación de claves 20 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 21, y obtiene una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (segunda información de predicado) a partir de la información de usuario (paso S36c). En general, el usuario del primer aparato de descifrado 30-1 y el usuario del segundo aparato de descifrado 30-2 son diferentes. Por lo tanto, la segunda información de atributo o segunda información de predicado obtenida en este proceso no es necesariamente la misma que la segunda información de atributo o la segunda información de predicado obtenida en el proceso del paso S24c. En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política que es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la primera realización del segundo aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13). El esquema se usa para extraer y disponer los valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de generación de claves 25 del aparato de generación de claves 20 genera un número aleatorio a que es un elemento del campo finito Fq, en base al parámetro público q según el algoritmo de cifrado de predicado, y usa el número aleatorio a , la segunda información de atributo v’(p) = (v’(p)1, …, v’(p)n) o la segunda información de predicado w’(p) = (w’(p)1, …, w’(p)n) leída desde la memoria 21, y una clave privada B* del aparato de generación de claves para obtener una clave de descifrado R’ según la Expresión (14) (paso S36d). La segunda información de predicado w’(p) se usa en este ejemplo debido a que la información de entrada usada en el proceso de cifrado es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, se usa la segunda información de atributo v’(p). Por lo tanto, w’(p) necesita ser sustituido con v’(p) en la Expresión (14).
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 24 del aparato de generación de claves 20 envía la clave de descifrado R’ al segundo aparato de descifrado 30-2, y la unidad de receptor del segundo aparato de descifrado 30-2 recibe la clave de descifrado R’ (paso S28). La clave de descifrado recibida R’ se almacena en la memoria 31 del segundo aparato de descifrado 30-2.
La descripción del <<proceso de generación de claves>> finaliza aquí, y se resumirá la descripción del <<proceso de descifrado>>.
Cuando el segundo aparato de descifrado 30-2 ya tiene la clave de descifrado o recibe la clave de descifrado a través del proceso de generación de claves (paso S40), una unidad de descifrado 33 del segundo aparato de descifrado 30-2 lee el parámetro público, la clave de descifrado R’, la información de cifrado C1, y el texto cifrado C2 (si es necesario) desde la memoria 31, y obtiene la clave común K y que el texto plano M (si es necesario) (paso S41).
Los detalles del proceso en el paso S41 se describirán más adelante. La primera unidad de descifrado 33a lee el parámetro público, la clave de descifrado R’, y la información de cifrado C1 desde la memoria 31, y obtiene e(C1, R) según el algoritmo de cifrado de predicado. Como se muestra la Expresión (15), el resultado de cálculo depende del
resultado del producto interior canónico de la primera información de atributo v y la segunda información de predicado w’(p) sacadas de la información de cifrado C1 y la clave de descifrado R’ según una bilinealidad cuando la información de entrada es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, v necesita ser sustituido con v’(p) y w’(p) necesita ser sustituido con w en la Expresión (15). El resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado w y la segunda información de atributo v’(p) sacadas de la información de cifrado C1 y la clave de descifrado R’ según una bilinealidad. En la Expresión (15), e(bi, bi*) se define como se muestra en la Expresión (12) descrita anteriormente.
Por lo tanto, cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w’(p) es cero (o cuando el producto interior canónico de la primera información de predicado w en la segunda información de atributo v’(p) es cero), se obtiene el resultado del cálculo en la Expresión (15), gT p . Cuando
se obtiene el resultado del cálculo, gT p , la primera unidad de descifrado 33a del segundo aparato de descifrado 302 obtiene la clave común K, la cual es correcta, según la Expresión (7), descrita anteriormente (paso S34c). Cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w’(p) no es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v’(p) no es cero), la primera unidad de descifrado 33a obtiene un valor incorrecto según la Expresión (7), descrita anteriormente. En este ejemplo, se supone que la función de cálculo de claves H es común al sistema o está incluida en el parámetro público. La información de cifrado C1 corresponde a la información p usada para generar la clave común K en este ejemplo. Cuando la información de cifrado C1 corresponde a la clave común K, el
resultado del cálculo en la Expresión (15) es la clave común K (o un valor incorrecto). En otras palabras, un usuario autorizado del segundo aparato de descifrado 30-2 tiene una información de designación de predicado que da la segunda información de predicado w’(p) que hace el producto interior canónico con la primera información de atributo v cero, o una información de designación de atributo que da la segunda información de atributo v’(p) que hace el producto interior canónico con la primera información de predicado w cero.
Entonces, la segunda unidad de descifrado 33b usa la clave común K y el texto cifrado C2 para calcular un texto plano M según la Expresión (13), descrita anteriormente (paso S34d). Un método de descifrado Deck que usa la clave privada corresponde al método de cifrado EncK. Como se describió anteriormente, cuando la primera realización del segundo aspecto se dedica a la entrega de la clave común K, se omite el proceso del paso S34d. Más específicamente, incluso si el segundo aparato de descifrado 30-2 tiene la función de la segunda unidad de descifrado 33b, no realiza el proceso del paso S34d.
Si el resultado del cálculo en la Expresión (15) es un valor incorrecto, el texto plano M correcto no se puede obtener mediante la Expresión (13), descrita anteriormente.
El segundo aparato de descifrado 30-2 puede almacenar la clave de descifrado R’ en la tabla de claves de descifrado. Además, el segundo aparato de descifrado 30-2 puede almacenar la clave común K en la tabla de claves de descifrado.
La descripción del <<segundo proceso de descifrado>> finaliza aquí.
Cuando el segundo aparato de descifrado 30-2 tiene una unidad de transferencia 37, el segundo aparato de descifrado 30-2 puede transferir el mensaje cifrado recibido desde el primer aparato de descifrado 30-1, a otro segundo aparato de descifrado (aparato de descifrado que no intercambia un mensaje cifrado con el aparato de cifrado) o al primer aparato de descifrado (aparato de descifrado que intercambia un mensaje cifrado con el aparato de cifrado). Este proceso de transferencia se puede realizar en cualquier momento después de que el segundo aparato de descifrado 30-2 reciba el mensaje cifrado desde el primer aparato de descifrado 30-1.
(Segunda realización según el segundo aspecto)
Una segunda realización del segundo aspecto difiere de la primera realización del segundo aspecto en que el primer
aparato de descifrado 30-1 y el segundo aparato de descifrado 30-2 generan la segunda información de atributo o la segunda información de predicado. Debido a esta diferencia, la segunda realización del segundo aspecto difiere en varios puntos de la primera realización del segundo aspecto. Una descripción de las partes comunes entre la primera y segunda realizaciones del segundo aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias a partir de la primera realización del segundo aspecto se hará con referencia a las Figura 42 a 48.
Los procesos de los pasos S1 a S22 son los mismos que aquéllos en la primera realización del segundo aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S22b, una segunda unidad de adquisición de información de lógica de predicado 35 del primer aparato de descifrado 30-1 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S23g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la segunda realización del segundo aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S23g, se realiza el proceso del paso 23. En este proceso, la unidad de trasmisor 34 del primer aparato de descifrado 30-1 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del primer aparato de descifrado 30-1 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y una unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S24a, se realiza el proceso del paso S24d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el primer aparato de descifrado 30-1, la función y el proceso de generar la información son innecesarios, a diferencia de la primera realización del segundo aspecto.
Los procesos de los pasos S28 a S34a, a ser realizados después del proceso del paso S24d, son los mismos que aquéllos en la primera realización del segundo aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S34b, una segunda unidad de adquisición de información de lógica de predicado 35 del segundo aparato de descifrado 30-2 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S35g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la segunda realización del segundo aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S35g, se realiza el proceso del paso 35. En este proceso la unidad de trasmisor 34 del segundo aparato de descifrado 30-2 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del segundo aparato de descifrado 30-2 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S36a, se realiza el proceso del paso S36d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el segundo aparato de descifrado 30-2, la función y el proceso para generar la información son innecesarios, a diferencia de la primera realización del segundo aspecto.
Los procesos de los pasos S40 y S41, que siguen al proceso del paso S36d, son los mismos que aquéllos en la primera realización del segundo aspecto.
(Tercera realización según el segundo aspecto) Una tercera realización del segundo aspecto difiere de la primera realización del segundo aspecto en que la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leído desde la memoria 11 para obtener una información de cifrado C1. En otras palabras, el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo, se usa en la tercera realización del segundo aspecto. Debido a esta diferencia, la tercera realización del segundo aspecto difiere en varios puntos de la primera realización del segundo aspecto. Una descripción de las partes comunes entre la primera y tercera realizaciones del segundo aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias a partir de la primera realización del segundo aspecto se hará con referencia a las Figura 49 a 54.
Los procesos de los pasos S1 a S17a son los mismos que aquéllos en la primera realización del segundo aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado de la tercera realización del segundo aspecto. Para una información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
En el proceso del paso S17b1, que sigue al proceso del paso S17a, la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leído desde la memoria 11, para obtener una información de cifrado C1 según el algoritmo de cifrado de predicado (paso S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso 17d. En este proceso, la unidad de trasmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye la información de cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d).
Los procesos de los pasos S18 a S28, que siguen al proceso del paso S17d, son los mismos que aquéllos en la primera realización del segundo aspecto.
En el proceso del paso S22c1, que sigue al proceso del paso S28, la unidad de descifrado 33 del primer aparato de descifrado 30-1 lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S22c1).
Los procesos de los pasos S30 a S40, que siguen al proceso del paso S22c1, son los mismos que aquéllos en la primera realización del segundo aspecto.
En el proceso del paso S34c1, que sigue al proceso del paso S40, la unidad de descifrado 33 del segundo aparato de descifrado 30-2 lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S34c1).
(Cuarta realización según el segundo aspecto) Una cuarta realización del segundo aspecto corresponde a una combinación de la segunda realización del segundo aspecto y la tercera realización del segundo aspecto. La cuarta realización del segundo aspecto difiere de la primera realización del segundo aspecto en que (1) el primer aparato de descifrado 30-1 y el segundo aparato de descifrado 30-2 generan la segunda información de atributo o la segunda información de predicado, y (2) la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leído desde la memoria 11, para obtener una información de cifrado C1. Debido a estas diferencias, la cuarta realización del segundo aspecto difiere en varios puntos de la primera realización el segundo aspecto. Una descripción de las partes comunes entre la primera y cuarta realizaciones del segundo aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias a partir de la primera realización del segundo aspecto se hará con referencia a las Figura 55 a 58.
Los procesos de los pasos S1 a S17a son los mismos que aquéllos en la primera realización del segundo aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado de la cuarta realización del segundo aspecto. Para una información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
En el proceso del paso S17b1, que sigue al proceso del paso S17a, la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el texto plano M leído desde la memoria 11, para obtener una información de cifrado C1 según el algoritmo de cifrado de predicado (paso S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso 17d. En este proceso, la unidad de trasmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye la información de cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d).
Los procesos de los pasos S18 a S22b, que siguen al proceso del paso S17d, son los mismos que aquéllos en la primera realización del segundo aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S22b, la segunda unidad de adquisición de información de lógica de predicado 35 del primer aparato de descifrado 30-1 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S23g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa a obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la cuarta realización del segundo aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S23g, se realiza el proceso del paso 23. En este proceso, la unidad de trasmisor 34 del primer aparato de descifrado 30-1 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del primer aparato de descifrado 30-1 que envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito, se realiza el proceso del paso S24a. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el primer aparato de descifrado 30-1, la función y el proceso para generar la información son innecesarios.
El proceso del paso S28, que sigue al proceso del paso S24d, es el mismo que aquél en la primera realización del segundo aspecto.
En el proceso del paso S22c1, que sigue al proceso del paso S28, la unidad de descifrado 33 del primer aparato de descifrado 30-1 lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S22c1).
Los procesos de los pasos S30 a S34, que siguen al proceso del paso S22c1, son los mismos que aquéllos en la primera realización del segundo aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S34b, la segunda unidad de adquisición de información de lógica de predicado 35 del segundo aparato de descifrado 30-2 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S35g). En este proceso el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En la cuarta realización del segundo aspecto, la información de atributo y la segunda información de predicado son una información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S35g, se realiza el proceso del paso 35. En este proceso, la unidad de trasmisor 34 del segundo aparato de descifrado 30-2 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo y la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del segundo aparato de descifrado 30-2 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S36a, se realiza el proceso de paso S36d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el segundo aparato de descifrado 30-2, la función y el proceso para generar la información son innecesarios, a diferencia de la primera realización del segundo aspecto.
El proceso del paso S40, que sigue al proceso del paso S36d, es el mismo que aquél en la primera realización del segundo aspecto.
En el proceso del paso S34c1, que sigue al proceso del paso S40, la unidad de descifrado 33 del segundo aparato de descifrado 30-2 lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31 para calcular el texto plano M según el algoritmo de cifrado de predicado (paso S34c1).
Las realizaciones descritas anteriormente del segundo aspecto se implementan, por ejemplo, como sistemas de correo electrónico o sistemas de mensajes instantáneos. La Figura 59 muestra la estructura de datos intercambiados. El formato básico del mensaje entero es conforme, por ejemplo, a S/MIME (Extensiones de Correo de Internet Multipropósito Seguras). Una estructura de datos adecuada se da para los datos desde el marcador de posición de inicio de un mensaje de cifrado al marcador de posición final del mensaje cifrado en XML (el Lenguaje de Marcas Extensible) o algún otro lenguaje.
Una serie de datos que conciernen al cifrado de predicado se disponen desde el marcador de posición de inicio de un mensaje cifrado al marcador de posición final del mensaje cifrado.
Un bloque identificador de algoritmo especifica una información que identifica el algoritmo de cifrado de predicado usado para cifrar la clave privada y el algoritmo de cifrado de clave privada usado para cifrar la carga útil del mensaje. Se puede especificar un identificador que indica el algoritmo o la versión de un algoritmo (por ejemplo, PE/Versión X + Camellia (Camellia es una marca comercial registrada).
Un bloque de firma digital especifica la firma digital. Se puede usar un algoritmo de firma conocido. Este elemento se puede emitir dependiendo de la aplicación.
Un bloque de información de parámetro público especifica una información que identifica el parámetro público usado. Se puede especificar un identificador que identifica el parámetro público o los datos del parámetro público.
Un campo de política especifica un identificador que identifica la política usada.
Un campo de esquema especifica un identificador que identifica el esquema usado o los datos del esquema.
Un campo de información de cifrado especifica los datos (información de cifrado) obtenidos cifrando, con el cifrado de predicado, la clave privada usada para cifrar la carga útil del mensaje (texto plano).
Un campo de texto cifrado especifica los datos (texto cifrado) obtenidos cifrando la carga útil del mensaje (texto plano).
Un campo de atributo y un campo de predicado especifican las representaciones de cadena de letras que indican el atributo y el predicado usados para el cifrado, que corresponde al campo de política, respectivamente. Estos elementos se pueden omitir según la aplicación.
Un campo de adjunto puede incluir un fichero adjunto cifrado con RSA, por ejemplo. Este elemento se puede omitir según la aplicación.
En una comunicación segura para mensajería instantánea, por ejemplo, no es necesario reenviar la información de cifrado obtenida cifrando la clave privada. En una mensajería instantánea usual, cuando una clave privada adecuada se obtiene en el primer mensaje instantáneo, el receptor puede almacenar la clave privada para descifrar mensajes instantáneos posteriores. En ese caso, el remitente sólo envía texto cifrado al receptor pero puede no enviar el parámetro público, la política, el esquema, o la información de cifrado en los mensajes instantáneos posteriores. De la misma forma, cuando el algoritmo de cifrado usado no se cambia, el identificador de algoritmo de cifrado se puede omitir en los mensajes instantáneos posteriores.
El cifrado de predicado no depende de una información basada en el receptor, en el cifrado. Por lo tanto, el
remitente (aparato que envía) puede enviar un mensaje cifrado a un receptor desconocido (aparato que recibe). En
otras palabras, el remitente realiza un cifrado sólo una vez incluso si hay una pluralidad de receptores (aparatos que
reciben) (en el sistema criptográfico de clave pública, el cifrado necesita ser realizado N veces). Por lo tanto, el
remitente (aparato que envía) puede enviar un mensaje cifrado a una pluralidad de receptores a un coste bajo.
El receptor (aparato que recibe) puede transferir el mensaje cifrado recibido desde el aparato de cifrado a una
tercera parte (aparato). En el sistema criptográfico de clave pública, el receptor (aparato que recibe) necesita
descifrar el mensaje cifrado, cifrar el mensaje original con la clave pública de la tercera parte (aparato), y enviar el
mensaje cifrado, causando un coste de procesamiento alto. En las realizaciones anteriormente descritas, dado que
el mensaje cifrado recibido desde el aparato de cifrado se puede transferir a la tercera parte (aparato) sin ningún
procesamiento, el mensaje cifrado se transfiere a un coste de procesamiento bajo.
Ejemplos según un tercer aspecto de la presente invención, que se refieren a una tecnología de comunicación
criptográfica que puede operar flexiblemente, que se basa en un cifrado de predicado a ser distribuido se describirán
a continuación mientras que se pone atención a la tecnología de comunicación criptográfica del primer aspecto,
descrita anteriormente. En la tecnología de comunicación criptográfica del tercer aspecto, un contenido (contenido
cifrado) cifrado con un cifrado de predicado se almacena en un servidor de contenidos, y el contenido cifrado se
distribuye a un aparato de descifrado tras la petición.
La descripción de la tecnología de comunicación criptográfica del tercer aspecto y la descripción de la tecnología de
comunicación criptográfica del primer aspecto tienen muchas partes en común sustanciales, pero, para evitar
referirse a descripción de la tecnología de comunicación criptográfica del primer aspecto, la tecnología de
comunicación criptográfica del tercer aspecto se describirá más adelante con explicaciones que se superponen y
figuras que se incluyen tanto como sea posible. Por lo tanto, en ambas descripciones, se usan números de
expresión idénticos, números de referencia idénticos asignados a bloques de función, y números de referencia
idénticos asignados a pasos. Debido a que los contextos son diferentes, no debería haber de riesgo de confusión.
(Primer ejemplo según el tercer aspecto)
Un primer ejemplo según el tercer aspecto de la presente invención se describirá más adelante con referencia a las
Figura 60 a 71.
Como se muestra en la Figura 60, un sistema criptográfico 1 según el tercer aspecto incluye una pluralidad de
aparatos cliente 10 y 30, uno o una pluralidad de aparatos de generación de claves 20, uno o una pluralidad de
servidores de contenidos 60, uno o una pluralidad de aparatos de gestión de información 40 (en lo sucesivo cada
uno llamado un aparato de gestión), aparatos de gestión de par de información de regla de conversión 50 (en lo
sucesivo cada uno llamado un aparato de registro), uno o una pluralidad de aparatos el mantenimiento 80, y uno o
una pluralidad de aparatos de autentificación 90. Estos aparatos pueden comunicar unos con otros a través de una
red de comunicación 5, tal como Internet.
Los aparatos cliente funcionan como aparatos de cifrado para cifrar contenido para generar contenido cifrado o
aparatos de descifrado para descifrar el contenido cifrado, en base a sus funciones de procesamiento. Dependiendo
de sus funciones, los aparatos cliente se llaman aparatos de cifrado 10 o aparatos de descifrado 30. El sistema
criptográfico 1 del tercer aspecto puede incluir aparatos cliente que funcionan solamente como aparatos de cifrado
y/o aparatos cliente que funcionan solamente como aparatos de descifrado.
En el sistema criptográfico 1 del tercer aspecto, el cifrado y el descifrado se realizan usando cifrado de predicado. En
el tercer aspecto de la presente invención, el algoritmo de cifrado de predicado a ser usado no está limitado, y se
puede usar el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo. En el primer
ejemplo del tercer aspecto, se usará un algoritmo de cifrado de predicado de tipo KEM (el mecanismo de
encapsulación de clave).
Un método de comunicación criptográfico usado en el sistema criptográfico 1 se describirá con referencia a las
Figura 61, 62, 63, 64, 66, 69, y 71. Ver las Figura 65, 67, 68, y 70 para la estructura funcional de cada aparato.
<<Proceso de preparación>>
La descripción entera del <<proceso de preparación>> en el primer ejemplo del primer aspecto según la presente
invención se incorpora aquí y se omite una descripción del <<proceso de preparación>>. Ver la Figura 61 para el
proceso de preparación, las Figura 11 a 13 para los pares de esquemas, y la Figura 14 para las listas de políticas.
La descripción del proceso de preparación finaliza aquí.
<<Proceso de cifrado>>
Bajo el control de una unidad de controlador, no mostrada, una unidad de trasmisor 14 del aparato de cifrado 10
envía una consulta de búsqueda al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe
la consulta de búsqueda (paso S14). La unidad de búsqueda del aparato de registro 50 busca algunas o todas las entradas registradas en la unidad de almacenamiento del aparato de registro 50 y elige una entrada (paso S15). La unidad de trasmisor del aparato de registro 50 envía la entrada al aparato de cifrado 10, y una unidad de receptor del aparato de cifrado 10 recibe la entrada (paso S16). Esta entrada incluye la dirección del aparato de generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas que se puede usar por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación de claves. Esta entrada recibida se almacena en una memoria 11 del aparato de cifrado 10.
Cuando el aparato de cifrado 10 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S14 a S16. Se debería señalar que el sistema criptográfico 1 puede no tener el aparato de registro 50.
Una primera unidad de adquisición de información de lógica de predicado 12 del aparato de cifrado 10 lee la información de entrada, la política, y los esquemas desde la memoria 11 y obtiene una información de atributo (en lo sucesivo llamada primera información de atributo) y una información de predicado (en lo sucesivo llamada primera información de predicado) (paso S17a). Los detalles de este proceso se describirán más adelante con referencia a las Figura 12 y 13.
Cuando la lista de esquemas tiene una pluralidad de pares de esquemas, se selecciona un par de esquema en base al uso o similar. El usuario del aparato de cifrado 10 puede seleccionar un par de esquemas y una información de designación de entrada del mismo. Alternativamente, la primera unidad de adquisición de información de lógica de predicado 12 puede seleccionar un par de esquemas según una regla predeterminada.
Según si la información de entrada es información de designación de atributo o información de designación de predicado, se selecciona uno de los esquemas junto con la política. El usuario del aparato de cifrado 10 puede seleccionar la política y uno de los esquemas y una información de designación de entrada del mismo. Alternativamente, la primera unidad de adquisición de información de lógica de predicado 12 puede seleccionar la política y uno de los esquemas según una regla predeterminada. Cuando solamente se prepara un tipo de política en el aparato de generación de claves 20, se selecciona un esquema del par de esquemas según la política. Si el esquema seleccionado no corresponde al tipo de la información de entrada, un par de esquemas necesita ser seleccionado de nuevo de la lista de esquemas o una entrada necesita ser proporcionada por el aparato de registro 50 de nuevo.
La información de entrada puede ser una información introducida por el usuario del aparato de cifrado 10 o una información adquirida por una unidad de adquisición (no mostrada) del aparato de cifrado 10 desde un medio de almacenamiento tal como una tarjeta IC 39.
Entonces, la primera unidad de adquisición de información de lógica de predicado 12 usa el esquema seleccionado a partir del par de esquemas según la política para obtener la primera información de atributo o la primera información de predicado a partir de la información de usuario. Cuando la política es Key_Policy y el esquema seleccionado es un esquema de atributo, se obtiene la primera información de atributo. Cuando la política es Cipher_Text_Policy y el esquema seleccionado es un esquema de predicado, se obtiene la primera información de predicado. La primera información de atributo y la primera información de predicado son información de vector que tiene elementos del campo finito Fq como componentes en el primer ejemplo según el tercer aspecto (ver las Figura 11 a 13). El esquema se usa para extraer o disponer valores de atributos necesarios a partir de la información de usuario.
A continuación, una unidad de cifrado en 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), una base ortogonal B (clave pública sustancial) incluida en el parámetro público leído desde la memoria 11, y un contenido M para obtener una clave común K, una información de cifrado C1, y un texto cifrado C2 (pasos S17b y S17c). Los detalles de estos procesos se describirán más adelante.
Una primera unidad de cifrado 13a genera números aleatorios r y p que son elementos del campo finito Fq según el algoritmo de cifrado de predicado, especifica la clave común K como se muestra por la Expresión (7), descrita anteriormente, y obtiene la información de cifrado C1 según la Expresión (7) (paso S17b), donde H indica, por ejemplo, una función de cálculo de claves. En este ejemplo, se usa la primera información de atributo v. Para usar la
primera información de predicado, v necesita ser sustituido con w en la Expresión (8), descrita anteriormente. En este ejemplo, la información de cifrado C1 corresponde a p usada para generar la clave común K. La información de cifrado C1 puede corresponder a la clave común K.
A continuación, la segunda unidad de cifrado 13b usa la clave común K y el contenido M para obtener el texto cifrado C2 según la Expresión (9), descrita anteriormente (paso S17c). Un método de cifrado Enck que usa la clave privada puede ser un método conocido. Por ejemplo, puede ser el método descrito en la literatura no de patente 1.
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 14 del aparato de cifrado 10
genera un mensaje de cifrado que incluye la información de cifrado C1 y el contenido cifrado C2, junto con el par de
esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la
memoria 11 (paso S17d). La unidad de transmisor 14 del aparato de cifrado 10 entonces envía el mensaje cifrado al
servidor de contenidos 60 y una unidad de receptor del servidor de contenidos 60 recibe el mensaje cifrado (paso
S18). El contenido cifrado se carga mediante un método conocido tal como FTP (protocolo de transferencia de
ficheros) o WebDAV (protocolo de creación y control de versiones distribuido para la WWW).
La descripción del <<proceso de cifrado>> finaliza aquí.
<<Proceso de entrega de contenidos>>
Bajo el control de una unidad de controlador, el servidor de contenidos 60 almacena, en una memoria 61 del mismo,
el mensaje cifrado enviado desde cada aparato de cifrado 10. Con esto, la información de cifrado y el contenido
cifrado incluidos en el mensaje cifrado se registran en el servidor de contenidos 60. El contenido cifrado registrado
en el servidor de contenidos 60 se hace público, por ejemplo, en una página web.
La página web se visualiza en una unidad de visualización, no mostrada, del aparato de descifrado 30 mediante una
unidad de navegador 38 del aparato de descifrado 30 según el protocolo de Internet. El usuario del aparato de
descifrado 30 realiza una operación de entrada para seleccionar un contenido cifrado deseado. En base a la
información de entrada de usuario, la unidad de navegador 38 del aparato de descifrado 30 envía una petición de
adquisición para adquirir el contenido cifrado seleccionado desde el servidor de contenidos 60, a una unidad de
descifrado 33 (en lo sucesivo llamada unidad de retransmisión) del aparato de descifrado 30 (paso S19). Entonces,
la unidad de retransmisión 33 del aparato de descifrado 30 envía esta petición de adquisición al servidor de
contenidos 60, y una unidad de receptor del servidor de contenidos 60 recibe la petición de adquisición (paso S20).
En este sentido, la unidad de navegador 38 y el servidor de contenidos 60 realizan intercambios a través de la
unidad de retransmisión 33 según, por ejemplo, HTTP (protocolo de transferencia de hipertexto) (se puede usar el
ajuste de intermediario de un navegador WWW). Una unidad de búsqueda 62 del servidor de contenidos 60 busca el
mensaje cifrado que incluye el contenido cifrado especificado en la petición de adquisición y lo selecciona (paso
S21). Una unidad de transmisor 64 del servidor de contenidos 60 envía el mensaje cifrado al aparato de descifrado
30 bajo el control de la unidad de búsqueda 62, y una unidad de receptor del aparato de descifrado recibe el
mensaje cifrado (paso S22).
La descripción del <<proceso de entrega de contenidos>> finaliza aquí.
<<Proceso de descifrado>>
Bajo el control de una unidad de controlador, no mostrada, una unidad de transmisor 34 del aparato de descifrado 30
envía una consulta de búsqueda que incluye la dirección del aparato de generación de claves, la dirección que se
incluye en el mensaje cifrado, al aparato de registro 50, y la unidad de recepción del aparato de registro 50 recibe la
consulta de búsqueda (paso S23). La unidad de búsqueda del aparato de registro 50 busca la entrada del aparato
de generación de claves especificada por la dirección y la selecciona (paso S24). La unidad de transmisor del
aparato de registro 50 envía la entrada del resultado de búsqueda al aparato de descifrado 30, y la unidad de
receptor del aparato de descifrado 30 recibe la entrada (paso S25). Esta entrada incluye la dirección del aparato de
generación de claves, el parámetro público del aparato de generación de claves, la lista de políticas se puede usar
por el aparato de generación de claves, y la lista de esquemas que se puede usar por el aparato de generación de
claves. La entrada recibida se almacena en una memoria 31 del aparato de descifrado 30.
Cuando aparato de descifrado 30 tiene el parámetro público, la lista de esquemas, la lista de políticas, y la dirección
de cada aparato de generación de claves 20 por adelantado, se omiten los procesos de los pasos S19 a S21. En
ese caso, el aparato de descifrado 30 busca en la memoria 31 la entrada del aparato de generación de claves que
corresponde a la dirección incluida en el mensaje cifrado y la recupera.
Bajo el control de la unidad de controlador, una unidad de verificación (no mostrada) del aparato de descifrado 30
verifica que el par de esquemas y la política incluidos en el mensaje cifrado están incluidos en la lista de esquemas y
la lista de políticas incluidas en la entrada obtenida desde el aparato de registro 50 (paso S26a). Si esta verificación
falla, el proceso finaliza con un fallo de procesamiento de descifrado (paso S26g).
Cuando la verificación tiene éxito, una unidad de adquisición 32 del aparato de descifrado 30 lee la información de
designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de
descifrado 30 desde un medio de almacenamiento tal como la tarjeta IC 39 (paso S26f). Si se lee la información de
designación de atributo o la información de designación de predicado depende de la política incluida en el mensaje
cifrado. Más específicamente, la información de designación leída corresponde al contenido de la política que
identifica un esquema emparejado con el otro esquema identificado por la política incluido en el mensaje cifrado.
Cuando la política es Cipher_Text_Policy, la unidad de adquisición 32 lee la información de designación de atributo
desde el medio de almacenamiento. Cuando la política es Key_Policy, la unidad de adquisición 32 lee la información
de designación de predicado desde el medio de almacenamiento. La información de designación leída es en lo
sucesivo llamada información de usuario. La unidad de adquisición 32 del aparato de descifrado 30 puede leer desde el aparato de gestión 40 la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado 30, de la misma forma que en <<un proceso de adquisición de información de usuario>> en el aparato de generación de claves 20, descrito más tarde. En el primer ejemplo del tercer aspecto, se puede omitir el proceso del paso S26f. Cuando el aparato de descifrado 30 tiene la información de designación de atributo y la información de designación de predicado que corresponde al usuario por adelantado, o bien la información de designación de atributo o bien la información de designación de predicado sirve como información de usuario, según la política.
A continuación, la unidad de verificación del aparato del descifrado 30 verifica que el aparato de descifrado 30 tiene la clave de descifrado a ser usada para descifrar la información de cifrado incluida en el mensaje de cifrado (paso S26b).
El aparato de descifrado 30 almacena una tabla de claves de descifrado en la memoria 31. En la tabla de claves de descifrado, como se muestra en la Figura 15, por ejemplo, el identificador de cada aparato de generación de claves está asociado con el parámetro público, el par de esquemas, el objetivo de clave de descifrado, la información de designación de predicado, y la clave de descifrado. La unidad de verificación verifica que el aparato de descifrado 30 tiene la clave de descifrado que corresponde al identificador del aparato de generación de claves determinado desde la dirección incluida en el mensaje cifrado, al parámetro público, al par de esquemas, y al objetivo de clave de descifrado (que corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en el mensaje cifrado). Cuando el aparato de descifrado 30 tienen la clave de descifrado, se realiza el proceso del paso S33. Si el aparato de descifrado 30 no tiene la clave de descifrado, se realiza el proceso del paso S27.
La descripción del <<proceso de descifrado>> se detiene temporalmente aquí y se describirá más adelante <<un proceso de generación de claves>>.
Si el aparato de descifrado 30 no tiene la clave de descifrado, la unidad de trasmisor 34 del aparato de descifrado 30 genera, bajo el control de la unidad de controlador, un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, la información de usuario (en su caso), y la información de autentificación, todos estos elementos que se leen desde la memoria 31. La información de autentificación incluye, por ejemplo, el ID del usuario y una contraseña. La unidad de trasmisor 34 del aparato de descifrado 30 que envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave (paso S27). El mensaje de petición de clave recibido se almacena en una memoria 21 del aparato de generación de claves 20.
Bajo el control de una unidad de controlador, una unidad de verificación (no mostrada) del aparato de generación de claves 20 verifica que el par de esquemas y la política incluida en el mensaje de petición de claves se incluyen en la lista de esquemas y la lista de políticas incluidas en la entrada propiedad del aparato de generación de claves 20 (por ejemplo, la entrada generada en el paso S1) y que el parámetro público incluido en el mensaje de petición de clave es idéntico al parámetro público del aparato de generación de claves 20 (paso S28a). Si esta verificación falla, el proceso finaliza con un fallo del proceso de generación de claves (paso S28g). Cuando la información de autentificación se incluye en el mensaje de petición de clave, la información de autentificación también se verifica en el proceso del paso S28a. El aparato de generación de claves 20 almacena una tabla de autentificación en la memoria 21. En la tabla de autentificación, como se muestra la Figura 16, por ejemplo, cada ID de usuario se asocia con una contraseña. La unidad de verificación verifica que el ID de usuario y la contraseña incluidos en el mensaje de petición de clave son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación. Si la verificación falla, se realiza el proceso del paso S28g.
Cuando esta verificación tiene éxito, la unidad de verificación del aparato de generación de claves 20 verifica que el mensaje de petición de clave incluye la información de usuario (paso S28b). Cuando el mensaje de petición de clave incluye la información de usuario, se realiza el proceso del paso S28c. Si el mensaje de petición de clave no incluye la información de usuario, se realiza el proceso del paso S29. Cuando se emplea un método en el cual un mensaje de petición de clave siempre incluye una información de usuario, el proceso del paso S28b y <<un proceso de adquisición de información de usuario>>, descrito más tarde, son innecesarios.
La descripción del <<proceso de generación de claves>> se detiene temporalmente aquí y se describirá más adelante <<el proceso de adquisición de información de usuario>>.
La unidad de transmisor 24 del aparato de generación de claves 20 envía una petición que incluye la política y la información de autentificación (en su caso) incluidas en el mensaje de petición de clave al aparato de gestión 40, y el aparato de gestión 40 recibe la petición (paso S29). La petición recibida se almacena en la memoria del aparato de gestión 40.
El aparato de gestión 40 almacena una tabla de autentificación en la memoria. De la misma forma que en la tabla de autentificación descrita anteriormente, el ID de usuario está asociado con la contraseña en esta tabla de autentificación (ver la Figura 16). Una unidad de verificación (no mostrada) del aparato de gestión 40 verifica que el ID de usuario y la contraseña incluidos en la petición son idénticos al ID de usuario y la contraseña incluidos en la tabla de autentificación.
Cuando esta verificación tiene éxito, una unidad de búsqueda (no mostrada) del aparato de gestión 40 busca una tabla de información de usuario almacenada en la memoria para la información de designación de atributo o la información de designación de predicado según la política incluida en la petición (paso S30). La tabla de información de usuario incluye, por ejemplo, una primera tabla formada de cada ID de usuario, y un nombre de atributo y una información de designación de atributo asociados con el ID de usuario, y una segunda tabla formada del ID de usuario y una información de designación de predicado asociada con el ID de usuario (ver la Figura 17). Si se lee la información de designación de atributo o la información de designación de predicado se determina por la política incluida en la petición. Más específicamente, la información leída corresponde al contenido de la política que identifica un esquema emparejado con el otro esquema identificado por la política incluida en la petición. Cuando la política es Cipher_Text_Policy, la unidad de búsqueda lee la información de designación de atributo que corresponde al ID de usuario incluido en la petición desde la primera tabla. Cuando la política es Key_Policy, la unidad de búsqueda lee la información de designación de predicado que corresponde al ID de usuario incluido en la petición desde la segunda tabla. La información de designación leída es en lo sucesivo llamada información de usuario.
Bajo el control de una unidad de controlador, una unidad de transmisor del aparato de gestión 40 envía la información de usuario al aparato de generación de claves 20, y la unidad de receptor del aparato de generación de claves 20 recibe la información de usuario (paso S31). La información de usuario recibida se almacena en la memoria 21 del aparato de generación de claves 20.
La descripción del <<proceso de adquisición de información de usuario>> finaliza aquí, y se resumirá la descripción del <<proceso de generación de claves>>.
Cuando el aparato de generación de claves 20 ya tiene la información de usuario o recibe la información de usuario a través del proceso de adquisición de información de usuario (paso S31), una segunda unidad de adquisición de información de lógica de predicado 23 del aparato de generación de claves 20 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 21, y obtiene una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (segunda información de predicado) a partir de la información de usuario (paso S28c). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En el primer ejemplo del tercer aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13). El esquema se usa para extraer y disponer los valores de atributos necesarios a partir de la información de entrada.
A continuación, una unidad de generación de claves 25 del aparato de generación de claves 20 genera un numero aleatorio a que es un elemento del campo finito Fq, en base al parámetro público q según el algoritmo de cifrado de predicado, y usa el número aleatorio a , la segunda información de atributo v(p) = (v(p)1, …, v(p)n) o la segunda información de predicado w(p) = (w(p)1, …, w(p)n) leídos desde la memoria 21, y una clave privada B* del aparato de generación de claves para obtener una clave de descifrado R según la Expresión (10), descrita anteriormente (paso S28d). La segunda información de predicado w(p) se usa en este ejemplo debido a que la información de entrada usada en el proceso de cifrado es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, se usa la segunda información de atributo v(p). Por lo tanto, w(p) necesita ser sustituida con v(p) en la Expresión (10), descrita anteriormente.
A continuación, bajo el control de la unidad de controlador, la unidad de transmisor 24 del aparato de generación de claves 20 envía la clave de descifrado R al aparato de descifrado 30, y la unidad de receptor del aparato de descifrado 30 recibe la clave de descifrado R (paso S32). La clave de descifrado recibida R se almacena en la memoria 31 del aparato de descifrado 30.
La descripción del <<proceso de generación de claves>> finaliza aquí, y se resumirá la descripción del <<proceso de descifrado>>.
Cuando el aparato de descifrado 30 ya tiene la clave de descifrado o recibe la clave de descifrado a través del proceso de generación de claves (paso S32), la unidad de retransmisión 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, la información de cifrado C1, y el contenido cifrado C2 (si es necesario) desde la memoria 31, y obtiene la clave común K y el contenido M (si es necesario) (paso S33).
Los detalles del proceso en el paso 33 se describirán más adelante. La unidad de retransmisión 33 incluye una primera unidad de descifrado 33a y una segunda unidad de descifrado 33b para el descifrado.
La primera unidad de descifrado 33a lee el parámetro público, la clave de descifrado R, y la información de cifrado C1 desde la memoria 31, y obtiene e(C1, R) según el algoritmo de cifrado de predicado. Como se muestra en la Expresión (11), descrita anteriormente, el resultado del cálculo depende del resultado del producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) sacadas de la información de cifrado C1 y la clave de descifrado R según una bilinealidad cuando la información de entrada es la información de designación de atributo. Cuando la información de entrada es la información de designación de predicado, v necesita ser sustituida con v(p) y w(p) necesita ser sustituida con w en la Expresión (11), descrita anteriormente. El resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) sacadas de la información de cifrado C1 y la clave de descifrado R según una bilinealidad. En la Expresión (11), e(bi, bi*) se define como se muestra en la Expresión (12), descrita anteriormente,
donde 5 ij es el símbolo de la delta de Kronecker.
Por lo tanto, cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) es cero), se obtiene el resultado del cálculo en la Expresión (11), gT p . Cuando resultado
del cálculo, gT p , se obtiene, la primera unidad de descifrado 33a del aparato de descifrado 30 obtiene la clave común K, que es correcta, según la Expresión (7), descrita anteriormente (paso S26c). Cuando el producto interior canónico de la primera información de atributo v y la segunda información de predicado w(p) no es cero (o cuando el producto interior canónico de la primera información de predicado w y la segunda información de atributo v(p) no es cero), la primera unidad de descifrado 33a obtiene un valor incorrecto según la Expresión (7), descrita anteriormente. En este ejemplo, se supone que la función de cálculo de claves H es común al sistema o está incluida en el parámetro público. La información de cifrado C1 corresponde a la información p usada para generar la clave común K en este ejemplo. Cuando una información de cifrado C1 corresponde a la clave común K, el resultado del cálculo
en la Expresión (11), descrita anteriormente, es la clave común K (o valor incorrecto). En otras palabras, un usuario autorizado del aparato de descifrado 30 tiene una información de designación de predicado que da la segunda información de predicado w(p) que hace el producto interior canónico con la primera información de atributo v cero, o una información de designación de atributo que da la segunda información de atributo v(p) que hace el producto interior canónico con la primera información de predicado w cero.
Entonces, una segunda unidad de descifrado 33b usa la clave común K y el contenido cifrado C2 para calcular el contenido M según la Expresión (13), descrita anteriormente (paso S26d). Un método de descifrado Deck que usa la clave privada corresponde al método de cifrado Enck.
Si el resultado del cálculo en la Expresión (11), descrita anteriormente, es un valor incorrecto, el texto plano M correcto no se puede obtener mediante la Expresión (13), descrita anteriormente.
El aparato de descifrado 30 puede almacenar la clave de descifrado R en la tabla de claves de descifrado. Además, el aparato de descifrado 30 puede almacenar la clave común K en la tabla de claves de descifrado.
El contenido M, obtenido descifrando el contenido cifrado, se envía desde la unidad de retransmisión 33 a la unidad de navegador 38 (paso S34), y la unidad de navegador 38 visualiza el contenido M en una unidad de visualización del aparato de descifrado 30 (paso S35).
La descripción del <<proceso de descifrado>> finaliza aquí.
(Segundo ejemplo según el tercer aspecto) Un segundo ejemplo del tercer aspecto difiere del primer ejemplo del tercer aspecto en que el aparato de descifrado 30 genera la segunda información de atributo o la segunda información de predicado. Debido esta diferencia, el segundo ejemplo del tercer aspecto difiere en varios puntos del primer ejemplo del tercer aspecto. Una descripción de las partes comunes entre el primer y segundo ejemplos del tercer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y se hará una descripción de las diferencias a partir del primer ejemplo del tercer aspecto con referencia a las Figura 72 a 75.
Los procesos de los pasos S1 a S26b son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S26b, una segunda unidad de adquisición de información de lógica de predicado 35 del aparato de descifrado 30 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S27g). En este proceso, el esquema emparejado con el esquema identificado por la política se aplica a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado mediante Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En el segundo ejemplo del tercer aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S27g, se realiza el proceso del paso 27. En este proceso, la unidad de trasmisor 34 del aparato de descifrado 30 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de trasmisor 34 del aparato de descifrado 30 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S28a, se realiza el proceso del paso S28d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el aparato de descifrado 30, la función y el proceso para generar la información son innecesarios, a diferencia del primer ejemplo del tercer aspecto.
Los procesos de los pasos S32 a S35, a ser realizados después del proceso del paso S28d, son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
(Tercer ejemplo según el tercer aspecto) Un tercer ejemplo del tercer aspecto difiere del primer ejemplo del tercer aspecto en que la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el contenido M leídos desde la memoria 11, para obtener un contenido de cifrado C1. En otras palabras, el algoritmo de cifrado de predicado descrito en la literatura no de patente 3, por ejemplo, se usa en el tercer ejemplo del tercer aspecto. Debido a esta diferencia, el tercer ejemplo del tercer aspecto difiere en varios puntos del primer ejemplo del tercer aspecto. Una descripción de las partes comunes entre el primer y tercer ejemplos del tercer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias a partir del primer ejemplo del tercer aspecto se hará con referencia a las Figura 76 a 79.
Los procesos de los pasos S1 a S17 son los mismos que aquéllos en el primer ejemplo del tercer aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado del tercer ejemplo del tercer aspecto. Para información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
En el proceso del paso S17b1, que sigue al proceso del paso S17a, la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el contenido M leídos desde la memoria 11, para obtener el contenido cifrado C1 según el algoritmo de cifrado de predicado (paso S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso 17d. En este proceso, la unidad de transmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluyen el contenido cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d).
Los procesos de los pasos S18 a S32, que siguen al proceso del paso S17d, son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
El proceso del paso S26c1, que sigue al proceso del paso S32, una unidad de descifrado 33c incluida en la unidad de retransmisión 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, y el contenido cifrado C1 desde la memoria 31 para calcular el contenido M según el algoritmo de cifrado de predicado (paso S26c1).
Los procesos de los pasos S34 y S35, que siguen al proceso del paso S26c1, son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
(Cuarto ejemplo según el tercer aspecto) Un cuarto ejemplo del tercer aspecto corresponde a una combinación del segundo ejemplo del tercer aspecto y el tercer ejemplo del tercer aspecto. El cuarto ejemplo del tercer aspecto difiere del primer ejemplo del tercer aspecto en que (1) el aparato de descifrado 30 genera la segunda información de atributo o la segunda información de predicado, y (2) la unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el contenido M leídos desde la memoria 11, para obtener un contenido cifrado C1. Debido a estas diferencias, el cuarto ejemplo del tercer aspecto difiere en varios puntos del primer ejemplo del tercer aspecto. Una descripción de las partes comunes entre el primer y cuarto ejemplos del tercer aspecto se omite (los mismos números de referencia se asignan a los mismos componentes), y una descripción de las diferencias a partir del primer ejemplo del tercer aspecto se hará con referencia a las Figura 80 y 81.
Los procesos de los pasos S1 a S17a son los mismos que aquéllos en el primer ejemplo del tercer aspecto. El parámetro público y alguna otra información se requieren por el algoritmo de cifrado de predicado del cuarto ejemplo del tercer aspecto. Para información específica requerida, ver la literatura no de patente 3, descrita anteriormente, por ejemplo.
El proceso del paso S17b1, que sigue al proceso del paso S17a, una unidad de cifrado 13 del aparato de cifrado 10 usa la primera información de atributo v = (v1, …, vn) o la primera información de predicado w = (w1, …, wn), junto con la clave pública incluida en el parámetro público y el contenido M leídos desde la memoria 11, para obtener un contenido cifrado C1 según el algoritmo de cifrado de predicado (paso S17b1).
Después del proceso del paso S17b1, se realiza el proceso del paso 17d. En este proceso, la unidad de transmisor 14 del aparato de cifrado 10 genera un mensaje cifrado que incluye el contenido cifrado C1, y el par de esquemas, la política, el parámetro público, y la dirección del aparato de generación de claves leídos desde la memoria 31, bajo el control de la unidad de controlador (paso S17d).
Los procesos de los pasos S18 a S26b, que siguen al proceso del paso S17d, son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
Cuando la clave de descifrado no se posee en el proceso del paso S26b, la segunda unidad de adquisición de información de lógica de predicado 35 del aparato de descifrado 30 lee la política, el par de esquemas, el parámetro público, y la información de usuario desde la memoria 31 y obtiene una información de atributo (llamada segunda información de atributo) o una información de predicado (llamada segunda información de predicado) a partir de la información de usuario (paso S27g). En este proceso, se aplica el esquema emparejado con el esquema identificado por la política a la información de usuario. Cuando la política es Cipher_Text_Policy, el esquema (esquema de atributo) emparejado con el esquema (esquema de predicado) identificado por Cipher_Text_Policy se usa para obtener la segunda información de atributo a partir de la información de usuario (información de designación de atributo). Cuando la política es Key_Policy, el esquema (esquema de predicado) emparejado con el esquema (esquema de atributo) identificado por Key_Policy se usa para obtener la segunda información de predicado a partir de la información de usuario (información de designación de predicado). Se debería señalar que el esquema emparejado con el esquema usado en el paso S17a se usa en este proceso. En el cuarto ejemplo del tercer aspecto, la segunda información de atributo y la segunda información de predicado son información de vector que tiene elementos del campo finito Fq como componentes (ver las Figura 11 a 13).
Después del proceso del paso S27g, se realiza el proceso del paso 27. En este proceso, la unidad de transmisor 34 del aparato de descifrado 30 genera un mensaje de petición de clave que incluye el parámetro público, la política, el par de esquemas, y la información de autentificación leídos desde la memoria 31, y la segunda información de atributo o la segunda información de predicado, bajo el control de la unidad de controlador. La unidad de transmisor 34 del aparato de descifrado 30 envía el mensaje de petición de clave al aparato de generación de claves que tiene la dirección leída desde la memoria 31, y la unidad de receptor del aparato de generación de claves 20 recibe el mensaje de petición de clave.
Cuando la verificación tiene éxito en el proceso del paso S28a, se realiza el proceso del paso S28d. Dado que el aparato de generación de claves 20 ha recibido la segunda información de atributo o la segunda información de predicado desde el aparato de descifrado 30, la función y el proceso para generar la información son innecesarios.
El proceso del paso S32, que sigue al proceso del paso S28d, es el mismo que aquél en el primer ejemplo del tercer aspecto.
En el proceso del paso S26c1, que sigue al proceso del paso S32, la unidad de descifrado 33 del aparato de descifrado 30 lee el parámetro público, la clave de descifrado R, y el contenido cifrado C1 desde la memoria 31 para calcular el contenido M según el algoritmo de cifrado de predicado (paso S26c1).
Los procesos de los pasos S34 y S35, a ser realizados después del proceso del paso S26c1, son los mismos que aquéllos en el primer ejemplo del tercer aspecto.
La unidad de retransmisión descifra el contenido cifrado como se entiende claramente a partir de los ejemplos descritos anteriormente del tercer aspecto. Por lo tanto, el descifrado se puede realizar separadamente del protocolo usual de, por ejemplo, un servidor WWW o un navegador WWW, y se puede usar fácilmente un sistema WWW conocido. Dado que la unidad de retransmisión realiza el descifrado incluso cuando el usuario no realiza ninguna operación para descifrar el contenido cifrado, se dota al usuario de gran comodidad.
En los ejemplos descritos anteriormente del tercer aspecto, se puede proporcionar un servidor caché en el camino de comunicación entre el servidor de contenidos 60 y el aparato de descifrado 30 (en ese caso, el contenido cifrado se cachea).
La unidad de retransmisión puede cachear el contenido cifrado antes de que se descifre, a fin de proporcionar comodidad cuando un terminal cliente no está siempre conectado a la red de comunicación 5.
Para evitar la operación de caché de un navegador WWW para el contenido descifrado, una cabecera de control de caché HTTP que deshabilita el cacheo se puede añadir a una respuesta al navegador WWW.
Cuando la pluralidad de usuarios usa el mismo terminal cliente, la unidad de retransmisión puede tener una función de autentificación. En ese caso, se puede usar una autentificación básica y una autentificación implícita en HTTP para un navegador WWW, y una tabla de información de autentificación (ID de usuario y contraseñas) y una función de gestión para añadir, cambiar, y borrar información de autentificación se puede añadir a la unidad de retransmisión.
Se prefiere que los ejemplos descritos anteriormente del tercer aspecto sean aplicados a sistemas de entrega de contenidos. Dado que el cifrado de predicado no está basado en una información que depende del receptor, se prefiere que el cifrado de predicado sea aplicado a un control de acceso del contenido que se puede navegar por personas sin especificar.
La Figura 82 muestra la estructura de intercambio de datos. El formato básico del mensaje entero es conforme, por ejemplo, a S/MIME (Extensiones de Correo Electrónico de Internet Multipropósito Seguras). Una estructura de datos adecuada se da a los datos desde el marcador de posición de inicio de un mensaje cifrado hasta el marcador de posición final del mensaje cifrado en XML (el Lenguaje de Marcas Extensible) o algún otro lenguaje.
Los datos relacionados con el contenido cifrado se llaman bloque de cifrado. Los componentes del bloque de cifrado se describirán más adelante.
Un bloque de identificador de algoritmo especifica una información que identifica el algoritmo de cifrado de predicado usado para cifrar la clave privada y el algoritmo de cifrado de clave privada usado para cifrar el contenido. Se puede especificar un identificador que indica el algoritmo o la versión de un algoritmo (por ejemplo, PE/Versión X + Camellia (Camellia es una marca comercial registrada).
Un bloque de firma digital especifica la firma digital. Se puede usar un algoritmo de firma conocido. Este elemento se puede omitir dependiendo de la aplicación.
Un bloque de información de parámetro público especifica una información que identifica el parámetro público usado. Se puede especificar un identificador que identifica el parámetro público o los datos del parámetro público.
Un campo de política especifica un identificador que identifica la política usada.
Un campo de esquema especifica un identificador que identifica el esquema usado o los datos del esquema.
Un campo de información de cifrado especifica los datos (información de cifrado) obtenidos cifrando, con el cifrado de predicado, la clave privada usada para cifrar el contenido.
Un nombre de fichero de contenido, un tipo de contenido, y un tamaño de fichero de contenido especifican el nombre de fichero del contenido, el tipo de datos (tal como texto o html) del contenido, y el tamaño de fichero de contenido, respectivamente.
Un campo de atributo y un campo de predicado especifican representaciones de cadenas de letras que indican el atributo y el predicado usados para el cifrado, que corresponde al campo de política, respectivamente. Estos elementos se pueden omitir según la aplicación.
El contenido cifrado generado cifrando el contenido se describe en los datos de cifrado.
La estructura de datos básica del contenido se describe con HTML (Lenguaje de Marcas de Hipertexto), y el bloque de cifrado se especifica mediante una instrucción en HTML.
El bloque de cifrado está dando una estructura de datos adecuada con XML (el Lenguaje de Marcas Extensible) u otros lenguajes.
Cuando el contenido cifrado se navega directamente con un navegador, no se visualizan las instrucciones de comentario, y se visualizan otras instrucciones HTML. Por lo tanto, un mensaje que indica que los datos incluyen contenido cifrado o un mensaje de error para un fallo de descifrado se puede describir en las otras instrucciones HTML.
En la anterior descripción, la estructura algebraica S es un campo finito. La estructura algebraica puede ser un anillo finito (anillo de restos enteros). Cuando un algoritmo de cifrado de predicado usa un producto interior, por ejemplo, la primera y segunda información de atributo y la primera y segunda información de predicado son vectores que tienen elementos de S como componentes.
Según el esquema de la estructura algebraica S, la clave pública B es un conjunto de elementos de un módulo V en S, la clave privada B* es un conjunto de elementos de un módulo V* dual del módulo V, y la clave de descifrado R es un elemento del módulo dual V*. Cuando la estructura algebraica S es un campo finito, el módulo V en el campo finito es un denominado espacio de vector en el campo finito. En ese caso, la unidad de cifrado realiza cálculos que incluyen una multiplicación escalar en la que los elementos de la clave pública B se multiplican por los componentes, usados como coeficientes, de la primera información de atributo o una multiplicación escalar en la que los elementos de la clave pública B se multiplican por los componentes, usados como coeficientes, de la primera información de predicado, para obtener una información de cifrado. La unidad de generación de claves realiza cálculos que incluyen una multiplicación escalar en la que los elementos de la clave privada B* se multiplican por los componentes, usados como coeficientes, de la segunda información de predicado o una multiplicación escalar en la que los elementos de la clave privada B* se multiplican por los componentes, usados como coeficientes, de la segunda información de atributo, para obtener la clave de descifrado R.
Las entidades hardware (el aparato cliente, el aparato de generación de claves, el aparato de registro, el aparato de gestión, al aparato de mantenimiento, el aparato de autentificación, y el servidor de contenidos) incluidas en el sistema criptográfico incluyen una unidad de entrada conectable a un teclado o similar, una unidad de salida conectable a una unidad de visualización de cristal líquido o similar, una unidad de comunicación conectable a un aparato de comunicación (tal como un cable de comunicación) con el cual se permiten comunicaciones fuera de las entidades, una CPU (unidad central de proceso) (la cual se puede dotar con una memoria caché y un registro), memorias tales como una RAM y una ROM, un dispositivo almacenamiento externo (disco duro), y un canal principal que se conecta de manera que se pueden intercambiar datos entre la unidad de entrada, la unidad de salida, la unidad de comunicación, la CPU, la RAM, la ROM, y la unidad del almacenamiento externo. Si es necesario, las entidades hardware se pueden dotar con un aparato (unidad) que puede leer y escribir datos a y desde un medio de almacenamiento tal como un CD ROM. Las entidades físicas dotadas con tales recursos hardware incluyen un ordenador de propósito general.
El dispositivo de almacenamiento externo de cada entidad hardware almacena un programa requerido para implementar las funciones anteriormente mencionadas y los datos requeridos en el procesamiento del programa (en lugar del dispositivo de almacenamiento externo, un dispositivo de almacenamiento solamente de lectura, es decir, una ROM, puede almacenar el programa, por ejemplo). Los datos obtenidos mediante el procesamiento del programa y similares se almacenan en una RAM o el dispositivo de almacenamiento externo, si es necesario. En las anteriores descripciones, los dispositivos de almacenamiento, tales como RAM y registros, que almacenan resultados de cálculos y las direcciones de las áreas de almacenamiento de los resultados se llaman sólo memorias.
En cada entidad hardware, el programa almacenado en el dispositivo de almacenamiento externo (o la ROM) y los datos requeridos para el procesamiento del programa se leen en una memoria, cuando se necesita, y se interpretan, ejecutan, o procesan por la CPU, según se requiera. Como resultado, la CPU implementa las funciones predeterminadas (tales como aquellas de la unidad de cifrado, la unidad de descifrado, la unidad de generación de claves, la primera unidad de adquisición de información de lógica de predicado, la segunda unidad de adquisición de información de lógica de predicado, y la unidad de control).
Se requieren cálculos numéricos en teoría de números en algunos casos en operaciones detalladas de las entidades hardware descritas en cada realización. Dado que los cálculos numéricos en teoría de números se realizan de la misma forma que con una tecnología conocida, una descripción detallada de los mismos, que incluye un método de cálculo de los mismos, se omite. (Un software que es capaz de cálculos numéricos en teoría de números e indica el nivel técnico actual de los mismos incluye PARI/GP y KANT/KASH. Para PARI/GP, ver http://pari.math.ubourdeaux.fr/, obtenido el 14 de abril de 2009. Para KANT/KASH, ver http://www.math.tu-berlin.de/algebra/, obtenido el 14 de abril de 2009). La siguiente referencia A describe los cálculos numéricos en teoría de números. Referencia
A: H. Cohen, “A Course in Computional Algebraic Number Theory”, GTM 138, Springer-Verlag, 1993.
La presente invención no está limitada a las realizaciones descritas anteriormente, y se pueden hacer modificaciones adecuadas sin separarse del alcance de la presente invención. Los procesos descritos en las realizaciones anteriores se pueden ejecutar no solamente secuencialmente en el tiempo según el orden de descripción sino también en paralelo o individualmente cuando sea necesario o según las capacidades de procesamiento de los aparatos que ejecutan los procesos.
Cuando las funciones de procesamiento de las entidades hardware descritas en las realizaciones anteriores se implementan por un ordenador, los detalles de procesamiento de las funciones que se deberían proporcionar por las entidades hardware se describen en un programa. Cuando el programa se ejecuta por un ordenador, las funciones de procesamiento de las entidades hardware se implementan en el ordenador.
El programa que contiene los detalles de procesamiento se puede grabar en un medio de almacenamiento legible por ordenador. El medio de almacenamiento legible por ordenador puede ser cualquier tipo de medio, tal como un dispositivo de almacenamiento magnético, un disco óptico, un medio de almacenamiento magneto óptico, y una memoria de semiconductores. Por ejemplo, un dispositivo de disco duro, un disco flexible, una cinta magnética, o similares se pueden usar como dispositivo de grabación magnética; un disco versátil digital (DVD), una memoria de acceso aleatorio DVD (DVD-RAM), una memoria solamente de lectura de disco compacto (CD-ROM), un CD grabable o regrabable (CD-R/RW), o similares se pueden usar como un disco óptico; un disco magneto óptico o similar se puede usar como un medio de almacenamiento magneto óptico; y una memoria solamente de lectura borrable y programable electrónicamente (EEPROM) o similar se puede usar como memoria de semiconductores.
El programa se distribuye mediante venta, transferencia, o préstamo de un medio de grabación portátil tal como un DVD o un CD ROM con el programa grabado en él, por ejemplo. El programa también puede ser distribuido almacenando el programa en una unidad de almacenamiento de un ordenador servidor y transfiriendo el programa desde el ordenador servidor a otro ordenador a través de la red.
Un ordenador que ejecuta este tipo de programa primero almacena el programa grabado en el medio de grabación portátil o el programa transferido desde el ordenador servidor en su unidad de almacenamiento. Entonces, el ordenador lee el programa almacenado en su unidad de almacenamiento y ejecuta el procesamiento según el programa leído. En una forma de ejecución del programa diferente, el ordenador puede leer el programa directamente del medio de grabación portátil y ejecutar el procesamiento según el programa, o el ordenador puede ejecutar el procesamiento según el programa cada vez que el programa recibe el programa transferido desde el ordenador servidor. Alternativamente, el procesamiento se puede ejecutar mediante un denominado servicio de proveedor de servicios de aplicaciones (ASP), en el cual se implementa la función de procesamientos sólo dando una instrucción de ejecución de programa y obteniendo resultados sin transferir el programa desde el ordenador servidor al ordenador. El programa de esta forma incluye una información que se proporciona para uso en el procesamiento por un ordenador y se trata en consecuencia como un programa (algo que no es una instrucción directa al ordenador pero son datos o similares que tienen características que determinan el procesamiento ejecutado por ordenador).
En la descripción dada anteriormente, las entidades hardware se implementan ejecutando el programa predeterminado en el ordenador, pero al menos una parte del procesamiento se puede implementar mediante hardware.
<<Suplemento>>
Un cifrado de predicado que usa productos internos se describirá más adelante en detalle, el cual es un ejemplo de
cifrado de predicado que se puede usar en la presente invención. Los números de expresión se asignan
nuevamente más adelante. Se debería señalar que la misma redacción y símbolos que aquéllos usados en las
descripciones anteriores pueden tener diferentes significados en la siguiente descripción por el bien de la
explicación.
[Definiciones]
Se definirán primero los términos y símbolos a ser usados en la siguiente descripción.
Matriz: una disposición rectangular de elementos de un conjunto en el cual se define un cálculo. No solamente los elementos de un anillo sino también los elementos de un grupo pueden formar una matriz.
(·)T: Matriz traspuesta de · (·)-1: Matriz inversa de ·
/ : AND Lógica
V : OR Lógica
Z: Conjunto de enteros
k: Parámetro de seguridad (k E Z, k > 0)
{0, 1}*: Secuencia binaria que tiene una longitud de bit deseada. Un ejemplo es una secuencia formada de los enteros 0 y 1. No obstante, {0, 1}* no está limitada a secuencias formadas de los enteros 0 y 1. {0, 1}* es un campo finito de orden 2 o su campo extendido.
{0, 1}; : Secuencia binaria que tiene una longitud de bit ; (;EZ, ; >0). Un ejemplo es una secuencia formada de ;
los enteros 0 y 1. No obstante, {0, 1}; no está limitada a secuencias formadas de los enteros 0 y 1. {0, 1}es un
campo finito de orden 2 (cuando ; = 1) o su campo extendido (cuando ; > 1).
(+): Operador OR exclusivo entre secuencias binarias. Por ejemplo, se satisface lo siguiente: 10110011 (+) 11100001 = 01010010.
Fq: campo finito de orden q, donde q es un entero igual o mayor que 1. Por ejemplo, el orden q es un número primo de una potencia de un número primo. En otras palabras, el campo finito Fq es un campo primo o un campo extendido del campo primo, por ejemplo. Cuando el campo finito Fq es un campo primo, se pueden realizar fácilmente los cálculos restantes al módulo q, por ejemplo. Cuando el campo finito Fq es un campo extendido, se pueden realizar fácilmente los cálculos restantes al modulo un polinomio irreducible, por ejemplo. Un método específico para configurar un campo finito Fq se describe, por ejemplo, en la literatura de referencia 1, “ISO/IEC 18033-2: Information technology-Security techniques-Encryption algorithms-Part 2: Asymmetric ciphers”.
0r: Elemento unidad aditivo del campo finito Fq
1F: Elemento unidad multiplicativo del campo finito Fq
5 (i,j): Función delta de Kronecker. Cuando i = j, 5 (i,j) = 1F. Cuando i -j, 5 (i,j) = 0F.
E: Curva elíptica definida en el campo finito Fq. Se define como un punto especial O llamado el punto de infinito más un conjunto de puntos (x, y) que satisface x, y, E Fq y la ecuación de Weierstrass en un sistema de coordenadas afín
2 3 2
y+ a1xy + a3y =x+ a2x + a4x + a6 (1)
donde a1, a2, a3, a4, a6E Fq. Una operación binaria + llamada una adición elíptica se puede definir para cualesquiera dos puntos en la curva elíptica E, y una operación unaria - llamada una inversa elíptica se puede definir para cualquier punto en la curva elíptica E. Es bien conocido que un conjunto finito de puntos racionales en la curva elíptica E forma un grupo con respecto a la adición elíptica. También es bien conocido que una operación llamada una multiplicación escalar elíptica se puede definir con la adición elíptica. Un método de operación específico de operaciones elípticas tal como la adición elíptica en un ordenador es también bien conocido. (Por ejemplo, ver la literatura de referencia 2, “RFC 5091: Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems”, y la literatura de referencia 3, Ian F. Blake, Gadiel Seroussi, y Nigel P. Smart, “Elliptic Curves in Cryptography”, Pearson Education, ISBN 4-89471-431-0).
Un conjunto finito de puntos racionales en la curva elíptica E tiene un subgrupo de orden p (p>1). Cuando el número de elementos en un conjunto finito de puntos racionales en la curva elíptica E es #E y p es un número primo grande que puede dividir #E sin un resto, por ejemplo, un conjunto finito E[p] de p puntos divididos por igual en la curva elíptica E forma un subgrupo de un conjunto finito de puntos racionales en la curva elíptica E. Los p puntos divididos por igual en la curva elíptica E son puntos A en la curva elíptica E que satisfacen la multiplicación escalar elíptica pA = 0.
G1, G2, GT: Grupos cíclicos de orden q. Ejemplos de los grupos cíclicos G1 y G2 incluyen el conjunto finito E[p] de p puntos divididos por igual en la curva elíptica E y subgrupos de los mismos. G1 puede ser igual a G2, o G1 puede no ser igual a G2. Ejemplos del grupo cíclico GT incluyen un conjunto finito que constituye un campo extendido del campo finito Fq. Un ejemplo específico del mismo es un conjunto finito de la raíz de orden p de 1 en la clausura algebraica del campo finito Fq.
Operaciones definidas en los grupos cíclicos G1 y G2 se expresan como sumas, y una operación definida en el grupo cíclico GT se expresa como una multiplicación. Más específicamente, X·0EG1 para XEFq y 0EG1 significa que
la operación definida en el grupo cíclico G1 se aplica a 0EG1 X veces, y 0 1 + 0 2 EG1 para 0 1, 0 2 EG1
significa que la operación definida en el grupo cíclico G1 se aplica a 0 1 EG1 y 0 2 EG1. De la misma forma, X·0EG2 para XEFq y 0EG2 significa que la operación definida en el grupo cíclico G2 se aplica a 0EG2 X
veces, y 0 1 + 0 2 EG2 para 0 1, 0 2 EG2 significa que la operación definida en el grupo cíclico G2 se aplica a 0 1 EG2 y 0 2 EG2. Al contrario, 0XE GT para XEFq y 0EGT significa que la operación definida en el grupo cíclico GT se aplica a 0EGT X veces, y 0 1· 0 2 EGT para 0 1, 0 2 EGT significa que la operación definida en el grupo cíclico GT se aplica a 0 1 EGT y 0 2 EGT. G1n+1: Producto directo de (n +1) grupos críticos de G1 (n > 1) G2n+1: Producto directo de (n +1) grupos críticos de G2 g1, g2, gT: Elementos de generación de los grupos cíclicos G1, G2, GT
V: Espacio de vector (n + 1) dimensional formado del producto directo de los (n + 1) grupos cíclicos G1 V*: Espacio de vector (n + 1) dimensional formado del producto directo de los (n + 1) grupos cíclicos G2
- e:
- Función (función bilineal) para calcular un mapa bilineal no degenerado que mapea el producto directo G1n+1 x G2n+1 del producto directo G1n+1 y el producto directo G2n+1 al grupo cíclico GT. La función bilineal e recibe (n + 1) elementos r L (L = 1, …, n + 1) (n > 1) del grupo cíclico G1 y (n + 1) elementos r L* (L = 1, …, n + 1) del grupo cíclico
G2 y saca un elemento del grupo cíclico GT.
- e:
- G1n+1 x G2n+1 GT (2) La función bilineal e satisface las siguientes características:
n+1 n+1
- -
- Bilinealidad: Las siguiente relación se satisface para todo 1 E G1 , 2 E G2 , y V y KE Fq
e(V · 1, K 2 ) = e( 1, 2) V · K (3)
- -
- No degeneración: Esta función no mapea todo
n+1 n+1
1 E G1 , 2 E G2 (4) sobre el elemento unidad del grupo cíclico GT.
- -
- Computabilidad: Existe un algoritmo para calcular eficientemente
n+1 n+1
e( 1, 2) para todo 1 E G1 , 2 E G2 .
La siguiente función para calcular un mapa bilineal no degenerado que mapea el producto directo G1 x G2 del grupo cíclico G1 y el grupo cíclico G2 al grupo cíclico GT constituye la función bilineal e.
Par: G1 x G2 GT (5)
La función bilineal e recibe un vector (n + 1) dimensional ( r 1, …, r n+1) formado de (n + 1) elementos r L (L = 1, …, n + 1) del grupo cíclico G1 y un vector (n + 1) dimensional ( r 1*, …, r n+1*) formado de (n + 1) elementos r L*(L = 1, …, n + 1) del grupo cíclico G2 y saca un elemento del grupo cíclico GT.
e = L-1 n+1 Par (r L , r L*) (6)
La función bilineal Par recibe un elemento del grupo cíclico G1 y un elemento del grupo cíclico G2 y saca un elemento del grupo cíclico GT, y satisface las siguientes características:
- -
- Bilinealidad: La siguiente relación se satisface para todo 0 1 EG1, 0 2 EG2, y V y KE Fq
Par(V · 0 1, K0 2) = Par( 0 1, 0 2) V · K (7)
- -
- No degeneración: Esta función no mapea todo
0 1 EG1 y 0 2 EG2 (8) sobre el elemento unidad del grupo cíclico GT.
- -
- Computabilidad: Existe un algoritmo para calcular eficientemente
Par( 0 1, 0 2) para todo 0 1 EG1, 0 2 EG2.
Un ejemplo de función bilineal Par es una función para realizar una operación de emparejamiento tal como un emparejamiento de Weil o un emparejamiento de Tate. (Ver la literatura de referencia 4, Alfred. J. Menezes, “Elliptic Curve Public Key Cryptosystems”, Kluwer Academic Publishers, ISBN 0-7923-9368-6, páginas 61-81, por ejemplo).
Una función de emparejamiento modificada e( 0 1 , phi( 0 2 )) ( 0 1 EG1, 0 2 EG2) obtenida combinando una función para realizar una operación de emparejamiento, tal como un emparejamiento de Tate, y una función predeterminada phi según el tipo de la curva elíptica E se pueden usar como la función bilineal Par (ver la literatura de referencia 2, por ejemplo). Como el algoritmo para realizar una operación de emparejamiento en un ordenador, se puede usar el algoritmo de Miller (ver la literatura de referencia 5, V. S. Miller, “Short Programs for Functions on Curves”, 1986, http://crypto.stanford.edu/miller/miller.pdf) o algún otro algoritmo conocido. Los métodos para configurar un grupo cíclico y una curva elíptica usados para realizar eficientemente una operación de emparejamiento han sido conocidos. (Por ejemplo, ver la literatura de referencia 2, descrita anteriormente, la literatura referencia 6, A. Miyaji, M. Nakabayashi, y S. Takano, “New Explicit Conditions of Elliptic Curve Traces for FR Reduction”, IEICE Trans. Fundamentals, Vol. E84-A, Nº 5, páginas 1234-1243, mayo de 2001, la literatura referencia 7, P. S. L. M. Barreto, B. Lynn, M. Scott, “Constructing Elliptic Curves with Prescribed Embedding Degrees”, Actas SCN ‘2002, LNCS 2576, páginas 257-267, Springer-Verlag. 2003 y la literatura referencia 8, R. Dupont, A. Enge, F. Morain, “Building Curves with Arbitrary Small MOV Degree over Finite Prime Fields”, http//eprint.iacr.org/2002/094/.
ai (i = 1, …, n + 1): vector de base (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G1 como elementos. Un ejemplo del vector de base ai es un vector de base (n + 1) dimensional que tiene K 1 · g1 EG1 como un elemento i-dimensional y el elemento unidad (expresado como “0” en la expresión aditiva) del grupo cíclico G1 como los n elementos restantes. En ese caso, cada elemento del vector de base (n + 1) dimensional ai (i = 1, …, n + 1) se pueden enumerar como sigue:
a1 = (K 1 · g1, 0, 0, …, 0)
a2 = (0, K 1 · g1, 0, …, 0) (9)
……
an+1 = (0, 0, 0, …,K 1 · g1)
Aquí, K 1 es una constante formada de los elementos del campo finito Fq distinto del elemento unidad aditivo 0F. Un ejemplo de K 1 EFq es K 1 = 1F. El vector de base ai es una base ortogonal. Cada vector (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G1 como elementos se expresa por una suma lineal de vectores de base (n
+ 1) dimensionales ai (i = 1, …, n + 1). Por lo tanto, los vectores de base (n + 1) dimensionales ai extienden el espacio de vector V, descrito anteriormente.
ai* (i = 1, …, n + 1): vector de base (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G2 como elementos. Un ejemplo del vector de base ai* es un vector de base (n + 1) dimensional que tiene K 2 · g2 EG2 como un elemento i-dimensional y el elemento unidad (expresado como “0” en la expresión aditiva) del grupo cíclico G2 como los n elementos restantes. En ese caso, cada elemento del vector de base (n + 1) dimensional ai* (i = 1, …, n + 1) se pueden enumerar como sigue:
a1*= (K 2 · g2, 0, 0, …, 0)
a2* = (0, K 2 · g2, 0, …, 0) (10)
……
an+1* = (0, 0, 0, …,K 2 · g2)
Aquí, K 2 es una constante formada de los elementos del campo finito Fq distinto del elemento unidad aditivo 0F. Un ejemplo de K 2 EFq es K 2 = 1F. El vector de base ai* es una base ortogonal. Cada vector (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G2 como elementos se expresa por una suma lineal de vectores de base (n
+ 1) dimensionales ai* (i = 1, …, n + 1). Por lo tanto, los vectores de base (n + 1) dimensionales ai* extienden el espacio de vector V*, descrito anteriormente.
El vector de base ai y el vector de base ai* satisfacen la siguiente expresión para los elementos T = K 1 · K 2 del campo finito Fq distinto de 0F.
T5
e(ai, aj* ) = gT (i,j) (11)
Cuando i = j, se satisface la siguiente expresión a partir de las Expresiones (6) y (7).
e(ai, aj* ) = Par(K 1 · g1, K 2 · g2) · Par(0, 0) · … · Par(0, 0) = Par(g1, g2)K 1 K 2 · Par(g1, g2)0’0 · … · Par(g1, g2)0’0 10 = Par(g1, g2)K 1 K 2 = gT T Cuando i -j, e(ai, aj* ) no incluye Par(K 1 · g1, K 2 · g2) y es el producto de Par(0,K 2 · g2) y Par(0, 0). Además, se satisface la siguiente expresión a partir de la Expresión (7).15 Par(g1, 0) = Par(0, g2) = Par(g1, g2)0’0 Por lo tanto, cuando i -j, se satisface la siguiente expresión. e(ai, aj* ) = e(g1, g2)0 = gT0
Especialmente cuando T = K 1 · K 2 = 1F (por ejemplo, K 1 = K 2 = 1F), se satisface la siguiente expresión. 5
e(ai, aj* ) = gT (i,j) (12)
25 Aquí, gT0 es el elemento unidad del grupo cíclico GT, y gT1 = gT es un elemento de generación del grupo cíclico GT. En ese caso, el vector de base ai y el vector de base aj* son una base ortogonal normal dual, y el espacio de vector V y el espacio de vector V* son un espacio de vector dual que constituye un mapeo bilineal (espacio de vector de emparejamiento dual (DPVS)).
30 A: Una matriz de (n + 1) filas por (n + 1) columnas que tiene el vector de base ai (i = 1, …, n + 1) como elementos. Cuando el vector de base ai (i = 1, …, n + 1) se expresa mediante la Expresión (9), por ejemplo, la matriz A es como sigue:
A*: Una matriz de (n + 1) filas por (n + 1) columnas que tiene el vector de base ai* (i = 1, …, n + 1) como elementos. Cuando el vector de base ai* (i = 1, …, n + 1) se expresa mediante la Expresión (10), por ejemplo, la matriz A* es como sigue:
X: Una matriz de (n + 1) filas por (n + 1) columnas que tiene elementos del campo finito Fq como elementos. La matriz X se usa para aplicar una conversión de coordenadas al vector de base ai. Cuando el elemento situado en la fila de orden i y la columna de orden j en la matriz X, Xi,j EFq, la matriz X es como sigue:
Aquí, cada elemento Xi,j de la matriz X se llama un coeficiente de conversión.
X*: La matriz traspuesta de la matriz inversa de la matriz X. X* = (X-1)T. La matriz X* se usa para aplicar una conversión de coordenadas al vector de base ai*. Cuando el elemento situado en la fila de orden i y la columna de orden j en la matriz X*, Xi,j*, EFq, la matriz X* es como sigue:
Aquí, cada elemento Xi,j* de la matriz X* se llama un coeficiente de conversión.
10 En ese caso, cuando una matriz unidad de (n + 1) filas por (n + 1) columnas se llama I, X·(X*)T = I. En otras palabras, para la matriz unidad mostrada más adelante,
15 se satisface la siguiente expresión.
Aquí, los vectores (n + 1) dimensionales se definirán más adelante.
satisface la siguiente expresión a partir de la
El producto interior de los vectores (n + 1) dimensionales
Expresión (18).
bi: vector de base (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G1 como elementos. El vector de base bi se obtiene aplicando conversión de coordenadas a ai (i = 1, …, n + 1) usando la matriz X. Específicamente, el 30 vector de base bi se obtiene mediante el siguiente cálculo
Cuando el vector de base aj (j = 1, …, n + 1) se expresa mediante la Expresión (9), cada elemento del vector de base 35 bi se muestra más adelante.
Cada vector (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G1 como elementos se expresa por una suma lineal de vectores de base (n + 1) dimensionales bi (i = 1, …, n + 1). Por lo tanto, los vectores de base (n +
5 1) dimensionales bi expanden el espacio de vector V, descrito anteriormente.
bi*: vector de base (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G2 como elementos. El vector de base bi* se obtiene aplicando conversión de coordenadas a ai* (i = 1, …, n + 1) usando la matriz X*. Específicamente, el vector de base bi* se obtiene mediante el siguiente cálculo
Cuando el vector de base aj (j = 1, …, n + 1) se expresa mediante la Expresión (10), cada elemento del vector de base bi* se muestra más adelante.
Cada vector (n + 1) dimensional que tiene (n + 1) elementos del grupo cíclico G2 como elementos se expresa por una suma lineal de vectores de base (n + 1) dimensionales bi* (i = 1, …, n + 1). Por lo tanto, los vectores de base (n 20 + 1) dimensionales bi* expanden el espacio de vector V*, descrito anteriormente.
El vector de base bi y el vector de base bi* satisfacen la siguiente expresión para los elementos T = K 1 · K 2 del campo finito Fq distinto de 0F:
T5
25 e(bi, bj* ) = gT (i,j) (26) La siguiente expresión se satisface a partir de las Expresiones (6), (21), (23), y (25).
Especialmente cuando T = K 1 · K 2 = 1F (por ejemplo, K 1 = K 2 = 1F), se satisface la siguiente expresión.
e(bi, bj* ) = gT (i,j) (27)
35 En ese caso, el vector de base bi y el vector de base bi* son la base ortogonal normal dual de un espacio de vector de emparejamiento dual (el espacio de vector V y el espacio de vector V*).
Siempre que se satisface la Expresión (26), se pueden usar los vectores de base ai y ai* distintos de aquéllos mostrados en las Expresiones (9) y (10) como ejemplos, y los vectores de base bi y bi* distintos de aquéllos 40 mostrados en las Expresiones (22) y (24) como ejemplos.
B: Una matriz de (n + 1) filas por (n + 1) columnas que tiene el vector de base bi (i = 1, …, n + 1) como elementos. Se satisface B = X·A. Cuando el vector de base bi se expresa por la Expresión (23), por ejemplo, la matriz B es como sigue:
B*: Una matriz de (n + 1) filas por (n + 1) columnas que tiene el vector de base bi* (i = 1, …, n + 1) como elementos. Se satisface B* = X*·A*. Cuando el vector de base bi* (i = 1, …, n + 1) se expresa por la Expresión (25), por ejemplo, la matriz B* es como sigue:
w : Un vector n dimensional que tiene elementos del campo finito Fq como elementos.
n
w = (w1, …, wn) EFq (30)
El elemento de orden f ( f = 1, …, n) del vector n dimensional.
15 v : Un vector n dimensional que tiene elementos del campo finito Fq como elementos.
n
v = (v1, …, vn) EFq (31)
El elemento de orden f ( f = 1, …, n) del vector n dimensional.
20 Función sin colisiones: Una función h que satisface la siguiente condición con respecto a un parámetro de seguridad k suficientemente grande, o una función considerada como que sirve como tal.
Aquí Pr[·] es la probabilidad del evento [·]; A(h) es un algoritmo de tiempo de polinomio de probabilidad para calcular x e y (x -y) que satisface h(x) = h(y) para una función h; y [ (k) es un polinomio para el parámetro de seguridad k. Una función sin colisiones ejemplo es una función de cálculo de claves tal como la función de cálculo de claves criptográficas descrita en la literatura de referencia 1.
30 Función de inyección: Una función por la cual cada elemento que pertenece a una gama de valores se expresa como la imagen de un elemento solamente en la gama de definición, o una función considerada como tal. Una función de inyección ejemplo es una función de cálculo de claves tal como la función de derivación de claves (KDF) descrita en la literatura de referencia 1.
Función pseudo aleatoria: Una función que pertenece a un subconjunto
cuando un algoritmo de tiempo de
polinomio de probabilidad no puede distinguir entre el subconjunto
y su conjunto entero
, o una función
considerada como tal. El conjunto
{0, 1}; a un elemento del conjunto {0, 1} ; . Un ejemplo de función pseudo aleatoria es una función de cálculo de es un conjunto de todas las funciones que mapean un elemento de un conjunto
40 claves tal como aquélla descrita anteriormente.
H1: Una función sin colisión que recibe dos secuencias binarias ( ( 1,( 2) E{0, 1}k x {0, 1}* y saca dos elementos (I 1, I 2) EFq x Fq del campo finito Fq.
H1: {0, 1}k x {0, 1}* Fq x Fq (33)
Un ejemplo de la función H1 es una función que recibe los bits conectados ( 1 ||( 2 de ( 1 y( 2, realiza cálculos con una función de cálculo de claves descrita en la literatura de referencia 1, una función de conversión de secuencia binaria a entero (conversión de entero/cadena de octetos), y una función de conversión de secuencia binaria a elemento de campo finito (conversión de campo finito/entero y cadena de octetos), y saca dos elementos (I 1, I 2) EFq x Fq del campo finito Fq. Se prefiere que la función H1 sea una función pseudo aleatoria.
H2: Una función sin colisión que recibe un elemento del grupo cíclico GT y una secuencia binarias (; ,( 2) EGTx {0, 1}* y saca un elemento IEFq del campo finito Fq.
H2: GT x {0, 1}* Fq (34)
Un ejemplo de la función H2 es una función que recibe un elemento ;EGT del grupo cíclico GT y una secuencia
binaria ( 2 E{0, 1}*, introduce el elemento ;EGT del grupo cíclico GT a la función de conversión de elemento de campo finito a secuencia binaria (conversión de campo finito/entero y cadena de octetos) descrita en la literatura de referencia 1 para obtener una secuencia binaria, aplica una función de cálculo de claves tal como la función de cálculo de claves criptográficas descrita en la literatura de referencia 1 a los bits conectados de la secuencia binaria
y la secuencia binaria ( 2 E{0, 1}*, realiza una función de conversión de secuencia binaria a elemento de campo finito (conversión de campo finito/entero y cadena de octetos), y saca un elemento IEFq del campo finito Fq. Se prefiere desde un punto de vista de seguridad que la función H2 sea una función pseudo aleatoria.
R: Una función de inyección que recibe un elemento ;EGT del grupo cíclico GT y saca una secuencia binaria (
E{0, 1}k.
R: GT {0, 1}* (35)
Un ejemplo de la función de inyección R es una función que recibe un elemento ;EGT del grupo cíclico GT, realiza cálculos con la función de conversión de elemento de campo finito a secuencia binaria (conversión de campo finito/entero y cadena de octetos) y entonces con una función de cálculo de claves tal como la función KDF (función de derivación de claves) descrita en la literatura de referencia 1, y saca una secuencia binaria (E{0, 1}k. Desde un punto de vista de seguridad, se prefiere que la función R sea una función sin colisión, y es más preferido que la función R sea una función pseudo aleatoria.
Enc: Una función de cifrado de clave privada que indica un proceso de cifrado de un sistema criptográfico de clave privada. Sistemas criptográficos de clave privada ejemplo son Camellia y AES.
Enck(M): Texto cifrado obtenido cifrando un texto plano M mediante la función de cifrado de clave privada Enc con el uso de una clave común K.
Dec: Una función de descifrado de clave privada que indica un proceso de descifrado del sistema criptográfico de clave privada.
Deck(C): Un resultado de descifrado obtenido descifrando un texto cifrado C mediante la función de descifrado de clave privada Dec con el uso de la clave común K.
[Cifrado de predicado de producto interior]
La configuración básica del cifrado de predicado de producto interior se describirá más adelante.
<Cifrado de predicado>
El cifrado de predicado (algunas veces llamado cifrado de función) significa que un texto cifrado se puede descifrar cuando una combinación de una información de atributo y una información de predicado hace verdadera una expresión lógica predeterminada. Una de la información de atributo y la información de predicado se incorpora en el texto cifrado y la otra se incorpora en la información de clave. La configuración de cifrado de predicado convencional se describe, por ejemplo, en la literatura de referencia 9, Jonathan Katz, Amit Sahai y Brent Waters, “Predicate Encryption supporting Disjunctions, Polynomial Equations, and Inner Products”, uno de los cuatro documentos de Eurocrypt 2008 invitados por la Journal of Cryptology.
<Cifrado de predicado de producto interior>
5 El cifrado de predicado de producto interior significa que un texto cifrado se puede descifrar cuando el producto interior de una información de atributo y una información de predicado manejadas como vectores es cero. En el cifrado de predicado de producto interior, un producto interior de cero es equivalente a una expresión lógica de verdadero.
10 [Relación entre expresión lógica y polinomio]
En un cifrado de predicado de producto interior, una expresión lógica formada de una(s) OR lógica(s) y/o una(s) AND lógica(s) se expresa mediante un polinomio.
15 La OR lógica (x = 7 1) V (x = 7 2) de la instrucción 1 que indica que x es 7 1 y la instrucción 2 que indica que x es 7 2 se expresa por el siguiente polinomio.
(x - 7 1)·(x - 7 2) (36)
20 Entonces, las relaciones entre valores verdaderos y los valores de función de la Expresión (36) se muestran en la siguiente tabla.
Tabla 1
- Instrucción 1 (x = 7 1)
- Instrucción 2 (x = 7 2) OR lógica (x = 7 1) V (x = 7 2) Valor de función (x = 7 1)·(x = 7 2)
- Verdadera
- Verdadera Verdadera 0
- Verdadera
- Falsa Verdadera 0
- Falsa
- Verdadera Verdadera 0
- Falsa
- Falsa
- Falsa
- Distinto de 0
Como se entiende a partir de la Tabla 1, cuando la OR lógica (x = 7 1) V (x = 7 2) es verdadera, el valor de función de la Expresión (36) es cero; y cuando la OR lógica (x = 7 1) V (x = 7 2) es falsa, el valor de función de la Expresión
(36) es un valor distinto de cero. En otras palabras, una OR lógica (x = 7 1) V (x = 7 2) verdadera es equivalente a
30 un valor de función de cero en la Expresión (36). Por lo tanto, la OR lógica se puede expresar mediante la Expresión (36).
La AND lógica (x = 7 1) / (x = 7 2) de la instrucción 1 que indica que x es 7 1 y la instrucción 2 que indica que x es 7 2 se expresa por el siguiente polinomio.
donde
y
son números aleatorios. Entonces, las relaciones entre valores verdaderos y los valores de función de la Expresión (37) se muestran en la siguiente tabla.
Tabla 2
- Instrucción 1 (x = 7 1)
- Instrucción 2 (x = 7 2) AND lógica (x = 7 1) / (x = 7 2) Valor de función
- Verdadera
- Verdadera Verdadera 0
- Verdadera
- Falsa Falsa Distinto de 0
- Falsa
- Verdadera Falsa Distinto de 0
- Falsa
- Falsa
- Falsa
- Distinto de 0
45 Como se entiende a partir de la Tabla 2, cuando la AND lógica (x = 7 1) / (x = 7 2) es verdadera, el valor de función de la Expresión (37) es cero; y cuando la AND lógica (x = 7 1) / (x = 7 2) es falsa, el valor de función de la
Expresión (37) es un valor distinto de cero. En otras palabras, una AND lógica (x = 7 1) / (x = 7 2) verdadera es equivalente a un valor de función de cero en la Expresión (37). Por lo tanto, la AND lógica se puede expresar mediante la Expresión (37).
Como se describió anteriormente, usando las Expresiones (36) y (37), una expresión lógica formada de una(s) OR lógica(s) y/o una(s) AND lógica(s) se puede expresar por el polinomio f(x). Un ejemplo se mostrará más adelante.
Expresión lógica: {(x = 7 1) V (x = 7 2) V (x = 7 3)} / (x = 7 4) / (x = 7 5)
(38)
En la Expresión (36), se usa un elemento indeterminado x para expresar la OR lógica. Una pluralidad de elementos indeterminados también se puede usar para expresar una OR lógica. Por ejemplo, se usan dos elementos indeterminados x0 y x1 para expresar la OR lógica (x0 = 7 0) V (x1 = 7 1) de la instrucción 1 que indica que x0 es 7 0
y la instrucción 2 que indica que x1 es 7 1 mediante el siguiente polinomio.
(x0 -7 0) V (x1 -7 1)
También se pueden usar tres o más elementos indeterminados para expresar una OR lógica mediante un polinomio.
En la Expresión (37), se usa un elemento indeterminado x para expresar la AND lógica. Una pluralidad de elementos indeterminados también se puede usar para expresar una AND lógica. Por ejemplo, la AND lógica (x0 = 7 0) / (x1 = 7 1) de la instrucción 1 que indica que x0 es 7 0 y la instrucción 2 que indica que x1 es 7 1 se puede expresar mediante el siguiente polinomio.
También se pueden usar tres o más elementos indeterminados para expresar una AND lógica mediante un polinomio.
Una expresión lógica que incluye una(s) OR lógica(s) y/o una(s) AND lógica(s) se expresa con H (H > 1) tipos de elementos indeterminados x0, …, xH-1 según el polinomio f(x0, …, xH-1). Se supone que una instrucción para cada uno de los elementos indeterminados x0, …, xH-1 es “xh es 7 h”, donde 7 h (h = 0, …, H-1) es una constante determinada
para cada instrucción. Entonces, en el polinomio f(x0, …, xH-1) que indica la expresión lógica, la instrucción que indica que un elemento indeterminado xh es una constante 7 h se expresa mediante el polinomio que indica la diferencia
entre el elemento indeterminado xh y la constante 7 h; cada OR lógica de la instrucción se expresa mediante el producto de los polinomios que indican las instrucciones; y la AND lógica de las instrucciones y las OR lógicas de las instrucciones se expresa mediante una OR lineal de los polinomios que indican las instrucciones o las OR lógicas de las instrucciones. Por ejemplo, se usan cinco elementos independientes x0, …, x4 para expresar una expresión lógica
{(x0 =7 0) V (x1 =7 1) V (x2 =7 2)} / (x3 = 7 3) / (x4 = 7 4)
mediante el siguiente polinomio
[Relación entre polinomio y producto interior] El polinomio f(x0, …, xH-1) que indica una expresión lógica se puede expresar mediante el producto interior de dos vectores n dimensionales. Más específicamente, un vector que tiene los elementos indeterminados de los términos del polinomio f(x0, …, xH-1) como elementos, v = (v1, …, vn) y el vector que tiene los coeficientes de los términos del polinomio f(x0, …, xH-1) como elementos, w = (w1, …, wn) se usan para generar el producto interior del mismo,
f(x0, …, xH-1) = w · v
que es igual al polinomio f(x0, …, xH-1). En otras palabras, si el polinomio f(x0, …, xH-1) que indica una expresión lógica es cero es equivalente a si el producto interior del vector v que tiene los elementos indeterminados de los términos del polinomio f(x0, …, xH-1) como elementos y el vector w que tiene los coeficientes de los términos del polinomio f(x0, …, xH-1) como elementos es cero.
f(x0, …, xH-1) = 0 � w · v = 0
Por ejemplo, un polinomio f(x) = ( 0·x0 + ( 1·x + … +( n-1·xn-1 se puede expresar con dos vectores n dimensionales
w = (w1, …, wn) = (( 0, ...,( n-1) (39) n-1)
v = (v1, …, vn) = (x0, ..., x (40) por el producto interior de los mismos. f(x) = w · v (41) En otras palabras, si el polinomio f(x) que indica una expresión lógica es cero es equivalente a si el producto interior en la Expresión (41) es cero. f(x) = 0 � w · v =0 (42) Cuando un vector que tiene los elementos indeterminados de los términos del polinomio f(x0, …, xH-1) como elementos se expresa por w = (w1, …, wn) y el vector que tiene los coeficientes de los términos del polinomio f(x0, …, xH-1) como elementos se expresa por v = (v1, …, vn)
si el polinomio f(x0, …, xH-1) que indica una expresión lógica es cero es equivalente a si el producto interior del vector
w y el vector v es cero.
Por ejemplo, cuando se usan las siguientes expresiones en lugar de las expresiones (39) y (40),
n-1)
w = (w1, …, wn) = (x0, ..., x (43)
v = (v1, …, vn) = (( 0, ...,( n-1) (44)
si el polinomio f(x) que indica una expresión lógica es cero es equivalente a si el producto interior en la Expresión
(41) es cero.
En el cifrado de predicado del producto interior, se usa uno de los vectores v = (v1, …, vn) y w = (w1, …, wn) como información de atributo y el otro se usa como información de predicado. Una de la información de atributo y la información de predicado se incorpora en el texto cifrado y la otra se incorpora en la información de clave. Por
ejemplo, se usa un vector n dimensional (( 0, ...,( n-1) como información de predicado, otro vector n dimensional (x0, ..., xn-1) se usa como información de atributo, una de la información de atributo y la información de predicado se incorpora en el texto cifrado, y la otra se incorpora en la información de clave. Se supone en la siguiente descripción que un vector n dimensional incorporado en la información de clave es w = (w1, …, wn) y otro vector n dimensional incorporado en el texto cifrado es v = (v1, …, vn). Por ejemplo,
Información de predicado: v = (v1, …, vn) = (( 0, ...,( n-1) n-1)
Información de atributo: w = (w1, …, wn) = (x0, ..., xAlternativamente,
Información de predicado: w = (w1, …, wn) = (( 0, ...,( n-1)
n-1)
Información de atributo: v = (v1, …, vn) = (x0, ..., x
[Configuración básica del cifrado de predicado de producto interior]
La configuración básica de un mecanismo de encapsulación de claves (KEM) que usa cifrado de predicado de producto interior se describirá más adelante. Esta configuración incluye Setup(1k), GenKey(MSK, w ), Enc(PA, v ), y Dec(SKw, C2).
<<Configuración de Setup(1k)>>
Entrada: Parámetro de seguridad k
Salida: Información de clave maestra MSK, parámetro público PK
En un ejemplo de Setup(1k), se usa un parámetro de seguridad k como n, se seleccionan una matriz de (n + 1) filas por (n + 1) columnas A que tiene un vector de base (n + 1) dimensional ai (i = 1, …, n + 1) como elementos, una matriz de (n + 1) filas por (n + 1) columnas A* que tiene un vector de base ai* (i = 1, …, n + 1) como elementos, y unas matrices de (n + 1) filas por (n + 1) columnas X y X* usadas para conversión de coordenadas. Entonces, un vector de base (n + 1) dimensional bi (i = 1, …, n + 1) se calcula a través de conversión de coordenadas mediante la Expresión (22) y un vector de base (n + 1) dimensional bi* (i = 1, …, n + 1) se calcula a través de conversión de coordenadas mediante la Expresión (24). Una matriz de (n + 1) filas por (n + 1) columnas B* que tiene un vector de base bi* (i = 1, …, n + 1) como elementos se saca como información de clave maestra MSK; y unos espacios de vector V y V*, una matriz de (n + 1) filas por (n + 1) columnas B que tiene el vector de base bi (i = 1, …, n + 1) como elementos, el parámetro de seguridad k, el campo finito Fq, la curva elíptica E, los grupos cíclicos G1, G2, y GT, los elementos de generación g1, g2, y gT, la función bilineal e, y otros se sacan como un parámetro público PK.
<<Generación de información de clave GenKey(MSK, w )>>
Entrada: Información de clave maestra MSK, vector w
Salida: Información de clave D* que corresponde al vector w
En un ejemplo de GenKey(MSK, w ), aEFq se selecciona a partir del campo finito Fq. Entonces, la matriz B*, la cual es la información de clave maestra MSK, se usa para generar y sacar una información de clave D* que corresponde al vector w de la siguiente manera.
Es difícil resolver un problema logarítmico discreto en el grupo cíclico G2, es difícil separar y extraer los componentes y bn+1*.
<<Cifrado Enc(PA, v )>>
Entrada: Parámetro público PK, vector v
Salida: Texto cifrado C2, clave común K
En un ejemplo de Enc(PA, v ), se generan una clave común K y un número aleatorio V 1, el cual es un elemento del campo finito Fq. Entonces, el parámetro público PK, tal como la matriz B, un elemento V 2 que corresponde a un valor que incluye la clave común K, en el campo finito Fq, el vector v , y el número aleatorio V 1 se usan para generar el texto cifrado C2 de la siguiente forma.
El texto cifrado C2 y la clave común K se sacan. Un ejemplo de la clave común K es gTTV2EGT, donde V 2 significa V 2. Un ejemplo de T es 1F, como se describió anteriormente. Es difícil resolver un problema logarítmico discreto en el grupo cíclico G1, es difícil separar y extraer los componentes de
y V 2·bn+1.
<<Descifrado y compartición de clave Dec(SKw, C2)>> Entrada: Información de clave D1* que corresponde al vector w , texto cifrado C2 Salida: Clave común K
En un ejemplo de Dec(SKw, C2), el texto cifrado C2 y la información de clave D1* se introducen a la función bilineal e de la Expresión (2). Entonces, a partir de las características de las Expresiones (3) y (26), se satisface lo siguiente.
Cuando el producto interior w · v es cero, la Expresión (47) se puede cambiar a la siguiente.
A partir de este resultado, se genera y se saca la clave común K. Un ejemplo de la clave común K es gT TV2 EGT.
Los vectores de base (n + 1) dimensional se usan para configurar el algoritmo. La dimensión no está limitada a (n +
1). Un vector de base
dimensional bi* (i = 1, …,
se puede usar para configurar el algoritmo, donde es
15 un entero predeterminado igual a dos o más. En ese caso, la Expresión (49) se puede usar en lugar de la Expresión (45), y la Expresión (50) se puede usar en lugar de la Expresión (46), donde V 1 es una constante o una variable (tal como un número aleatorio).
La siguiente expresión se puede usar como la Expresión (45).
25 Además, se puede conmutar la información de entrada. Específicamente, w se sustituye con v en la Expresión (45) y v se sustituye con w en la Expresión (46). La descripción del <<suplemento>> finaliza aquí.
La información descrita en las figuras, tal como nombres, es imaginaria y no tiene relación con personas reales.
30 <Resumen>
Mientras que la presente invención se define enteramente por las reivindicaciones adjuntas, la descripción anterior del primer aspecto se puede resumir con referencia a los siguientes elementos, que son útiles para la comprensión de la invención.
Según un Elemento 1, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una 40 pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo en (lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión 45 para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno de del uno una pluralidad de aparatos de cifrado comprende una primera unidad de información de lógica de predicado adaptada para usar una clase de información 50 de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en una en un par de información de regla de conversión seleccionado a partir del uno o la
pluralidad de pares información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien un información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de generación de claves comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada según información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado; y cada uno del uno o la pluralidad de aparatos de descifrado comprende una unidad de descifrado adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Según un Elemento 2, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno una pluralidad de aparatos de cifrado; uno una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave publica que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de descifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir a una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de descifrado comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de descifrado adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y cada uno del uno o la pluralidad de aparatos de generación de claves comprende una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Según un Elemento 3, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno
- o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de generación de claves comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado; y cada uno del uno o la pluralidad de aparatos de descifrado comprende una unidad de descifrado adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
Según un Elemento 4, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno
- o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de descifrado comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de descifrado adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y cada uno del uno o la pluralidad de aparatos de generación de claves comprende una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Según un Elemento 5, se proporciona un sistema criptográfico según uno de los Elementos 1 y 2, en donde la unidad de cifrado del aparato de cifrado cifra un texto plano con la clave común para obtener un texto cifrado; y una unidad de descifrado del aparato de descifrado usa la clave común obtenida en el proceso de descifrado para aplicar un segundo proceso de descifrado al texto cifrado o usa una clave común generada a partir de la información que se obtiene en el proceso de descifrado y que se usa para generar la clave común para aplicar un segundo proceso de descifrado al texto cifrado.
Según un Elemento 6, se proporciona un sistema criptográfico según uno de los Elementos 1 a 5, en donde la información de designación de atributo y/o la información de designación del predicado que corresponde al usuario se almacena en un medio de almacenamiento; y el aparato de descifrado comprende una unidad de adquisición de información de usuario adaptada para adquirir la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde el medio de almacenamiento.
Según un Elemento 7, se proporciona un sistema criptográfico según uno de los Elementos 1 y 3, en donde la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado, la información que se usa por el aparato de generación de claves, se obtiene desde el aparato de descifrado.
Según un Elemento 8, se proporciona un sistema criptográfico según uno de los Elementos 1 a 6, en donde el sistema criptográfico además comprende uno o una pluralidad de aparatos de gestión de información; cada uno del uno o la pluralidad de aparatos de gestión de información de usuario comprende una unidad de almacenamiento adaptada para almacenar la información de designación de atributo y/o la información de designación de predicado que corresponde al usuario; y el aparato de generación de claves obtiene la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde el aparato de gestión de información de usuario.
Según un Elemento 9, se proporciona un sistema criptográfico según uno de los Elementos 1 a 8, en donde el uno o la pluralidad de pares de información de regla de conversión se determina por adelantado para cada uno del uno la pluralidad de aparatos de generación de claves; el sistema criptográfico además comprende uno o una pluralidad de aparatos de gestión de par de información de regla de conversión; cada uno del uno o la pluralidad de aparatos de gestión de par de información de regla de conversión comprende una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde a cada uno del uno o la pluralidad de aparatos de generación de claves; el aparato de cifrado comprende una unidad de adquisición de par de información de regla de conversión adaptada para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión; y el aparato de descifrado comprende una unidad de adquisición de par de información de regla de conversión adaptada para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión.
Según un Elemento 10, se proporciona un sistema criptográfico según uno de los Elementos 1 a 8, en donde el uno
o la pluralidad de pares de información de regla de conversión se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; cada uno del uno o la pluralidad de aparatos de generación de claves además comprende una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde al aparato de generación de claves; cada uno del uno o la pluralidad de aparatos de cifrado que además comprende una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde a al menos uno del uno o la pluralidad de aparatos de generación de claves; y cada uno del uno o la pluralidad de aparatos de descifrado además comprende una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde a al menos uno del uno o la pluralidad de aparatos de generación de claves.
Según un Elemento 11, se proporciona un sistema criptográfico según uno de los Elementos 1 a 10, en donde si la información de política identifica solamente la información de regla de conversión de atributo, solamente la información de regla de conversión de predicado, o la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Según un Elemento 12, se proporciona un sistema criptográfico según uno de los Elementos 1 a 11, en donde una estructura algebraica K es un anillo finito o un campo finito; la primera y segunda información de atributo y la primera y segunda información de predicado son vectores que tienen elementos de K como componentes; y el proceso de descifrado de la unidad de descifrado recibe la información de cifrado y la clave de descifrado como entradas y realiza un cálculo que depende del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o del producto interior canónico de la primera información de atributo y la segunda información de predicado.
Según un Elemento 13, se proporciona un elemento criptográfico según el Elemento 12, en donde la clave pública es un conjunto de elementos de un módulo V en K; la clave privada es un conjunto de elementos de un módulo V* dual del módulo V; la clave de descifrado es un elemento del módulo dual V*; la unidad de cifrado realiza cálculos que incluyen una multiplicación escalar en la que los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de atributo o una multiplicación escalar en la que los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de predicado, para obtener la información de cifrado; la unidad de generación de claves realiza cálculos que incluyen una multiplicación escalar en la que los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de predicado o una multiplicación escalar en la que los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de atributo, para obtener la clave de descifrado; y el cálculo usado en el proceso de descifrado de la unidad de descifrado tiene bilinealidad y el resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o de la primera información de atributo y la segunda información de predicado, todas las partes de información que se sacan de la información de cifrado y la clave de descifrado según la bilinealidad.
Según un Elemento 14, se proporciona un método de comunicación criptográfico que es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado, en una unidad de cifrado del aparato de cifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de descifrado para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado de cada uno del uno o la pluralidad de aparatos de descifrado.
Según un Elemento 15, se proporciona un método de comunicación criptográfico que es para un sistema criptográfico que usa cifrado de predicado que incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para un convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado, en una unidad de cifrado del aparato de cifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado del aparato de descifrado; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de descifrado para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del aparato de descifrado.
Según un Elemento 16, se proporciona un método de comunicación criptográfico que es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno una pluralidad de aparatos de generación de claves; y uno o una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para tener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado, en una unidad de cifrado del aparato de cifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de descifrado para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del uno o la pluralidad de aparatos de descifrado.
Según un Elemento 17, se proporciona un método de comunicación criptográfico que es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno
o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado, en una unidad de cifrado del aparato de cifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado del aparato de descifrado; un segundo paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de descifrado para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del aparato de descifrado.
Según un Elemento 18, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 y 15, en donde el paso de cifrado comprende un paso de generación de texto cifrado para cifrar también un texto plano con la clave común para obtener un texto cifrado, en la unidad de cifrado; y el paso de descifrado comprende un segundo paso de descifrado para realizar un segundo proceso de descifrado del texto cifrado con la clave común obtenida en el proceso de descifrado o un segundo proceso de descifrado del texto cifrado con una clave común generada a partir de la información usada para generar la clave común y obtenida en el proceso de descifrado, en la unidad de descifrado.
Según un Elemento 19, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 a 18, que comprende un paso de adquisición para adquirir la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde un medio de almacenamiento que almacena la información de designación de atributo y/o la información de designación de predicado que correspondan usuario, en una unidad de adquisición del aparato de descifrado.
Según un Elemento 20, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 y 16, que comprende un paso de transmisión de información para transmitir la información de designación de atributo
o la información de designación de predicado que corresponde al usuario del aparato de descifrado, al aparato de generación de claves, en una unidad de transmisor del aparato de descifrado; y un paso de recepción de información de usuario para recibir la información de designación de atributo o la información de designación de predicado que corresponde al usuario desde el aparato de descifrado, en una unidad de receptor del aparato de generación de claves.
Según un Elemento 21, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 a 18, en donde el sistema criptográfico comprende uno o una pluralidad de aparatos de gestión de información de usuario dotados con una unidad de almacenamiento adaptada para almacenar la información de designación de atributo y/o la información de designación de predicado que corresponde al usuario; y el método de comunicación criptográfico comprende un paso de adquisición de información de usuario para adquirir la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde el aparato de gestión información de usuario, en una unidad de adquisición de información de usuario del aparato de generación de claves.
Según un Elemento 22, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 a 21, en donde el uno o la pluralidad de pares de información de regla de conversión se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; el sistema criptográfico comprende uno
o una pluralidad de aparatos de gestión de par de información de regla de conversión dotados con una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde a cada uno del uno o la pluralidad de aparatos de generación de claves; y el método de comunicación criptográfico comprende: un paso de adquisición de par de información de regla de conversión para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión, en una unidad de adquisición de par de información de regla de conversión del aparato de cifrado; y un paso de adquisición de par de información de regla de conversión para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión, en una unidad de adquisición de par de información de regla de conversión del aparato de descifrado.
Según un Elemento 23, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 a 22, en donde si la información de política identifica solamente la información de regla de conversión de atributo, solamente la información de regla de conversión de predicado, o la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves.
Según un Elemento 24, se proporciona un método de comunicación criptográfico según uno de los Elementos 14 a 23, en donde una estructura algebraica K es un anillo finito o un campo finito; la primera y segunda información de atributo y la primera y segunda información de predicado son vectores que tienen elementos de K como componentes; y en el paso de descifrado, la información de cifrado y la clave de descifrado sirven como entradas y se realiza un cálculo dependiendo del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o del producto interior canónico de la primera información de atributo y la segunda información de predicado, en la unidad de descifrado.
Según un Elemento 25, se proporciona un método de comunicación criptográfico según el Elemento 24, en donde la clave pública es un conjunto de elementos de un módulo V en K; la clave privada es un conjunto de elementos de un módulo V* dual del módulo V; la clave de descifrado es un elemento del módulo dual V*; en el paso de cifrado, los cálculos que incluyen una multiplicación escalar en la que los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de atributo o una multiplicación escalar en la que los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de predicado, se realizan para obtener la información de cifrado, en la unidad de cifrado; en el paso de generación de claves, los cálculos que incluyen una multiplicación escalar en la que los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de predicado o una multiplicación escalar en la que los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de atributo, se realizan para obtener la clave de descifrado, en la unidad de generación de claves; y el cálculo usado en el proceso de descifrado de la unidad de descifrado tiene bilinealidad y el resultado del cálculo depende del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o de la primera información de atributo y la segunda información de predicado, todas las partes de la información que se sacan a partir de la información de cifrado y la clave de descifrado según la bilinealidad.
Según un Elemento 26, se proporciona un aparato de cifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de cifrado comprende: una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para tener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a la información usada para generar la clave común, según el algoritmo de cifrado de predicado.
Según un Elemento 27, se proporciona un aparato de cifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de cifrado comprende: una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado.
Según un Elemento 28, se proporciona un aparato de generación de claves el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de generación de claves comprende: una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar una información de cifrado.
Según un Elemento 29, se proporciona un aparato de generación de claves el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de generación de claves comprende una unidad de generación de claves adaptada para usar la clave privada del aparato de generación de claves, junto con una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) generada a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado usando la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política, para generar una clave de descifrado usada para descifrar una información de cifrado.
Según un Elemento 30, se proporciona un aparato de descifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determinan por adelantado para cada uno del uno o una pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en los sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de descifrado comprende una unidad de descifrado adaptada para usar una clave de cifrado generada por el aparato de generación de claves para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado, según el algoritmo de cifrado de predicado.
Según un Elemento 31, se proporciona un aparato de descifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y uno o una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de descifrado comprende: una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de descifrado adaptada para usar una clave de descifrado generada por el aparato de generación de claves para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado, según el algoritmo de cifrado de predicado.
Según un Elemento 32, se proporciona un programa para hacer una función de ordenador como un aparato de cifrado según uno de los Elementos 26 y 27.
Según un Elemento 33, se proporciona un programa para hacer una función de ordenador como un aparato de generación de claves según uno de los Elementos 28 y 29.
Según un Elemento 34, se proporciona un programa para hacer una función de ordenador como un aparato de descifrado según uno de los Elementos 30 y 31.
Según un Elemento 35, se proporciona un medio de almacenamiento legible por ordenador que tiene almacenado en el mismo al menos un programa según el Elemento 32, un programa según el Elemento 33, y un programa según el Elemento 34.
Mientras que la presente invención se define enteramente mediante las reivindicaciones adjuntas, la descripción anterior del segundo aspecto se puede resumir mediante referencia a los siguientes elementos, los cuales son útiles para comprender la invención. En la siguiente descripción, en los números de elementos comienzan de nuevo en uno.
Según un Elemento 1, se proporciona un método de comunicación criptográfico el cual es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y uno o una pluralidad aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno
o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para tener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado en una unidad de cifrado del aparato de cifrado; un paso de transmisión de información de cifrado para transmitir la información de cifrado a un primer aparato de descifrado, en una unidad de transmisor del aparato de cifrado; un paso de recepción de información de cifrado para recibir la información de cifrado desde el aparato de cifrado, en una unidad de recepción del primer aparato de descifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del primer aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una primera clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la primera clave de descifrado al primer aparato de descifrado, en una unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la primera clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del primer aparato de descifrado; un paso de descifrado para usar la primera clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del primer aparato de descifrado; un paso de transferencia para transferir la información de cifrado a un segundo aparato de descifrado, distinto del primer aparato de descifrado, en una unidad de transferencia del primer aparato de descifrado; un paso de recepción para recibir la información de cifrado desde el primer aparato de descifrado, en una unidad de recepción del segundo aparato de descifrado; un tercer paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada tercera información de atributo) o una información de predicado (en lo sucesivo llamada tercera información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del segundo aparato de descifrado, en la segunda unidad de adquisición de información de lógica de predicado del aparato de generación de claves; un paso de generación de claves para usar la tercera información de atributo o la tercera información de predicado, junto con la clave privada del aparato de generación de claves, para generar una segunda clave de descifrado usada para descifrar la información de cifrado, en la unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la segunda clave de descifrado al segundo aparato de descifrado, en la unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la segunda clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del segundo aparato de descifrado; y un paso de descifrado para usar la segunda clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del segundo aparato de descifrado.
Según un Elemento 2, se proporciona un método de comunicación criptográfico el cual es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno
o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado en una unidad de cifrado del aparato de cifrado; un paso de transmisión de información de cifrado para transmitir la información de cifrado a un primer aparato de descifrado, en una unidad de transmisor del aparato de cifrado; un paso de recepción de información de cifrado para recibir la información de cifrado desde el aparato de cifrado, en una unidad de recepción del primer aparato de descifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del primer aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado del primer aparato de descifrado; un paso de transmisión de información de lógica para transmitir la segunda información de atributo o la segunda información de predicado al aparato de generación de claves, en una unidad de transmisor del primer aparato de descifrado; un paso de recepción de información de lógica para recibir la segunda información de atributo o la segunda información de predicado desde el primer aparato de descifrado, en una unidad de receptor del aparato de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una primera clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la primera clave de descifrado al primer aparato de descifrado, en una unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la primera clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del primer aparato de descifrado; un paso de descifrado para usar la primera clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del primer aparato de descifrado; un paso de transferencia para transferir la información de cifrado a un segundo aparato de descifrado, distinto del primer aparato de descifrado, en una unidad de transferencia del primer aparato de descifrado; un paso de recepción para recibir la información de cifrado desde el primer aparato de descifrado, en una unidad de recepción del segundo aparato de descifrado; un tercer paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada tercera información de atributo) o una información de predicado (en lo sucesivo llamada tercera información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del segundo aparato de descifrado, en la segunda unidad de adquisición de información de lógica de predicado del segundo aparato de descifrado; un paso de transmisión de información de lógica para transmitir la tercera información de atributo o la tercera información de predicado al aparato de generación de claves, en una unidad de transmisor del segundo aparato de descifrado; un paso de recepción de información de lógica para recibir la tercera información de atributo o la tercera información de predicado desde el segundo aparato de descifrado, en la unidad de receptor del aparato de generación de claves; un paso de generación de claves para usar la tercera información de atributo o la tercera información de predicado, junto con la clave privada del aparato de generación de claves, para generar una segunda clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la segunda clave de descifrado al segundo aparato de descifrado, en la unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la segunda clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del segundo aparato de descifrado; y un paso de descifrado para usar la segunda clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del segundo aparato de descifrado.
Según un tercer Elemento 3, se proporciona un método de comunicación criptográfico el cual es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno
o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado en una unidad de cifrado del aparato de cifrado; un paso de transmisión de información de cifrado para transmitir la información de cifrado a un primer aparato de descifrado, en una unidad de transmisor del aparato de cifrado; un paso de recepción de información de cifrado para recibir la información de cifrado desde el aparato de cifrado, en una unidad de recepción del primer aparato de descifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del primer aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una primera clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la primera clave de descifrado al primer aparato de descifrado, en una unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la primera clave de descifrado desde el aparato de generación de claves, en una unidad de recepción del primer aparato de descifrado; un paso de descifrado para usar la primera clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del primer aparato de descifrado; un paso de transferencia para transmitir la información de cifrado a un segundo aparato de descifrado, distinto del primer aparato de descifrado, en una unidad de transferencia del primer aparato de descifrado; un paso de recepción para recibir la información de cifrado desde el primer aparato de descifrado, en una unidad de recepción del segundo aparato de descifrado; un tercer paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada tercera información de atributo) o una información de predicado (en lo sucesivo llamada tercera información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del segundo aparato de descifrado, en la segunda unidad de adquisición de información de lógica de predicado del aparato de generación de claves; un paso de generación de claves para usar la tercera información de atributo o la tercera información de predicado junto con la clave privada del aparato de generación de claves, para generar una segunda clave de descifrado usada para descifrar la información de cifrado, en la unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la segunda clave de descifrado al segundo aparato de descifrado, en la unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la segunda clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del segundo aparato de descifrado; y un paso de descifrado para usar la segunda clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del segundo aparato de descifrado.
Según un Elemento 4, se proporciona un método de comunicación criptográfico el cual es para un sistema criptográfico que usa cifrado de predicado e incluye al menos uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno una pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado. El método de comunicación criptográfico comprende: un primer paso de adquisición de información de lógica de predicado para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado de cada uno del uno o la pluralidad de aparatos de cifrado; un paso de cifrado para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado en una unidad de cifrado del aparato de cifrado; un paso de transmisión de información de cifrado para transmitir la información de cifrado a un primer aparato de descifrado, en una unidad de transmisor del aparato de cifrado; un paso de recepción de información de cifrado para recibir la información de cifrado desde el aparato de cifrado, en una unidad de recepción del primer aparato de descifrado; un segundo paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del primer aparato de descifrado, en una segunda unidad de adquisición de información de lógica de predicado del primer aparato de descifrado; un paso de transmisión de información de lógica para transmitir la segunda información de atributo o la segunda información de predicado al aparato de generación de claves, en una unidad de transmisor del primer aparato de descifrado; un paso de recepción de información de lógica para recibir la segunda información de atributo o la segunda información de predicado desde el primer aparato de descifrado, en una unidad de receptor del aparato de generación de claves; un paso de generación de claves para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una primera clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la primera clave de descifrado al primer aparato de descifrado, en una unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la primera clave de descifrado desde el aparato de generación de claves, en la unidad de recepción del primer aparato de descifrado; un paso de descifrado para usar la primera clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del primer aparato de descifrado; un paso de transferencia para transferir la información de cifrado a un segundo aparato de descifrado, distinto del primer aparato de descifrado, en una unidad de transferencia del primer aparato de descifrado; un paso de recepción para recibir la información de cifrado desde el primer aparato de descifrado, en una unidad de recepción del segundo aparato de descifrado; un tercer paso de adquisición de información de lógica de predicado para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada tercera información de atributo) o una información de predicado (en lo sucesivo llamada tercera información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del segundo aparato de descifrado, en la segunda unidad de adquisición de información de lógica de predicado del segundo aparato de descifrado; un paso de transmisión de información de lógica para transmitir la tercera información de atributo o la tercera información de predicado al aparato de generación de claves, en una unidad de transmisor del segundo aparato de descifrado; un paso de recepción de información de lógica para recibir la tercera información de atributo o la tercera información de predicado desde el segundo aparato de descifrado, en la unidad de receptor del aparato de generación de claves; un paso de generación de clave para usar la tercera información de atributo o la tercera información de predicado, junto con la clave privada del aparato de generación de claves, para generar una segunda clave de descifrado usada para descifrar la información de cifrado, en la unidad de generación de claves del aparato de generación de claves; y un paso de transmisión de clave de descifrado para transmitir la segunda clave de descifrado al segundo aparato de descifrado, en una unidad de transmisor del aparato de generación de claves; un paso de recepción de clave de descifrado para recibir la segunda clave de descifrado desde el aparato de generación de claves, en una unidad de recepción del segundo aparato de descifrado; y un paso de descifrado para usar la segunda clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado del segundo aparato de descifrado.
Según un Elemento 5, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 y 2, en donde el paso de cifrado comprende un paso de generación de texto cifrado para cifrar también un texto plano con la clave común para obtener un texto cifrado, en la unidad de cifrado; y el paso de descifrado comprende un segundo paso de descifrado para realizar un segundo proceso de descifrado del texto cifrado con la clave común obtenida en el proceso de descifrado o un segundo proceso de descifrado del texto cifrado con una clave común generada a partir de la información usada para generar la clave común y obtenida en el proceso de descifrado, en la unidad de descifrado.
Según un Elemento 6, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 a 5, que comprende un paso de adquisición para adquirir la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde un medio de almacenamiento que almacena la información de designación de atributo y/o la información de designación de predicado que corresponde al usuario, en una unidad de adquisición del aparato de descifrado.
Según un Elemento 7, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 y 3, el cual comprende un paso de transmisión de información de usuario para transmitir la información de designación de atributo o la información de designación de predicado que corresponde al usuario del aparato de descifrado, al aparato de generación de claves, en una unidad de transmisor del aparato de descifrado; y un paso de recepción de información de usuario para recibir la información de designación de atributo o la información de designación de predicado que corresponde al usuario desde el aparato de descifrado, en una unidad de receptor del aparato de generación de claves.
Según un Elemento 8, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 a 6, en donde el sistema criptográfico comprende uno o una pluralidad de aparatos de gestión de información de usuario dotados con una unidad de almacenamiento adaptada para almacenar la información de designación de atributo y/o la información de designación de predicado que corresponde al usuario; y el método de comunicación criptográfico comprende un paso de adquisición de información de usuario para adquirir la información de designación de atributo
o la información de designación de predicado que corresponde al usuario del aparato de descifrado desde el aparato de gestión de información de usuario, en una unidad de adquisición de información de usuario del aparato de generación de claves.
Según un Elemento 9, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 a 8, en donde el uno o la pluralidad de pares de información de regla de conversión se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; el sistema criptográfico comprende uno o una pluralidad de aparatos de gestión de par de información de regla de conversión dotados con una unidad de almacenamiento adaptada para almacenar el par de información de regla de conversión que corresponde a cada uno del uno o la pluralidad de aparatos de generación de claves; y el método de comunicación criptográfico comprende: un paso de adquisición de par de información de regla de conversión para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión, en una unidad de adquisición de par de información de regla de conversión del aparato de cifrado; y un paso de adquisición de par de información de regla de conversión para adquirir el par de información de regla de conversión desde el aparato de gestión de par de información de regla de conversión, en una unidad de adquisición de par de información de regla de conversión del aparato de descifrado.
Según un Elemento 10, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 a 9, en donde si la información de política identifica solamente la información de regla de conversión de atributo, solamente la información de regla de conversión de predicado, o la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves
Según un Elemento 11, se proporciona un método de comunicación criptográfico según uno de los Elementos 1 a 10, en donde una estructura algebraica K es un anillo finito o un campo finito; la primera y segunda información de atributo y la primera y segunda información de predicado son vectores que tienen elementos de K como componentes; y en el paso de descifrado, la información de cifrado y la clave de descifrado sirven como entradas y se realiza un cálculo que depende del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o del producto interior canónico de la primera información de atributo y la segunda información de predicado, en la unidad de descifrado.
Según un Elemento 12, se proporciona un método de comunicación criptográfico según el Elemento 11, en donde la clave pública es un conjunto de elementos de un módulo V en K; la clave privada es un conjunto de elementos de un módulo V* dual del módulo V; la clave de descifrado es un elemento del módulo dual V*; en el paso de cifrado, los cálculos que incluyen una multiplicación escalar en los cuales los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de atributo o una multiplicación escalar en la que los elementos de la clave pública se multiplican por los componentes, usados como coeficientes, de la primera información de predicado, se realizan para obtener la información de cifrado, en la unidad de cifrado; en el paso de generación de claves, los cálculos que incluyen una multiplicación escalar en la cual los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de predicado o una multiplicación escalar en la cual los elementos de la clave privada se multiplican por los componentes, usados como coeficientes, de la segunda información de atributo, se realizan para obtener la clave de descifrado, en la unidad de generación de claves; y el cálculo usado en el proceso de descifrado de la unidad de descifrado tiene bilinealidad y el resultado de cálculo depende del resultado del producto interior canónico de la primera información de predicado y la segunda información de atributo, o de la primera información de atributo y la segunda información de predicado, todas las partes de la información que se sacan a partir de la información de cifrado y la clave de descifrado según la bilinealidad.
Según un Elemento 13, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno una pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de conversión de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de generación de claves comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; y una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado; y el aparato de descifrado comprende una unidad de descifrado adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado.
Según un Elemento 14, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves, uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o una pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves, para obtener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de información de predicado; el aparato de descifrado comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; una unidad de descifrado adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado; y cada uno del uno o la pluralidad de aparatos de generación de claves comprende una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Según un Elemento 15, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida en al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado; cada uno del uno o la pluralidad de aparatos de generación de claves comprende una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde un usuario del aparato de descifrado; y una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar una clave de descifrado usada para descifrar la información de cifrado; y el aparato de descifrado comprende una unidad de descifrado adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado.
Según un Elemento 16, un sistema criptográfico que usa cifrado de predicado comprende al menos: uno o una pluralidad de aparatos de cifrado; uno o una pluralidad de aparatos de generación de claves; y una pluralidad de aparatos de descifrado; en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; cada uno del uno o la pluralidad de aparatos de cifrado comprende una primera unidad de adquisición de información de lógica de predicado adaptada para usar una clase de información de regla de conversión de la información de regla de conversión de atributo y la información de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una clase de información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo (en lo sucesivo llamada primera información de atributo) o una información de predicado (en lo sucesivo llamada primera información de predicado) a partir de la información de entrada; y una unidad de cifrado adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado; el aparato de descifrado comprende una segunda unidad de adquisición de información de lógica de predicado para usar en la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; una unidad de descifrado adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado; y cada uno del uno o la pluralidad de aparatos de generación de claves comprende una unidad de generación de claves adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves, para generar la clave de descifrado usada para descifrar la información de cifrado.
Según un Elemento 17, se proporciona un sistema criptográfico según uno de los Elementos 13 y 14, en donde la unidad de cifrado del aparato de cifrado cifra un texto plano con la clave común para tener un texto cifrado; y la unidad de descifrado del aparato de descifrado usa la clave común obtenida en el proceso de descifrado para aplicar un segundo proceso de descifrado al texto cifrado o usa una clave común generada a partir de la información que se obtiene en el proceso de descifrado y que se usa para generar la clave común para aplicar un segundo proceso de descifrado al texto cifrado.
Según un Elemento 18, se proporciona un aparato de descifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad aparatos de generación de claves, y una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par de los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo de cifrado de predicado y una información (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de descifrado comprende: una unidad de descifrado adaptada para usar una clave de descifrado generada por el aparato de generación de claves para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado, según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado.
Según un Elemento 19, se proporciona un aparato de descifrado el cual se usa en un sistema criptográfico que usa cifrado de predicado e incluye, al menos, uno o una pluralidad de aparatos de cifrado, uno o una pluralidad de aparatos de generación de claves, y una pluralidad de aparatos de descifrado, en el sistema criptográfico, una clave privada y una clave pública que corresponde a la clave privada que se determina por adelantado para cada uno del uno o la pluralidad de aparatos de generación de claves; uno o una pluralidad de pares de información de regla de conversión que se determina por adelantado, cada par los cuales tiene una información (en lo sucesivo llamada información de regla de conversión de atributo) que prescribe una regla de conversión para convertir una información que designa un atributo (en lo sucesivo llamada información de designación de atributo) a una información de atributo usada en un algoritmo e información de cifrado de predicado (en lo sucesivo llamada información de regla de conversión de predicado) que prescribe una regla de conversión para convertir una información que designa un predicado (en lo sucesivo llamada información de designación de predicado) a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado que se determina por adelantado. El aparato de descifrado comprende: una segunda unidad de adquisición de información de lógica de predicado adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo (en lo sucesivo llamada segunda información de atributo) o una información de predicado (en lo sucesivo llamada segunda información de predicado) a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado; una unidad de descifrado adaptada para usar una clave de descifrado generada por el aparato de generación de claves para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado, según el algoritmo de cifrado de predicado; y una unidad de transferencia adaptada para transferir la información de cifrado a al menos un aparato de descifrado distinto del aparato de descifrado.
Según un Elemento 20, se proporciona un programa para hacer una función de ordenador como un aparato de descifrado según uno de los Elementos 18 y 19.
Según un Elemento 21, se proporciona un medio de almacenamiento legible por ordenador que tiene almacenado en el mismo un programa según el Elemento 20.
Claims (20)
- REIVINDICACIONES1. Un sistema criptográfico (1 – Figura 1) que usa un cifrado de predicado, que comprende al menos:un aparato de cifrado (10 – Figura 5); un aparato de generación de claves (20 – Figura 9); y un aparato de descifrado (30 – Figura 7); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 5) comprende:una primera unidad de adquisición de información de lógica de predicado (12 – Figura 5) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado (10 – Figura 5) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada; y una unidad de cifrado (13 – Figura 5) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 9), para obtener una clave común, y una información de cifrado que corresponde a la clave común o corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado;el aparato de generación de claves (20 – Figura 9) comprende:una segunda unidad de adquisición de información de lógica de predicado (23 – Figura 9) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 7); y una unidad de generación de claves (25 – Figura 9) adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 9), para generar una clave de descifrado usada para descifrar la información de cifrado; y el aparato de descifrado (30 – Figura 7) comprende una unidad de descifrado (33 – Figura 7) adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
- 2. Un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado, que comprende al menos:un aparato de cifrado (10 – Figura 5); un aparato de generación de claves (20 – Figura 20); y un aparato de descifrado (30 – Figura 18); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 20); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo einformación de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 5) comprende:una primera unidad de adquisición de información de lógica de predicado (12 – Figura 5) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, el uno de una información de regla de conversión que se selecciona junto con una información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 5) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada; y una unidad de cifrado (13 – Figura 5) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 20), para obtener una clave común, y la información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado;el aparato de descifrado (30 – Figura 18) comprende:una segunda unidad de adquisición de información de lógica de predicado (35 – Figura 18) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 18); y una unidad de descifrado (33 – Figura 18) adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves (20 – Figura 20) para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; yel aparato de generación de claves (20 – Figura 20) comprende una unidad de generación de claves (25 – Figura 20) adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 20), para generar la clave de descifrado usada para descifrar la información de cifrado.
- 3. Un sistema criptográfico (1 – Figura 1) que usa un cifrado de predicado, que comprende al menos:un aparato de cifrado (10 – Figura 22); un aparato de generación de claves (20 – Figura 9); y un aparato de descifrado (30 – Figura 24); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 22) comprende:una primera unidad de adquisición de información de lógica de predicado (12 – Figura 22) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 22) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada; y una unidad de cifrado (13 – Figura 22) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 9) y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado;el aparato de generación de claves (20 – Figura 9) comprende:una segunda unidad de adquisición de información de lógica de predicado (23 – Figura 9) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 24); y unidad de generación de claves (25 – Figura 9) adaptada para usar la segunda información de atributoo la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 9), para generar una clave de descifrado usada para descifrar la información de cifrado; y el aparato de descifrado (30 – Figura 24) que comprende una unidad de descifrado (33 – Figura 24) adaptada para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado.
- 4. Un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado, que comprende al menos:un aparato de cifrado (10 – Figura 22); un aparato de generación de claves (20 – Figura 20); y un aparato de descifrado (30 – Figura 26); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 20); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 22) comprende:una primera unidad de adquisición de información de lógica de predicado (12 – Figura 22) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 22) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada; y una unidad de cifrado (13 – Figura 22) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 20) y texto plano, para obtener una información de cifrado que corresponde al texto plano según el algoritmo de cifrado de predicado;el aparato de descifrado (30 – Figura 26) comprende:una segunda unidad de adquisición de información de lógica de predicado (35 – Figura 26) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 26); y una unidad de descifrado (33 – Figura 26) adaptada para usar una clave de descifrado enviada desde el aparato de generación de claves (20 – Figura 20) para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado; yel aparato de generación de claves (20 – Figura 20) comprende una unidad de generación de claves (25 – Figura 20) adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 20), para generar la clave de descifrado usada para descifrar la información de cifrado.
-
- 5.
- Un sistema criptográfico (1 – Figura 1) según la Reivindicación 1 o 2, en donde la unidad de cifrado (12) del aparato de cifrado (10) cifra un texto plano con la clave común para obtener un texto cifrado; y la unidad de descifrado (33) del aparato de descifrado (30) usa la clave común obtenida en el proceso de descifrado para aplicar un segundo proceso de descifrado al texto cifrado o usa una clave común generada a partir de la información que se obtiene en el proceso de descifrado para aplicar un segundo proceso de descifrado al texto cifrado.
-
- 6.
- Un sistema criptográfico (1 – Figura 28) según una de las Reivindicaciones 1 a 5, en donde el sistema criptográfico (1 – Figura 28) además comprende el aparato de cifrado (30-2 – Figura 28), en lo sucesivo llamado el segundo aparato de descifrado; y uno (30-1 – Figura 35) del aparato de descifrado (30-1 – Figura 35) y el segundo aparato de descifrado (30-2 – Figura 37) comprende una unidad de transferencia (37 – Figura 35) para transferir la información cifrada al otro del aparato de descifrado (30-1 – Figura 35) y el segundo aparato de descifrado (30-2 – Figura 37).
-
- 7.
- Un método de comunicación criptográfico para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye al menos:
un aparato de cifrado (10 – Figura 5); un aparato de generación de claves (20 – Figura 9); y un aparato de descifrado (30 – Figura 7); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el método de comunicación criptográfica que comprende:un primer paso de adquisición de información de lógica de predicado (S17a – Figura 6) para usar una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 5) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado (12 – Figura 5) del aparato de cifrado (10 – Figura 5); un paso de cifrado (S17b – Figura 6) para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 9), para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado, en una unidad de cifrado (13 - Figura 5) del aparato de cifrado (10 – Figura 5); un segundo paso de adquisición de información de lógica de predicado (S24c – Figura 10) para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 7), en una segunda unidad de adquisición de información de lógica de predicado (23 – Figura 9) del aparato de generación de claves (20 – Figura 9); un paso de generación de claves (S24d - Figura 10) para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20– Figura 9), para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves (25 - Figura 9) del aparato de generación de claves (20 – Figura 9); y un paso de descifrado (S22c – Figura 8) para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado (33 – Figura 7) del aparato de descifrado (30 – Figura 7). - 8. Un método de comunicación criptográfico para un sistema criptográfico (1 – Figura 1) que usa un cifrado depredicado e incluye al menos un aparato de cifrado (10 – Figura 5); un aparato de generación de claves (20 – Figura 20); y un aparato de descifrado (30 – Figura 18); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 20); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el método de comunicación criptográfico que comprende:un primer paso de adquisición de información de lógica de predicado (S17a – Figura 6) para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 5) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado (12 – Figura 5) del aparato de cifrado (10 – Figura 5); un paso de cifrado (S17b – Figura 6) para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 20), para obtener una clave común y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado, en una unidad de cifrado (13 - Figura 5) del aparato de cifrado (10 – Figura 5); un segundo paso de adquisición de información de lógica de predicado (S23g – Figura 19) para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 18), en una segunda unidad de adquisición de información de lógica de predicado (35 – Figura 18) del aparato de descifrado (30 – Figura 18); un paso de generación de claves (S24d - Figura 21) para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20– Figura 20), para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves (25 - Figura 20) del aparato de generación de claves (20 – Figura 20); y un paso de descifrado (S22c – Figura 19) para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado (33 – Figura 18) del aparato de descifrado (30 – Figura 18).
-
- 9.
- Un método de comunicación criptográfico para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye al menos un aparato de cifrado (10 – Figura 22); un aparato de generación de claves (20 – Figura 9); y un aparato de descifrado (30 – Figura 24); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el método de comunicación criptográfico que comprende:
un primer paso de adquisición de información de lógica de predicado (S17a – Figura 23) para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 22) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada en una primera unidad de adquisición de información de lógica de predicado (12 – Figura 22) del aparato de cifrado (10 – Figura 22); un paso de cifrado (S17b1 – Figura 23) para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 9) y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado, en una unidad de cifrado (13 - Figura 22) del aparato de cifrado (10 – Figura 22); un segundo paso de adquisición de información de lógica de predicado (S24c – Figura 10) para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 24), en una segunda unidad de adquisición de información de lógica de predicado (23 – Figura 9) del aparato de generación de claves (20 – Figura 9); un paso de generación de claves (S24d - Figura 10) para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 9), para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves (25 - Figura 9) del aparato de generación de claves (20 – Figura 9); y un paso de descifrado (S22c1 – Figura 25) para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado (33 – Figura 24) del aparato de descifrado (30 – Figura 24). -
- 10.
- Un método de comunicación criptográfico para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye al menos un aparato de cifrado (10 – Figura 22); un aparato de generación de claves (20 – Figura 20); y un aparato de descifrado (30 – Figura 26); en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 20); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y
una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el método de comunicación criptográfico que comprende:un primer paso de adquisición de información de lógica de predicado (S17a – Figura 23) para usar una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado (10 – Figura 22) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada, en una primera unidad de adquisición de información de lógica de predicado (12 – Figura 22) del aparato de cifrado (10 – Figura 22); un paso de cifrado (S17b1 – Figura 23) para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 20) y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado, en una unidad de cifrado (13 - Figura 22) del aparato de cifrado (10 – Figura 22); un segundo paso de adquisición de información de lógica de predicado (S23g – Figura 27) para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 26), en una segunda unidad de adquisición de información de lógica de predicado (35 – Figura 26) del aparato de descifrado (30 – Figura 26); un paso de generación de claves (S24d - Figura 21) para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 20), para generar una clave de descifrado usada para descifrar la información de cifrado, en una unidad de generación de claves (25 - Figura 20) del aparato de generación de claves (20 – Figura 20); y un paso de descifrado (S22c1 – Figura 27) para usar la clave de descifrado para aplicar un proceso de descifrado a la información de cifrado según el algoritmo de cifrado de predicado en una unidad de descifrado (33 – Figura 26) del aparato de descifrado (30 – Figura 26). -
- 11.
- Un aparato de cifrado (10 – Figura 5) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye, al menos, un aparato de cifrado (10 – Figura 5), un aparato de generación de claves (20 – Figura 1), y un aparato de descifrado (30 – Figura 1), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 1); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 5) que comprende:
una primera unidad de adquisición de información de lógica de predicado (12 – Figura 5) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluidas en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si una información de entrada introducida al aparato de cifrado (10 – Figura 5) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada, y una unidad de cifrado (13 – Figura 5) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 1), para obtener una clave común, y una información de cifrado que corresponde a la clave común o que corresponde a una información usada para generar la clave común, según el algoritmo de cifrado de predicado. -
- 12.
- Un aparato de cifrado (10 – Figura 22) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de
predicado e incluye, al menos, un aparato de cifrado (10 – Figura 22), un aparato de generación de claves (20 – Figura 1), y un aparato de descifrado (30 – Figura 1), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 1); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de cifrado (10 – Figura 22) que comprende:una primera unidad de adquisición de información de lógica de predicado (12 – Figura 22) adaptada para usar una de una información de regla de conversión de la información de regla de conversión de atributo y la información de regla de conversión de predicado incluida en un par de información de regla de conversión seleccionado a partir del uno o la pluralidad de pares de información de regla de conversión, la una de una información de regla de conversión que se selecciona junto con la información de política según si la información de entrada introducida al aparato de cifrado (10 – Figura 22) es o bien una información de designación de atributo o bien una información de designación de predicado, para obtener una información de atributo, en lo sucesivo llamada primera información de atributo, o una información de predicado, en lo sucesivo llamada primera información de predicado, a partir de la información de entrada, y un unidad de cifrado (13 – Figura 22) adaptada para usar la primera información de atributo o la primera información de predicado, junto con la clave pública del aparato de generación de claves (20 – Figura 1) y texto plano, para obtener una información de cifrado que corresponde al texto plano, según el algoritmo de cifrado de predicado. -
- 13.
- Un aparato de generación de claves (20 – Figura 9) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye, al menos, un aparato de cifrado (10 – Figura 1), un aparato de generación de claves (20 – Figura 9), y un aparato de descifrado (30 – Figura 1), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 9); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de generación de claves (20 – Figura 9) que comprende:
una segunda unidad de adquisición de información de lógica de predicado (23 – Figura 9) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 1); y una unidad de generación de claves (25 – Figura 9) adaptada para usar la segunda información de atributo o la segunda información de predicado, junto con la clave privada del aparato de generación de claves (20 – Figura 9), para generar una clave de descifrado usada para descifrar una información de cifrado. -
- 14.
- Un aparato de generación de claves (20 – Figura 20) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye, al menos, un aparato de cifrado (10 – Figura 1), un aparato de generación de claves (20 – Figura 20), y un aparato de descifrado (30 – Figura 1), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 20); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe
una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de generación de claves (20 – Figura 20) que comprende una unidad de generación de claves (25 – Figura 20) adaptada para usar la clave privada del aparato de generación de claves (20 – Figura 20), junto con una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, generada a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30– Figura 1) usando la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política, para generar una clave de descifrado usada para descifrar la información de cifrado. - 15. Un aparato de descifrado (30 – Figura 7, 30 – Figura 24) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye, al menos, un aparato de cifrado (10 – Figura 1), un aparato de generación de claves (20 – Figura 1), y un aparato de descifrado (30 – Figura 7, 30 – Figura 24), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 1); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de descifrado (30 – Figura 7, 30 – Figura 24) que comprende una unidad de descifrado (33 – Figura 7, 33 – Figura 24) adaptada para usar una clave de descifrado generada por el aparato de generación de claves (20 – Figura 1) para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado (10– Figura 1), según el algoritmo de cifrado de predicado.
-
- 16.
- Un aparato de descifrado (30 – Figura 18, 30 – Figura 26) usado para un sistema criptográfico (1 – Figura 1) que usa cifrado de predicado e incluye, al menos, un aparato de cifrado (10 – Figura 1), un aparato de generación de claves (20 – Figura 1), y un aparato de descifrado (30 – Figura 18, 30 – Figura 26), en donde una clave privada y una clave pública que corresponde a la clave privada se determinan por adelantado para el aparato de generación de claves (20 – Figura 1); uno o una pluralidad de pares de información de regla de conversión se determinan por adelantado, cada par de los cuales tiene una información, en lo sucesivo llamada información de regla de conversión de atributo, que prescribe una regla de conversión para convertir una información que designa un atributo, en lo sucesivo llamada información de designación de atributo, a una información de atributo usada en un algoritmo e información de cifrado de predicado, en lo sucesivo llamada información de regla de conversión de predicado, que prescribe una regla de conversión para convertir una información que designa un predicado, en lo sucesivo llamada información de designación de predicado, a una información de predicado usada en el algoritmo de cifrado de predicado; y una información de política que identifica una de la información de regla de conversión de atributo y la información de regla de conversión de predicado se determina por adelantado; el aparato de descifrado (30 – Figura 18, 30 – Figura 26) que comprende:
una segunda unidad de adquisición de información de lógica de predicado (35 – Figura 18, 35 – Figura 26) adaptada para usar la información de regla de conversión emparejada con la información de regla de conversión identificada por la información de política para obtener una información de atributo, en lo sucesivo llamada segunda información de atributo, o una información de predicado, en lo sucesivo llamada segunda información de predicado, a partir de una información de designación de atributo o una información de designación de predicado que corresponde a un usuario del aparato de descifrado (30 – Figura 18, 30 – Figura 26); y una unidad de descifrado (33 – Figura 18, 33 – Figura 26) adaptada para usar una clave de descifrado generada por el aparato de generación de claves (20 – Figura 1) para aplicar un proceso de descifrado a una información de cifrado generada por el aparato de cifrado (10 – Figura 1), según el algoritmo de cifrado de predicado. -
- 17.
- Un aparato de descifrado (30-1 – Figura 35) según una de las Reivindicaciones 15 y 16, que además comprende, cuando el sistema criptográfico (1 – Figura 28) incluye una pluralidad de aparatos de descifrado (30-1 – Figura 35, 30-2 – Figura 37), una unidad de transferencia (37 – Figura 35) para transferir la información de cifrado a al menos un aparato de descifrado (30-2 – Figura 37) distinto del aparato de descifrado (30-1 – Figura 35).
-
- 18.
- Un programa para hacer una función de ordenador como un aparato de cifrado (10) según una de las Reivindicaciones 11 y 12.
- 19. Un programa para hacer una función de ordenador como un aparato de generación de claves (20) según una de 10 las Reivindicaciones 13 y 14.
- 20. Un programa para hacer una función de ordenador como un aparato de descifrado (30) según una de las Reivindicaciones 15 a 17.15 21. Un medio de almacenamiento legible por ordenador que tiene almacenado en el mismo al menos uno de un programa según la Reivindicación 18, un programa según la Reivindicación 19, y un programa según la Reivindicación 20.
Applications Claiming Priority (7)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009106008 | 2009-04-24 | ||
| JP2009106028 | 2009-04-24 | ||
| JP2009106016 | 2009-04-24 | ||
| JP2009106008 | 2009-04-24 | ||
| JP2009106028 | 2009-04-24 | ||
| JP2009106016 | 2009-04-24 | ||
| PCT/JP2010/057296 WO2010123122A1 (ja) | 2009-04-24 | 2010-04-23 | 暗号システム、暗号通信方法、暗号化装置、鍵生成装置、復号装置、コンテンツサーバ装置、プログラム、記憶媒体 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2445535T3 true ES2445535T3 (es) | 2014-03-03 |
Family
ID=43011236
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES13177763.3T Active ES2516390T3 (es) | 2009-04-24 | 2010-04-23 | Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de clave, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento |
| ES10767177.8T Active ES2445535T3 (es) | 2009-04-24 | 2010-04-23 | Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de claves, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES13177763.3T Active ES2516390T3 (es) | 2009-04-24 | 2010-04-23 | Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de clave, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US8964982B2 (es) |
| EP (3) | EP2658164B1 (es) |
| JP (1) | JP5253567B2 (es) |
| KR (1) | KR101351789B1 (es) |
| CN (1) | CN102369687B (es) |
| ES (2) | ES2516390T3 (es) |
| WO (1) | WO2010123122A1 (es) |
Families Citing this family (39)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1775880A1 (en) * | 2005-10-11 | 2007-04-18 | STMicroelectronics S.r.l. | Method of processing information to be confidentially transmitted |
| CN102484586B (zh) * | 2009-08-03 | 2014-12-03 | 日本电信电话株式会社 | 函数密码应用系统及方法 |
| US8769614B1 (en) * | 2009-12-29 | 2014-07-01 | Akamai Technologies, Inc. | Security framework for HTTP streaming architecture |
| JP5424974B2 (ja) | 2010-04-27 | 2014-02-26 | 三菱電機株式会社 | 暗号処理システム、鍵生成装置、暗号化装置、復号装置、署名処理システム、署名装置及び検証装置 |
| US8995660B2 (en) | 2010-07-23 | 2015-03-31 | Nippon Telegraph And Telephone Corporation | Cryptographic system, cryptographic communication method, encryption apparatus, key generation apparatus, decryption apparatus, content server, program, and storage medium |
| JP5606344B2 (ja) * | 2011-01-25 | 2014-10-15 | 三菱電機株式会社 | 署名処理システム、鍵生成装置、署名装置、検証装置、署名処理方法及び署名処理プログラム |
| JP5677194B2 (ja) * | 2011-05-19 | 2015-02-25 | 三菱電機株式会社 | コンテンツ販売管理装置及びコンテンツ販売システム及びコンピュータプログラム及びコンテンツ販売管理方法 |
| JP6069852B2 (ja) * | 2011-08-29 | 2017-02-01 | ソニー株式会社 | 情報処理装置、情報処理方法、及びプログラム |
| JP5677273B2 (ja) * | 2011-11-18 | 2015-02-25 | 三菱電機株式会社 | 暗号処理システム、暗号処理方法、暗号処理プログラム及び鍵生成装置 |
| KR101437033B1 (ko) * | 2012-06-21 | 2014-11-03 | 기초과학연구원 | 저성능 디바이스의 인증 방법 |
| US9569201B1 (en) * | 2012-07-12 | 2017-02-14 | Skybox Security Inc. | Method for translating product banners |
| JP5814880B2 (ja) * | 2012-07-31 | 2015-11-17 | 三菱電機株式会社 | 暗号システム、暗号方法、暗号プログラム及び復号装置 |
| JP5921410B2 (ja) * | 2012-10-19 | 2016-05-24 | 三菱電機株式会社 | 暗号システム |
| JP5841955B2 (ja) * | 2013-01-21 | 2016-01-13 | 日本電信電話株式会社 | 関数型暗号システム及び方法 |
| JP6022073B2 (ja) | 2013-10-09 | 2016-11-09 | 三菱電機株式会社 | 暗号システム、再暗号化鍵生成装置及び再暗号化装置 |
| CN105850072B (zh) | 2013-12-02 | 2018-11-20 | 三菱电机株式会社 | 数据处理系统、加密装置以及解密装置 |
| WO2015107641A1 (ja) * | 2014-01-16 | 2015-07-23 | 三菱電機株式会社 | 暗号システム、鍵生成装置、再暗号化装置及びユーザ端末 |
| CN104618098B (zh) * | 2015-01-12 | 2017-09-26 | 北京科技大学 | 一种集合成员关系判定的密码学构造方法及系统 |
| WO2016119900A1 (en) * | 2015-01-30 | 2016-08-04 | Nec Europe Ltd. | Method and system for managing encrypted data of devices |
| US10630686B2 (en) | 2015-03-12 | 2020-04-21 | Fornetix Llc | Systems and methods for organizing devices in a policy hierarchy |
| US10560440B2 (en) | 2015-03-12 | 2020-02-11 | Fornetix Llc | Server-client PKI for applied key management system and process |
| US10965459B2 (en) | 2015-03-13 | 2021-03-30 | Fornetix Llc | Server-client key escrow for applied key management system and process |
| US12609809B2 (en) * | 2015-06-28 | 2026-04-21 | Peter Lablans | Method and apparatus for activating a remote device |
| US9894043B2 (en) * | 2015-09-30 | 2018-02-13 | Raytheon Bbn Technologies Corp. | Cryptographically secure cross-domain information sharing |
| GB2543780B (en) * | 2015-10-27 | 2020-01-22 | Trustonic Ltd | Cryptographic program diversification |
| US12143468B2 (en) * | 2015-12-20 | 2024-11-12 | Lcip Jv | Cryptographic computer machines with novel switching devices |
| US12425189B1 (en) * | 2015-12-20 | 2025-09-23 | Peter Lablans | Cryptographic computer machines with novel switching devices |
| CN105635135B (zh) * | 2015-12-28 | 2019-01-25 | 北京科技大学 | 一种基于属性集及关系谓词的加密系统及访问控制方法 |
| US10880281B2 (en) | 2016-02-26 | 2020-12-29 | Fornetix Llc | Structure of policies for evaluating key attributes of encryption keys |
| US11063980B2 (en) | 2016-02-26 | 2021-07-13 | Fornetix Llc | System and method for associating encryption key management policy with device activity |
| US10917239B2 (en) | 2016-02-26 | 2021-02-09 | Fornetix Llc | Policy-enabled encryption keys having ephemeral policies |
| US10931653B2 (en) | 2016-02-26 | 2021-02-23 | Fornetix Llc | System and method for hierarchy manipulation in an encryption key management system |
| US10860086B2 (en) | 2016-02-26 | 2020-12-08 | Fornetix Llc | Policy-enabled encryption keys having complex logical operations |
| CN107592281B (zh) | 2016-07-06 | 2022-04-05 | 华为技术有限公司 | 一种传输数据的保护系统、方法及装置 |
| KR102028151B1 (ko) * | 2017-04-07 | 2019-10-02 | 주식회사트러스트홀딩스 | 장치 인증키를 이용한 데이터 암호화 방법 및 시스템 |
| JP6456451B1 (ja) | 2017-09-25 | 2019-01-23 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 通信装置、通信方法、及びプログラム |
| US20250158803A1 (en) * | 2023-11-11 | 2025-05-15 | Peter Lablans | Encryption Cloaking with a Modified Radix-n Function for Enhanced Security |
| US12476789B1 (en) * | 2024-04-02 | 2025-11-18 | Peter Lablans | Computational function transformation (CFT) in computer implemented cryptography |
| CN119892501B (zh) * | 2025-03-26 | 2025-06-20 | 贵州大学 | 一种访问控制内积函数加解密方法、装置、设备、介质及产品 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7003117B2 (en) * | 2003-02-05 | 2006-02-21 | Voltage Security, Inc. | Identity-based encryption system for secure data distribution |
| JP2008011092A (ja) * | 2006-06-28 | 2008-01-17 | Fuji Xerox Co Ltd | 暗号化コンテンツ検索方式 |
| US20090080658A1 (en) * | 2007-07-13 | 2009-03-26 | Brent Waters | Method and apparatus for encrypting data for fine-grained access control |
| CN101188496B (zh) * | 2007-12-10 | 2010-09-29 | 中兴通讯股份有限公司 | 一种短信加密传输方法 |
| CN101335615B (zh) * | 2008-05-30 | 2010-12-29 | 北京飞天诚信科技有限公司 | 用于usb key音频加解密装置密钥协商的方法 |
| CN101404577B (zh) * | 2008-10-30 | 2010-04-21 | 南京大学 | 一种融合多种保密技术的保密通信方法 |
-
2010
- 2010-04-23 CN CN201080015544.5A patent/CN102369687B/zh active Active
- 2010-04-23 EP EP13177756.7A patent/EP2658164B1/en active Active
- 2010-04-23 EP EP10767177.8A patent/EP2424156B1/en active Active
- 2010-04-23 ES ES13177763.3T patent/ES2516390T3/es active Active
- 2010-04-23 ES ES10767177.8T patent/ES2445535T3/es active Active
- 2010-04-23 WO PCT/JP2010/057296 patent/WO2010123122A1/ja not_active Ceased
- 2010-04-23 EP EP13177763.3A patent/EP2658165B1/en active Active
- 2010-04-23 JP JP2011510388A patent/JP5253567B2/ja active Active
- 2010-04-23 US US13/258,187 patent/US8964982B2/en active Active
- 2010-04-23 KR KR1020117023465A patent/KR101351789B1/ko active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JPWO2010123122A1 (ja) | 2012-10-25 |
| KR101351789B1 (ko) | 2014-01-15 |
| EP2658165B1 (en) | 2014-09-10 |
| CN102369687A (zh) | 2012-03-07 |
| EP2424156A4 (en) | 2012-09-26 |
| WO2010123122A1 (ja) | 2010-10-28 |
| EP2658164B1 (en) | 2015-09-16 |
| US8964982B2 (en) | 2015-02-24 |
| EP2424156B1 (en) | 2013-11-20 |
| EP2658165A3 (en) | 2014-02-26 |
| EP2658165A2 (en) | 2013-10-30 |
| EP2424156A1 (en) | 2012-02-29 |
| KR20110134900A (ko) | 2011-12-15 |
| CN102369687B (zh) | 2014-09-17 |
| EP2658164A2 (en) | 2013-10-30 |
| ES2516390T3 (es) | 2014-10-30 |
| US20120027210A1 (en) | 2012-02-02 |
| EP2658164A3 (en) | 2014-02-26 |
| JP5253567B2 (ja) | 2013-07-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2445535T3 (es) | Sistema criptográfico, método de comunicación criptográfico, aparato de cifrado, aparato de generación de claves, aparato de descifrado, servidor de contenidos, programa, y medio de almacenamiento | |
| JP5422053B2 (ja) | 暗号システム、暗号通信方法、暗号化装置、鍵生成装置、復号装置、コンテンツサーバ装置、プログラム、記憶媒体 | |
| ES2496740T3 (es) | Aparato de codificación, aparato de descodificación, método de codificación, método de descodificación, método y programa de seguridad y medio de almacenamiento | |
| JP2017076964A (ja) | 暗号化CCNx | |
| CN105339995B (zh) | 解密装置、解密能力提供装置、其方法、以及记录介质 | |
| Nunez | Umbral: a threshold proxy re-encryption scheme | |
| Moldovyan et al. | Post-quantum commutative encryption algorithm | |
| JP2019215391A (ja) | 復号装置、暗号化装置及び暗号システム | |
| JP7117964B2 (ja) | 復号装置、暗号システム、復号方法及び復号プログラム | |
| Minh et al. | Post-quantum commutative deniable encryption algorithm | |
| JP2011087150A (ja) | データ編集システム、書込み装置、読取装置及びデータ編集方法 |