You are on page 1of 24

Criptografía

Juan Carlos Fabero Jiménez

Dpto. Arquitectura de Computadores y Automática


Univ. Complutense de Madrid
Índice
 Criptografía
• Conceptos básicos
• Algoritmos simétricos: DES, IDEA, 3DES, Twofish
• Algoritmos asimétricos: RSA, DSA.
• Funciones resumen: SHA1, MD5.
• Algoritmos híbridos: PGP, GPG.
• Firmas y certificados digitales. Arquitectura PKI.

Ingeniería Técnica en Informática de Sistemas. Redes. 2


Criptografía
 Los cortafuegos son útiles para proteger una red interna contra ataques del exterior.
 ¿Qu₫ sucede si la red privada está distribuida geográficamente?

Ingeniería Técnica en Informática de Sistemas. Redes. 3


Criptografía
 Necesidades Asociadas:
• Confidencialidad
✓ La información debe mantenerse secreta.
• Autenticación
✓ El receptor del mensaje debe tener la certeza de la identificación del remitente.
• Integridad
✓ El receptor debe poder determinar si el mensaje ha sido modificado por terceros.
• No repudio
✓ El remitente no puede negar la autoría del mensaje.

Ingeniería Técnica en Informática de Sistemas. Redes. 4


Criptografía. Definiciones
 Texto llano:
• la información que se desa transmitir.
 Texto cifrado:
• despu₫s de ser sometida al proceso de codificación.
la información, despu₫
 Operaciones de cifrado:
• el algoritmo que se utiliza para codificar el texto llano y obtener el texto cifrado. Debe ser de dominio
público.
 Clave:
• modificador del algoritmo de cifrado.
 Operaciones de descifrado:
• el algoritmo que se utiliza para obtener el texto llano a partir del texto cifrado.
 Criptoanálisis:
• Análisis del texto cifrado con el fin de obtener el texto llano y/o la clave de descrifrado.

Ingeniería Técnica en Informática de Sistemas. Redes. 5


Criptografía. Técnicas básicas
 Sustitución:
• Consiste en sustituir cada símbolo de entrada (alfabeto de entrada) por otro del alfabeto de
salida.
• Por ejemplo:
✓ Entrada: abcdefghijklmnopqrstuvwxyz
✓ Salida: kpfqalrgsbmthucnviwdxjyezo
✓ Texto llano: “Esto es una información vital”
✓ Texto cifrado: “Awdc aw xuk sulcihkfscu jsdkt”
• La clave es el propio alfabeto de salida.
• Si consideramos 26 símbolos, hay 26!>4*10E26 claves
• No resiste un análisis estadístico.

Ingeniería Técnica en Informática de Sistemas. Redes. 6


Criptografía. Técnicas básicas
 Transposición o permutación.
• Consiste en la reordenación de los caracteres del texto llano.
• Es un algoritmo de bloques.
• Por ejemplo:
✓ Clave: “2314”
✓ Texto llano: “esto es una información vital”
✓ Texto cifrado: “steoes nau nfiomarcóni itval”
• Tipos de permutación:
✓ Directa
✓ Expandida
✓ Comprimida (selección)

Ingeniería Técnica en Informática de Sistemas. Redes. 7


Criptografía. Caja S
 Una sustitución directa de 8 bits requiere definir una clave de 256 bytes (2048 bits), pero
se puede abreviar mediante cajas P y codificadores-descodificadores:

Ingeniería Técnica en Informática de Sistemas. Redes. 8


Cifrados de producto
 Resultan de la combinación sucesiva de operación de permutación y sustitución.
 Normalmente, cuantas más etapas, más seguro, aunque esto no siempre es así.
 En general:

Ingeniería Técnica en Informática de Sistemas. Redes. 9


Algoritmos de cifrado
 Algoritmos simétricos:
• Se utiliza la misma clave para cifrar y para descifrar.
• Son rápidos, la mayoría se pueden implementar por hardware.
• La clave única debe distribuirse por un medio seguro.
 Algorimos asimétricos:
