Dispositivo de generación de información, método de generación de información, y programa de generación de información y medio de almacenamiento del mismo.

Aparato de generación de información que comprende:

un generador (1) de números aleatorios adaptado para generar un número aleatorio σγ &E Zq y un número aleatorio Yj Î Zq correspondiente a cada elemento j Î w

(Y) de un conjunto w(Y);

un generador (2) de información principal adaptado para usar el número aleatorio generado sY con el fin de calcular información principal kY que cumple kY ≥ sYSi Î {1, ..., N-1} \ w(Y)Yibi* + bN*; y

un generador (3) de información de obtención adaptado para usar el número aleatorio generado sYj con el fin de calcular información de obtención kYj que cumple kYj ≥ sYjSi Î {1, ..., N-1} \ w(Y)Yibi* + bj* para cada elemento j Î w(Y) del conjunto w(Y);

donde e es una función bilineal, no degenerada, que da salida a un elemento de un grupo cíclico GT como respuesta a entradas de N elementos gL (L ≥ 1, ..., N) (N ³ 2) de un grupo cíclico G1 y N elementos gL* (L ≥ 1, ..., N) de un grupo cíclico G2; bi Î G1

N (i ≥ 1, ..., N) es un vector base N-dimensional que tiene N elementos del grupo cíclico G1 como elementos; bj* Î G2

N (j ≥ 1, ..., N) es un vector base N-dimensional que tiene N

elementos del grupo cíclico G2 como elementos; un valor de función correspondiente a la función e obtenido cuando cada elemento del vector base bi Î G1

N (i ≥ 1, ..., N) y cada elemento del vector base bj* Î G2

N (j ≥ 1,

..., N) se ponen en la función bilineal e está representado por gT

t·d(i,j) Î GT, usando una función delta de

Kronecker en la cual d(i, j) ≥ 1F cuando i ≥ j y d(i, j) ≥ 0F cuando i ¹ j; 0F es un elemento unitario aditivo de un cuerpo finito Fq; 1F es un elemento unitario multiplicativo del cuerpo finito Fq; t es un elemento del cuerpo finito Fq, diferente de 0F; y Fq es idéntico a Zq, gT es un generador del grupo cíclico GT, q es un número primo, los grupos G1, G2, y GT son de orden q; y

* indica un carácter indeterminado, un índice Y es Y ≥ (Y1, ..., YN-1) Î I ≥ (Fq È {*})N-1, el conjunto w(Y) se corresponde con el índice Y, y w(Y) ≥ {i|Yi ≥ *},

en donde el generador de números aleatorios está adaptado además para generar un número aleatorio su Î Zq,

comprendiendo el aparato de generación de información:

una unidad (4) de almacenamiento adaptada para almacenar información principal kv correspondiente a un índice v e información de obtención kvj correspondiente al índice v; y

una unidad (5) de obtención de información principal adaptada para usar la información principal kv e información de obtención kvi, que se leen, las dos, de la unidad de almacenamiento, y el número aleatorio generado su para calcular información principal ku correspondiente a un índice u, que cumple ku ≥ suSi Î w(v) \ w(u) uikvi + kv:

donde * indica un carácter indeterminado; el índice v es v ≥ (v1, ..., vN-1) Î I ≥ (Fq È{*})N-1; w(v) es un conjunto correspondiente al índice v y w(v) ≥ {i|vi ≥ *}; el índice u es u ≥ (u1, ..., uN-1) Î I ≥ (Fq È{*})N-1; w(u) es un conjunto correspondiente al índice u y w(u) ≥ {i|ui ≥ *}; w(u) Ì w(v); y vi ≥ ui (i Î{1, ..., N-1} \ w(v)); y donde cada una de la información principal kY, la información principal kv y la información principal ku está adaptada para ser usada como información de claves en el cifrado basado en predicados.

Tipo: Patente Internacional (Tratado de Cooperación de Patentes). Resumen de patente/invención. Número de Solicitud: PCT/JP2010/057279.

Solicitante: NIPPON TELEGRAPH AND TELEPHONE CORPORATION.

Nacionalidad solicitante: Japón.

