Sie sind auf Seite 1von 4

Cifrado ElGamal

Este artculo o seccin necesita referencias que aparezcan en una publicacin acreditada, como
revistas especializadas, monografas, prensa diaria o pginas de Internet fidedignas. Este aviso fue
puesto el 12 de junio de 2011.
Puedes aadirlas o avisar al autor principal del artculo en su pgina de discusin
pegando: {{subst:Aviso referencias|Cifrado ElGamal}} ~~~~
El procedimiento de cifrado/descifrado ElGamal se refiere a un esquema de cifrado basado
en problemas matemticos de logaritmos discretos. Es unalgoritmo de criptografa
asimtrica basado en la idea de Diffie-Hellman y que funciona de una forma parecida a este
algoritmo discreto.
El algoritmo de ElGamal puede ser utilizado tanto para generar firmas digitales como
para cifrar o descifrar.
Fue descrito por Taher Elgamal en 1984 y se usa en software GNU Privacy Guard, versiones
recientes de PGP, y otros sistemas criptogrficos. Este algoritmo no est bajo
ninguna patente lo que lo hace de uso libre.
La seguridad del algoritmo se basa en la suposicin que la funcin utilizada es de un slo
sentido y la dificultad de calcular un logaritmo discreto.
El procedimiento de cifrado (y descifrado) est basado en clculos sobre un grupo
cclico cualquiera lo que lleva a que la seguridad del mismo dependa de la dificultad de
calcular logaritmos discretos en .
ndice
1 El algoritmo
2 Creacin de llaves de cifrado
o 2.1 Nota
o 2.2 Ejemplo numrico
3 Cifrado
o 3.1 Ejemplo numrico
4 Descifrado
o 4.1 Ejemplo numrico
5 Anlisis
o 5.1 Efectividad
o 5.2 Maleabilidad
o 5.3 Desempeo
El algoritmo[editar]
ElGamal consta de tres componentes: el generador de claves, el algoritmo de cifrado, y el de
descifrado. A continuacin se describe el algoritmo utilizando el grupo multiplicativo de enteros
mdulo p.
Creacin de llaves de cifrado[editar]
Para generar un par de llaves, se escoge un nmero primo cualquiera tal
que tenga un factor primo grande. Adems se eligen dos nmeros aleatorios (el
generador) y (que actuar como clave privada) tal que .
Se calcula entonces el valor de .
por lo tanto ser la llave pblica a utilizar.
En este caso se refiere al operador de mdulo de y es la llave privada
mientras que los valores , y son pblicos.
Nota[editar]
La definicin es correcta. Sin embargo, desde un punto de vista de
seguridad, esta definicin tiene casos que no hacen sentido ya
que y constituyen casos que no brindan seguridad alguna y hacen que el
cifrado no funcione. Dado esto se considera preferentemente que .
Ejemplo numrico[editar]
Los valores:
(primo elegido al azar)
(generador)
(llave privada elegida al azar)
(llave pblica)
forman la llave pblica y la privada
Cifrado[editar]
Suponiendo que se tiene un texto claro que necesita ser cifrado. Lo primero
por hacer es convertir este texto en un elemento de obteniendo un .
Luego se escoge arbitrariamente un nmero tal
que para finalmente calcular:


El mensaje cifrado final corresponde a la
tupla
Ejemplo numrico[editar]
Dado un texto y se escoge un aleatorio:

.
El texto cifrado est compuesto por la
tupla .
Descifrado[editar]
Para descifrar se tiene que realizar el siguiente clculo:

donde
La resolucin de este problema queda entonces de la
siguiente manera

(utilizamos
el pequeo teorema de Fermat)

Tambin existe una expresin ms simplificada
para el mismo proceso:

Ejemplo numrico[editar]
El texto
cifrado c
ifrado con la llave
pblica pued
e ser descifrado utilizando la llave
privada .
Utilizando el Pequeo Teorema de Fermat:
.
Anlisis[editar]
Efectividad[editar]
Hasta el momento el algoritmo ElGamal
de cifrado/descifrado puede ser
considerado un algoritmo efectivo.
Un adversario con la habilidad de
calcular logaritmos discretos podra ser
capaz de romper un cifrado ElGamal. Sin
embargo, en la actualidad, el algoritmo
de computacin de logaritmos discretos
es subexponencial con una complejidad
de = 1/3 , la misma que la de factorizar
dos nmeros primos, y por tanto,
incapaz de realizar tal tarea en nmeros
grandes en un tiempo razonable.
Maleabilidad[editar]
Sin embargo existe un caso en que este
algoritmo se vuelve maleable. Esto
significa que bajo un ataque especfico la
seguridad de ElGamal se puede quebrar.
Este ataque usa el hecho de tener el
texto cifrado del texto
claro (ambos conocidos). Sabiendo
esto se puede llegar a que el texto
cifrado correspond
e al texto plano . Si ahora la
persona que cifr el mensaje anterior
genera otro texto
cifrado (utilizando el
mismo con el que cifr anteriormente)
el adversario debera ser capaz de llegar
al texto plano correspondiente
siguiente los siguientes pasos:
Calcular
Buscar un tal que tomando en cuenta que al
igual que cumple con estar entre y
Tomando el peor caso, el atacante obtendr dos textos claros (debido a la funcin
mdulo).
Desempeo[editar]
El anlisis de desempeo
del algoritmo ElGamal es
similar al de RSA.
Concretamente tenemos el
siguiente anlisis
Sea el mdulo usuado en ElGamal. Los procesos de cifrado y descifrado de
ElGamal por lo tanto toman tiempos de .

Das könnte Ihnen auch gefallen