• Utilizan un par de claves, una para cifrar y la otra para descifrar.
• Están basados en operaciones matemáticas “de una dirección”.
• Son más lentos que los algoritmos sim₫tricos.
• Necesitan claves más largas para ser igual de seguros.
• La clave pública se puede distribuir (casi) sin problemas por cualquier medio.
• Algoritmos asimétricos duales: cada clave sirve para cifrar o descifrar lo que la otra descifra o
cifra.

Ingeniería Técnica en Informática de Sistemas. Redes. 10


Cifrado simétrico

Ingeniería Técnica en Informática de Sistemas. Redes. 11


DES (Data Encryption Standard)

Ingeniería Técnica en Informática de Sistemas. Redes. 12


TDEA (Triple Data Encryption Algorithm)
 En mayo de 1998, un alto cargo de la NSA declaró que DEA seguía siendo seguro.
 En julio de 1998, la EFF (Electronic Frontier Foundation) construyó una máquina capaz
de descifrar DES.
 Alternativa: aumentar la longitud de la clave.
 Solución: TDEA (3DES). Consiste en aplicar 3 veces el algoritmo DEA, lo que da una
longitud efectiva de clave de 3*56=168 bits.
• C=EK3[DK2[EK1[P]]]
 Es compatible con sistemas que utilicen DES, simplemente haciendo K3=K2

Ingeniería Técnica en Informática de Sistemas. Redes. 13


Twofish
 Es un algoritmo de cifrado simétrico por bloques de 128 bits.
 La longitud de la clave puede ser 128, 192 ó 256 bits.
 Relativamente sencillo de implementar en hardware.
 Rápido y eficiente.
 Está considerado como uno de los algoritmos actuales más seguros.
 Puede ser utilizado como algoritmo simétrico en GPG (GNU Privacy Guard)

Ingeniería Técnica en Informática de Sistemas. Redes. 14


Algoritmos asimétricos: RSA y DSA
 Los algoritmos asimétricos se introdujeron en los años 70 por Diffie y Hellman.
 En lugar de tener una clave única, presentan un par de claves complementarias.
 Para que sea seguro, debe ser muy difícil (computacionalmente imposible) deducir una clave a
partir de su complementaria.
 Resuelven el problema de la distribución de la clave.
 Son algoritmos más costosos que los algoritmos simétricos.
 RSA y DSA son algoritmos duales: ambas claves sirven para cifrar y descifrar. Lo que está cifrado
con una de las claves, sólo se puede descifrar con su clave complementaria.
 RSA (Rivest, Shamir y Adleman) se basa en la factorización de números muy grandes.
 DSA (Digital Signature Algorithm) está basado en el cálculo de logaritmos discretos.

Ingeniería Técnica en Informática de Sistemas. Redes. 15


Cifrado Asimétrico. Confidencialidad

Ingeniería Técnica en Informática de Sistemas. Redes. 16


Cifrado asimétrico. Autenticación

Ingeniería Técnica en Informática de Sistemas. Redes. 17


Funciones resumen: SHA-1 y MD5
 Una función resumen, H, es una función de un solo sentido que tiene como objetivo la de producir
una “huella dactilar” del mensaje.
 La función H se puede aplicar a bloques de datos de cualquier tamaño, y proporciona una salida de
longitud fija.
 Para un bloque x dado, es fácil calcular H(x)=h, pero, dado un h, es computacionalmente imposible
encontrar un x tal que H(x)=h, es decir, a partir de la huella h no se puede reconstruir el mensaje
original, x.
 Para un mensaje x, no se puede encontrar otro mensaje y distinto y tal que H(x)=H(y).
 Debe ser imposible encontrar una pareja (x,y) tal que H(x)=H(y) (condición de dispersión fuerte).
 La huella dactilar evita la modificación del mensaje al cual pertenece.
 SHA-1 (Secure Hash Algorithm v1) produce huellas de 160 bits. La entrada se procesa en bloques
