!
Criptografía: Matemáticas para proteger la
información
Ángel Martín del Rey
Departamento de Matemática Aplicada
Universidad de Salamanca
[email protected]
16 de diciembre de 2015
Bachillerato de Investigación y Excelencia, I.E.S. “Vaguada de la Palma”, Salamanca
Introducción
• El gran desarrollo de las TIC en los últimos años ha dado lugar
a una sociedad totalmente dependiente de ellas.
• Caminamos de manera inexorable hacia el pleno
establecimiento de la Internet de las Cosas.
2
Ángel Mar*n del Rey, 2015
Introducción
• Hoy en día los Sistemas Informáticos controlan el buen
funcionamiento de multitud de procesos y tareas.
• Cobra especial relevancia la protección de las Infraestructuras
Críticas.
3
Ángel Mar*n del Rey, 2015
Introducción
• Peligros ya existentes se han adaptado al nuevo escenario y
otros han aparecido:
Amenazas contra
la información
‣ Espionaje.
‣ Robo y publicación de información clasificada.
‣ Robo y publicación de datos personales.
‣ Robo de la identidad digital.
‣ Fraude.
Amenazas contra
los sistemas
‣ Amenazas Persistentes Avanzadas.
‣ Ataques contra infraestructuras críticas.
‣ Ataque contra las redes y sistemas de control.
‣ Infecciones por malware.
4
Ángel Mar*n del Rey, 2015
Introducción
• Las Matemáticas ofrecen herramientas que permiten analizar,
evaluar y gestionar dichas amenazas con el objetivo de
minimizar su impacto:
‣ Algoritmos criptográficos para proteger la información
(confidencialidad, integridad, autenticidad, etc.)
‣ Modelos matemáticos para detectar, evaluar y gestionar
potenciales amenazas en la red.
‣ Modelos matemáticos para simular la propagación de
malware.
‣ etc.
5
Ángel Mar*n del Rey, 2015
Introducción
¿Cuál es el organismo, agencia o empresa que más matemáticos
contrata y en el que más matemáticos trabajan?
6
Ángel Mar*n del Rey, 2015
Introducción
• Proteger la información es una prioridad en nuestros días
Confidencialidad
Autenticidad
Integridad
7
Ángel Mar*n del Rey, 2015
Introducción
• A lo largo de la historia se han utilizado diferentes técnicas
para proteger la información.
• El uso de algoritmos matemáticos surge fundamentalmente en
el siglo XX en paralelo al desarrollo de los ordenadores.
Autenticidad
Confidencialidad
Esquemas de
Firma Digital
DSA
Criptosistemas de
clave secreta
Criptosistemas de
clave pública
RSA
Certificados Digitales
Criptosistemas de
cifrado en flujo
Criptosistemas de
cifrado en bloque
AES
3-DES
Integridad
Funciones hash
SHA-3
8
Ángel Mar*n del Rey, 2015
Confidencialidad
• Confidencialidad: el mensaje sólo puede ser leído por su
legítimo destinatario.
• La confidencialidad se garantiza cifrando los datos mediante...
‣ Criptosistemas de clave secreta.
‣ Criptosistemas de clave pública.
9
Ángel Mar*n del Rey, 2015
Confidencialidad
• Los criptosistemas de clave secreta se caracterizan por el uso
de una única clave que se utiliza para cifrar y descifrar
mensajes.
• Dicha clave debe ser compartida (y mantenida en secreto) por
el emisor y por el receptor.
• Consecuentemente antes de enviar un mensaje cifrado deben
de haberse puesto de acuerdo en la clave secreta a utilizar.
10
Ángel Mar*n del Rey, 2015
Confidencialidad
• Esquema de los criptosistemas de clave secreta:
emisor
receptor
11
Ángel Mar*n del Rey, 2015
Confidencialidad
• Ventajas de los criptosistemas de clave secreta:
‣ Gran rapidez en el cifrado.
‣ Cifrado de gran cantidad de datos.
‣ Tamaño de las claves pequeño (128-256 bits).
‣ Los algoritmos se basan en sencillas operaciones matemáticas.
• Desventajas de los criptosistemas de clave secreta:
‣ Distribución y gestión en red de la clave secreta.
‣ La clave secreta se debe cambiar con cierta frecuencia.
12
Ángel Mar*n del Rey, 2015
Confidencialidad
• Criptosistemas de clave secreta: cifrado en flujo
0 ⊕ 0 = 0
0 ⊕1=1
1⊕ 0 =1
1⊕1= 0
Codificación
0 0 1 1 0 1 0 1 1 1 0 1 ...
Generador de Secuencias
pseudolaeatorias de bits
criptográficamente seguras
1 0 1 1 0 0 0 1 0 1 0 1 ...
1 0 0 0 0 1 0 1 1 0 0 0 ...
13
Ángel Mar*n del Rey, 2015
Confidencialidad
• El cifrado en flujo en la actualidad:
‣ Telefonia móvil GSM: algoritmo A5.
‣ Bluetooth: algoritmo E0.
‣ WEP (WiFi): algoritmo RC4.
14
Ángel Mar*n del Rey, 2015
Confidencialidad
• El cifrado en flujo en el futuro: el proyecto eSTREAM
‣ El proyecto eSTREAM se inició en 2004 con la finalidad de
seleccionar un algoritmo de cifrado en flujo que pudiera ser
considerado con el estándar de cifrado en flujo en el futuro.
‣ En 2008 se seleccionaron los siguientes algoritmos:
✓ Perfil software: HC-128, Rabbit, Salsa20/12, Sosemanuk.
✓Perfil hardware: Grain, MICKEY, Trivium.
http://www.ecrypt.eu.org/stream/
15
Ángel Mar*n del Rey, 2015
Confidencialidad
• Criptosistemas de clave secreta: cifrado en bloque
Codificación y
Rotura en bloques
Generador de Secuencias
pseudolaeatorias de bits
criptográficamente seguras
- Transformación inicial
- Aplicación reiterada de una función
- Transformación final
...
...
16
Ángel Mar*n del Rey, 2015
Confidencialidad
• El cifrado en bloque en la actualidad:
‣ Triple DES (Data Encryption Standard).
‣ AES (Advanced Encryption Standard).
✓Aparece en 2001 para sustituir al DES con una vida útil
estimada de 20-30 años.
✓Utiliza claves de longitud 128, 192 o 256 bits y los bloques
tienen un tamaño de 128 bits.
✓Se usa para cifrar el material sensible (no clasificado) de
las agencias gubernamentales de EE.UU.
17
Ángel Mar*n del Rey, 2015
Confidencialidad
¿Qué Matemáticas se utilizan en el 3-DES?
• Permutaciones.
• Sustituciones: S-boxes.
• Suma XOR:
0 ⊕ 0 = 0 1⊕ 0 = 1
0 ⊕1= 1 1⊕1= 0
Codificación
0 0 1 1 0 1 0 1 1 1 0 1 ...
Generador de secuencias
pseudoaleatorias de bits
criptográficamente seguras
⊕
1 0 1 1 0 0 0 1 0 1 0 1 ...
1 0 0 0 0 1 0 1 1 0 0 0 ...
18
Ángel Mar*n del Rey, 2015
Confidencialidad
• Los criptosistemas de clave pública se caracterizan por el uso
de dos claves: una clave pública (que conoce todo el mundo y
que se utiliza para cifrar mensajes) y una clave privada (que
sólo conoce el propietario y que se utiliza para descifrar los
mensajes).
• Estas dos claves estar relacionadas entre sí matemáticamente.
emisor
receptor
Criptosistema
de clave pública
19
Ángel Mar*n del Rey, 2015
Confidencialidad
• Esquema de los criptosistemas de clave pública:
emisor
receptor
20
Ángel Mar*n del Rey, 2015
Confidencialidad
• La clave pública en la actualidad:
‣ Criptosistema RSA: se basa en la dificultad computacional
de la factoriación de números enteros muy grandes.
‣ Criptosistema ElGamal: se basa en la dificultad
computacional que supone resolver el problema del
logaritmo discreto.
‣ Criptosistemas basados en curvas elípticas: variante
mejorada y más eficiente del criptosistema ElGamal (la
seguridad que proporciona ElGamal con claves de longitud
1024 bits no es superior a la generada por las curvas
elípticas con longitudes de clave de 160 bits).
21
Ángel Mar*n del Rey, 2015
Confidencialidad
• Ventajas de los criptosistemas de clave pública:
‣ Eficacia en la gestión y distribución de claves.
‣ La vida útil de las claves es de unos 2 años (aprox.), superior a la de las claves
utilizadas en los criptosistemas de clave secreta.
‣ Se pueden diseñar a partir de ellos esquemas de firma digital.
• Desventajas de los criptosistemas de clave pública:
‣ La longitud de las claves (1024-4096 bits) es superior a la utilizada en los
criptosistemas de clave secreta.
‣ Lentitud en el proceso de cifrado/descifrado.
‣ Poco eficaces a la hora de cifrar grandes cantidades de datos.
‣ Los algoritmos se basan en complejos resultados matemáticos.
22
Ángel Mar*n del Rey, 2015
Confidencialidad
¿Qué Matemáticas se utilizan en el protocolo de cifrado RSA?
• Cálculo de potencias:
me
• Cálculo del m.c.d.:
• Cálculo de congruencias:
m.c.d. e,φ(
)
)
c = me modn
(c es el resto de dividir me entre n)
(
Rivest, Shamir y Adleman
• n es el producto de dos números primos de 2.048 bits (617 cifras
decimales).
• La seguridad del RSA reside en la enorme dificultad que supone
factorizar el número n.
23
Ángel Mar*n del Rey, 2015
Confidencialidad
• Esquema de la envoltura digital:
emisor
Criptosistema
de clave secreta
Criptosistema
de clave pública
Criptosistema
de clave pública
Criptosistema
de clave secreta
receptor
24
Ángel Mar*n del Rey, 2015
Integridad
• Integridad: el mensaje no puede ser alterado.
• La integridad se garantiza mediante el uso de funciones
resumen (hash functions) o MAC.
‣ función MD5
‣ funciones SHA (SHA-1, SHA-2, SHA-3)
‣ función RIPEMD-160
‣ función Tiger
25
Ángel Mar*n del Rey, 2015
Integridad
• Las funciones resumen son funciones de la forma:
f : M → H
m ! h = f (m)
de manera que:
‣ Es muy sencillo calcular la imagen de un mensaje: f(m).
‣ El tamaño de m es varible (Gb, Mb,...) mientras que el de h es
fijo (128-512 bits)
‣ Es computacionalmente muy difícil determinar m conociendo
f(m), a no ser que se conozca una determinada información
adicional denominada trampilla.
26
Ángel Mar*n del Rey, 2015
Integridad
• Las funciones resumen deben verificar las siguientes
condiciones:
‣ Si se cambia un único bit del mensaje m, el resumen h=f(m)
debería cambiar (por término medio) en la mitad de los bits.
‣ Resistencia a la preimagen: dado un resumen, debe ser
computacionalmente muy dificil obtener el mensaje.
‣ Resistencia a la segunda preimagen: dado un mensaje, debe
ser computacionalmente difícil encontrar otro mensaje
diferente de manera que sus resúmenes coincidan.
‣ Resistencia a colision
Comentarios de: Criptografía: Matemáticas para proteger la información (0)
No hay comentarios