ES2428381T3 - Método, sistema y dispositivo para generar una clave de grupo - Google Patents

Método, sistema y dispositivo para generar una clave de grupo Download PDF

Info

Publication number
ES2428381T3
ES2428381T3 ES08757518T ES08757518T ES2428381T3 ES 2428381 T3 ES2428381 T3 ES 2428381T3 ES 08757518 T ES08757518 T ES 08757518T ES 08757518 T ES08757518 T ES 08757518T ES 2428381 T3 ES2428381 T3 ES 2428381T3
Authority
ES
Spain
Prior art keywords
value
new
organizer
secret
public
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
ES08757518T
Other languages
English (en)
Inventor
Chunxiang Xu
Huan Zhong
Ya Liu
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Application granted granted Critical
Publication of ES2428381T3 publication Critical patent/ES2428381T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

Un método para generar una clave de grupo, en el que los parámetros del sistema se seleccionanbasándose en una curva elíptica, comprendiendo el método: formar (201), por parte de los miembros del grupo, una estructura con forma de estrella, y seleccionar unorganizador entre los miembros del grupo; seleccionar (203) individualmente de forma aleatoria, por parte de los miembros del grupo, valores DH secretosen función de los parámetros del sistema, generar individualmente valores DH públicos en función de los parámetrosdel sistema y los valores DH secretos seleccionados y difundir en el grupo los valores DH públicos; seleccionar (204), por parte del organizador, un exponente secreto después de recibir los valores DH públicosde los otros miembros del grupo, calcular un valor DH del mensaje intermedio en función del exponente secreto,generar un mensaje intermedio que incluya el valor DH del mensaje intermedio, difundir en el grupo el mensajeintermedio, y generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y de losvalores DH públicos de los otros miembros del grupo; y calcular (205), por parte de los otros miembros del grupo, después de recibir el mensaje intermedio, el valor DHsecreto seleccionado por el organizador en función del mensaje intermedio y del valor DH público del organizador,verificar (206) que sea correcto el valor DH secreto calculado seleccionado por el organizador en función del valorDH público recibido del organizador, y generar (207) una clave de grupo en función del valor DH secretoseleccionado por el organizador y los valores DH públicos de los otros miembros del grupo.

Description

