Algoritmo encriptación diffie-hellman

Solo disponible en BuenasTareas
  • Páginas : 7 (1666 palabras )
  • Descarga(s) : 0
  • Publicado : 7 de junio de 2011
Leer documento completo
Vista previa del texto
ALGORITMOS ASIMÉTRICOS
Los algoritmos asimétricos o de clave pública han demostrado su interés para ser empleados en redes de comunicación inseguras (Internet). Introducidos por Whitfield Diffie y Martin Hellman a mediados de los años 70, su novedad fundamental con respecto a la criptografía simétrica es que las claves no son únicas, sino que forman pares.
El criptograma es considerablementemayor que el mensaje original. Se basan en general en plantear al atacante problemas matemáticos difíciles de resolver. En la práctica muy pocos algoritmos son realmente útiles.
El algoritmo más utilizado es el RSA, que es libre circulación para claves de menos de 512 bits (insuficiente para ciertas aplicaciones). Para distribuir claves simétricas también se utiliza el algoritmo Diffie-Hellman.Los algoritmos asimétricos están basados en funciones matemáticas fáciles de resolver pero muy complicadas de realizar la. Estas funciones son útiles en criptografía si es fácil calcular la inversa cuando se conoce un número concreto, la clave privada.
Así, la clave pública y la clave privada están relacionadas matemáticamente, pero esta relación es lo suficientemente compleja para que no puedaser calculada de forma trivial. Debido a esto, las claves privadas y públicas no las elige el usuario sino que las calcula un algoritmo, y normalmente, son muy largas.
Un algoritmo de clave pública debe cumplir:
* Conocido el texto cifrado no se puede descifrar el texto ni adivinar la clave.
* Conocido el texto en plano y el texto cifrado es más caro (en tiempo o dinero) descifrar la claveque el valor de la información.
* Conocida la clave pública y el texto en plano, no se puede generar el texto cifrado con clave privada.
El inconveniente de estos sistemas es la dificultad de implementación y la lentitud de proceso.
La ventaja es que implementan servicios de autentificación y firma, y además no existe el problema de distribución de claves: la clave pública puede ser visiblepor cualquiera y la privada no se transmite nunca.

DIFFIE HELLMAN
Este algoritmo de encriptación de Whitfield Diffie y Martin Hellman supuso una verdadera revolución en el campo de la criptografía, ya que fué el punto de partida para los sistemas asimétricos, basados en dos claves diferentes, la pública y la privada. Vio la luz en 1976, surgiendo como ilustración del artículo "New directionsin Cryptography".
Su importancia se debe sobre todo al hecho de ser el inicio de los sistemas asimétricos, ya que en la práctica sólo es válido para el intercambio de claves simétricas, y con esta funcionalidad es muy usado en los diferentes sistemas seguros implementados en Internet, como SSL (Secure Socket Layer) y VPN (Virtual Private Network).
Matemáticamente se basa en las potencias de losnúmeros y en la función mod (módulo discreto). Uniendo estos dos conceptos se define la potencia discreta de un número como Y = Xa mod q. Si bien el cálculo de potencias discretas es fácil, la obtención de su función inversa, el logaritmo discreto, no tiene una solución analítica para números grandes.
Para implementar el sistema re realizan los siguientes pasos:
1. Se busca un número primomuy grande, q.
2. Se obtiene el número _, raiz primitiva de q, es decir, que cumple que _ mod q, _2 mod q,...., _q-1 mod q son números diferentes.
3. _ y q son las claves públicas.

Para generar una clave simétrica compartida entre dos usuarios, A y B, ambos parten de un generador de números pseudo-aleatorios, que suministra un número de este tipo diferente a cada uno, Xa y Xb. Estosson las claves privadas de A y B. Con estos números y las claves públicas _ y q que ambos conocen, cada uno genera un número intermedio, Ya e Yb, mediante las fórmulas:
Ya = _Xa mod q
Yb = _Xb mod q
Estos números son intercambiados entre ambos, y luego cada uno opera con el que recibe del otro, obteniendo en el proceso el mismo número ambos:
K = Yb Xa mod q
K = Ya Xb mod q
Este número K es...
tracking img