Criptografía Kρύπτω (kryptos) – Oculto Escritura secreta No se oculta el mensaje Cifrar  Transcribir en guarismos, letras o símbolos, de acuerdo con una.

Slides:



Advertisements
Presentaciones similares
Curso de Seguridad Informática
Advertisements

CIFRADO DE FLUJO.
ALGORITMO DE LLAVE PUBLICA/ASIMETRICA
Redes I Unidad 7.
Seguridad en las redes de computadores
ACI – 425 SEGURIDAD INFORMÁTICA
Seguridad Informática y Criptografía Material Docente de Libre Distribución Ultima actualización: 02/03/04 Archivo con 13 diapositivas Jorge Ramió Aguirre.
PGP (Pretty Good Privacy)
Capítulo 7 Seguridad en las redes de computadores Nota sobre el uso de estas diapositivas ppt: Proporcionamos estas diapositivas de forma gratuita para.

SEGURIDAD DE REDES CARRERA DE INGENIERÍA DE SISTEMAS Ing. Moisés Toapanta, MSc. Guayaquil, junio del 2014.
Seguridad de Sistemas UMG Ingeniería en Sistemas
Capítulo 8 Seguridad en Redes
Tema 3 – Técnicas de Acceso Remoto y Seguridad Perimetral
CRIPTOGRAFÍA BÁSICA Juan Jesús Bru Castro.
¿Qué es esto? / /
Que es la criptografia Es el arte o ciencia de cifrar y descifrar información mediante técnicas especiales. Empleada frecuentemente para permitir un intercambio.
Seguridad Informática y Criptografía Material Docente de Libre Distribución Ultima actualización: 03/03/03 Archivo con 14 diapositivas Jorge Ramió Aguirre.

