CLICK HERE FOR BLOGGER TEMPLATES AND MYSPACE LAYOUTS »

jueves, 26 de febrero de 2009

CRIPTOGRAFIA


DEFINICIONES



  • Criptografía:Es el arte de escribir secretamente.

La ciencia de la comunicación segura.

  • Criptoanálisis:El arte de romper los esquemas de la criptografía.
  • Encripción:Es la transformación de un texto en claro para que no pueda ser leído.
  • Texto en claro:Lo que se quiere encriptar.
  • Criptograma:Es el producto de la encripción.
  • Desencripción:Es como se puede recuperar a partir del criptograma el texto original que fue encriptado.
  • Cipher:Es un sistema criptográfico que permite transformar texto plano mediante transposición o sustitución de acuerdo a un algoritmo previamente establecido. Ejemplo: DES, 3DES, etc.

MECANISMOS DE SEGURIDAD


  • Algoritmos de llave simétrica.
  • Algoritmos de llave asimétrica.
  • Hash.
  • MAC.
  • Firmas digitales.
  • Certificados Digitales.

ALGORITMOS DE LLAVE SIMETRICA


  • La llave con la que se encripta es igual a la llave con la que se desencripta.
  • También conocidos como algoritmos de llave privada, porque esta es conocida solo por los participantes en la comunicación.

  • Su principal problema es la distribución de las llaves.
  • Altamente eficientes (rápidos).
  • Fáciles de implementar en Hardware.
  • DES (Data Encription Standard).
  • Desarrollado por IBM.
  • Encripta bloques de 64 bits y produce bloques de 64 bits.
  • Llave de 56 bits aunque se acostumbra escribir como 8 bytes (1 bit de paridad).
  • Rápido y eficiente.
  • Utilizado en múltiples tecnologías como IPSec.

  • DES (Data Encription Standard).
  • Desarrollado por IBM.
  • Encripta bloques de 64 bits y produce bloques de 64 bits.
  • Llave de 56 bits aunque se acostumbra escribir como 8 bytes (1 bit de paridad).
  • Rápido y eficiente.
  • Utilizado en múltiples tecnologías como IPSec.
  • 3DES o Triple DES.
  • Una variación es 3DES que consiste en 3 procesos DES en cadena.
  • Puede operar así:
  • C = Ek3(Ek2(Ek1(P))).Llamado DES-EEE.
  • C = Ek3(Dk2(Ek1(P))). Llamado DES-EDE.
  • Muy utilizado también en IPSec.



