Introducción a la criptografía
CURSO CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA
Ana I. González-Tablas Ferreres
José María de Fuentes García-Romero de Tejada
Lorena González Manzano
Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Características de los sistemas criptográficos
• Codificadores vs cifradores
– Criptoanálisis
2
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Características de los sistemas criptográficos
• Codificadores vs cifradores
– Criptoanálisis
3
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Definición de criptografía
– Definición clásica (2000 a.c – 1949)
Disciplina que estudia los principios, métodos y medios de transformar los datos
para ocultar su significado
– Definición moderna ( desde 1976 )
Disciplina que estudia los principios, métodos y medios de transformar los datos
para ocultar su significado, garantizar su integridad, establecer su autenticidad y
prevenir su repudio
4
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Definición de criptografía
Confidencialidad Integridad
Criptografía Criptografía
(clásica) (moderna)
Disponibilidad
5
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Características de los sistemas criptográficos
• Codificadores vs cifradores
– Criptoanálisis
6
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Modelo de criptosistema
Espacio de mensajes
M = {m1, m2, ...}
Espacio de cifrados
C = {c1, c2, ...}
Espacio de claves
K = {k1, k2, ...}
Familia de transformaciones de cifrado
Ek : M C
Familia de transformaciones de descifrado
Dk : C M
7
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Modelo de criptosistema
Generación
de claves
kE kD
Criptograma Texto
Texto en
Emisor Cifrador Descifrador Receptor
(canal) en claro
claro
kE y kD pueden o no ser iguales
8
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Características de los sistemas criptográficos
• Codificadores vs cifradores
– Criptoanálisis
9
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Características de los sistemas criptográficos
• Se caracterizan con tres dimensiones independientes:
– Tipo de operaciones realizadas
• En general, sustituciones y transposiciones. No puede perderse información.
Los más comunes usan el producto de varias operaciones
– Número de claves usadas
• Simétricos o con una clave (también conocido como algoritmos de clave
secreta)
• Asimétricos o con dos claves (también conocido como algoritmos de clave
pública)
– Tipo de procesamiento del texto en claro
• Por bloques (algoritmos de cifrado en bloque)
• Como un flujo continuo de bytes o de bits (algoritmos de cifrado en flujo)
10
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Características de los sistemas criptográficos
• Codificadores vs cifradores
– Criptoanálisis
11
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Codificadores vs Cifradores
– Codificador
M Algoritmo C
C=f(M)
– Cifrador k
M Algoritmo C
C=E(k, M)=Ek(M)
12
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
ÍNDICE
• 2. Introducción a los criptosistemas
– Criptografía
• Definición
• Modelo de criptosistema
• Codificadores vs cifradores
– Criptoanálisis
13
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Ciencia que trata de frustrar las técnicas criptográficas
– Principio de Kerckhoffs
La seguridad del cifrado debe residir, exclusivamente, en el secreto de la clave
La cryptographie militaire, 1883.
Auguste Kerckhoffs von Nieuwenhof (1835-1903)
– No a la seguridad por falta de claridad (u oscuridad)
– Los ataques se basan en el conocimiento del algoritmo y,
quizá, en información adicional sobre el texto en claro
14
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Objetivo del criptoanalista:
– Principal: Recuperar la clave de descifrado
– Secundario: Descifrar un texto cifrado concreto
• Aproximaciones del criptoanalista/atacante:
Ataques al algoritmo Ataque de fuerza bruta
15
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Ataques al algoritmo
Ataque Conocido por el atacante (además de algoritmo) Dificultad
Texto cifrado Criptograma
+
Texto en claro Criptograma + uno o más pares (texto en claro, texto cifrado) con
conocido la misma clave
Texto en claro Criptograma + uno o más pares (texto en claro escogido, texto
escogido cifrado) con la misma clave
Texto cifrado Criptograma + uno o más criptogramas escogidos por el atacante
escogido junto con sus correspondientes textos en claro, con la misma clave
Texto escogido Criptograma + uno o más pares (texto en claro escogido, texto
cifrado) con la misma clave + uno o más criptogramas escogidos
por el atacante junto con sus correspondientes textos en claro, con -
la misma clave
16
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Algoritmo de cifrado incondicionalmente seguro
– No se filtra información adicional a la conocida por el atacante
independientemente de la longitud del texto cifrado C
– Solo el cifrador de Vernam es incondicionalmente seguro
• Algoritmo de cifrado matemáticamente vulnerable
– Si al aumentar la longitud de C se filtra información
– El resto de algoritmos de cifrado excepto Vernam son
matemáticamente vulnerables
17
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
Cifrado de Vernam. One-time-pad
• Cifrado:E(M) = M K = m1 k1, m2 k2, …, mn kn
1 0 0 1 1 1 0 1 M
0 0 1 0 0 1 0 1 K
1 0 1 1 1 0 0 0 C
• Descifrado: M = E(M) K
• Shannon demostró que el cifrado de Vernam es
incondicionalmente seguro si la clave K:
– Es realmente aleatoria
– Se usa una sola vez
– Es de longitud igual o mayor que M
18
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Los cifradores incondicionalmente seguros, como Vernam, NO
SON PRÁCTICOS
• Seguridad computacional ( o “No es vulnerable en la
práctica”):
– El criptoanálisis del sistema requiere al menos t operaciones
• El tiempo de criptoanalizar el algoritmo excede el tiempo de vida útil de la
información
• El coste de criptoanalizar el algoritmo excede el valor de la información
• Para cifradores simétricos
– No existe un algoritmo capaz de criptoanalizar el cifrador con una
complejidad menor que la de un ataque de fuerza bruta
19
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Ataque de fuerza bruta
– Probar todas las claves posibles
– En media, se deben probar la mitad de las posibilidades para tener
éxito
20
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
Criptoanálisis
• Tiempo medio requerido para realizar una búsqueda
exhaustiva de la clave (ataque de fuerza bruta)
Supuesto
Suposición procesamiento
razonable masivo paralelo
Tamaño de la Número de Tiempo requerido Tiempo requerido
clave (bits) claves posibles supuesto 1 supuesto 106
descifrado/µs descifrados/µs
32 232 = 4,3 · 109 231µs = 35,8 minutos 2,15 milisegundos
56 256 = 7,2 · 1016 255µs = 1142 años 10,01 horas
128 2128 = 3,4 · 1038 2127µs = 5,4 · 1024 años 5,4 · 1018 años
168 2168 = 3,7 · 1050 2167µs = 5,9 · 1036 años 5,9 · 1030 años
26 caracteres 26! = 4 · 1026 2 · 226µs = 6,4 · 1012 6,4 · 106 años
(permutación) años
Fuente: Cryptography and Network Security. Principles and Practice. Stallings
21
Ana I. González-Tablas Ferreres, José M. de Fuentes García-Romero de Tejada, Lorena González Manzano, Pablo Martín González
CURSO CRIPTOGRAFÍA Y SEGURIDAD INFORMÁTICA