Dirección: 3-1 Otemachi 2-chome Chiyoda-ku Tokyo 100-8116 JAPON.

Inventor/es: SUZUKI,KOUTAROU, NISHIMAKI,RYO.

Fecha de Publicación: .

Clasificación Internacional de Patentes:

  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones para las comunicaciones secretas o... > H04L9/30 (Clave pública, es decir, siendo imposible de invertir por computador el algoritmo de cifrado, y no exigiéndose secreto a las claves de cifrado de los utilizadores)
  • SECCION H — ELECTRICIDAD > TECNICA DE LAS COMUNICACIONES ELECTRICAS > TRANSMISION DE INFORMACION DIGITAL, p. ej. COMUNICACION... > Disposiciones para las comunicaciones secretas o... > H04L9/08 (distribución de claves)

PDF original: ES-2512115_T3.pdf

 

google+ twitter facebook

Fragmento de la descripción:

Dispositivo de generación de información, método de generación de información, y programa de generación de información y medio de almacenamiento del mismo

CAMPO TÉCNICO

La presente Invención se refiere a una aplicación de la tecnología de seguridad de la Información. Por ejemplo, la presente Invención se refiere a una criptografía jerárquica en la cual una clave de descifrado que presenta una capacidad de descifrado limitada se puede obtener a partir de otra clave de descifrado.

ANTECEDENTES DE LA TÉCNICA

La tecnología descrita en la bibliografía no referente a patentes 1 es una tecnología convencional conocida para la criptografía jerárquica.

Okamoto, Tatsuaki et al., "Homomorphic Encryption and Signaturas from Vector Decomposition", Pairing-Based Cryptography - Pairing 28, Sprínger Berlín Heidelberg, 1 de septiembre de 28, págs. 57 a 74, hacen referencia a un concepto para el cifrado homomórfico, un espacio de autovectores de distorsión el cual es un espacio vectorial (dimensional superior) en el cual hay disponibles emparejamientos bilineales y mapas de distorsión. Un espacio de autovectores de distorsión se puede lograr sobre una curva hiperelíptica supersingular o sobre un producto directo de curvas elípticas supersingulares. Se introduce un problema inextricable (con función trampa) en espacios de autovectores de distorsión, el cual consiste en la generalización dimensional superior del problema de descomposición vectorial (VDP). Puede obtenerse una función trampa biyectiva con propiedades algebraicamente enriquecidas, a partir del VDP sobre espacios de autovectores de distorsión. Se presentan dos aplicaciones de esta función trampa biyectiva; una es el cifrado homomórfico multivariante así como un protocolo bipartito para evaluar de manera segura fórmulas de 2DNF de una manera dimensional superior, y la otra es varios tipos de firmas, tales como firmas ordinarias, firmas ciegas, firmas incontestables genéricamente (de manera selectiva y universal) convertibles y su combinación.

Boneh, Dan et al., "Hierarchical Identity Based Encryption with Constant Size Ciphertext", Lecture Notes in Computer Science/Computational Science (CPAIOR 211), Sprínger Berlín Heidelberg, vol. 3494, 2 de junio de 25, págs. 44 a 456, dan a conocer un sistema de Cifrado Jerárquico Basado en Identidades (HIBE) en el que el texto cifrado consta de solamente tres elementos de grupo y el descifrado requiere únicamente dos cálculos de mapas bilineales, con independencia de la profundidad de la jerarquía. El esquema es seguro selectivamente con respecto al ID en el modelo convencional y totalmente seguro en el modelo de oráculo aleatorio.

BIBLIOGRAFÍA DE LA TÉCNICA ANTERIOR

BIBLIOGRAFÍA NO REFERENTE A PATENTES

Bibliografía no referente a patentes 1: Craig Gentry, Alice Siverberg, "Hierarchical ID-Based Cryptography", ASIACRYPT 22, págs. 548 a 566

EXPOSICIÓN DE LA INVENCIÓN

PROBLEMAS A RESOLVER POR LA INVENCIÓN

