Está en la página 1de 35

Captulo 10 Introduccin a la Cifra Moderna

Seguridad Informtica y Criptografa


Ultima actualizacin del archivo: 01/03/06 Este archivo tiene: 35 diapositivas
Dr. Jorge Rami Aguirre Universidad Politcnica de Madrid

v 4.1

Material Docente de Libre Distribucin

Este archivo forma parte de un curso completo sobre Seguridad Informtica y Criptografa. Se autoriza el uso, reproduccin en computador y su impresin en papel, slo con fines docentes y/o personales, respetando los crditos del autor. Queda prohibida su comercializacin, excepto la edicin en venta en el Departamento de Publicaciones de la Escuela Universitaria de Informtica de la Universidad Politcnica de Madrid, Espaa. Curso de Seguridad Informtica y Criptografa JRA

Captulo 10: Introduccin a la Cifra Moderna

Pgina 385

Conceptos elementales
Un par de ideas bsicas
Los criptosistemas modernos, cuya cifra en bits est orientada a todos los caracteres ASCII o ANSI, usan por lo general una operacin algebraica en Zn, un cuerpo finito, sin que necesariamente este mdulo deba corresponder con el nmero de elementos del alfabeto o cdigo utilizado. Es ms, nunca coinciden: siempre ser mucho mayor el cuerpo de trabajo que el alfabeto usado. Su fortaleza se debe basar en la imposibilidad computacional de descubrir una clave secreta nica, en tanto que el algoritmo de cifra es (o al menos debera serlo) pblico. En la siguiente direccin web, encontrar un amplio compendio de sistemas de cifra y criptografa.
http://en.wikipedia.org/wiki/Category:Cryptography
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 386

Clasificacin de los criptosistemas


MTODOS DE CIFRA MODERNA CIFRADO EN FLUJO
A5; RC4 Telefona mvil, Internet y WLAN.

y algunos ejemplos...

CIFRADO EN BLOQUE

CLAVE PBLICA

CLAVE SECRETA
DES; T-DES; CAST; IDEA; AES; RC5 ...
Cifrado propio de la informacin en una sesin en Internet o en una red. Tambin se usa en cifrado local.

EXPONENCIACIN
RSA; ElGamal Uso en intercambio de clave y en firma digital.
Jorge Rami Aguirre

SUMA/PRODUCTO

Curvas Elpticas/Mochilas
CE: intercambio clave y firma digital. Mochilas: proteccin de SW mediante dispositivo HW.

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 387

Introduccin al cifrado de flujo


Usa el concepto de cifra propuesto por Vernam, que cumple con las ideas de Shannon sobre sistemas de cifra con secreto perfecto, esto es: a) El espacio de las claves es igual o mayor que el espacio de los mensajes. b) Las claves deben ser equiprobables. c) La secuencia de clave se usa una sola vez y luego se destruye (sistema one-time pad). Una duda: Ser posible satisfacer la condicin a)?
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 388

Espacio de claves y del mensaje


Espacio de Claves Espacio de Mensajes? 1) La secuencia de bits de la clave deber enviarse al destinatario a travs de un canal que sabemos es inseguro (recuerde que an no conoce el protocolo de intercambio de clave de Diffie y Hellman). 2) Si la secuencia es infinita, desbordaramos la capacidad del canal de comunicaciones.
Qu solucin damos a este problema?
Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 389

El concepto de semilla en un generador


Si por un canal supuestamente seguro enviamos esa clave secreta tan larga ... por qu no enviamos directamente el mensaje en claro y nos dejamos de historias?

La solucin est en generar una secuencia pseudoaleatoria con un algoritmo determinstico a partir de una semilla de n bits. Podremos generar as secuencias con perodos de 2n bits, un valor ciertamente muy alto puesto que n debe ser del orden de las centenas. Esta semilla es la que se enviar al receptor mediante un sistema de cifra de clave pblica y un algoritmo de intercambio de clave que veremos en prximos captulos y as no sobrecargamos el canal.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 390

Tcnica de cifra en flujo


