Articulo de referencia

Esquema Boneh-Franklin

El esquema Boneh–Franklin es un sistema de cifrado basado en identidad propuesto por Dan Boneh y Matthew K. Franklin en 2001. [1] Este artículo hace referencia a la versión del ...

El esquema Boneh–Franklin es un sistema de cifrado basado en identidad propuesto por Dan Boneh y Matthew K. Franklin en 2001. [1] Este artículo hace referencia a la versión del protocolo denominada BasicIdent . Se trata de una aplicación de emparejamientos ( Weil pairing ) sobre curvas elípticas y cuerpos finitos .

Grupos y parámetros

Como el esquema se basa en emparejamientos , todos los cálculos se realizan en dos grupos y : GRAMO 1 {\displaystyle \textstyle G_ {1}} GRAMO 2 {\displaystyle \textstyle G_ {2}}

Para , sea primo y considere la curva elíptica sobre . Nótese que esta curva no es singular, ya que solo es igual para el caso que se excluye por la restricción adicional. GRAMO 1 {\displaystyle \textstyle G_ {1}} pag {\displaystyle \textstyle p} pag 2 modificación 3 {\displaystyle \textstyle p\equiv 2\mod 3} mi : y 2 = incógnita 3 + 1 {\displaystyle \textstyle E:y^{2}=x^{3}+1} O / pag O {\displaystyle \textstyle \mathbb {Z} /p\mathbb {Z} } 4 a 3 + 27 b 2 = 27 = 3 3 {\displaystyle \textstyle 4a^{3}+27b^{2}=27=3^{3}} 0 {\displaystyle \textstyle 0} pag = 3 {\displaystyle \textstyle p=3}