de 512 bits.
 MD5 produce huellas de 128 bits. Es la función más utilizada (smart-cards)

Ingeniería Técnica en Informática de Sistemas. Redes. 18


Cifrado asimétrico. Integridad

Ingeniería Técnica en Informática de Sistemas. Redes. 19


Algoritmos híbridos
 Los algoritmos de clave pública son mucho más costosos computacionalmente que los
algoritmos de cifrado simétrico.
 Un algoritmo híbrido aúna la eficiencia de los algoritmos simétricos con la facilidad de
distribución de claves de los algoritmos asimétricos.

Ingeniería Técnica en Informática de Sistemas. Redes. 20


PGP y GPG
 PGP (Pretty Good Privacy) fue ideado por Phil Zimmermann a principios de los 90. Inicialmente,
sólo podía utilizarse en EEUU. En algún momento, una versión de PGP atravesó la frontera y esto
le supuso una investigación de 3 años por parte del FBI.
 La versión 5 de PGP se imprimió íntegra en un libro, que pudo ser exportado fuera de EEUU. Una
vez en Europa, se reconstruyó el programa original.
 GPG (GNU Privacy Guard) es una implementación libre de PGP y que se adapta al estándar
OpenPGP.
 Ambos pueden utilizar un buen número de algoritmos sim₫tricos de cifrados, varios tipos de claves
públicas y varias funciones de huella digital.
 GPG utiliza RSA, DSA o ElGamal para firma digital, RSA o ElGamal para cifrado de clave pública, y
MD5, SHA-1 o RIPEMD-160 para huella digital. Entre los algoritmos sim₫tricos, puede utilizar
3DES, Twofish, Blowfish, Cast5, AES, AES192, AES256. GPG no utiliza el algoritmo sim₫trico
IDEA, por estar éste patentado.

Ingeniería Técnica en Informática de Sistemas. Redes. 21


Firmas y certificados digitales
 La validez de los algoritmos de clave pública se basan en la certeza que tengamos de
que la clave pública pertenece realmente a quien creemos.
 PGP y GPG hacen uso de los “anillos de confianza”, pero este mecanismo no es, en
general, apropiado para usos comerciales y/o institucionales.

Ingeniería Técnica en Informática de Sistemas. Redes. 22


PKI (Public Key Infrastructure)
 Obligaciones de las Entidades de Certificación
• Comprobar la identidad del solicitante del certificado. Esta comprobación puede ser presencial
o no, dependiendo del nivel de seguridad requerido.
• Preservar la privacidad del solicitante. Una autoridad de certificación no debe nunca almacenar
la clave secreta de los usuarios.
• Mantener el registro de todos los certificados emitidos y su validez. Cuando un certificado es
revocado, debe notificarlo a la entidad encargada del mantenimiento de la Lista de Certificados
Revocados (CRL).
• Garantizar, mediante el cumplimiento de ciertos requisitos t₫cnicos, la rapidez, fiabilidad y
seguridad de sus servicios, así como estar dotada de las medidas adecuadas para evitar la
falsificación o alteración de certificados.

Ingeniería Técnica en Informática de Sistemas. Redes. 23


PKI (Public Key Infrastructure)
 En España, la infraestructura de clave pública está regulada por la Ley de Firma Digital
(Real Decreto 14/1999).
 La utilización de la firma electrónica tiene un valor jurídico equiparable a la firma
manuscrita.Por ejemplo, la declaración de la renta por Internet utiliza esta
infraestructura.Entidades certificadoras en España:
• Fábrica Nacional de Moneda y Timbre (FNMT, http://www.fnmt.es/)
• Agencia de Certificación Electrónica (ACE, http://www.ace.es)
• Fundación para el Estudio de la Seguridad de las Telecomunicaciones (FESTE,
http://www.feste.com)
• Nisu Security (http://www.nisu.org)

Ingeniería Técnica en Informática de Sistemas. Redes. 24

You might also like