Método, sistema y dispositivo para generar una clave de grupo
Campo de la invención
La presente invención está relacionada con el campo de las comunicaciones de red y, más en particular, con un método, un sistema y un dispositivo para generar una clave de grupo.
Antecedentes de la invención
Una red Ad Hoc es una red independiente de múltiples saltos con una estructura topológica que cambia de forma dinámica, en la cual frecuentemente los nodos se mueven y están limitados en potencia, y son más bien pobres la relación de confianza y los enlaces de transmisión inalámbricos entre los nodos. Así, el diseño de un protocolo de negociación de una clave de grupo en la red Ad Hoc es considerablemente diferente respecto a una solución convencional. En la red Ad Hoc, para garantizar la seguridad de las comunicaciones, en general los mensajes se cifran y después se transmiten. Debido a la ventaja en eficiencia de un sistema de cifrado simétrico, se reduce enormemente la complejidad del procesamiento de mensajes mediante la compartición de una clave dentro del grupo. En otro orden de cosas, la red Ad hoc también es un grupo dinámico de pares, y carece del soporte de una tercera parte fija confiable de modo que es necesario establecer, mediante la negociación de todos los miembros del grupo, una clave de sesión del grupo para cifrar los mensajes, con el fin de mejorar la seguridad y fiabilidad de la clave de sesión del grupo. Además, en la red Ad Hoc es necesario que el protocolo de negociación de la clave del grupo tenga en cuenta las características de topología dinámica de la red, y garantice seguridad posterior y seguridad anterior de la clave y soporte de forma eficiente los movimientos de incorporación y salida de los nodos.
Todas las soluciones existentes de negociación de la clave de grupo se basan en el problema de logaritmo discreto en el campo finito. Existe una solución de negociación de la clave de grupo aplicable a la red Ad Hoc en la que n representa el número de miembros del grupo; Ui representa un miembro del grupo con un número de serie i; U1 representa un organizador seleccionado, y el organizador es temporal y puede ser ejercido por cualquier miembro. La FIG. 1 es un diagrama de flujo de un método de una solución de negociación de la clave de grupo en la técnica anterior. Haciendo referencia a la FIG. 1, la solución de negociación de la clave de grupo incluye:
101: Se seleccionan parámetros del sistema y se lleva a cabo una inicialización del sistema.
Suponiendo que p y q son número primos grandes, Zp es un conjunto formado por el módulo entero de p, g es un elemento en Zp, y q es un orden de g, en el que q es el mínimo entero positivo que satisface una ecuación gqΞ 1 mod q.
102: Todos los miembros seleccionan valores DH secretos, generan valores DH públicos en función de los valores DH secretos y difunden en el grupo los valores DH públicos generados. El miembro Ui del grupo selecciona de forma aleatoria un valor DH secreto ri ! Zq, genera un valor DH público
en función del valor DH secreto seleccionado y difunde en el grupo el valor DH público
generado, en el que i tiene el valor de 1,2, …, n.
103: Después de recibir los valores DH públicos del resto de miembros, un organizador selecciona un exponente secreto, genera un mensaje intermedio en función del exponente secreto y los valores DH públicos y difunde en el grupo el mensaje intermedio, y al mismo tiempo genera una clave de grupo.
El organizador U1 selecciona de forma aleatoria un exponente secreto v ! Zq, genera un mensaje intermedio Mi,
en función del exponente secreto, un valor DH público del propio organizador, y los valores DH públicos del resto de miembros, respectivamente, y difunde en el grupo el mensaje Mi generado, en el que i tiene el valor de 1, 2, …, n.
Específicamente, el organizador calcula una función
en función del valor DH público de cada miembro y el valor DH público del propio organizador, en la que f representa una asociación de Zp a Zq, y después genera una clave de grupo
en función del exponente secreto v.
104: Después de recibir el mensaje intermedio difundido por el organizador, cada miembro del grupo extrae el exponente secreto y genera una clave de grupo en función del exponente secreto y del valor DH público de cada miembro.
Después de recibir Mi, todos los miembros Ui del grupo descrifran el valor v, y calculan la función , en la que f representa una asociación de Zp a Zq. A continuación, los miembros Ui del grupo , en la que el símbolo ◦ indica que F y v se operan matemáticamente y su
Mediante los pasos descritos más arriba, las claves de grupo calculadas por todos los miembros Ui del grupo son las
mismas, esto es, la clave de grupo .
Cuando un miembro se une al grupo o sale de él, es necesario volver a generar una clave de grupo de acuerdo con todos los miembros actuales del grupo después del cambio de miembros el grupo, en relación con la cual el proceso de cálculo es parecido al proceso de más arriba y no se repetirá de nuevo en la presente solicitud.
En la implementación de la presente invención, los inventores observan que la solución de negociación de la clave de grupo de la red Ad Hoc necesita una gran cantidad de cálculo, y por lo tanto tiene una baja velocidad de procesamiento, un gran espacio de almacenamiento y un requisito de gran ancho de banda.
El documento de Li, D. y Sampalli, S. “An Efficient Group Key Establishment In Location-Aided mobile ad hoc Networks (Un Establecimiento De Clave De Grupo Eficiente En Redes ad hoc móviles Asistidas por Localización)”, ACM, 2005, páginas 57-64 describe dos algoritmos de correspondencia máxima escalables (M2) para desarrollar en MANET acuerdos de clave de grupo basados en árboles binarios. Además, la técnica propuesta es ligera debido a que utiliza el intercambio de claves de Diffie-Hellman de Curva Elíptica en lugar del Diffie-Hellman normal y tampoco necesita soporte de terceras partes.
El documento XP002667535 divulga citas del Handbook of Applied Cryptography (Manual de Criptografía Aplicada) (Menezes, Vanstone, Oorschot, EE.UU., 1997) y en particular la generación de una clave de grupo mediante la técnica de Diffie Hellmann aplicada a tres o más partes, cuya funcionalidad forma una estructura en forma de estrella.
Resumen de la invención
Para reducir la cantidad de cálculo y el espacio de almacenamiento utilizado, y un menor requisito de ancho de banda de la solución de negociación de la clave de grupo, la presente invención proporciona un método, un sistema y dispositivos para generar una clave de grupo. A continuación se describen las soluciones técnicas.
Como un primer aspecto de la invención, el método para generar una clave de grupo selecciona parámetros del sistema en función de una curva elíptica, y en las respectivas formas de implementación del método se llevan a cabo los siguientes pasos.
Los miembros del grupo forman una estructura con forma de estrella y seleccionan un organizador entre los miembros del grupo.
Los miembros del grupo seleccionan individualmente de forma aleatoria valores DH secretos en función de los parámetros del sistema, generan individualmente valores DH públicos en función de los parámetros del sistema y de los valores DH secretos seleccionados y difunden en el grupo los valores DH públicos.
Después de recibir los valores DH públicos del resto de miembros del grupo, el organizador selecciona un exponente secreto, calcula un valor DH del mensaje intermedio en función del exponente secreto, genera un mensaje intermedio que incluye el valor DH del mensaje intermedio, difunde en el grupo el mensaje intermedio y genera una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos del resto de miembros del grupo.
Después de recibir el mensaje intermedio y un valor DH público del organizador, el resto de miembros del grupo calculan el valor DH secreto seleccionado por el organizador en función del mensaje intermedio, verifican que sea correcto el valor DH secreto calculado seleccionado por el organizador en función del valor DH público del organizador y genera una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos del resto de miembros del grupo.
Como un segundo aspecto de la invención el sistema para generar una clave de grupo incluye un dispositivo de comunicación que tiene el papel de organizador y dispositivos de comunicación que tienen el papel de miembros. En las respectivas formas de implementación se realizan las siguientes características.
El dispositivo de comunicación que tiene el papel de organizador está configurado para seleccionar un valor DH secreto en función de los parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado y difundir en el grupo el valor DH público; y después de recibir los valores DH públicos del resto de dispositivos, el dispositivo de comunicación que tiene el papel de organizador está configurado, además, para seleccionar un exponente secreto, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluya el valor DH del mensaje intermedio, difundir en el grupo el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto seleccionado y los valores DH públicos de todos los dispositivos del grupo.
Los dispositivos de comunicación que tienen el papel de miembros están configurados para seleccionar valores DH secretos en función de los parámetros del sistema, generar valores DH públicos en función de los parámetros del
sistema y de los valores DH secretos seleccionados y difundir los valores DH públicos; y después de recibir el valor DH público y el mensaje intermedio difundido por el dispositivo de comunicación que tiene el papel de organizador, los dispositivos de comunicación que tienen el papel de miembros están configurados, además, para calcular el valor DH secreto seleccionado por el organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto calculado seleccionado por el organizador, y a continuación generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de todos los dispositivos del grupo.
Además, como un tercer aspecto de la invención, el dispositivo de comunicación incluye un módulo de selección de parámetros del sistema, un módulo de generación y difusión del valor DH público, un módulo de generación y difusión del mensaje intermedio y un módulo de generación de la clave de grupo del organizador. En las respectivas formas de implementación del dispositivo se realizan las siguientes características.
El módulo de selección de parámetros del sistema está configurado para seleccionar parámetros del sistema a partir de una curva elíptica.
El módulo de generación y difusión del valor DH público está configurado para seleccionar un valor DH secreto en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado y difundir el valor DH público.
El módulo de generación y difusión del mensaje intermedio está configurado para seleccionar un exponente secreto después de recibir los valores DH públicos difundidos por otros dispositivos de comunicación, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluya el valor DH del mensaje intermedio en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público, y difundir el mensaje intermedio.
El módulo de generación de la clave de grupo del organizador está configurado para recibir los valores DH públicos difundidos por otros dispositivos de comunicación, y generar una clave de grupo en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público y los valores DH públicos difundidos por otros dispositivos de comunicación.
Como un cuarto aspecto de la invención, el dispositivo de comunicación incluye un módulo de selección de parámetros del sistema, un módulo de generación y difusión del valor DH público, y un módulo de generación de la clave de grupo del miembro. En las respectivas formas de implementación del dispositivo se realizan las siguientes características.
El módulo de selección de parámetros del sistema está configurado para seleccionar parámetros del sistema a partir de una curva elíptica.
El módulo de generación y difusión del valor DH público está configurado para seleccionar valores DH secretos en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar valores DH públicos en función de los parámetros del sistema y de los valores DH secretos seleccionados y difundir los valores DH públicos.
El módulo de generación de la clave de grupo del miembro está configurado para recibir un valor DH público y un mensaje intermedio difundido por otro dispositivo de comunicación, calcular un valor DH secreto seleccionado por un organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto calculado seleccionado por el organizador en función del valor DH público difundido por el dispositivo de comunicación que difunde el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y de valores DH públicos difundidos por el resto de dispositivos de comunicación excepto el dispositivo de comunicación que difunde el mensaje intermedio.
Las soluciones técnicas de la presente invención se basan en un sistema de cifrado de curva elíptica, en el que un organizador transmite de forma segura al resto de miembros del grupo un exponente secreto a través de un valor DH del mensaje intermedio compartido con el resto de miembros del grupo y a continuación todos los miembros llevan a cabo la negociación basándose en la técnica de cifrado de clave pública sobre una curva elíptica para obtener una clave de grupo. Comparadas con las de la técnica anterior, las soluciones técnicas de la presente invención tienen las siguientes ventajas: una alta velocidad de cálculo, un reducido espacio de almacenamiento y un bajo requisito de ancho de banda de red, manteniendo la misma seguridad.
Breve descripción de los dibujos
La FIG. 1 es un diagrama de flujo de un método para generar una clave de grupo en la técnica anterior;
la FIG. 2 es un diagrama de flujo de un método para generar una clave de grupo de acuerdo con el Modo de realización 1 de la presente invención;
la FIG. 3 es una vista esquemática de una estructura con forma de estrella constituida por miembros del grupo de acuerdo con el Modo de realización 1 de la presente invención;
la FIG. 4 es una vista esquemática de una estructura con forma de estrella constituida por miembros del grupo cuando se incorporan nuevos miembros al grupo de acuerdo con el Modo de realización 2 de la presente invención;
la FIG. 5 es un diagrama de flujo de un método para generar una clave de grupo cuando se incorporan nuevos miembros al grupo de acuerdo con el Modo de realización 2 de la presente invención;
la FIG. 6 es una vista esquemática de una estructura con forma de estrella incorporan por miembros del grupo cuando se combinan grupos de acuerdo con el Modo de realización 3 de la presente invención;
la FIG. 7 es un diagrama de flujo de un método para generar una clave de grupo cuando se combinan grupos de acuerdo con el Modo de realización 3 de la presente invención;
la FIG. 8 es una vista de la estructura de un sistema para generar una clave de grupo de acuerdo con el Modo de realización 6 de la presente invención;
la FIG. 9 es una vista de la estructura de un dispositivo de comunicación de acuerdo con el Modo de realización 7 de la presente invención; y
la FIG. 10 es una vista de la estructura de otro dispositivo de comunicación de acuerdo con el Modo de realización 8 de la presente invención.
Descripción detallada de los modos de realización
Para hacer más comprensibles los objetos, soluciones técnicas y ventajas de la presente invención, a continuación se describen más en detalle algunos modos de realización de la presente invención haciendo referencia a los dibujos adjuntos.
Los modos de realización de la presente invención proporcionan un método, un sistema y un dispositivo para generar una clave de grupo, los cuales son aplicables a una red Ad Hoc. Específicamente, los miembros del grupo constituyen una estructura con forma de estrella, y se selecciona un miembro para que sea un organizador, el cual es responsable de transmitir de forma segura un exponente secreto al resto de miembros del grupo a través de un valor DH del mensaje intermedio compartido con el resto de miembros del grupo y, a continuación, para obtener una clave de grupo todos los miembros negocian basándose en la técnica de cifrado de clave pública sobre una curva elíptica. El valor DH del mensaje intermedio es un parámetro obtenido en función de un protocolo de negociación de claves de Diffie-Hellman (brevemente denominado como un protocolo de negociación de claves DH) sobre la curva elíptica.
Los modos de realización de la presente invención se basan en un sistema de cifrado de curva elíptica. El cifrado de curva elíptica (ECC) fue establecido por primera vez por Neal Koblitz y Victor Miller en el año 1985. El sistema de cifrado de curva elíptica tiene las siguientes ventajas: alta seguridad, baja carga de cálculo, pequeña longitud de clave, alta velocidad de procesamiento, pequeño espacio de almacenamiento ocupado, pequeño requisito de ancho de banda, etc., por lo que tiene un amplio potencial de aplicación en el campo de la seguridad. Recientemente, el sistema de cifrado de curva elíptica ha sido aceptado como un estándar por parte de las organizaciones de estandarización, como por ejemplo el Instituto de Estándares Nacional de América (ANSI), el Instituto de Ingenieros Eléctricos y Electrónicos (IEEE), la Organización de Estandarización Internacional (ISO), y el Instituto Nacional de Estándares y Tecnología (NIST).
Modo de realización 1
La FIG. 2 es un diagrama de flujo de un método para generar una clave de grupo de acuerdo con un modo de realización de la presente invención. Haciendo referencia a la FIG. 2, el método incluye:
201: Los miembros de grupo U1, …, Un constituyen una estructura con forma de estrella y se selecciona un organizador.
De acuerdo con el modo de realización de la presente invención, n representa el número de miembros del grupo, y Ui representa un miembro del grupo con un número de secuencia i (i = 1, 2, …, n). Un miembro del grupo es seleccionado como organizador y en este modo de realización se selecciona como organizador a U1. El organizador no es confiable, pero es temporal, y su papel lo puede realizar cualquier miembro. La FIG. 3 es una vista esquemática de una estructura con forma de estrella constituida por los miembros del grupo.
202: Se seleccionan los parámetros del sistema y se lleva a cabo la inicialización del sistema. A continuación se describe el proceso específico.
GF(p) es un campo finito con orden un número primo p, y una curva elíptica EC: se define en el campo y2=x3+ax+ ß (a, ß!GF(p), 4a3+27 ß2(mod p) ≠0; y p es un número primo grande de más de 190 bits). ECp (a, ß) = {(x,y) | y2=x3+ax+ ß(mod p) } U O (O es la identidad) forma un grupo abeliano – grupo conmutativo.
En relación a un sistema ECC dado, se selecciona un punto P!ECp (∀,ß) como un punto base público, y el orden de P es un número primo grande q (en general, q ≥ 120 bits). Se define G = {O, P, 2P, …, (q-1)P}. De este modo, se puede saber que G es un grupo abeliano cíclico finito, y q es un período cíclico.
203: Un miembro Ui del grupo selecciona un valor DH secreto ri ! Zq, en función de los parámetros del sistema, genera un valor DH público Xi = (xi,yi) = riP en función del valor DH secreto ri y el punto base público P, y difunde en el grupo el valor DH público Xi = (xi,yi) = riP, en el que i tiene el valor de 1, …, n.
204: Después de recibir los valores DH públicos Xi difundidos por el resto de miembros, el organizador U1 selecciona de forma aleatoria un exponente secreto z ! Zq (Zq es un conjunto de restos no negativos mínimos obtenidos después de la operación módulo q, y q es un número primo perteneciente a los parámetros del sistema), calcula un valor DH del mensaje intermedio zP = (x, y) de acuerdo con el protocolo de negociación de claves Diffie-Hellman sobre la Curva Elíptica, genera un mensaje intermedio {c1, c2, …, cn} = {r1x(mod p), r2zP, r3zP, …, rnzP}, en el que p es un número primo perteneciente a los parámetros del sistema, en función de los valores DH públicos recibidos del resto de miembros, el exponente z secreto seleccionado, el valor DH secreto r1, y la coordenada x del valor DH del mensaje intermedio zP, difunde en el grupo el mensaje intermedio {c1, c2, …, cn} = {r1x(mod p), r2zP, r3zP, …, rnzP}; genera una clave de grupo K = r1(r2P + r3P + … + rnP) en función del valor DH secreto r1 seleccionado por el propio organizador y los valores DH públicos del resto de miembros.
Se debe observar que, en este modo de realización, el mensaje intermedio también se puede generar en función de los valores DH públicos recibidos del resto de miembros, el exponente z secreto seleccionado, el valor DH secreto r1, y la coordenada y del valor DH zP del mensaje intermedio. El principio específico es parecido al de generación del mensaje intermedio en función de los valores DH públicos recibidos del resto de miembros, el exponente z secreto seleccionado, el valor DH secreto r1, y la coordenada x del valor DH zP del mensaje intermedio y no se repetirá en la presente solicitud.
205: Después de recibir el mensaje intermedio difundido por el organizador U1, el miembro Ui del grupo (i puede ser 2, 3, …, n) extrae el valor DH del mensaje intermedio que se encuentra en el mensaje intermedio, en el que el valor DH zP del mensaje intermedio se obtiene de forma específica calculando , y a continuación, se obtiene la x en función del valor DH del mensaje intermedio zP = (x, y). Como c1= r1x(mod p), se calcula r1 = c1x-1 (mod p), siendo r1 el valor DH secreto seleccionado por el organizador.
206: Después de calcular el valor DH secreto r1 seleccionado por el organizador, el miembro Ui del grupo (i puede ser 2, 3, …, n) verifica si se cumple o no una ecuación r1P = X1, si se cumple se ejecuta el paso 207; en caso contrario se vuelve a ejecutar el paso 203.
La verificación de la ecuación r1P = X1 tiene el objetivo de verificar si se ha alterado o no el valor DH secreto seleccionado por el organizador.
207: El miembro Ui del grupo (i puede ser 2, 3, …, n) genera una clave de grupo K = r1(r2P + r3P + … + rnP) en función del valor DH secreto seleccionado por el organizador y los valores DH públicos del resto de miembros del grupo excepto el organizador.
Mediante el proceso anterior, las claves de grupo calculadas por todos los miembros Ui del grupo son iguales, esto es, la clave de grupo K = r1(r2P + r3P + … + rnP), y todos los miembros reservan los valores Xi recibidos en la etapa de negociación de clave.
Modo de realización 2
En este modo de realización se proporciona un método para generar una clave de grupo mediante negociación cuando se incorporan nuevos miembros al grupo. Este modo de realización se basa en el Modo de realización 1. Se asume que el grupo ∑ = {U1, U2, …, Un} ha llevado a cabo la negociación básica del Modo de realización 1, y ha obtenido la clave de grupo compartida K = r1(r2P + r3P + … + rnP). Ahora, t miembros pretenden unirse al grupo ∑, los cuales se representan, respectivamente, como Un+1, Un+2, …, Un+t. El proceso de negociación para una nueva clave requiere que participen los t miembros recién incorporados y el organizador U1. Haciendo referencia a la FIG. 4, U1, U2, …, Un+t constituyen conjuntamente una estructura con forma de estrella.
La FIG. 5 es un diagrama de flujo de un método para generar una clave de grupo cuando se incorporan nuevos miembros al grupo. Haciendo referencia a la FIG. 5, el método para generar una clave de grupo cuando se incorporan nuevos miembros al grupo incluye:
301: El organizador U1 y el nuevo miembro Ui seleccionan valores DH secretos !Zq en función de los parámetros
del sistema, generan valores DH públicos en función de los valores DH secretos y el punto base público P, y difunden en el grupo los valores DH públicos , en donde i puede ser n+1, …, n+t.
302: Después de recibir los valores DH públicos difundidos por los nuevos miembros, suponiendo que un exponente secreto z’ = xk, el organizador U1 calcula un valor DH del mensaje intermedio z’P = (x’, y’) de acuerdo con el protocolo de negociación de claves de Diffie-Hellman sobre la Curva Elíptica, genera un mensaje intermedio
que incluye el valor DH del mensaje intermedio, difunde en el grupo el mensaje intermedio , y genera una nueva clave de grupo en función del valor DH secreto seleccionado por el propio organizador y los valores DH públicos de los nuevos miembros.
En este modo de realización, xk representa una coordenada x de la clave K compartida por ∑ = {U1, U2, …, Un}, y todos los miembros del grupo saben que el organizador U1 selecciona la coordenada x o la coordenada y como z’ con antelación. El organizador U1 selecciona la coordenada x como z’, y también se puede suponer que z’ = yK, esto es, el organizador U1 selecciona la coordenada y como z’.
303: Después de recibir el mensaje intermedio difundido por el organizador U1, el nuevo miembro Ui (i!{n+1, …, n+t}) extrae el valor DH del mensaje intermedio incluido en el mensaje intermedio, en donde el valor DH del mensaje intermedio z’P se obtiene específicamente calculando
y, a continuación se obtiene x’ en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador.
304: Después de calcular el valor DH secreto seleccionado por el organizador, el nuevo miembro Ui (i!{n+1, …, n+t}) verifica si se satisface o no la ecuación , si lo hace, se ejecuta el paso 305; en caso contrario, se vuelve a ejecutar el paso 301.
La verificación de la ecuación tiene el objetivo de verificar si se ha alterado o no el valor DH secreto seleccionado por el organizador.
305: El nuevo miembro Ui (i!{n+1, …, n+t}) genera una nueva clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de los nuevos miembros.
306: Los otros miembros U2, …, Un del grupo ∑ obtienen z’ = xK en función del valor de z anterior, calculan
, (i!{2, …, n}) y a continuación obtienen x’ en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador. A continuación, en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de los nuevos miembros, cada uno de los otros miembros U2, …, Un genera una nueva clave de grupo
.
Mediante el proceso anterior, después de que los t miembros se hayan incorporado al grupo ∑, cada miembro Ui del grupo (i!{1, …, n+t}) calcula una nueva clave de grupo , y los t miembros recién añadidos reservan los valores recibidos en la etapa de negociación de clave.
Por ejemplo, se asume que un grupo ∑ = {U1, …, U5} ha realizado la negociación básica y ha obtenido la clave compartida K = r1(r2P + r3P + … + r5P). Un miembro G’ = {U6} tiene que incorporarse al grupo y comparte una nueva clave con los miembros del grupo ∑. De acuerdo con el método de este modo de realización, el proceso de negociación de clave requiere que U1 interactúe con el miembro U6 recién incorporado de modo que todos los miembros del grupo puedan calcular y obtener la nueva clave de grupo. En este ejemplo, después de que U1, U2, …, U6 constituyan conjuntamente una estructura con forma de estrella, se ejecutan los siguientes pasos específicos.
(1)
El organizador U1 selecciona el valor DH secreto !Zq en función de los parámetros del sistema, y envía a U6 el mensaje . U6 selecciona el valor DH secreto !Zq en función de los parámetros del sistema, y envía a U1 el mensaje .
(2)
Después de recibir el valor DH público enviado por U6, suponiendo que un exponente secreto z’ = xK, el organizador U1 calcula un valor DH del mensaje intermedio z’P = (x’, y’) de acuerdo con el protocolo de negociación de claves de Diffie-Hellman sobre la Curva Elíptica, genera un mensaje intermedio que incluye el valor DH del mensaje intermedio, difunde en el grupo el mensaje intermedio , y genera una clave de grupo en función del valor DH secreto seleccionado por el propio organizador y el valor DH público de U6.
En el ejemplo, xK representa una coordenada x de la clave K compartida por ∑ = {U1, U2, …, U5}.
(3)
Después de recibir el mensaje intermedio difundido por el organizador U1, U6 extrae el valor DH del mensaje intermedio incluido en el mensaje intermedio, en donde el valor DH del mensaje intermedio z’P se obtiene específicamente calculando
y, a continuación se obtiene x’ en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador U1.
(4)
Después de calcular el valor DH secreto seleccionado por el organizador U1, U6 verifica si se satisface o no la ecuación , si lo hace, se ejecuta el paso (5); en caso contrario, se vuelve a ejecutar el paso (1).
La verificación de la ecuación tiene el objetivo de verificar si se ha alterado o no el valor DH secreto seleccionado por el organizador.
(5)
U6 genera una clave de grupo en función del valor DH secreto seleccionado por el organizador U1 y el valor DH público de U6.
(6)
Los otros miembros U2, …, U5 en el grupo ∑ obtienen z’ = xK en función del valor de z anterior, calculan
, (i!{2, …, 5}) y obtienen la x’ en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador. Después, en función del valor DH secreto seleccionado por el organizador U1 y el valor DH público del nuevo miembro U6, cada uno de los otros miembros U2, …, U5 genera una clave de grupo .
Mediante el método anterior, todos los miembros obtienen la misma clave de grupo .
Modo de realización 3
En este modo de realización se proporciona un método para generar una clave de grupo mediante negociación cuando se combinan grupos. Este modo de realización se basa en el Modo de realización 1. Se necesitan combinar t grupos, los cuales se representan como respectivamente, y cada grupo tiene ni miembros, esto es,
(i!{1, t}). Cada grupo ha realizado, respectivamente, la negociación básica del Modo de realización 1, y los miembros del grupo comparten una clave de grupo Ki. En la presente solicitud se selecciona U11 como un nuevo organizador, es un grupo de combinación principal, y son grupos de combinación secundarios. El proceso de negociación requiere que participe el organizador Ui1 de cada grupo . Haciendo referencia a la FIG. 6, los grupos a combinar se constituyen conjuntamente en una estructura con forma de estrella y, haciendo referencia a la FIG. 7, a continuación se describe el proceso de negociación de clave.
401: U11 selecciona un valor DH secreto !Zq en función de los parámetros del sistema, genera un valor DH público en función del valor DH secreto y un punto base público P, y difunde en el grupo el valor DH público .
402: Suponiendo que un valor DH secreto , el organizador Ui1 de cada uno de los grupos de
combinación secundarios genera un valor DH público en función del valor DH secreto y el punto base público P, y difunde en el grupo el valor DH público , donde i tiene el valor de 2, …,
t.
En el modo de realización, representa una coordenada x de la clave Ki compartida en el (i!{1, t}), y todos los miembros del grupo saben que el organizador Ui1 selecciona la coordenada x o la coordenada y como z’ con antelación. En este modo de realización, el organizador Ui1 selecciona la coordenada x como z’, y también se puede suponer que , esto es, el organizador Ui1 selecciona la coordenada y como z’.
403: Después de recibir los valores DH públicos difundidos por Ui1, suponiendo que un exponente secreto , U11 calcula un valor DH del mensaje intermedio z’P = (x’, y’) basándose en el protocolo de negociación de claves de Diffie-Hellman sobre la Curva Elíptica, genera un mensaje intermedio
que incluye el valor DH del mensaje intermedio, difunde en el grupo el mensaje intermedio , y genera una nueva clave de grupo en función del valor DH secreto seleccionado por el propio U11 y el valor DH público de Ui1.
404: Después de recibir el mensaje intermedio difundido por U11, Ui1 (i!{2, …, t}) extrae el valor DH del mensaje intermedio incluido en el mensaje intermedio, en donde el valor DH del mensaje intermedio z’P se obtiene específicamente calculando
y, a continuación se obtiene x’ en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador.
405: Después de calcular el valor DH secreto seleccionado por U11, Ui1 (i!{2, …, t}) verifica si se satisface o no la ecuación , si lo hace, se ejecuta el paso 406; en caso contrario, se vuelve a ejecutar el paso 401.
La verificación de la ecuación tiene el objetivo de verificar si se ha alterado o no el valor DH secreto seleccionado por el organizador U11.
406: Ui1 (i!{2, …, t}) genera una nueva clave de grupo en función del valor DH secreto seleccionado por U11 y el valor DH público de Ui1.
407: El resto de miembros de los grupos (i!{2, …, t}) de combinación secundarios, excepto los organizadores, obtienen en función del valor z anterior, calculan
(i!{1, 2, …, t}), y obtienen x’ en
función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador. A continuación, en función del valor DH secreto seleccionado por U11 y el valor DH público de Ui1, cada uno de los otros miembros de los grupos (i!{2, …, t}) de
combinación secundarios genera una nueva clave de grupo .
408: En función del obtenido con anterioridad, el resto de miembros del grupo de combinación principal excepto el organizador, calcula
(i!{1, 2, …, t}), y a continuación obtienen la x’ correspondiente en función del valor DH del mensaje intermedio z’P = (x’, y’). Como , se calcula
, siendo el valor DH secreto seleccionado por el organizador. A continuación, en función del valor DH secreto seleccionado por U11 y el valor DH público de Ui1, cada uno de los otros miembros del grupo de combinación principal genera una nueva clave de grupo .
Mediante el método anterior, se combinan t grupos en un grupo siendo U11 el organizador, y todos los miembros comparten la clave de grupo .
Modo de realización 4
En este modo de realización, se proporciona un método para generar una clave de grupo cuando algunos miembros abandonan el grupo. Este modo de realización está basado en el Modo de realización 1. Se asume que los miembros del grupo ∑ = {U1, …, Un} han realizado la negociación básica del Modo de realización 1. k miembros tienen que abandonar el grupo y los otros miembros del grupo permanecen en el grupo. Los miembros del grupo restantes tienen que calcular una nueva clave de grupo para evitar que los miembros que han abandonado el grupo obtengan la
clave de grupo del grupo actual y se llevan a cabo los siguientes pasos específicos.
Primero, después de que k miembros abandonen el grupo ∑, el organizador U1, en función de los parámetros del sistema, vuelve a seleccionar el valor DH secreto , con z’!Zq, y los otros miembros en G’’ no tienen que volver a seleccionar los valores DH secretos.
A continuación los otros miembros del grupo , llevan a cabo una vez más el método de negociación de clave de grupo del Modo de realización 1, generan un nuevo mensaje intermedio
, y generan una nueva clave de grupo para compartirla.
Si el organizador del grupo original ∑ ha abandonado el grupo, es necesario volver a seleccionar un miembro para que sea el organizador en el grupo G’’, y a continuación ejecutar los pasos de más arriba para generar una nueva clave de grupo para compartirla.
Modo de realización 5
A medida que la escala del grupo se amplía continuamente, la carga de cálculo y la carga de comunicaciones del organizador aumentan rápidamente. Cuando la escala de la red aumenta hasta un punto determinado, el rendimiento del organizador se convierte en un cuello de botella del protocolo de modo que es necesario modificar de forma apropiada el rendimiento del organizador y así reducir la carga del organizador.
En este modo de realización se proporciona un método de negociación de clave de grupo para la comunicación de grupos grandes. Este modo de realización se basa en el Modo de realización 1. Cuando es muy grande el número de miembros del grupo que participan en la negociación, los miembros del grupo ∑ se dividen en m subgrupos lo que se representa como , y todos los nodos se constituyen en una estructura con forma de
estrella. Cada subgrupo tiene ni miembros, lo que se representa como . Los ni miembros también se pueden constituir en una estructura con forma de estrella y Ui1 se convierte en un organizador del subgrupo .
Como método para dividir el grupo, el grupo se puede dividir en función de un código de máquina único correspondiente a cada dispositivo del nodo (parecido a una dirección MAC de una tarjeta de red Ethernet), y también se puede dividir en función de localizaciones geográficas. Se llevan a cabo los siguientes pasos.
Primero, los ni miembros del subgrupo (i=1, 2, …, m) constituyen una estructura con forma de estrella, y llevan a cabo la negociación básica del Modo de realización 1 con el fin de obtener una clave de grupo Ki = ri1(ri2P + ri3P + …
+P).
A continuación, se selecciona el organizador U11 del subgrupo ∑1 como un organizador del grupo ∑, y los organizadores Ui1 de los subgrupos ∑i, en representación de cada subgrupo, constituyen una estructura con forma de estrella junto con U11, con el fin de llevar a cabo una vez más la negociación básica del Modo de realización 1.
U11 vuelve a seleccionar un valor DH secreto !Zq, genera un valor DH público en función del valor DH secreto y el punto base público P, y difunde en el grupo el valor DH público .
Ui1 (i!{1, 2, …, n}) participa en el cálculo tomando la coordenada x de la clave Ki de grupo individual, esto es , como un valor DH secreto, genera un valor DH público en función del valor DH secreto y el punto base público P, y difunde en el grupo el valor DH público .
U11 toma la coordenada x del valor de la clave K1 del subgrupo ∑1, esto es , como un nuevo exponente secreto , calcula un valor DH del mensaje intermedio z’P = (x’, y’) basándose en el protocolo de negociación de claves de Diffie-Hellman sobre la Curva Elíptica, genera un mensaje intermedio
que incluye el valor DH del mensaje intermedio, difunde en el grupo el mensaje intermedio , y genera una clave de grupo en función del valor DH secreto seleccionado por el propio U11 y el valor DH público recibido difundido por los Ui1.
Después de recibir el mensaje intermedio difundido por el organizador U11, Ui1 (i!{2, …, m}) extrae el valor DH del mensaje intermedio incluido en el mensaje intermedio, en donde el valor DH del mensaje intermedio z’P = (x’,y’) se obtiene específicamente calculando , y a continuación se obtiene x’ en función del valor DH del
mensaje intermedio z’P = (x’, y’). Como , se calcula , siendo el valor DH secreto seleccionado por el organizador U11. Ui1 genera una clave de grupo en
función de y del valor DH público de Ui1 (i!{2, …, m}).
Al mismo tiempo, los otros miembros Uij (i![1,m], j![1,ni]) del grupo ∑ monitorizan el mensaje enviado al grupo
correspondiente, obtienen utilizando la clave Ki obtenida del subgrupo , y calculan el valor DH secreto utilizando el mensaje intermedio difundido con el fin de obtener la clave de grupo compartida .
Por último, todos los miembros obtienen la misma clave de grupo .
Mediante el método anterior, el grupo ∑ se divide en m subgrupos = para reducir la carga del organizador del grupo ∑, y todos los miembros del grupo ∑ comparten la clave de grupo
.
Modo de realización 6
Haciendo referencia a la FIG. 8, se proporciona un sistema para generar una clave de grupo. El sistema incluye un dispositivo de comunicación que tiene el papel de organizador y dispositivos de comunicación que tienen el papel de miembros.
El dispositivo de comunicación que tiene el papel de organizador está configurado para seleccionar un valor DH secreto en función de los parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado y difundir en el grupo el valor DH público; y después de recibir los valores DH públicos de otros dispositivos, el dispositivo de comunicación que tiene el papel de organizador está configurado, además, para seleccionar un exponente secreto, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluya el valor DH del mensaje intermedio, difundir en el grupo el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto seleccionado y los valores DH públicos de todos los dispositivos del grupo.
Los dispositivos de comunicación que tienen el papel de miembros están configurados para seleccionar valores DH secretos en función de los parámetros del sistema, generar valores DH públicos en función de los parámetros del
sistema y de los valores DH secretos seleccionados y difundir los valores DH públicos; y después de recibir el valor DH público y el mensaje intermedio difundido por el dispositivo de comunicación que tiene el papel de organizador, los dispositivos de comunicación que tienen el papel de miembros están configurados, además, para calcular el valor DH secreto seleccionado por el organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto, y a continuación generar una clave de grupo en función del valor DH secreto y los valores DH públicos de todos los dispositivos del grupo.
Cuando se incorporan algunos miembros al grupo o lo abandonan, el dispositivo de comunicación que tiene el papel de organizador y los dispositivos de comunicación que tienen el papel de miembros en el sistema están configurados, además, para volver a generar y difundir nuevos valores DH públicos.
Modo de realización 7
Haciendo referencia a la FIG. 9, se proporciona un dispositivo de comunicación. El dispositivo incluye: un módulo de selección de parámetros del sistema, un módulo de generación y difusión del valor DH público, un módulo de generación y difusión del mensaje intermedio y un módulo de generación de la clave de grupo del organizador.
El módulo de selección de parámetros del sistema está configurado para seleccionar parámetros del sistema a partir de una curva elíptica.
El módulo de generación y difusión del valor DH público está configurado para seleccionar un valor DH secreto en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado y difundir el valor DH público.
El módulo de generación y difusión del mensaje intermedio está configurado para seleccionar un exponente secreto después de recibir los valores DH públicos difundidos por otros dispositivos de comunicación, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluya el valor DH del mensaje intermedio en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público, y difundir el mensaje intermedio.
El módulo de generación de la clave de grupo del organizador está configurado para recibir los valores DH públicos difundidos por otros dispositivos de comunicación, y generar una clave de grupo en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público y los valores DH públicos difundidos por otros dispositivos de comunicación.
Con el objetivo de mejorar todavía más el dispositivo de comunicación, cuando algunos miembros se incorporan al grupo o lo abandonan, el dispositivo de comunicación incluye, además, un módulo de actualización de la clave de grupo.
El módulo de actualización de la clave de grupo está configurado para ordenar al módulo de generación y difusión del valor DH público que genere y difunda un nuevo valor DH público cuando se incorporen nuevos miembros al grupo o algunos lo abandonen.
A continuación se describe el proceso de generación de una nueva clave de grupo cuando nuevos miembros se incorporan al grupo.
El módulo de actualización de clave de grupo ordena al módulo de generación y difusión del valor DH público que seleccione un nuevo valor DH secreto para el organizador y los nuevos miembros en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, que genere un nuevo valor DH público en función de los parámetros del sistema y del nuevo valor DH secreto seleccionado, y que difunda el nuevo valor DH público.
El módulo de generación y difusión del mensaje intermedio selecciona un nuevo exponente secreto después de recibir los valores DH públicos de los nuevos miembros difundidos por otros dispositivos, calcula un nuevo valor DH del mensaje intermedio en función del nuevo exponente secreto, genera un nuevo mensaje intermedio que incluya el nuevo valor DH del mensaje intermedio en función del nuevo valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público, y difunde el nuevo mensaje intermedio.
El módulo de generación de la clave de grupo del organizador genera una nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público y los valores DH públicos recibidos de los nuevos miembros difundidos por otros dispositivos.
A continuación se describe el proceso de generación de una nueva clave de grupo cuando algunos miembros abandonan el grupo.
El módulo de actualización de la clave de grupo ordena al módulo de generación y difusión del valor DH público que
seleccione un nuevo valor DH secreto para el organizador en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, que genere un nuevo valor DH público en función de los parámetros del sistema y del nuevo valor DH secreto seleccionado, y que difunda el nuevo valor DH público.
El módulo de generación y difusión del mensaje intermedio selecciona un nuevo exponente secreto después de recibir los valores DH públicos de los miembros restantes difundidos por otros dispositivos, calcula un nuevo valor DH del mensaje intermedio en función del nuevo exponente secreto, genera un nuevo mensaje intermedio que incluya el nuevo valor DH del mensaje intermedio en función del nuevo valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público, y difunde el nuevo mensaje intermedio.
El módulo de generación de la clave de grupo del organizador genera una nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público y los valores DH públicos recibidos de los miembros restantes difundidos por otros dispositivos.
Modo de realización 8
Haciendo referencia a la FIG. 10, se proporciona otro dispositivo de comunicación. El dispositivo incluye: un módulo de selección de parámetros del sistema, un módulo de generación y difusión del valor DH público y un módulo de generación de la clave de grupo del miembro.
El módulo de selección de parámetros del sistema está configurado para seleccionar parámetros del sistema a partir de una curva elíptica.
El módulo de generación y difusión del valor DH público está configurado para seleccionar valores DH secretos en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar valores DH públicos en función de los parámetros del sistema y de los valores DH secretos seleccionados y difundir los valores DH públicos generados.
El módulo de generación de la clave de grupo del miembro está configurado para recibir valores DH públicos y un mensaje intermedio difundido por otro dispositivo de comunicación, calcular un valor DH secreto seleccionado por un organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto en función del valor DH público difundido por el dispositivo de comunicación que difunde el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto y de los valores DH públicos difundidos por el resto de dispositivos de comunicación excepto el dispositivo de comunicación que difunde el mensaje intermedio.
Con el objetivo de mejorar todavía más el dispositivo de comunicación, cuando algunos miembros se incorporan al grupo o lo abandonan, el dispositivo de comunicación incluye, además, un módulo de actualización de la clave de grupo.
El módulo de actualización de la clave de grupo está configurado para ordenar al módulo de generación y difusión del valor DH público que genere y difunda un nuevo valor DH público para los nuevos miembros incorporados cuando se incorporan al grupo nuevos miembros.
Cuando se incorporan al grupo nuevos miembros, el módulo de actualización de clave de grupo ordena al módulo de generación y difusión del valor DH público que seleccione nuevos valores DH secretos para los nuevos miembros en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, que genere nuevos valores DH públicos de los nuevos miembros en función de los parámetros del sistema y de los nuevos valores DH secretos seleccionados, y que difunda los nuevos valores DH públicos de los nuevos miembros. Después de recibir el nuevo mensaje intermedio, el módulo de generación de la clave de grupo del miembro calcula un nuevo valor DH secreto seleccionado por un organizador en función del nuevo mensaje intermedio, verifica que el nuevo valor DH secreto sea correcto en función del nuevo valor DH público recibido del organizador, y genera una nueva clave de grupo en función del nuevo valor DH secreto y los nuevos valores DH públicos de los nuevos miembros difundidos por el módulo de generación y difusión del valor DH público.
Cuando algunos miembros abandonan el grupo, después de recibir un nuevo mensaje intermedio, el módulo de generación de la clave de grupo del miembro calcula un nuevo valor DH secreto seleccionado por el organizador en función del nuevo mensaje intermedio, verifica que el nuevo valor DH secreto sea correcto en función del nuevo valor DH público recibido del organizador, y genera una nueva clave de grupo en función del nuevo valor DH secreto y de los nuevos valores DH públicos de los miembros restantes difundidos por el módulo de generación y difusión del valor DH público.
Los modos de realización descritos más arriba tienen las siguientes ventajas.
1) Alta seguridad: la complejidad de cálculo del problema del logaritmo discreto de la curva elíptica es, en la actualidad, de tipo exponencial, pero el sistema de cifrado de clave pública RSA es de tipo subexponencial.
2) Baja carga de cálculo y alta velocidad de proceso: bajo la misma condición de recursos de cálculo, el sistema de
cifrado de curva elíptica tiene una mayor velocidad de proceso si se compara con el RSA y el algoritmo de firma digital (DSA).
3) Pequeño espacio de almacenamiento: la longitud de clave y los parámetros del sistema del sistema de cifrado de curva elíptica son mucho menores que los del RSA y el DSA. El cifrado de curva elíptica (ECC) de 160 bits proporciona el mismo nivel de seguridad que el RSA o el DSA de 1024 bits y el ECC de 210 bits proporciona el mismo nivel de seguridad que el RSA o el DSA de 2048 bits, lo que significa que el sistema de cifrado de curva elíptica ocupa un espacio de almacenamiento mucho menor.
4) Bajo requisito de ancho de banda: para un nivel de seguridad dado, el ECC tiene un parámetro menor que el RSA y el DSA. La diferencia de tamaño de los parámetros del ECC y del RSA y el DSA es más obvia para un nivel de seguridad más alto. El parámetro de pequeño tamaño tiene ventajas de una alta velocidad de cálculo, una clave corta y un certificado de clave pequeño y, de este modo, la longitud de firma y la longitud del texto cifrado son también cortos.
Teniendo en cuenta lo anterior, el ECC puede proporcionar una alta seguridad con poca sobrecarga (por ejemplo, ancho de banda, carga de cálculo, espacio de almacenamiento y consumo de energía) y un pequeño retardo, lo cual es especialmente apropiado para la situación en la que la capacidad de cálculo y el ancho de banda están limitados como, por ejemplo, la comunicación de seguridad en un entrono de red Ad Hoc. Comparado con soluciones parecidas, cuando se proporciona el mismo nivel de seguridad, el ECC posee las ventajas de alta velocidad de cálculo, pequeño espacio de almacenamiento, un requisito bajo de ancho de banda de red, etc.
Los modos de realización de la presente invención soportan la incorporación y el abandono de miembros. Específicamente, cuando algunos miembros se incorporan al grupo, es necesario que los miembros recién incorporados y el organizador participen en la negociación y, cuando algunos miembros abandonan el grupo, el organizador debe volver a seleccionar un número aleatorio, sin necesidad de volver a seleccionar números aleatorios para los restantes miembros. Así pues, los modos de realización de la presente invención poseen una alta velocidad de cálculo, ocupan un pequeño espacio de almacenamiento y su utilización es flexible.
Cuando se aplica en la comunicación de grupos muy grandes, las soluciones técnicas de los modos de realización de la presente invención pueden reducir de forma efectiva la carga de cálculo del organizador al mismo tiempo que aumenta ligeramente la carga de comunicación. En otro orden de cosas, como el protocolo está basado en el sistema de cifrado de curva elíptica, se puede conseguir una mayor eficiencia de funcionamiento del protocolo, incluyendo menores intercambios de mensajes, menos ancho de banda de red ocupado, menor espacio de almacenamiento de la clave y una mayor velocidad de cálculo.
Las soluciones técnicas de los modos de realización descritos más arriba se pueden implementar mediante hardware y software, y el software se almacena en un medio de almacenamiento legible como, por ejemplo, un disco flexible, un disco duro o un disco óptico de un ordenador.
Las descripciones anteriores son únicamente modos de realización preferidos de la presente invención, pero no pretenden limitar la presente invención.