Sea un factor primo de (que es del orden de ) y encuentre un punto de orden . es el conjunto de puntos generado por : q > 3 {\displaystyle \textstyle q>3} pag + 1 {\displaystyle \textstyle p+1} mi {\displaystyle \textstyle E} PAG mi {\displaystyle \textstyle P\en E} q {\displaystyle \textstyle q} GRAMO 1 {\displaystyle \textstyle G_ {1}} PAG {\displaystyle \textstyle P} { norte PAG " norte { 0 , , q 1 } } {\displaystyle \textstyle \left\{nP\|n\in \left\{0,\ldots ,q-1\right\}\right\}}

GRAMO 2 {\displaystyle \textstyle G_ {2}} es el subgrupo de orden de . No necesitamos construir este grupo explícitamente (esto se hace mediante el emparejamiento) y, por lo tanto, no tenemos que encontrar un generador. q {\displaystyle \textstyle q} GRAMO F ( pag 2 ) {\displaystyle \textstyle GF\left(p^{2}\right)^{*}}

GRAMO 1 {\displaystyle \textstyle G_ {1}} se considera un grupo aditivo , al ser un subgrupo del grupo aditivo de puntos de , mientras que se considera un grupo multiplicativo , al ser un subgrupo del grupo multiplicativo del cuerpo finito . mi {\displaystyle \textstyle E} GRAMO 2 {\displaystyle \textstyle G_ {2}} GRAMO F ( pag 2 ) {\displaystyle \textstyle GF(p^{2})^{*}}

Descripción del protocolo

Configuración

El generador de clave pública (PKG) elige:

  1. los grupos públicos (con generador ) y como se indicó anteriormente, con el tamaño dependiendo del parámetro de seguridad , GRAMO 1 {\displaystyle \textstyle G_ {1}} PAG {\displaystyle \textstyle P} GRAMO 2 {\displaystyle \textstyle G_ {2}} q {\displaystyle \textstyle q} a {\displaystyle \textstyle k}
  2. el emparejamiento correspondiente , mi {\displaystyle \textstyle e}
  3. una clave maestra privada aleatoria , K metro = s O q {\displaystyle \textstyle K_{m}=s\in \mathbb {Z} _{q}^{*}}
  4. una clave pública , K pag b = s PAG {\displaystyle \textstyle K_{pub}=sP}
  5. una función hash pública , yo 1 : { 0 , 1 } GRAMO 1 {\displaystyle \textstyle H_{1}:\left\{0,1\right\}^{*}\rightarrow G_{1}^{*}}
  6. una función hash pública para algunos valores fijos y yo 2 : GRAMO 2 { 0 , 1 } norte {\displaystyle \textstyle H_{2}:G_{2}\rightarrow \left\{0,1\right\}^{n}} norte {\displaystyle \textstyle n}
  7. El espacio del mensaje y el espacio de cifrado METRO = { 0 , 1 } norte , do = GRAMO 1 × { 0 , 1 } norte {\displaystyle \textstyle {\mathcal {M}}=\left\{0,1\right\}^{n},{\mathcal {C}}=G_{1}^{*}\times \left\{0,1\right\}^{n}}

Extracción

Para crear la clave pública para , el PKG calcula I D { 0 , 1 } {\displaystyle \textstyle ID\en \izquierda\{0,1\derecha\}^{*}}

  1. Q I D = yo 1 ( I D ) {\displaystyle \textstyle Q_{ID}=H_{1}\left(ID\right)} y
  2. la clave privada que se le da al usuario. d I D = s Q I D {\displaystyle \textstyle d_{ID}=sQ_{ID}}

Encriptación

Dado , el texto cifrado se obtiene de la siguiente manera: metro METRO {\displaystyle \textstyle m\in {\mathcal {M}}} do {\displaystyle \textstyle c}

  1. Q I D = yo 1 ( I D ) GRAMO 1 {\displaystyle \textstyle Q_{ID}=H_{1}\left(ID\right)\in G_{1}^{*}} ,
  2. Elige al azar , a O q {\displaystyle \textstyle r\in \mathbb {Z} _ {q}^{*}}
  3. calcular y gramo I D = mi ( Q I D , K pag b ) GRAMO 2 {\displaystyle \textstyle g_{ID}=e\left(Q_{ID},K_{pub}\right)\in G_{2}}
  4. colocar . do = ( a PAG , metro yo 2 ( gramo I D a ) ) {\displaystyle \textstyle c=\left(rP,m\oplus H_{2}\left(g_{ID}^{r}\right)\right)}

Tenga en cuenta que es la clave pública del PKG y, por lo tanto, es independiente del ID del destinatario. K pag b {\displaystyle \textstyle K_ {pub}}

Descifrado

Dado , el texto sin formato se puede recuperar utilizando la clave privada: do = ( , en ) do {\displaystyle \textstyle c=\left(u,v\right)\in {\mathcal {C}}}

metro = en yo 2 ( mi ( d I D , ) ) {\displaystyle \textstyle m=v\oplus H_{2}(e\left(d_{ID},u\right)\right)}

Exactitud

El paso principal tanto en el cifrado como en el descifrado es emplear el emparejamiento y generar una máscara (como una clave simétrica) que esté asociada a la secuencia XOR con el texto sin formato. Por lo tanto, para verificar la corrección del protocolo, uno debe verificar que un remitente y un destinatario honestos terminen con los mismos valores. yo 2 {\displaystyle \textstyle H_ {2}}

La entidad que cifra utiliza , mientras que para descifrar se aplica . Debido a las propiedades de los emparejamientos, se deduce que: yo 2 ( gramo I D a ) {\displaystyle \textstyle H_{2}\left(g_{ID}^{r}\right)} yo 2 ( mi ( d I D , ) ) {\displaystyle \textstyle H_{2}(e\left(d_{ID},u\right)\right)}

yo 2 ( mi ( d I D , ) ) = yo 2 ( mi ( s Q I D , a PAG ) ) = yo 2 ( mi ( Q I D , PAG ) a s ) = yo 2 ( mi ( Q I D , s PAG ) a ) = yo 2 ( mi ( Q I D , K pag b ) a ) = yo 2 ( gramo I D a ) {\displaystyle {\begin{aligned}H_{2}(e\left(d_{ID},u\right)\right)&=H_{2}(e\left(sQ_{ID},rP\right)\right)\\&=H_{2}(e\left(Q_{ID},P\right)^{rs}\right)\\&=H_{2}(e\left(Q_{ID},sP\right)^{r}\right)\\&=H_{2}(e\left(Q_{ID},K_{pub}\right)^{r}\right)\\&=H_{2}(g_{ID}^{r}\right)\\\end{aligned}}}

Seguridad

La seguridad del esquema depende de la dureza del problema bilineal Diffie-Hellman (BDH) para los grupos utilizados. Se ha demostrado que en un modelo de oráculo aleatorio , el protocolo es semánticamente seguro bajo el supuesto BDH.

Mejoras

BasicIdent no es un texto cifrado seguro elegido . Sin embargo, existe un método de transformación universal debido a Fujisaki y Okamoto [2] que permite la conversión a un esquema que tenga esta propiedad llamado FullIdent .

Referencias

  1. ^ Dan Boneh, Matthew K. Franklin, "Cifrado basado en identidad a partir del emparejamiento de Weil", Avances en criptología: Actas de CRYPTO 2001 (2001)
  2. ^ Eiichiro Fujisaki, Tatsuaki Okamoto, "Integración segura de esquemas de cifrado asimétricos y simétricos", Advances in Cryptology – Proceedings of CRYPTO 99 (1999). La versión completa apareció en J. Cryptol. (2013) 26: 80–101
  • Seminario 'Criptografía y seguridad en la banca'/'Criptología alternativa', Universidad del Ruhr, Bochum [ enlace muerto permanente ‍ ]
  • Biblioteca de criptografía basada en P(airing), diseñada por Ben Lynn et al.
Obtenido de "https://es.wikipedia.org/w/index.php?title=Esquema_de_Boneh-Franklin&oldid=1206886894"