jueves, 22 de octubre de 2015

Criptografía

Historia de la criptografía

La criptografía existe desde la escritura, desde que existe la comunicación entre dos personas ya que siempre existe alguien que desea obtener información sin permiso de los otros.
El primer método de cifrado que se conoce surgió gracias a Julio Cesar; su método consistía en sustituir cada letra de un mensaje por su tercera siguiente en el alfabeto.
Se comenta que también los griegos y egipcios utilizaron sistemas similares.
Evolucionaron cuando la eligieron una reordenación cualquiera del alfabeto.
Durante la I Guerra Mundial se desarrollo la máquina Enigma, utilizada por los alemanes par cifrar y descifrar sus mensajes.

Para saber más de la historia de la criptografía les dejo un articulo de la Facultad de Ingeniería de la UNAM


Historia de Whitfield Diffie y Martin Hellman

Crearon un algoritmo en 1976 que es utilizado aún hoy, este algoritmo se utilizo como punto de partida para muchos protocolos de seguridad.
Este algoritmo llamado Diffie-Hellman permite acordar una clave secreta entre dos máquinas, a través de un canal inseguro y enviando únicamente dos mensajes. La clave secreta resultante no puede ser descubierta por un atacante, aunque éste obtenga los dos mensajes enviados por el protocolo.
Actualmente se conoce que es vulnerable a ataques de hombre en medio (MitM): un atacante podría situarse entre ambas máquinas y acordar un clave simétrica con cada una de las partes, haciéndose pasar por el host. Para evitar este problema debe ser utilizado junto con algún sistema de autenticación de los mensajes


En este link explican el funcionamiento de este algoritmo (En inglés)

Algoritmo RSA

Fue creado en febrero 1978, un año despues del algoritmo Diffie-Hellman, por los norteamericanos Ron Rivest, Adi Shamir y Leonard Adleman.
RSA basa su fortaleza en la dificultad computacional de factorizar un numero compuesto muy grande, producto de dos números primos grandes, y encontrar por tanto factores primos.
Su evolución no fue fácil, pues nadie creía en su utilidad. Sin embargo, el tiempo fue dándoles la razón, y finalmente se convirtió en un estándar.

En este vídeo explica el funcionamiento del algoritmo RSA


Algoritmo Sha1-Sha2

Es un sistema de la familia SHA (Secure Hash Algorithm), de funciones hash criptograficas relacionadas de la Agencia de Seguridad Nacional de los Estados Unidos.
El primero fue publicado en 1993 llamado SHA. Dos años más tardes fue publicado su sucesor con el nombre de SHA-1.
Existen actualmente cuatro variantes más que se han publicado:
  • SHA-224
  • SHA-256
  • SHA-384
  • SHA-512
Estos también son conocidos como SHA-2
En 1998un ataque a SHA-0 fue encontrado pero no fue reconocido para SHA-1, se desconoce si fue la NSA quien lo descubrió pero aumentó la seguridad del SHA-1.SHA-1 ha sido examinado muy de cerca por la comunidad criptográfica pública, y no se ha encontrado ningún ataque efectivo. No obstante, en el año 2004, un número de ataques significativos fueron divulgados sobre funciones criptográficas de hash con una estructura similar a SHA-1; esto ha planteado dudas sobre la seguridad a largo plazo de SHA-1.

SHA-0 y SHA-1 producen una salida resumen de 160 bits de un mensaje que puede tener un tamaño máximo de 2 bits, y se basa en principios similares a los usados por el profesor Ronald L. Rivest del MIT en el diseño de los algoritmos de resumen del mensaje MD4 y MD5.

La codificación hash vacía para SHA-1 corresponde a:


SHA1("") = da39a3ee5e6b4b0d3255bfef95601890afd80709

Vídeo del funcionamiento de SHA-1

Algoritmo MD5


Es uno de los algoritmo de reducción diseñado por el profesor Ronald Rivest del MIT. Fue desarrollado en 1991 como reemplazo del algoritmo MD4 después de que Hans Dobbertin descubriesen su debilidad. A pesar de su amplia difusión actual, la sucesión de problemas de seguridad detectados desde 1996 cuando Hans Dobbertin anunciase una colisión de hash, plantea una serie de dudas acerca de uso futuro.

La codificación del MD5 de 128 bits se representa típicamente como un número de 32 dígitos hexadecimal.
MD5 comienza rellenando el mensaje a una longitud congruente en módulo 448 mod 512. Es decir la longitud del mensaje es 64 bits menos que un entero múltiplo de 512. El relleno consiste en un bit en 1 seguido por cuentos bits en 0 sean necesarios. La longitud original del mensaje es almacenada en los últimos 64 bits del relleno.

Vídeo del funcionamiento de MD5

No hay comentarios:

Publicar un comentario