SOLUCIONES TECNOLÓGICAS Protección de las comunicaciones en internet
Técnicas de cifrado. Clave pública y clave privada Gabriel Montañés León.
Protocolo ssl. Introducción El protocolo SSL (Secure Sockets Layer) fue diseñado con el objeto de proveer privacidad y confiabilidad a la comunicación.
TALLER DE DESARROLLO WEB
El protocolo SSL (Secure Sockets Layer) fue diseñado con el objeto de proveer privacidad y confiabilidad a la comunicación entre dos aplicaciones. Este.
Guardando el secreto Protección de datos.
Electiva de Redes II – 2012-I Departamento de Ingeniería de Sistemas 1 Seguridad en Redes, Enfoque hacia Criptografía Miguel Jimeno, Ph.D. Departamento.
LEY DE AMPARO Y LAS TIC. ALCANCES INFORMÁTICOS DE LA LEY DE AMPARO. Desde el punto de vista informático, la ley de amparo establece que debe implementarse.
Para generar una transmisión segura de datos, debemos contar con un canal que sea seguro, esto es debemos emplear técnicas de forma que los datos que.
Criptografía: Nociones Básicas
Algoritmo de seguridad RSA web/aritmetica_modular/rsa.html
CRIPTOGRAFÍA. Es una técnica que se usa para mandar mensajes de forma incógnita mediante letras o signos colocados de diferente manera, mandados por un.
La palabra Criptografía proviene del griego "kryptos" que significa oculto, y "graphia", que significa escritura, y su definición según el dicccionario.
Certificación digital de Clave pública
Paul Leger Modelo OSI Paul Leger
Sistema Online de Firma Electrónica
Comunicaciones Seguras
Es la parte de las Matemáticas que estudia los números enteros y sus propiedadesEs la parte de las Matemáticas que estudia los números enteros y sus propiedades.
Criptografía Simétrica Moderna
Introducción a la Seguridad en Sistemas Informáticos
Multiplexación y encriptación
Capítulo 8, Sección 8.6: IPsec
e.Firma / e.Firma portable
CICLO DE VIDA DEL SOFTWARE
CRIPTOGRAFIA ASIMETRICA RSA
Protocolo SSL.
Capítulo 8 Seguridad en Redes:
Capítulo 8 Seguridad en Redes:
Data Encryption Standard (DES)
PROTOCOLO SSL.
CICLO DE VIDA DEL SOFTWARE
Seguridad Informática
Correo seguro Gustavo Antequera Rodríguez.
CRIPTOGRAFIA.
Seguridad en las redes de computadores Nota sobre el uso de estas diapositivas ppt: Proporcionamos estas diapositivas de forma gratuita para todos (profesores,
Capítulo 8 Seguridad en Redes:
SEGURIDAD INFORMATICA
PROTECCIÓN DE LA INFORMACIÓN
MÉTODO DE JULIO CESAR Desplazamiento de 3 letras
Tema 0 Una Introducción a la Criptografía
Criptografía de clave pública
Criptografía de clave pública MIGUEL ÁNGEL PIÑA GARCÍA JUAN DANIEL DEL TORO RAMOS.
Estructura de los sistemas Operativos 1. Componentes de un sistema operativo  Administración de procesos  Administración de memoria  Subsistema de Entrada/Salida.
METODOS DE ORDENAMIENTO CHRISTIAN MICHAEL OBANDO GARCES JOAO ADRIAN BARIONUEVO.
CRIPTOGRAFÍA.
Capítulo 8 Seguridad en Redes:
 La criptografía es la técnica de construir y analizar protocolos que permiten que terceras personas no sean capaces de leer mensajes que se desea permanecer.
Introduccion a la Criptografia. Historia La criptografía es tan antigua como la escritura misma. Los egipcios usaron metodos criptográficos (escritura.
SEGURIDAD: Criptografía
AGENDA DE LA SESION Exposición de Equipo Tema: Cifradores por Sustitución Monográmica Polialfabeto - Cifrado de Vernam Resolución de Ejercicios CRIPTOGRAFIA.
Transcripción de la presentación:

Criptografía Kρύπτω (kryptos) – Oculto Escritura secreta No se oculta el mensaje Cifrar  Transcribir en guarismos, letras o símbolos, de acuerdo con una clave, un mensaje cuyo contenido se quiere ocultar.

Amenazas a un mensaje

Mensaje Alice Bob Mensaje

Mensaje escuchado sin autorización (eavesdropping) Alice Bob Eve Mensaje

Mensaje interceptado Alice Bob Mallory Mensaje

Mensaje modificado Alice Bob Mallory Mensaje

Mensaje fabricado Alice Bob “Alice” Mensaje

Idea básica Encryption Dencryption PlaintextCiphertext Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Plaintext

Idea básica Cifrado Descifrado Mensaje originalCriptograma Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Esta es la clase De Seguridad Informática en El Tecnológico De Monterrey Mensaje orignal c = E(k,m) m = D(k,c) mc m c

Ecuación de consistencia (cifradores simétricos) m E(k,m) D(k,E(k,m)) m m=D(k,E(k,m))

Principios básicos de seguridad Confidencialidad  Privacidad, mensajes secretos Integridad  Mensaje no cambia en tránsito Disponibilidad Autenticación  Validar la identidad del emisor No repudio  No se puede negar haber enviado el mensaje  No se puede negar haber recibido el mensaje

Scytale (700 A de C)

Cesar (ROT 3) n = 3 50 AC

ROT 13 n = 13

Cifrador PigPen (Siglo XVIII)

Análisis de frecuencias InglésEspañol Problema con cifradores de sustitución monoalfabéticos

Análisis de frecuencia Le costo la cabeza a la reina Mary de Escocia

Cifradores polialfabéticos Leon Alberti 1460s  Propuso múltiples alfabetos para cifrar y alternar el uso de allos para cifrar un mensaje Blaise de Vigenère 1586  Implemento el cifrador que lleva su nombre

Ejemplo ABCDEFGHIJKLMNOPQRSTUVWXYZ Alfabeto original DEFGHIJKLMNOPQRSTUVWXYZABC NOPQRSTUVWXYZABCDEFGHIJKLM Alfabeto cifrado 1 Alfabeto cifrado 2 Mensaje en claro: JAVAXJALA Mensaje cifrado con alfabeto cifrado 1: MDYDAMDOD Mensaje cifrado con alfabeto cifrado 1: Mensaje cifrado con 2 alfabetos: MNYNAWDYD

Cifrador Vigenère

“One-time Pad” El cifrador perfecto La llave es una secuencia aleatoria de caracteres (bits) Llave y mensaje tienen la misma longitud Para combatir el análisis de frecuencia Dos problemas  Absoluta sincronización entre emisor y receptor  Número de llaves ilimitado (distribución)

Enigma

Cifrado simétrico y asimétrico Llave Privada Llave Pública

Cifrado simétrico y asimétrico Llave Privada Llave Pública

Cifrados de sustitución Cada letra se cambia por otra letra o símbolo A → C, B → D, Cesar c i = E(p i ) = p i + 3 General  c i = E(p i,n) = p i + n mod 26

Cifrados de sustitución Cada letra se cambia por otra letra o símbolo A → C, B → D, Cesar c i = E(p i ) = p i + 3 General  c i = E(p i,n) = p i + n mod 26

Cifrado Monoalfabético Cada letra del texto en claro se convierte en la misma letra en el texto cifrado  Usando 3 como llave ABCDEFGHIJKLMNOPQRSTUVWWXYZ defghijklmnopqrstuvwwxyzabc  Usando “palabra” como llave ABCDEFGHIJKLMNOPQRSTUVWWXYZ palbrcdefghijkmnoqstuvwwxyz

Cifrado Polialfabético Cada letra del texto en claro no es reemplazada por la misma letra en el texto cifrado Cifrado de Vigenère:  C = P + K mod 26 Usando “secreto” como llave  Texto en claro ESTEMENSAJEESFACIL  Llave secretosecretosecr  Texto cifrado wwvvqxbkelviltsgkc

Cifrados de tranposición Los símbolos del mensaje no cambian, sino que son reacomodados SEGURIDAD → GSARDIDEU PERMUTACIONES Transposición por columnas ESTEM ENSAJ EESMA SDIFI CILDE DESCI FRARA EEESC DFSNE DIERT SSILS AEAMF DCRMJ AIEIA

Cifrados secuenciales y de bloques Stream Cipher Block Cipher

Algoritmo seguro Basado en conceptos matemáticos sólidos Ha sido analizado por gente competente Ha resistido el paso del tiempo Principios básicos:  Confusión  Difusión

Principios Confusión Relación no evidente (compleja) entre mensaje claro/ llave y mensaje cifrado ¿Qué pasa con el texto cifrado si cambio un carácter del texto en claro?. No se puede predecir el cambio Evitar patrones claros Difusión Dispersar la información del texto claro en todo el mensaje cifrado El interceptador requiere acceso a mucha información para tratar de descifrar el mensaje original

Cifrados secuenciales y de bloques Secuenciales  (+) Buena velocidad de transformación  (+) Bajo propagación de error  (-) Baja difusión  (-) Suceptible a inserciones malignas Bloques  (+) Alta difusión  (+) Inmunidad a inserciones malignas  (-) Lentitud en el cifrado  (-) Alta propagación de errores

Algoritmos criptográficos La mayoría usa aritmética binaria Más fácil

DES (Data Encryption Standard) 1973: NBS (ahora NIST) llama a concurso para un cifrador comercial  Concebido para uso público (comercial)  NSA directamente involucrada  “Debilidades intencionales” (?)  Llave pequeña (56 bits) y bloques de 64 bits IBM concursa con Lucifer  Algoritmo de Horst Feistel desarrollado a principios de los 70s en IBM  Cifrador de bloque y llave privada (simétrica)  Originalmente de las llave de 128 bits y bloques de 128 bits  Emigrado alemán, : NBS adopta el cifrador de IBM como estándar 1997: Es atacado con éxito (fuerza bruta) 2000: NIST cambia a AES

DES Cifrador de bloques  Opera en bloques de datos de 64 bits Llave de 64 bits  Realmente es de 56 bits  Los 8 bits restantes se usan como paridad 16 rondas de sustituciones y permutaciones determinadas por cajas S (S-Boxes) I cajas P (P-Boxes) El mismo algoritmo para descifrar

Estructura general de DES IP: Initial Permutation FP: Final Permutation IP y FP son inversas Opera sobre bloques de 64 bits F: Función Feistel

Permutación Inicial (IP)

Función Feistel Una para cada una de las rondas. Se sacan del “key schedule” 48 bits Cajas S (S box) “Substitution” 6 bits entrada 4 bits salida 32 bits Expansión y Permutación

Función Feistel

Función de Expansión (E)

Cajas S (substitución)

S1 Entrada: Renglón: 1yyyy0 Columna: x0110x Salida: 0010 (2)

P

Generación de las “subkeys” PC1 (Permutation Choice 1)  64 bits a 56 bits  Permutación 2 mitades de 28 bits  Rotadas independientemente  1 ó 2 posiciones PC2 (Permutation Choice 2)  56 bits de entrada  48 bits de salida

Generación de las “subkeys” PC1 (Permutation Choice 1)  64 bits a 56 bits  Permutación 2 mitades de 28 bits  Rotadas independientemente  1 ó 2 posiciones PC2 (Permutation Choice 2)  56 bits de entrada  48 bits de salida

64 bits 56 bits 28 bits 1 ó 2 posiciones 56 bits 48 bits 56 bits 48 bits 56 bits 48 bits 1 ó 2 posiciones 28 bits

PC-1

Rotaciones para generar las subllaves

PC-2

Permutación Final (FP)

Doble DES E(k 2, E(k 1,m)) Doble pasada, cifrar el mensaje dos veces con dos llaves diferentes  Llaves de 112 bits (?) No da más seguridad  2 57 = 2*2 56 para un ataque de “fuerza bruta” (búsqueda exhaustiva)  Ataque “meet in the middle”

Triple DES C = E(k 3,D(k 2, E(k 1,m))) Llaves de 168 bits (?) Equivalente a llaves de 118 bits. Variación de triple DES  C = E(k 1,D(k 2, E(k 1,m)))  Equivalente a llave de 80 bits Llaves arriba de 90 bits son más que suficiente

Seguridad DES Los criterios de diseño nunca se hicieron públicos Muchos pensaron que NSA había incluido “puerta trasera” El tamaño de la llave muy pequeña. El rumor es que NSA influyó para esto Hasta la fecha no se ha descubierto ninguna debilidad intencional La mayor amenaza son los ataques de fuerza bruta

Seguridad DES 1977: Diffie y Hellman  Máquina que puede romper DES en 1 día  $20,000,000 US 1993: Wiener  Máquina que puede romper DES en 7 horas  $1,000,000 Ninguna fue implementada  Al menos públicamente

Seguridad DES 1997: RSA Security ofrece $10,000 al primer lugar  Ganó el proyecto DESCHALL usando Internet  3 meses 1998: Máquina “Deep Crack” EFF  56 horas  $250,000 US 2006: COPACOBONA  120 FPGAs  7 días

AES (Advanced Encryption Standard) 1997: NIST publica RFP 1999: 5 finalistas 2001: Elige a Rijndael  Inventado por Vincent Rijmen y Joan Daemen, originalmente llamado Rijndael (“raindel”) Estándar oficial federal en mayo del 2002 Algoritmo de llave privada (simétrico) Bloques de 128 bits y llaves de 128, 192 ó 256 bits 9, 11 ó 13 rondas de sustituciones, corrimientos y mezcla de bits, dependiendo del tamaño de la llave

Funcionamiento de AES

Distibución de llaves DES y posteriormente AES solucionaron el problema de estandarización y permitió a los negocios (bancos) usar criptografía El problema es:  ¿Cómo distribuyo la llave previo a la comunicación cifrada? Requiere muchos recursos (dinero) tener un esquema “adecuado”  Un banco tiene miles de clientes, una llave para cada uno COMSEC distribuye las llaves de EEUU

Manejo de llaves C1 C3C4 C2 K 12 K 34 K 23 K 14 K 13 K 23 Cada usuario n-1 llaves

Una mejor solución TTP (Trusted Third Party) C1 C3 C4 C2 Cada usuario solamente necesita UNA sola llave K1K1 K4K4 K2K2 K3K3 E(K 1, “1,2”||K 12 ) E(K 2, “1,2”||K 12 ) Ticket Inseguro contra repeticiones

Distribución de llaves Inicialmente puede parecer algo trivial Pero pronto se hizo una tarea inmanejable Y después se estableció que la tarea era imposible de resolver Típica situación “Catch 22” … hasta mediados de los 70s

La recompensa de los tontos Ralph Merkle, Martin Hellman y Whitfield Diffie

Whitfiled Diffie  Nació en 1944, se graduó en matemáticas del MIT en 1965 Martin Hellman  Nació en 1945, se graduó con doctorado de Stanford en 1969 Ralph Merkle  se graduó con doctorado de Stanford en 1977

Rompecabezas de Merkle Problemas que se pueden resolver con algo de esfuerzo  Encontrar una llave de un cifrador simétrico de n bits (ej. 32)  Rompecabezas(p) = E(p, “mensaje”)

Rompecabezas de Merkle Alice  prepara 2 32 rompecabezas  Para cada rompecabezas elige una llave aleatoria p i (i= )  Rompecabezas i = E(p i, “Rompecabezas # r i ” || k i )  Enviar rompecabezas 1 a 2 32 Bob  Elige un rompecabezas y lo resuelve.  Obtiene (r j, k j )  Envía r j a Alice Alice  Usa k j como llave común Alice: Preparar n rompecabezas 2 32 O(n) Bob: Resover un rompecabezas 2 32 O(n) Atacante: ?

Envió de mensaje secreto Alice Bob ¿Y la llave?

Envió de mensaje secreto Alice Bob ¿Y la llave?

Intercambio de mensaje sin intercambio de llave previo Alice Bob Alice Bob Alice Bob

Intercambio de mensaje sin intercambio de llave previo En teoría funciona, pero en criptografía El último en cifrarse es el primero en descifrarse En criptografía el orden es crucial No funcionó!!!! Pero alimentó la inspiración

Funciones Bidireccionales  Y = 2*X X = 2/Y Unidireccionales  One way function  Fácil de hacer, pero muy difícil (imposible) de deshacer  Mezclar colores en pinturas  Romper un huevo Aritmética modular

Aritmética modular y exponencial 3 x  Podemos resolverla a prueba y error  Si el resultado se incrementa, también la x  Si el resultado es 81 y probamos x=5 → 243, x es muy grande Con aritmética normal podemos saber si nos estamos acercando o alejando En aritmética modular NO! 3 x mod 7 x x x mod

Hellman-Diffie-Merckle g x mod p p y g conococido por ambos g a mod pg b mod p (g b mod p) a mod p(g a mod p) b mod p g ba mod pg ab mod p En la práctica g es 2, 5 ó 7. a, b y p necesitan ser grandes

Hellman-Diffie-Merckle g a mod p g b mod p (g b mod p) a mod p(g a mod p) b mod p g ba mod pg ab mod p En la práctica g es 2, 5 ó 7. a, b y p necesitan ser grandes ?

Intercambio de llaves Fue un paso gigante Pero el resultado tenía sus incovenientes  Alice y Bob tiene que estar “en línea” simultáneamente para intercambiar mensajes Siguieron trabajando En 1975 Diffie concibió el cifrador con llave asimétrica Una para cifrar y otra para descifrar

Llave pública Dos llaves Una de las llaves debe ser hecha pública Otra privada, sólo conocida por el dueño No se necesita un canal seguro para las llaves Más costoso en poder de cómputo 10,000 veces más lento que llave privada (simétrica)

Funcionamiento de llave pública Este es el texto original del mensaje en claro #$”%/&% *?¿[])(&”# []=()/&%¡ Este es el texto original del mensaje en claro CifrarDescifrar PrivadaPública Ambas llaves son de la misma “persona” El proceso puede ser al revés

Confidencialidad Alice Bob

Autenticación Alice Bob

Características de llave pública Diffie y Hellman Llave privada es impráctica para aplicaciones actuales, demasiadas llaves P = D(K PRIV, E(K PUB, P)) P = D(K PUB, E(K PRIV, P)) Cualquiera puede mandar un mensaje a alguien, pero solo el receptor puede descifrarlo Muchas menos llaves que llave privada Basados en problemas difíciles

Más candados Llave pública Llave privada

Invención del concepto ….. Pero no la implementación El concepto de llave asimétrica fue revolucionario Diffie publicó su idea en 1975 y muchos científicos se unieron a la causa.... Pero en más de una año nadie había encontrado la famosa función “unidireccional”  Fácil en un sentido y muy difícil en reversa  Pero fácil en reversa si se tiene alguna información secreta (llave privada)

Rivest-Shamir-Adleman Rivest, Shamir y Adleman Shamir, Rivest y Adleman

RSA Inventado por Ron Rivest, Adi Shamir y Leonard Adleman Hecho público en 1978 Es el algoritmo más usado en llave pública Utilización del concepto de “one way function”  Fácil de hacer en un sentido, casi imposible de hacer en el sentido inverso  Elegir dos primos muy grandes p y q Calcular N = p*q Si m es de 100 cifras se necesitan operaciones para factorizar n p y q llave privada N llave pública

¿p y q dado N? “Confía en el tiempo, que suele dar dulces salidas a muchas amargas dificultades” Miguel de Cervantes Saavedra N por lo menos es Pentium 100MHz 8MB RAM  50 años para factorizar  Con 100,000,000 de estas computadoras 15 segundos Procesadores cuánticos  Lectura: “15 = 3*5 en la mitad del tiempo”

RSA Elección de dos número primos secretos y grandes p y q Llave pública N = pq Llave privada d  d*e = 1 mod (p-1)(q-1)  Teorema de congruencia lineal  d se calcula por medio de algoritmo de Euclides C = P e mod n P = C d mod n

Teorema de congruencia lineal ax ≡ b mod n Solución para x ↔ b es divisible por el Máximo Común Divisor gcd(a,n) Solucionado por el algoritmo de Euclides para encontrar primos relativos

Ejemplo RSA Alice elige dos números primos muy grandes y secretos  p = 17  q = 11 Alice genera N = pq = 187 y elige otro número  N = 187  e = 7  e y (p-1)*(q-1) deben ser primos relativos Alice publica N y e (su llave pública) C = P e mod n

Ejemplo RSA Bob quiere enviar mensaje 'x'  P = 88 C = 88 7 mod 187 = mod 187 = (88 4 mod 187)(88 2 mod 187)(88 1 mod 187) Exponencial con aritmética modular es función unidireccional Se envía el mensaje cifrado (11) Alice recibe 11

Ejemplo RSA Alice recibe 11 Calcula d usando algoritmo de Euclides  e*d = 1 mod (p-1)(q-1)  7*d = 1 mod 16*10  7*d = 1 mod 160  7*d = 161  d = 23 P = C d mod n  P = mod 187  P = 88 → 'x'

Comparación PRIVADA  1 llave  Llave debe mantenerse secreta  La más usada en criptografía para mantener datos secretos e integridad  La distribución de la llave debe ser por otro medio  Rápida PUBLICA  2 llaves  Una secreta y otra puede ser pública  Aplicada en intercambio de llaves y autenticación  Distribución libre  Lenta (10,000 veces más lenta que llave privada)

Intercambio de llaves K llave a intercambiar S Sender, R Receiver S envía C S = E(K PRIV-S, K) a R  En R D(K PUB-S, C S ) y obtiene K  Cualquiera que oiga y tenga K PUB-S puede..... S envía E(K PUB-R, K) a R  Solamente R puede descifrar y obtener K  Problema R no puede estar seguro de que viene de S

Intercambio de llaves

“Digest” Algoritmos de hashing SHA-1, SHA-2, SHA-3  Secure Hash Algorithm  Desarrollado por NIST  Entrada de cualquier tamaño (archivo)  Salida 160 bits MD2, MD4, MD5  MD5 esarrollado por Ronald Rivest  Liberado en 1991  Genera una salida de 128 bits

Firmas digitales Emisor  Crea un “digest” dado el mensaje  Cifra el digest usando la llave privada del emisor  Envía el mensaje en texto en claro y el digest cifrado Receptor  Descifra el digest recibido con la llave pública del emisor  Crea otro digest con el mensaje en claro  Compara ambos para ver si el mensaje es válido

Firmas digitales Asegura que el mensaje  Viene del emisor establecido  Y el mensaje no cambió en el camino  No repudio e integridad  No asegura confidencialidad Tipos  HMAC (Hashed Message Authentication Code)  DSA (Digital Signature Algorithm)  DSS (Digital Signature Standard) Usada por el gobierno de EEUU

Certificados Digitales AUTOESTUDIO