Claims (15)

  1. REIVINDICACIONES
    1. Un método para generar una clave de grupo, en el que los parámetros del sistema se seleccionan basándose en una curva elíptica, comprendiendo el método:
    formar (201), por parte de los miembros del grupo, una estructura con forma de estrella, y seleccionar un organizador entre los miembros del grupo;
    seleccionar (203) individualmente de forma aleatoria, por parte de los miembros del grupo, valores DH secretos en función de los parámetros del sistema, generar individualmente valores DH públicos en función de los parámetros del sistema y los valores DH secretos seleccionados y difundir en el grupo los valores DH públicos;
    seleccionar (204), por parte del organizador, un exponente secreto después de recibir los valores DH públicos de los otros miembros del grupo, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluya el valor DH del mensaje intermedio, difundir en el grupo el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y de los valores DH públicos de los otros miembros del grupo; y
    calcular (205), por parte de los otros miembros del grupo, después de recibir el mensaje intermedio, el valor DH secreto seleccionado por el organizador en función del mensaje intermedio y del valor DH público del organizador, verificar (206) que sea correcto el valor DH secreto calculado seleccionado por el organizador en función del valor DH público recibido del organizador, y generar (207) una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de los otros miembros del grupo.
  2. 2.
    El método de acuerdo con la reivindicación 1, en el que el cálculo (204) del valor DH del mensaje intermedio en función del exponente secreto comprende, además:
    calcular el valor DH zP del mensaje intermedio en función del exponente secreto z, en donde el exponente secreto z es un número aleatorio seleccionado de un conjunto Zq de restos no negativos mínimos obtenidos a partir de enteros módulo q, donde q es un número primo entre los parámetros del sistema y P es un punto base público en los parámetros del sistema.
  3. 3.
    El método de acuerdo con la reivindicación 2, en el que la generación (204) del mensaje intermedio que incluye el valor DH del mensaje intermedio comprende, además:
    extraer una coordenada x, x, del valor DH del mensaje intermedio, zP, sobre la curva elíptica, y calcular un componente r1x(mod p) del mensaje intermedio del organizador en función del valor DH secreto r1 seleccionado por el organizador, en donde p es un número primo entre los parámetros del sistema;
    calcular los componentes r2zP, r3zP, …, rnzP del mensaje intermedio de los otros miembros en función del exponente secreto z y de los valores DH públicos Xi = riP difundidos por los otros miembros del grupo excepto el organizador, en donde i = 2, …, n, y n es el número de miembros del grupo; y
    generar el mensaje intermedio {c1, c2, …, cn} = {r1x(mod p), r2zP, r3zP, …, rnzP} en función del componente del mensaje intermedio del organizador y los componentes del mensaje intermedio de los otros miembros; o
    extraer una coordenada y, y, del valor DH del mensaje intermedio, zP, sobre la curva elíptica, y calcular un componente r1y(mod p) del mensaje intermedio del organizador en función del valor DH secreto r1 seleccionado por el organizador, en donde p es un número primo entre los parámetros del sistema;
    calcular los componentes r2zP, r3zP, …, rnzP del mensaje intermedio de los otros miembros en función del exponente secreto z y de los valores DH públicos Xi = riP difundidos por los otros miembros del grupo excepto el organizador, en donde i = 2, …, n, y n es el número de miembros del grupo; y
    generar el mensaje intermedio {c1, c2, …, cn} = {r1y(mod p), r2zP, r3zP, …, rnzP} en función del componente del mensaje intermedio del organizador y los componentes del mensaje intermedio de los otros miembros.
  4. 4. El método de acuerdo con la reivindicación 3, en el que el cálculo del valor DH secreto seleccionado por el organizador en función del mensaje intermedio comprende, además:
    calcular el valor DH del mensaje intermedio zP en función del mensaje intermedio {c1, c2, …, cn} = {r1x(mod p), r2zP, r3zP, …, rnzP} y del valor DH secreto ri, extraer la coordenada x, x, del valor DH del mensaje intermedio zP sobre la curva elíptica, y calcular el valor DH secreto r1 = c1x-1(mod p) seleccionado por el organizador; o
    calcular el valor DH del mensaje intermedio zP en función del mensaje intermedio {c1, c2, …, cn} = {r1y(mod p), r2zP, r3zP, …, rnzP} y del valor DH secreto ri, extraer la coordenada y, y, del valor DH del mensaje intermedio zP
    sobre la curva elíptica, y calcular el valor DH secreto r1 = c1y-1(mod p) seleccionado por el organizador.
  5. 5.
    El método de acuerdo con la reivindicación 1, en el que la generación del clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de los otros miembros del grupo comprende, además:
    generar la clave de grupo K = r1(r2P + r3P + … + rnP) en función de los valores DH públicos Xi = riP de los otros miembros del grupo y el valor DH secreto r1 seleccionado por el organizador, en donde i = 2, …, n, n es el número de los miembros del grupo, y P es un punto base público en los parámetros del sistema.
  6. 6.
    El método de acuerdo con la reivindicación 1, en el que la verificación del valor DH secreto calculado seleccionado por el organizador en función del valor DH público recibido del organizador comprende, además:
    calcular r1P en función del valor DH secreto r1 seleccionado por el organizador y el punto base público P seleccionado de los parámetros del sistema; y
    verificar si el valor DH público X1 recibido del organizador es o no igual al r1P calculado, en donde si es igual el valor DH secreto es correcto.
  7. 7. El método de acuerdo con la reivindicación 1, en el que cuando se incorporan nuevos miembros al grupo, el método comprende, además:
    formar, por parte de los nuevos miembros y los miembros del grupo, una nueva estructura con forma de estrella;
    seleccionar individualmente de forma aleatoria, por parte del organizador y de los nuevos miembros, nuevos valores DH secretos en función de los parámetros del sistema, generar individualmente nuevos valores DH públicos en función de los parámetros del sistema y de los nuevos valores DH secretos, y difundir en el grupo los nuevos valores DH públicos;
    tomar, por parte del organizador, una coordenada x o una coordenada y de la clave de grupo como un nuevo exponente secreto después de recibir los nuevos valores DH públicos, calcular un nuevo valor DH del mensaje intermedio en función del nuevo exponente secreto, generar un nuevo mensaje intermedio que incluye el nuevo valor DH del mensaje intermedio, difundir en el grupo el nuevo mensaje intermedio y generar una nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el organizador y los nuevos valores DH públicos de los nuevos miembros; y
    recibir, por parte de los otros miembros del grupo excepto el organizador, el nuevo mensaje intermedio del organizador, el nuevo valor DH público del organizador y los nuevos valores DH públicos de los nuevos miembros, calcular el nuevo valor DH secreto seleccionado por el organizador en función del nuevo mensaje intermedio, verificar que sea correcto el nuevo valor DH secreto calculado seleccionado por el organizador en función del nuevo valor DH público recibido del organizador, y generar una nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el organizador y los nuevos valores DH públicos de los nuevos miembros del grupo.
  8. 8. El método de acuerdo con la reivindicación 7, en el que la generación del nuevo mensaje intermedio que incluye el nuevo valor DH del mensaje intermedio comprende, además:
    extraer una coordenada x, x’, del nuevo valor DH del mensaje intermedio, z’P, sobre la curva elíptica y calcular un componente
    del organizador del nuevo mensaje intermedio en función del nuevo valor DH secreto seleccionado por el organizador, en donde p es un número primo entre los parámetros del sistema, z’ = xK, xK es una coordenada x de la clave de grupo, y P es un punto base público en los parámetros del sistema;
    calcular los componentes de los nuevos miembros, , del nuevo mensaje intermedio en función del exponente secreto z’ y de los valores DH públicos difundidos por los nuevos miembros, en donde i=n+1, …, n+t, n es el número de miembros del grupo antes de que los nuevos miembros se incorporen al grupo, y t es el número de nuevos miembros; y
    generar el nuevo mensaje intermedio del componente del organizador del nuevo mensaje intermedio y de los componentes de los nuevos miembros del nuevo mensaje intermedio; o
    extraer una coordenada y, y’, del nuevo valor DH del mensaje intermedio, z’P, sobre la curva elíptica y calcular un componente
    del nuevo mensaje intermedio en función del nuevo valor DH secreto
    seleccionado por el organizador, en donde p es un número primo dentro de los parámetros del sistema, z’ = yK, yK es una coordenada y de la clave de grupo, y P es un punto base público en los parámetros del sistema;
    en función del exponente secreto z’ y los valores DH públicos difundidos por los nuevos miembros, en donde i=n+1, …, n+t, n es el número de miembros del grupo antes de que los nuevos miembros se incorporen al grupo, y t es el número de nuevos miembros; y
    generar el nuevo mensaje intermedio en función del componente del organizador del nuevo mensaje intermedio y de los componentes de los nuevos miembros del nuevo mensaje intermedio.
  9. 9.
    El método de acuerdo con la reivindicación 7, en el que la generación de la nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el organizador y los nuevos valores DH públicos de los nuevos miembros comprende, además:
    generar la clave de grupo en función de los valores DH públicos de los nuevos miembros y del nuevo valor DH secreto seleccionado por el organizador, en donde i=n+1, …, n+t, n es el número de miembros del grupo antes de que los nuevos miembros se incorporen al grupo, t es el número de nuevos miembros, y P es el punto base público en los parámetros del sistema.
  10. 10.
    El método de acuerdo con la reivindicación 1, en el que cuando algunos miembros abandonan el grupo, el método comprende, además:
    seleccionar (301), por parte del organizador, un nuevo valor DH secreto en función de los parámetros del sistema, generar un nuevo valor DH público en función de los parámetros del sistema y del nuevo valor DH secreto seleccionado, y difundir en el grupo el nuevo valor DH público;
    seleccionar (302), por parte del organizador, un nuevo exponente secreto, calcular un nuevo valor DH del mensaje intermedio en función del nuevo exponente secreto, generar un nuevo mensaje intermedio que incluye el nuevo valor DH del mensaje intermedio, difundir en el grupo el nuevo mensaje intermedio, y generar una nueva clave de grupo en función del nuevo valor DH secreto seleccionado por el organizador y los valores DH públicos del resto de miembros del grupo excepto el organizador; y
    calcular (306), por parte del resto de miembros del grupo excepto el organizador, el nuevo valor DH secreto seleccionado por el organizador en función del nuevo mensaje intermedio después de recibir el nuevo mensaje intermedio y del nuevo valor DH público del organizador, verificar que sea correcto el nuevo valor DH secreto en función del nuevo valor DH público del organizador recibido, y generar una nueva clave de grupo en función del nuevo valor DH secreto y de los valores DH públicos del resto de miembros del grupo excepto el organizador.
  11. 11. El método de acuerdo con la reivindicación 10, en el que la generación del nuevo mensaje intermedio que incluye el nuevo valor DH del mensaje intermedio comprende, además:
    extraer una coordenada x, x’, del nuevo valor DH del mensaje intermedio, z’P, sobre la curva elíptica, y calcular un componente del organizador, , del nuevo mensaje intermedio en función del nuevo valor DH secreto seleccionado por el organizador, en donde p es un número primo entre los parámetros del sistema;
    calcular los componentes del resto de miembros, , del nuevo mensaje intermedio en función del exponente secreto z’ y de los valores DH públicos difundidos por el resto de miembros del grupo excepto el organizador, en donde i = 2, …, j1-1, j1+1,…, jk-1, jk+1, …, n, y k es el número de los miembros que abandonan el grupo; y
    generar el nuevo mensaje intermedio
    en función del componente del organizador del nuevo mensaje intermedio y los componentes del resto de miembros del nuevo mensaje intermedio; o
    extraer una coordenada y, y’, del nuevo valor DH del mensaje intermedio, z’P, sobre la curva elíptica, y calcular un componente del organizador, , del nuevo mensaje intermedio en función del nuevo valor DH secreto seleccionado por el organizador, en donde p es un número primo entre los parámetros del sistema;
    calcular los componentes del resto de miembros, , del nuevo mensaje intermedio en función del exponente secreto z’ y de los valores DH públicos difundidos por el resto de miembros del grupo excepto el organizador, en donde i = 2, …, j1-1, j1+1,…, jk-1, jk+1, …, n, y k es el número de los miembros que abandonan el grupo; y
    generar el nuevo mensaje intermedio en función del componente del organizador del nuevo mensaje intermedio y de los componentes del resto de miembros
    del nuevo mensaje intermedio.
  12. 12. Un sistema para generar una clave de grupo, que comprende: un dispositivo de comunicación que actúa como organizador y unos dispositivos de comunicación que actúan como miembros;
    en donde el dispositivo de comunicación que actúa como organizador está configurado para seleccionar un valor DH secreto en función de los parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado, y difundir en el grupo el valor DH público; y después de recibir los valores DH públicos de otros dispositivos, el dispositivo de comunicación que actúa como organizador está configurado, además, para seleccionar un exponente secreto, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluye el valor DH del mensaje intermedio, difundir en el grupo el mensaje intermedio, y generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de todos los dispositivos del grupo; y
    los dispositivos de comunicación que actúan como miembros están configurados para seleccionar los valores DH secretos en función de los parámetros del sistema, generar valores DH públicos en función de los parámetros del sistema y de los valores DH secretos seleccionados, y difundir los valores DH públicos; y después de recibir el valor DH público y el mensaje intermedio difundidos por el dispositivo de comunicación que actúa como organizador, los dispositivos de comunicación que actúan como miembros están configurados, además, para calcular el valor DH secreto seleccionado por el organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto calculado seleccionado por el organizador, y generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos de todos los dispositivos del grupo.
  13. 13. Un dispositivo de comunicación, que comprende:
    un módulo de selección de parámetros del sistema, configurado para seleccionar parámetros del sistema a partir de una curva elíptica;
    un módulo de generación y difusión del valor DH público, configurado para seleccionar un valor DH secreto en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar un valor DH público en función de los parámetros del sistema y del valor DH secreto seleccionado, y difundir el valor DH público;
    un módulo de generación y difusión del mensaje intermedio, configurado para seleccionar un exponente secreto después de recibir los valores DH públicos difundidos por otros dispositivos de comunicación, calcular un valor DH del mensaje intermedio en función del exponente secreto, generar un mensaje intermedio que incluye el valor DH del mensaje intermedio en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público, y difundir el mensaje intermedio; y
    un módulo de generación de la clave de grupo del organizador, configurado para recibir los valores DH públicos difundidos por otros dispositivos de comunicación, y generar una clave de grupo en función del valor DH secreto seleccionado por el módulo de generación y difusión del valor DH público y los valores DH públicos difundidos por otros dispositivos de comunicación.
  14. 14. Un dispositivo de comunicación, que comprende:
    un módulo de selección de parámetros del sistema, configurado para seleccionar parámetros del sistema a partir de una curva elíptica;
    un módulo de generación y difusión del valor DH público, configurado para seleccionar valores DH secretos en función de los parámetros del sistema seleccionados por el módulo de selección de parámetros del sistema, generar valores DH públicos en función de los parámetros del sistema y de los valores DH secretos seleccionados, y difundir los valores DH públicos; y
    un módulo de generación de la clave de grupo del miembro, configurado para recibir un valor DH público y un mensaje intermedio difundido por otro dispositivo de comunicación, calcular un valor DH secreto seleccionado por un organizador en función del mensaje intermedio, verificar que sea correcto el valor DH secreto calculado seleccionado por el organizador en función del valor DH público difundido por el dispositivo de comunicación que difunde el mensaje intermedio, y a continuación generar una clave de grupo en función del valor DH secreto seleccionado por el organizador y los valores DH públicos difundidos por los otros dispositivos de comunicación excepto el dispositivo de comunicación que difunde el mensaje intermedio.
  15. 15. El dispositivo de comunicación de acuerdo con la reivindicación 13 ó 14, que comprende, además:
    un módulo de actualización de la clave de grupo, configurado para ordenar al módulo de generación y difusión del valor DH público que genere y difunda nuevos valores DH públicos para los nuevos miembros cuando se incorporen nuevos miembros al grupo.
