Upload
trinhphuc
View
219
Download
0
Embed Size (px)
Citation preview
Temario
Introducción Breve historia Algoritmos simétricos Algoritmos asimétricos Protocolos seguros Ejemplos
Introducción
¿Porqué es necesario la criptografía? Para transmitir un mensaje en forma segura a
través de un medio inseguro
Definición según la RAE (criptografía): ”el arte de escribir con clave secreta o de
modo enigmático” Definición interesante y llamativa pero poco
acorde a nuestros tiempos
Problemas con la definición
Ya no es un arte No solo se escriben documentos Supone el uso de UNA clave. Actualmente se
utilizan 2 o más claves No necesariamente la clave debe ser secreta.
Actualmente la infraestructura PKI utiliza una clave que es pública
Escribir en forma enigmática. Escribir en binario no es enigmático para un computador
Mejor definición
”Rama inicial de las Matemáticas y en la actualidad también de las TICs, que hace uso de métodos y técnicas con el objeto principal de cifrar, y por tanto proteger, un mensaje o archivo por medio de un algoritmo, usando una o más claves.”
Permite asegurar la: Confidencialidad Integridad Autenticidad (no repudio)
Breve Historia
Se cree que su origen se remonta a los romanos Ejemplo el cifrado de César Cifrado por desplazamiento o sustitución
Breve Historia
No hubo mayor desarrollo hasta la segunda guerra mundial con la aparición del ENIGMA Máquina usada por los alemanes para el cifrado y
descifrado de sus mensajes
Breve Historia
Criptografía moderna Se considera su inicio con la aparición de las
publicaciones de Claude Shanon sobre criptografía matemática y teoría de información y comunicación
En el año 70 surge el DES Data Encryption Standard Estándard de cifrado emitido por el NIST
Suplantado por el AES el año 2001 luego de que se quebrara por ataque de fuerza bruta
Aparición de algoritmos de clave pública RSA en 1977
Algotimos Simétricos
Conocida como criptografía de clave privada Emisor y receptor comparten la misma clave
Algoritmos simétricos
Existirá una única clave (secreta) que deben compartir emisor y receptor.
Con la misma clave se cifra y se descifra por lo que la seguridad reside en mantener dicha clave en secreto
Algotimos Simétricos
Existen 3 familias de algoritmos simétricos Algoritmos simétricos de bloque Algoritmos simétricos de flujo (stream) Funciones HASH
Los más conocidos son los algoritmos de bloque El más conocido es el cifrado tipo Feistel
Cifrado tipo Feistel
Horst Feistel: inventor (IBM) del algoritmo LUCIFER a comienzos de los años 70. El algoritmo fue utilizado por el Reino Unido. En 1974 se propone a la NSA como estándar y en ese año dará origen al DES.
●Dado un bloque de N bits (típico 64) éste se dividirá en dos mitades.●Existirá una función unidireccional F (muy difícil de invertir).●Se realizan operaciones con la clave ki sólo con una mitad del bloque, y se permutan en cada vuelta las dos mitades, operación que se repite durante n vueltas.
Cifrados de bloques más conocidos
Algoritmo Bloque (bits) Clave (bits) Vueltas
Lucifer 128 128 16
DES 64 56 16
Loki 64 64 16
RC2 64 variable --
CAST 64 64 8
Blowfish 64 variable 16
IDEA 64 128 8
Skipjack 64 80 32
Rijndael 128 128 o más flexible
Características
Lucifer: algoritmo original tipo Feistel usado a comienzos de los años 70 por en el Reino Unido y que posteriormente dará lugar al DES.
DES: algoritmo tipo Feistel que se convirtió en estándar durante casi treinta años. Hoy es vulnerable por su pequeña longitud de clave y ha dejado de ser estándar mundial.
Loki: algoritmo australiano similar al DES, también de tipo Feistel.
RC2: algoritmo propuesto por Ron Rivest y que se incluye en navegadores de Internet desde 1999.
CAST: algoritmo canadiense tipo Feistel que se ofrece como uno de los algoritmos de cifra en últimas versiones de PGP.
Características
Blowfish: algoritmo de tipo Feistel propuesto por Bruce Schneier.
IDEA: algoritmo europeo usado principalmente en el correo electrónico PGP.
Skipjack: propuesta de nuevo estándar en USA a finales de los 90 para comunicaciones oficiales (tiene puerta trasera).
Rijndael: nuevo estándar mundial desde finales de 2001, conocido como AES, Advanced Encryption Standard.
Algorimos simétricos de flujo
Usados para flujos de datos Ej. WEP, WAP
Se utiliza cifrado bit a bit o byte a byte Deben ser rápidos Independientes de los bloques tránsmitidos
Funciones HASH
Herramienta fundamental en la criptografía Usadas para resolver el problema de la
integridad, autenticidad y origen del mensaje Muy usado en la firma digital, pues genera un
”resúmen” de un documento, de largo fijo y único
Las funcionas HASH más usadas son: MD5 SHA-1
Propiedades de funciones HASH
h(M) será segura si tiene las siguientes características:
1)Unidireccionalidad: conocido un resumen h(M), debe ser computacionalmente imposible encontrar M a partir de dicho resumen.
2)Compresión: a partir de un mensaje de cualquier longitud, el resumen h(M) debe tener una longitud fija. Lo normal es que la longitud de h(M) sea menor que el mensaje M.
3)Facilidad de cálculo: debe ser fácil calcular h(M) a partir de un mensaje M.
4)Difusión: el resumen h(M) debe ser una función compleja de todos los bits del mensaje M: si se modifica un solo bit del mensaje M, el hash h(M) debería cambiar la mitad de sus bits aproximadamente.
Pros algoritmos simétricos
El emisor y el receptor comparten una misma clave.
La seguridad depende sólo del secreto de la clave.
La velocidad de cifra es muy alta y los sistemas con un espacio de clave con cientos de bits son muy seguros.
Permitirán autenticar los mensajes con MACs.
Contras
Es imposible establecer un sistema de distribución y gestión de claves eficiente entre emisor y receptor.
Carecen de una firma digital, al menos en un sentido amplio y sencillo.
Algoritmos Asimétricos
Utiliza 2 pares de claves Una pública para cifrar y otra privada para descifrar
Nació como respuesta a la necesidad de mejorar el mecanismo de intercambio de llaves
Propuesto por Diffie Hellman Popularizado por Rivest Shamir y Adleman
RSA Basado en la imposibilidad computacional de
factorizar números enteros grandes
Algoritmos Asimétricos
Utilizan una llave o clave de mayor tamaño Normalmente 1024 bits
Son computacionalmente más complejos y costosos
Soluciona, en parte, el intercambio de llaves Combinado con funciones HASH y algoritmos
simétricos permiten el intercambio de mensajes en forma segura y eficiente
Protocolos Seguros
Utilizando herramientas criptográficas buscan resolver los problemas de integridad, confidencialidad y autenticidad en la comunicación de datos
El más utilizado el SSL, Secure Socket Layer Ej. HTTPS: Web seguro SSH: Secure Shell PGP: Preety Good Privacy, correo seguro
Utiliza deversos algoritmos: DES, RCA, SHA-1, 3DES, DH, etc.