El mensaje en claro se leer bit a bit. Se realizar una operacin de cifra, normalmente la funcin XOR, con una secuencia cifrante de bits Si que debe cumplir ciertas condiciones:
Tener un perodo muy alto (ya no infinito) Tener propiedades pseudoaleatorias (ya no aleatorias)
Mensaje M XOR C C XOR Mensaje M
Bits del Criptograma

Secuencia cifrante Si

Secuencia cifrante Si

Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 391

Introduccin a la cifra en bloque


El mensaje se agrupa en bloques, por lo general de 8 16 bytes (64 128 bits) antes de aplicar el algoritmo de cifra a cada bloque de forma independiente con la misma clave.

Cifrado con Clave Secreta


Hay algunos algoritmos muy conocidos por su uso en aplicaciones bancarias (DES), correo electrnico (IDEA, CAST), comercio electrnico (Triple DES) y el nuevo estndar (AES Rijndael).
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 392

Qu tamao de bloque usar?


Si el bloque fuese muy pequeo, por ejemplo uno o dos bytes, esto facilitara un ataque por estadsticas del lenguaje. Se tratara de un cifrado por monogramas o digramas muy dbil.
Pero si el bloque fuese muy grande, por ejemplo cientos de bytes, el sistema sera lento en el tratamiento del texto en claro y no sera bueno su rendimiento. Los valores indicados de 64 y 128 bits son un trmino medio que satisface ambas condicionantes: es la tpica situacin de compromiso que tanto vemos en ingeniera.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 393

Tres debilidades en la cifra simtrica


a) Mala gestin de claves. Crece el nmero de claves secretas en una proporcin igual a n2 para un valor n grande de usuarios lo que imposibilita usarlo . b) Mala distribucin de claves. No existe posibilidad de enviar, de forma segura y eficiente, una clave a travs de un medio o canal inseguro . c) No tiene firma digital. Aunque s ser posible autenticar el mensaje mediante una marca, no es posible firmar digitalmente el mensaje, al menos en un sentido amplio y sencillo .
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 394

Por qu usamos entonces clave secreta?


a) Mala gestin de claves b) Mala distribucin de claves c) No permite firma digital
Tiene algo de bueno la cifra en bloque con clave secreta?

S: la velocidad de cifra es muy alta y por ello se usar para realizar la funcin de cifra de la informacin. Adems, con claves de slo unas centenas de bits obtendremos una alta seguridad pues la no linealidad del algoritmo hace que en la prctica el nico ataque factible sea por fuerza bruta.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 395

Cifrado asimtrico

Comienza a ser ampliamente conocido a travs de su aplicacin en los sistemas de correo electrnico seguro (PGP y PEM) permitiendo cifrar e incluir una firma digital adjunta al documento o e-mail enviado y tambin en los navegadores Web. Cada usuario tendr dos claves, una secreta o privada y otra pblica, inversas entre s dentro de un cuerpo. Usan las funciones unidireccionales con trampa.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 396

Funciones unidireccionales con trampa


Son funciones matemticas de un solo sentido (one-way functions) y que nos permiten usar la funcin en sentido directo o de clculo fcil para cifrar y descifrar (usuarios legtimos) y fuerza el sentido inverso o de clculo difcil para aquellos impostores, hackers, etc. que lo que desean es atacar o criptoanalizar la cifra.
f (M) = C es siempre fcil. f -1(C) = M es difcil salvo que se tenga la trampa.

Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 397

Funciones con trampa ms usadas


Problema de la factorizacin
Clculo directo: producto de dos primos grandes pq = n Clculo inverso: factorizacin de nmero grande n = pq Problema del logaritmo discreto

Clculo directo: exponenciacin discreta = x mod n Clculo inverso: logaritmo discreto x = log mod n

Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 398

Otras funciones con trampa


Problema de la mochila
Clculo directo: sumar elementos de mochila con trampa Clculo inverso: sumar elementos de mochila sin trampa Problema de la raz discreta

Clculo directo: cuadrado discreto Clculo inverso: raz cuadrada discreta

x = aa mod n a = x mod n

Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 399