ES08757518T 2007-06-08 2008-05-27 Método, sistema y dispositivo para generar una clave de grupo Active ES2428381T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2007101003755A CN101321053B (zh) 2007-06-08 2007-06-08 一种生成组密钥的方法、系统和设备
CN200710100375 2007-06-08
PCT/CN2008/071104 WO2008151540A1 (en) 2007-06-08 2008-05-27 Method, system and device for generating group key

Publications (1)

Publication Number Publication Date
ES2428381T3 true ES2428381T3 (es) 2013-11-07

Family

ID=40129241

Family Applications (1)

Application Number Title Priority Date Filing Date
ES08757518T Active ES2428381T3 (es) 2007-06-08 2008-05-27 Método, sistema y dispositivo para generar una clave de grupo

Country Status (6)

Country Link
US (1) US8280059B2 (es)
EP (1) EP2124381B1 (es)
CN (1) CN101321053B (es)
ES (1) ES2428381T3 (es)
PL (1) PL2124381T3 (es)
WO (1) WO2008151540A1 (es)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101202622A (zh) * 2006-12-15 2008-06-18 上海交通大学 一种减小参数传输带宽的方法和装置以及密钥交换方法
NO331571B1 (no) 2009-10-30 2012-01-30 Uni I Stavanger System for a beskytte en kryptert informasjonsenhet
CN102111266B (zh) * 2009-12-28 2014-01-15 航天信息股份有限公司 基于椭圆曲线的组密钥产生方法
DE112010005596B4 (de) * 2010-05-27 2014-12-31 South China University Of Technology (Scut) Ansatz zur hierarchischen Gruppenschlüsselverwaltung auf Basis linearer Geometrie
US20120233457A1 (en) * 2011-03-08 2012-09-13 Certicom Corp. Issuing implicit certificates
CN102256248B (zh) * 2011-07-05 2015-01-21 淮阴工学院 一种Ad hoc组密钥管理方案
CN103096308B (zh) * 2011-11-01 2016-01-20 华为技术有限公司 生成组密钥的方法和相关设备
KR101275830B1 (ko) 2011-11-07 2013-06-18 숭실대학교산학협력단 그룹키 관리 장치 및 방법, 그리고 그 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록매체
US8681992B2 (en) * 2012-02-13 2014-03-25 Alephcloud Systems, Inc. Monitoring and controlling access to electronic content
US9092780B2 (en) * 2012-02-13 2015-07-28 PivotCloud, Inc. User-mediator monitoring and controlling access to electronic content
US20140297333A1 (en) * 2012-02-13 2014-10-02 Alephcloud Systems, Inc. User-mediator mediating transfer of electronic content
EP3439345A1 (en) 2013-03-05 2019-02-06 Huawei Technologies Co., Ltd. Key exchange method and apparatus
CN106452736B (zh) * 2016-08-12 2019-05-17 数安时代科技股份有限公司 密钥协商方法和系统
CN106850229B (zh) * 2017-01-22 2019-10-25 武汉理工大学 基于乘积秘密分割的sm2数字签名生成方法及系统
US10938563B2 (en) * 2017-06-30 2021-03-02 Intel Corporation Technologies for provisioning cryptographic keys
CN109981293B (zh) * 2019-03-28 2022-09-27 郑州师范学院 一种成员撤销处理方法、装置、设备及存储介质
WO2021068258A1 (zh) * 2019-10-12 2021-04-15 华为技术有限公司 获得安全参数的方法及装置
US11496301B2 (en) * 2020-02-21 2022-11-08 International Business Machines Corporation Publish/subscribe messaging
CN112422276B (zh) * 2020-11-04 2022-03-25 郑州信大捷安信息技术股份有限公司 一种多方密钥协商的实现方法及系统
KR102816407B1 (ko) * 2022-01-03 2025-06-05 (주)유엠로직스 다차원 함수를 이용한 pbe 방식의 그룹키 기반 화상회의 보안 시스템 및 그 방법
CN114338016B (zh) * 2022-01-08 2023-11-24 安徽师范大学 一种基于群组密钥协商的危害废料区块链监管系统、方法
CN115314203B (zh) * 2022-10-11 2022-12-20 南京易科腾信息技术有限公司 群组密钥协商方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272755A (en) * 1991-06-28 1993-12-21 Matsushita Electric Industrial Co., Ltd. Public key cryptosystem with an elliptic curve
US6212279B1 (en) * 1998-06-26 2001-04-03 The United States Of America As Represented By The United States National Security Agency Method of elliptic curve cryptographic key exchange using reduced base tau expansion in non-adjacent form
US7181014B1 (en) * 1999-09-10 2007-02-20 Cisco Technology, Inc. Processing method for key exchange among broadcast or multicast groups that provides a more efficient substitute for Diffie-Hellman key exchange
US6987855B1 (en) * 1999-09-10 2006-01-17 Cisco Technology, Inc. Operational optimization of a shared secret Diffie-Hellman key exchange among broadcast or multicast groups
US6941457B1 (en) * 2000-06-30 2005-09-06 Cisco Technology, Inc. Establishing a new shared secret key over a broadcast channel for a multicast group based on an old shared secret key
US7096356B1 (en) * 2001-06-27 2006-08-22 Cisco Technology, Inc. Method and apparatus for negotiating Diffie-Hellman keys among multiple parties using a distributed recursion approach
JP2003324418A (ja) * 2002-02-27 2003-11-14 Canon Inc 画像処理装置、データ処理装置及びデータ処理方法
JP2004297578A (ja) * 2003-03-27 2004-10-21 Matsushita Electric Ind Co Ltd 公開鍵生成装置、共有鍵生成装置、鍵交換装置、及び鍵交換方法
FI118619B (fi) * 2003-05-16 2008-01-15 Jarmo Talvitie Menetelmä ja järjestelmä tiedon salaamiseksi ja tallentamiseksi
CN1667999A (zh) * 2005-01-18 2005-09-14 中国电子科技集团公司第三十研究所 一种移动自组网络中移动节点间的保密通信方法
DE102006027639B4 (de) * 2006-06-13 2008-06-19 Nec Europe Ltd. Verfahren zur Etablierung eines geheimen Schlüssels