En la tecnología descrita en la bibliografía no referente a patentes 1, una clave correspondiente a un nodo hijo en una estructura en árbol se puede obtener a partir de una clave correspondiente a un nodo padre, aunque la obtención de claves no se puede implementar en una estructura semiordenada general s diferente a una estructura en árbol. Por ejemplo, en una estructura que tiene un nodo padre A, un nodo padre B, y un nodo hijo común C, no es posible obtener una clave del nodo hijo común C a partir de una clave del nodo padre A u obtener una clave del nodo hijo común C a partir de una clave del nodo padre B.

MEDIOS PARA RESOLVER LOS PROBLEMAS

Para resolver el problema anterior, se proporcionan un aparato de generación de información según la reivindicación 1 ó la reivindicación 3 y un método de generación de información según la reivindicación 5.

EFECTOS DE LA INVENCIÓN

En una estructura que tiene un nodo padre A, un nodo padre B, y un nodo hijo común C, es posible obtener información del nodo hijo común C a partir de información del nodo padre A y obtener información del nodo hijo común C a partir de información del nodo padre B.

BREVE DESCRIPCIÓN DE LOS DIBUJOS

La Figura 1 es un diagrama de bloques funcional a modo de ejemplo de un aparato de generación de información según una primera realización;

la Figura 2 es un diagrama de flujo a modo de ejemplo de generación de información en la primera realización;

la Figura 3 es un diagrama de flujo a modo de ejemplo de obtención de información en la primera realización; la Figura 4 es un diagrama de bloques funcional a modo de ejemplo de un aparato de generación de información de acuerdo con una segunda realización;

la Figura 5 es un diagrama de flujo a modo de ejemplo de generación de información en la segunda realización; y

la Figura 6 es un diagrama de flujo a modo de ejemplo de obtención de información en la segunda realización. DESCRIPCIÓN DETALLADA DE LAS REALIZACIONES

A continuación se describirán detalladamente realizaciones de la presente invención.

Cifrado basado en predicados

En primer lugar se describirá una visión general del cifrado basado en predicados, el cual es un concepto usado en una primera realización.

Definiciones

Se definirán primero términos y símbolos que se usarán en realizaciones.

Matriz: Una matriz representa una disposición rectangular de elementos de un conjunto en el cual está definida una operación. La matriz la pueden formar no solamente elementos de un anillo sino también elementos de un grupo.

( )T: Matriz transpuesta de

(-)'1: Matriz inversa de

a:AND Lógica

v:OR Lógica

Z:Conjunto de enteros

k: Parámetro de seguridad (k e Z, k > )

{, 1}*: Secuencia binaria que tiene una longitud de bits deseada. Un ejemplo es una secuencia formada por enteros y 1. No obstante, {, 1}* no se limita a secuencias formadas por enteros y 1. {, 1}* es un cuerpo finito de orden 2 o su campo extendido.