Cifrado con clave pblica de destino


Origen
ESTOS SERN NUESTROS PROTAGONISTAS

Destino

Benito Claves: eB, nB, dB eB, nB: pblicas

dB:

privada

eB y dB son inversas dentro de un cuerpo nB

Si Benito realiza la operacin con las claves pblicas de Adela (eA, nA), la informacin que se transmite mantiene la confidencialidad: slo ella puede verla. C = EeA(N) mod nA

Adela Claves: eA, nA, dA eA, nA: pblicas dA: privada


eA y dA son inversas dentro de un cuerpo nA

A qu es mucho ms lgico y familiar usar estos nombres y no Alice y Bob?


Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 400

Operacin de cifra con clave de destino


Cifrado:
Benito enva un valor N cifrado a Adela
Benito Claves: eB, nB, dB C = EeA(N) mod nA Adela Claves: eA, nA, dA
Clave privada Claves pblicas

Descifrado:
N = EdAEeA(N) mod nA

EdA y EeA son inversos

Se obtiene confidencialidad del mensaje


Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 401

Y si usamos la clave pblica de origen?


Si en vez de utilizar la clave pblica de destino, el emisor usa su propia clave pblica, la cifra no tiene sentido bajo el punto de vista de sistemas de clave pblica ya que slo l o ella sera capaz de descifrar el criptograma (deshacer la operacin de cifra) con su propia clave privada.
Esto podra usarse para cifrar de forma local uno o varios ficheros, por ejemplo, pero para ello ya estn los sistemas de clave secreta, mucho ms rpidos y, por tanto, ms eficientes.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 402

Y si usamos la clave privada de origen?


Si ahora el emisor usa su clave privada en la cifra sobre el mensaje, se obtiene una firma digital que le autentica como emisor ante el destinatario y, adems, a este ltimo le permitir comprobar la integridad del mensaje.
Veamos antes un ejemplo de algoritmo que usa un par de claves entre dos usuarios...

Obviamente, el emisor nunca podr realizar la cifra del mensaje M con la clave privada del receptor.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 403

El algoritmo del mensaje en la caja


PROTOCOLO: A enva a B un mensaje M
1 A pone el mensaje M en la caja, la cierra con su llave azuly la enva a B. 2 B recibe la caja, la cierra con su llave roja y enva a A la caja con las dos cerraduras. 3 A recibe la caja, quita su llave azul y devuelve a B la caja slo con la cerradura de roja. 4 B recibe la caja, quita su cerradura roja y puede ver el mensaje M que A puso en su interior.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 404

Va todo bien en el algoritmo de la caja?


Durante la transmisin, el mensaje est protegido de cualquier intruso por lo que existe integridad del mensaje y hay proteccin contra una ataque pasivo. Pero el usuario B no puede estar seguro si quien le ha enviado el mensaje M es el usuario A o un impostor. Por lo tanto el algoritmo as implementado no nos permite comprobar la autenticidad del emisor pues no detecta la suplantacin de identidad. No obstante...
Jorge Rami Aguirre
Madrid (Espaa) 2006

Modificando un poco el algoritmo anterior, s podremos asegurar tanto la integridad del mensaje como la autenticidad de emisor.

Captulo 10: Introduccin a la Cifra Moderna

Pgina 405

Cifrado con clave privada del origen


Origen

Benito Claves: eB, nB, dB eB, nB: pblicas dB: privada


eB y dB son inversas dentro de un cuerpo nB

Si ahora Benito realiza la operacin de cifra con su clave privada dB en el cuerpo nB Adela ser capaz de comprobar esa cifra ya que posee (entre otras) la clave pblica de Benito. Comprueba as tanto la autenticidad del mensaje como del autor.
C = EdB(N) mod nB

Destino

Adela Claves: eA, nA, dA eA, nA: pblicas dA: privada


eA y dA son inversas dentro de un cuerpo nA

Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 406

Operacin de cifra con clave de origen


Firma digital:
Benito firma un valor N que enva a Adela
Benito Claves: eB, nB, dB C = EdB(N) mod nB
Clave privada