Also Published As

Publication number Publication date
EP2124381A1 (en) 2009-11-25
WO2008151540A1 (en) 2008-12-18
US20100040236A1 (en) 2010-02-18
CN101321053B (zh) 2011-09-14
CN101321053A (zh) 2008-12-10
EP2124381B1 (en) 2013-07-17
PL2124381T3 (pl) 2013-11-29
US8280059B2 (en) 2012-10-02
EP2124381A4 (en) 2012-02-29

Similar Documents

Publication Publication Date Title
ES2428381T3 (es) Método, sistema y dispositivo para generar una clave de grupo
Yıldız et al. PLGAKD: A PUF-based lightweight group authentication and key distribution protocol
ES2400894B1 (es) Procedimiento para una firma digital múltiple
Chiang et al. Group keys and the multicast security in ad hoc networks
Gennaro et al. Strongly-resilient and non-interactive hierarchical key-agreement in MANETs
ES2400895B1 (es) Método para realizar una firma digital de grupo
Ferrari et al. Lightweight group-key establishment protocol for IoT devices: Implementation and performance Analyses
Zhen et al. A lightweight encryption and authentication scheme for wireless sensor networks
Gebremichael et al. Lightweight iot group key establishment scheme using one-way accumulator
Goyal et al. LiPI: lightweight privacy-preserving data aggregation in IoT
Park et al. ISMANET: a secure routing protocol using identity-based signcryption scheme for mobile ad-hoc networks
Zhang et al. Mobile ad-hoc network key management with certificateless cryptography
Moon et al. Authenticated key exchange protocol for wireless sensor networks
Di Crescenzo et al. Improved topology assumptions for threshold cryptography in mobile ad hoc networks
Alomari Fully distributed certificate authority based on polynomial over elliptic curve for MANET
Jilna et al. A key management technique based on elliptic curves for static wireless sensor networks
Kaur et al. Implementing RSA Algorithm in MANET and Comparison with RSA Digital Signature
Saxena et al. Noninteractive self-certification for long-lived mobile ad hoc networks
Kumar et al. Proactive secret sharing for long lived MANETs using Elliptic Curve Cryptography
Menesidou et al. Automated key exchange protocol evaluation in delay tolerant networks
Sánchez Analysis and Evaluation of the Impact of Post-Quantum Cryptography at the Edge of IoT
Di Crescenzo et al. Threshold cryptography in mobile ad hoc networks under minimal topology and setup assumptions
Pushpalatha et al. Gamanet: A ganatic algorithm approach for hierarchical group key management in mobile adhoc network
Shin et al. An Effective Authentication Scheme in Mobile Ad Hoc Network
CN107733649A (zh) 一种基于身份标识的层级化公钥信任模型构建方法