{, 1}^: Secuencia binaria que tiene una longitud de bits C, (C,e Z, C, > ). Un ejemplo es una secuencia formada por enteros y 1. No obstante, {, 1no se limita a secuencias formadas por enteros y 1. {, I}'" es un cuerpo finito de orden 2 (cuando C, = 1) o un cuerpo extendido obtenido mediante la extensión del cuerpo finito en el grado C, (cuando C, > 1).

(+): Operador de OR exclusiva entre secuencias binarias. Por ejemplo, se cumple lo siguiente: 11111 (+) 1111 = 111.

Fq: Cuerpo finito de orden q, donde q es un entero igual a 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 cuerpo finito Fq es un cuerpo primo o un cuerpo extendido de cuerpo primo, por ejemplo. Cuando el cuerpo finito Fq es un cuerpo primo, se pueden llevar fácilmente a cabo, por ejemplo, cálculos de restos con respecto al módulo q. Cuando el cuerpo finito Fq es un cuerpo extendido, se pueden llevar a cabo fácilmente, por ejemplo, cálculos de restos módulo un polinomio irreducible. Se da a conocer un método específico para configurar un cuerpo finito Fq, por ejemplo, en la bibliografía de referencia 1, "ISO/IEC 1833-2: Information technologySecurity techniques Encryption algorithmsPart 2: Asymmetric ciphers".

f: Elemento unitario aditivo del cuerpo finito Fq

1f: Elemento unitario multiplicativo del cuerpo finito Fq

8(i, j): Función delta de Kronecker. Cuando i = j, 8(i, j) = 1f.

Cuando i * j, 8(¡, j) = F.

E: Curva elíptica definida en el cuerpo finito Fq. Se define como un punto especial O denominado punto del infinito más un conjunto de puntos (x, y) que cumplen x, y e Fq y la ecuación de Weierstrass... [Seguir leyendo]

 


Reivindicaciones:

1. Aparato de generación de información que comprende:

un generador (1) de números aleatorios adaptado para generar un número aleatorio cty e Zq y un número aleatorio crYj e Zq correspondiente a cada elemento j e w(Y) de un conjunto w(Y);

un generador (2) de información principal adaptado para usar el número aleatorio generado oY con el fin de calcular información principal kY que cumple kY = crYZ¡ ? {i...N-i>\w(Y)Y¡b¡* + ón*; y

un generador (3) de información de obtención adaptado para usar el número aleatorio generado aYj con el fin

de calcular información de obtención kYj que cumple kYj = oYjE¡ ? ¡i...n-i>\wooYib* + b* para cada elemento j e

w(Y) del conjunto w(Y);

donde e es una función bilineal, no degenerada, que da salida a un elemento de un grupo cíclico GT como respuesta a entradas de N elementos yl (L = 1, N) (N > 2) de un grupo cíclico Gi y N elementos yl* (L = 1,..., N) de un grupo cíclico G b¡ e GiN(¡ = 1,.... N) es un vector base N-dimensional que tiene N elementos del grupo cíclico Gi como elementos; b* e G2N = 1,..., N) es un vector base N-dimensional que tiene N elementos del grupo cíclico G2 como elementos; un valor de función correspondiente a la función e obtenido cuando cada elemento del vector base b¡ e GiN (1 = 1,..., N) y cada elemento del vector base b* e G2N (j = 1,..., N) se ponen en la función bilineal e está representado por gTT5(l,J) e GT, usando una función delta de Kronecker en la cual 8(i, j) = 1F cuando i = j y 8(¡, j) = f cuando i * j; F es un elemento unitario aditivo de un cuerpo finito Fq; 1F es un elemento unitario multiplicativo del cuerpo finito Fq; t es un elemento del cuerpo finito Fq, diferente de F; y Fq es idéntico a Zq, gi es un generador del grupo cíclico GT, q es un número primo, los grupos G-i, G2, y Gt son de orden q; y

* indica un carácter indeterminado, un índice Y es Y = (Y-i,..., YN-i) e I = (F, u f})N'1, el conjunto w(Y) se corresponde con el índice Y, y w(Y) = {i|Y¡ = *},

en donde el generador de números aleatorios está adaptado además para generar un número aleatorio ou e

Zq,

comprendiendo el aparato de generación de información:

una unidad (4) de almacenamiento adaptada para almacenar información principal kv correspondiente a un índice v e información de obtención kVj correspondiente al índice v; y

una unidad (5) de obtención de información principal adaptada para usar la información principal kv e información de obtención kv¡, que se leen, las dos, de la unidad de almacenamiento, y el número aleatorio generado au para calcular información principal ku correspondiente a un índice u, que cumple

ku OuE¡ E w(v) \w(u) Ujkvi + kv.

donde * indica un carácter indeterminado; el índice v es v = (v-i,..., Vn-i) e I = (Fq u{*})N'1; w(v) es un conjunto correspondiente al índice v y w(v) = {i|v¡ = *}; el índice u es u = (u-i,..., Un-i) e I = (Fq u{*})N'1; w(u) es un conjunto correspondiente al índice u y w(u) = {i|u¡ = *}; w(u) <= w(v); y v¡ = u¡ (i e{1,..., N-1}\ w(v)); y donde cada una de la información principal kY, la información principal kv y la información principal ku está adaptada para ser usada como información de claves en el cifrado basado en predicados.

2. Aparato de generación de información según la reivindicación 1, en el que el generador (1) de números aleatorios genera además un número aleatorio cTUj e Zq, correspondiente a cada elemento j e w(u) del conjunto w(u); comprendiendo además el aparato de generación de información:

una unidad (6) de obtención de información de obtención, adaptada para usar la información de obtención kVj leída de la unidad de almacenamiento y el número aleatorio generado gu¡ con el fin de calcular información de obtención kUj correspondiente al índice u, que cumple kUj = aUjEi e W(v) \ w(u) u¡kv¡ + kvj, para cada elemento j e w(u) del conjunto w(u).

3. Aparato de generación de información que comprende:

una unidad (4) de almacenamiento adaptada para almacenar información principal kv correspondiente a un índice v, actuando la información principal kv como información principal kY o información principal obtenida a partir de la información principal kY e información de obtención kYj, e información de obtención kvj correspondiente al índice v, actuando la información de obtención kvj como información de obtención kYj o información de obtención obtenida a partir de la información de obtención kYj; un generador (1) de números aleatorios adaptado para generar un número aleatorio ctu e Zq; y una unidad (5) de obtención de información principal adaptada para usar la información principal kv e información de obtención kv¡, que se leen, las dos, de la unidad de almacenamiento, y el número aleatorio

generado ou con el fin de calcular información principal ku correspondiente a un índice u, que cumple ku = ctuE¡

e w(v) \w(u) U¡kv¡ + ky,

donde e es una función bilineal, no degenerada, que da salida a un elemento de un grupo cíclico GT como respuesta a entradas de N elementos yl (L = 1, N) (N > 2) de un grupo cíclico Gi y N elementos yL* (L = 1, N) de un grupo cíclico G2; b¡ ? GiN(¡ = 1,.... N) es un vector base N-dimensional que tiene N elementos del grupo cíclico Gi como elementos; b* e G2N (j = 1, N) es un vector base N-dimensional que tiene N elementos del grupo cíclico G2 como elementos; un valor de función correspondiente a la función e obtenido cuando cada elemento del vector base b¡ e GiN (i = 1, N) y cada elemento del vector base b* e G2N (j = 1, N) se ponen en la función bilineal e está representado por gTT5(l,J) e Gt, usando una función delta de Kronecker en la cual 8(¡, j) = 1 f cuando i = j y 8(¡, j) = F cuando i * j; F es un elemento unitario aditivo de un cuerpo finito Fq; 1f es un elemento unitario multiplicativo del cuerpo finito Fq; x es un elemento del cuerpo finito Fq, diferente de F; y Fq es idéntico a Zq, gi es un generador del grupo cíclico Gt, q es un número primo, los grupos G-i, G2, y Gt son de orden q;

* indica un carácter indeterminado; un Indice Y es Y = (Y-i,..., YN-i) e I = (Fq u{*})N1; un conjunto w(Y) correspondiente al índice Y es w(Y) = {i|Y¡ = *}; crY e Zq es un número aleatorio; cty¡ e Zq es un número aleatorio correspondiente a cada elemento j e w(Y) del conjunto w(Y); la información principal kY se