Diagrama 3DES







  • IDEA (International Data Encription Algorith)
  • Desarrollado en Suiza por Xuejia Lai y James L. Massey of ETH-Zürich
  • Llave de 128 bits.
  • Encripta bloques de 64 bits y produce bloques de 64 bits.
  • Utilizado en PGP (Pretty Good Privacy – Correo seguro).
  • RC2
  • Desarrollado por Rivest.
  • Encripta bloques de 64bits.
  • Llave de longitud variable
  • Tres veces más rápido que DES.
  • RC4
  • Desarrollado por Rivest
  • Llave de longitud variable
  • Encripción de stream.
  • Muy utilizado en SSL.
  • AES (Advance Encription Standard)
  • El algoritmo se llama Rijndael
  • Desarrollado por 2 Europeos.
  • Encripta bloques de 128 bits y produce bloques de 128 bits.
  • Llave de 128, 192 y 256 bits.
  • Aprobado por el NIST (National Institute of Standards and Technology).

  • Se utiliza una llave para encriptar y otra llave para desencriptar.
  • Cada usuario tiene entonces dos llaves: una PRIVADA conocida solo por el usuario y otra PUBLICA conocida por todo el mundo.
  • Dada una llave no se puede derivar la otra.
  • Basados en la dificultad de factorizar números grandes y logaritmos discretos.
  • Difíciles de implementar en Hardware.
  • Son más lentos que los simétricos (De 100 a 10.000 veces)
  • Generalmente utilizados al comienzo de una sesión segura para el proceso de autenticación y/o para proteger el intercambio de llaves simétricas con las que después se continuará el proceso de encripción.
  • Ejemplo: RSA, Diffie-Hellman
  • RSA
  • Creado por Ron Rivest, Adi Shamir, Leonard Adleman en 1977.
  • Basado en la dificultad de factorizar números grandes (200 dígitos o más).
  • 100 a 10000 veces más lento que DES.
  • Muy utilizado en SSL.
  • Llaves típicas de 768 (no muy seguras), 1024, 2048 bits.

  • RSA EN DETALLE
  • Tome 2 primos p y q y obtenga su producto n=p*q. p y q se almacenan o destruyen.
  • Elija un número e <>
  • Calcule e*d=1 mod (p-1)(q-1).
  • (e,n)=llave pública. (d,n)=llave privada.

  • Para encriptar se calcula c=me mod n
  • Para desencriptar se calcula m = cd mod n
  • Diffie-Hellman.
  • Permite a dos partes establecer una llave común.
  • Se basa en la dificultad para calcular logaritmos discretos.
  • No autentica las partes.
  • Muy utilizando en IPSec.
  • Se definen varios tipos de grupos así:
  • DF Grupo 1: 768 bits.
  • DF Group 2: 1024 bits.
  • DF Group 5: 1536 bits.
  • DIFFIE-HELLMAN EN DETALLE
  • Las partes comparten dos números públicos m y g, m debe ser un número primo grande.
  • Alice genera un número aleatorio grande a y calcula X=ga mod m
  • Bob genera un número aleatorio grande b y calcula Y= gb mod m
  • Alice envía X a Bob y Bob envía Y a Alice.
  • Bob calcula K1=Xb mod m
  • Alice calcula K2=Ya mod m
  • K1 y K2 = gab mod m

ALGORITMOS HASH

  • Conocidos también como message digests.
  • Toma una entrada de longitud variable y produce una salida de longitud fija que se puede considerar una huella digital de la entrada.
  • Si los hash de dos mensajes son iguales muy probablemente los mensajes serán los mismos.
  • Operan en un solo sentido.
  • Ejemplos: MD5 y SHA-1

HASH MD5 Y SHA-1

  • MD5 (Message Digests-5)
  • Desarrollado por Ron Rivest.
  • Produce un código de 128bits.
  • En Unix/Linux con comando md5sum se puede calcular el hash de un archivo. Util para verificar integridad.

n RFC 1321.

  • SHA-1 (Secure Hash Algorith-1)
  • Desarrollado por NIST/NSA (National Institute of Standards and Technology/National Security Agency).
  • Produce un código de 160bits.
  • Más lento que MD5 pero más segurio.
  • MAC
  • Message Authenticacion Code.
  • Hash donde interviene una llave simétrica.
  • Permite garantizar la integridad de un mensaje.

FIRMA DIGITAL

  • HASH encriptado con la llave privada de un esquema asimétrico.
  • Usado en SET (Secure Electronic Transactions).

DIGITAL ENVELOPE

  • Sobre digital.
  • Técnica de encripción de dos niveles asi:
  • El mensaje es encriptado utilizando una tecnología simétrica.
  • La llave requerida para desencriptar el mensaje va encriptada con una tecnología asimétrica (llave publica).
  • Mejora el rendimiento al utilizar la criptografía asimétrica (que es lenta) solo para encriptar la llave simétrica con la que va encriptado el mensaje.

APLICACIÓN DE LA CRIPTOGRAFIA

  • PRIVACIDAD: DES, IDEA o RSA.

  • AUTENTICACIÓN: RSA.

  • NO RECHAZO: RSA y MD5 o SHA-1 (Secure Hash Algorith). NSA/NIST

  • INTEGRIDAD: MD5 y SHA-1