Adela Claves: eA, nA, dA

Comprobacin:

Claves pblicas

N = EeBEdB(N) mod nB

EdB y EeB son inversos

Se comprueba la integridad del origen


Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 407

Uso de la criptografa asimtrica


Estas dos operaciones de cifra son posibles debido a la caracterstica intrnseca de los sistemas de clave pblica: el uso de una clave privada (secreta) inversa de una pblica. Qu aplicacin tendrn entonces los sistemas de criptografa de clave pblica o asimtrica? Usando la clave pblica del destino se har el intercambio de claves de sesin de una cifra con sistemas simtricos (decenas a centenas de bits). Usando la clave privada de origen, se firmar digitalmente un resumen (centenas de bits) del mensaje obtenido con una funcin hash. Observe que se hace hincapi en las centenas de bits dado que estos sistemas son muy lentos comparados con los simtricos.
Madrid (Espaa) 2006

Jorge Rami Aguirre

Captulo 10: Introduccin a la Cifra Moderna

Pgina 408

Comparativa: la gestin de claves


Gestin de claves
Clave Secreta Hay que memorizar un nmero muy alto de claves: n2. Clave Pblica Slo es necesario memorizar la clave privada del emisor.

En cuanto a la gestin de claves, sern mucho ms eficientes los sistemas de cifra asimtricos pues los simtricos no permiten una gestin lgica y eficiente de estas claves: en los asimtricos slo es necesario memorizar la frase o palabra de paso para acceder a la clave privada.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 409

Comparativa: el espacio de claves


Longitud y espacio de claves
Clave Secreta Debido al tipo de cifrador usado, la clave ser del orden de centenas de bits.
128

Clave Pblica Por el algoritmo usado en la cifra, la clave ser del orden de miles de bits.
1.024

En cuanto al espacio de claves, no son comparables los sistemas simtricos con los asimtricos. Para atacar un sistema asimtrico no se buscar en todo el espacio de claves como debera hacerse en los sistemas simtricos.
Madrid (Espaa) 2006

Jorge Rami Aguirre

Captulo 10: Introduccin a la Cifra Moderna

Pgina 410

Comparativa: la vida de las claves


Vida de una clave
Clave Secreta La duracin es muy corta pues casi siempre se usa como clave de una sesin.
Segundos o minutos

Clave Pblica La duracin de la clave pblica, que la entrega y gestiona un tercero, suele ser larga.
Meses o un ao

En cuanto a la vida de una clave, en los sistemas simtricos sta es muchsimo menor que las usadas en los asimtricos. La clave de sesin es aleatoria, en cambio la asimtrica es propia del usuario.
Madrid (Espaa) 2006

Jorge Rami Aguirre

Captulo 10: Introduccin a la Cifra Moderna

Pgina 411

Vida de la clave y principio de caducidad


Si en un sistema de clave secreta, sta se usa como clave de una sesin que dura muy poco tiempo... y en este tiempo es imposible romperla...

para qu preocuparse entonces?

La confidencialidad de la informacin tiene una caducidad. Si durante este tiempo alguien puede tener el criptograma e intentar un ataque por fuerza bruta, obtendr la clave (que es lo menos importante) ... pero tambin el mensaje secreto! ... puede ser muy peligroso.
Lo mismo ocurrir si usamos la cifra simtrica para proteger algn archivo o archivos en nuestro computador.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 412

El problema de la autenticacin
Condiciones de la autenticidad:
a) El usuario A deber protegerse ante mensajes dirigidos a B que un tercer usuario desconocido C introduce por ste. Es la suplantacin de identidad o problema de la autenticacin del emisor. b) El usuario A deber protegerse ante mensajes falsificados por B que asegura haberlos recibido firmados por A. Es la falsificacin de documento o problema de la autenticacin del mensaje.
Jorge Rami Aguirre

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 413

Comparativa: la autenticacin de emisor


Autenticacin
Clave Secreta Se puede autenticar el mensaje pero no al emisor de forma sencilla y eficiente. Clave Pblica Al haber una clave pblica y otra privada, se podr autenticar el mensaje y al emisor.