corresponde con el índice Y y cumple kY =gyE¡ ? {i N-mwoo Y¡b¡* + bN*; y la información de obtención kYj se

corresponde con el índice Y y cumple kYj = oYjE¡ ? ¡i,.... n-i^woo Y¡b¡* + b*;

* Indica un carácter Indeterminado; el Indice v es v = (v-i,..., vN-i) e I = (Fq u{*})N'1; el índice u es u = (u-i,..., un- 1) e I = (Fq u{*})N'1; w(v) es un conjunto correspondiente al índice v y w(v) = {i | v¡ =*}; w(u) es un conjunto correspondiente al índice u y w(u) = {i | u¡ = *}; w(u) c w(v); y v¡ = u¡ (i e {1,..., N-1}\ w (v)); y

donde cada una de la Información principal kY, la información principal kv y la información principal ku está adaptada para ser usada como información de claves en el cifrado basado en predicados.

4. Aparato de generación de información según la reivindicación 3, en el que el generador (1) de números aleatorios genera además un número aleatorio aUj e Zq, correspondiente a cada elemento j e w(u) del conjunto w(u); comprendiendo además el aparato de generación de información:

una unidad (6) de obtención de información de obtención, adaptada para usar la información de obtención kVj leída de la unidad de almacenamiento y el número aleatorio generado crUj con el fin de calcular información de obtención kUj que cumple kUj = oUjE¡ e W(v) \w(u) u¡kv¡ + kVj, para cada elemento j e w(u) del conjunto w(u).

5. Método de generación de información, que comprende:

una etapa de generación de números aleatorios en la que se genera, en un generador de números aleatorios, un número aleatorio crY e Zq y un número aleatorio oYj e Zq correspondiente a cada elemento j e w(Y) de un conjunto w(Y);

una etapa de generación de información principal en la que se usa, en un generador de información principal, el número aleatorio generado crY con el fin de calcular información principal kY que cumple kY = ctyE¡ e{i,.... N-i>\ wcrjYibi* + bN*; y

una etapa de generación de información de obtención en la que se usa, en un generador de información de obtención, el número aleatorio generado crYj con el fin de calcular información de obtención kYj que cumple kYj = crYjE¡ e {i, N-i}\w(Y)Y¡b¡* + b* para cada elemento j ? w(Y) del conjunto w(Y);

donde e es una función bilineal, no degenerada, que da salida a un elemento de un grupo cíclico GT como respuesta a entradas de N elementos yL (L = 1,..., N) (N > 2) de un grupo cíclico Gi y N elementos yL* (L = 1,..., N) de un grupo cíclico G2; b¡ e GiN(i = 1,.... N) es un vector base N-dimensional que tiene N elementos del grupo cíclico Gi como elementos; b* e G2N (j = 1,..., N) es un vector base N-dimensional que tiene N elementos del grupo cíclico G2 como elementos; un valor de función correspondiente a la función e obtenido cuando cada elemento del vector base b¡ e G-iN (i = 1,..., N) y cada elemento del vector base b* e G2N (j = 1,..., N) se ponen en la función bilineal e está representado por gTt5(lj) e Gt, usando una función delta de Kronecker en la cual S(¡, j) = 1F cuando i = j y 8(¡, j) = f cuando i * j; f es un elemento unitario aditivo de un cuerpo finito Fq; 1F es un elemento unitario multiplicativo del cuerpo finito Fq; x es un elemento del cuerpo finito Fq, diferente de F; y Fq es idéntico a Zq, gT es un generador del grupo cíclico Gt, q es un número primo, los grupos G-i, G2, y Gt son de orden q; y

* indica un carácter indeterminado, un índice Y es Y = (Y-i,..., Yn-i) e I = (Fq u {*})n"\ y el conjunto w(Y) se corresponde con el índice Y, y w(Y) = {i|Y¡ = *},

en donde la etapa de generación de números aleatorios genera además un número aleatorio ctu e Zq, comprendiendo además el método de generación de información,

una etapa de obtención de información principal en la que, usando una información principal kv y una información de obtención kv¡, que se leen, las dos, de una unidad de almacenamiento, y el número aleatorio generado cru, se calcula información principal ku correspondiente a un Indice u, que cumple ku = auE¡?W(v)\w(u) u¡kv¡ + kv, estando adaptada la unidad de almacenamiento para almacenar la información principal kv correspondiente a un índice v y la información de obtención kVj correspondiente al Indice v,

donde * indica un carácter indeterminado; el índice v es v = (vi.....vN.-i) e I = (Fq u{*})N'1; w(v) es un conjunto

correspondiente al índice v y w(v) = {¡|v¡ = *}; el índice u es u = (ui, un-i) e I = (Fq u{*})N'1; w(u) es un conjunto correspondiente al índice u y w(u) = {i|u¡ = *}; w(u) c w(v); y v¡ = u¡ (i e{1, N-1}\ w(v)); y

donde cada una de la información principal kY, la información principal kv y la información principal ku se usa 5 como información de claves en el cifrado basado en predicados.

6. Programa de generación de información que consigue que un ordenador funcione como cada unidad del aparato de generación de información según una de las reivindicaciones 1 a 4.

7. Soporte de grabación legible por ordenador que tiene almacenado en el mismo el programa de generación de

información según la reivindicación 6.