En cuanto a la autenticacin, los sistemas simtricos tienen una autenticacin ms pesada y con una tercera parte de confianza. Los asimtricos permiten una firma digital verdadera, eficiente y sencilla, en donde la tercera parte de confianza es slo presencial.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 414

Comparativa: la velocidad de cifra


Velocidad de cifra
Clave Secreta La velocidad de cifra es muy alta. Es el algoritmo de cifra del mensaje.
Cientos de M Bytes/seg en HW

Clave Pblica La velocidad de cifra es muy baja. Se usa para el intercambio de clave y la firma digital.
Cientos de K Bytes/seg en HW

En cuanto a la velocidad de cifra, los sistemas simtricos son de 100 a 1.000 veces ms rpidos que los asimtricos. En SW la velocidad de cifra es ms baja.
Madrid (Espaa) 2006

Jorge Rami Aguirre

Captulo 10: Introduccin a la Cifra Moderna

Pgina 415

Resumen comparativo de estas cifras


Cifrado Simtrico Confidencialidad Autenticacin parcial Sin firma digital Claves:
Longitud pequea Vida corta (sesin) Nmero elevado

Cifrado Asimtrico Confidencialidad Autenticacin total Con firma digital Claves:


Longitud grande Vida larga Nmero reducido

Velocidad alta
Jorge Rami Aguirre

Velocidad baja

Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 416

Seguridad en la cifra simtrica y asimtrica


La criptografa simtrica o de clave secreta usa una nica clave para cifrar en emisin y descifrar en destino. La seguridad del sistema reside entonces en cun segura sea dicha clave. En la criptografa asimtrica cada usuario se crea un par de claves llamadas pblica y privada, inversas entre s dentro de un cuerpo finito, de forma que lo que hace una la otra lo deshace. Para cifrar se usa, por ejemplo, la clave pblica de destino y para descifrar el destinatario har uso de su clave privada. La seguridad del sistema reside ahora en la dificultad computacional de encontrar la clave privada a partir de la clave pblica.
Fin del captulo
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 417

Cuestiones y ejercicios (1 de 2)
1. En un sistema de cifra se usa un cuerpo de trabajo n. Cmo es el tamao de ese cuerpo comparado con el tamao del alfabeto usado? 2. Cmo se clasifican los criptosistemas en funcin del tratamiento que hacemos del mensaje a cifrar? 3. Cmo se clasifican los criptosistemas en funcin de tipo de clave que se usa en ambos extremos, emisor y receptor? 4. Por qu se dice que un sistema es simtrico y el otro asimtrico? 5. Es posible cumplir 100% con la condicin de cifrado de Vernam? 6. Por qu en los cifradores de flujo se usa la misma funcin XOR en el extremo emisor y en el extremo receptor? Son inversas aqu las claves usadas para cifrar y descifrar? 7. Nombre y comente algunas debilidades de los sistemas de cifra en bloque con clave secreta.
Jorge Rami Aguirre
Madrid (Espaa) 2006

Captulo 10: Introduccin a la Cifra Moderna

Pgina 418

Cuestiones y ejercicios (2 de 2)
8. Si ciframos un nmero con la clave pblica del usuario receptor, qu cree Ud. que estamos haciendo? 9. Por qu decimos que en un sistema asimtrico la gestin de claves es mucho mejor que en un sistema simtrico? 10. Nos entregan un certificado digital (certificacin de clave pblica) de 512 bits. Es hoy en da un valor adecuado? Por qu s o no? 11. Por qu decimos que con un sistema asimtrico es muy fcil generar una firma digital en emisin y comprobarla en destino? 12. Compare los sistemas simtricos y asimtricos en cuanto a su velocidad de cifra. 13. Qu es un cifrado hbrido? Por qu y cmo se usa la cifra hbrida en el intercambio de informacin segura por ejemplo en Internet? 14. Qu relacin hay entre vida de una clave y principio de caducidad?
Jorge Rami Aguirre
Madrid (Espaa) 2006