0% encontró este documento útil (0 votos)
36 vistas27 páginas

Criptografía: Métodos y Sistemas de Cifrado

La criptografía es el estudio de métodos para convertir mensajes legibles en ilegibles mediante claves, asegurando principios como confidencialidad, integridad y no repudio. Existen sistemas de cifrado simétricos, asimétricos y híbridos, cada uno con sus ventajas e inconvenientes, y se utilizan funciones hash para garantizar la integridad de los datos. La firma digital, que utiliza criptografía asimétrica, asegura la autenticidad del emisor, aunque no garantiza la confidencialidad del mensaje.

Cargado por

analiapeva29
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
36 vistas27 páginas

Criptografía: Métodos y Sistemas de Cifrado

La criptografía es el estudio de métodos para convertir mensajes legibles en ilegibles mediante claves, asegurando principios como confidencialidad, integridad y no repudio. Existen sistemas de cifrado simétricos, asimétricos y híbridos, cada uno con sus ventajas e inconvenientes, y se utilizan funciones hash para garantizar la integridad de los datos. La firma digital, que utiliza criptografía asimétrica, asegura la autenticidad del emisor, aunque no garantiza la confidencialidad del mensaje.

Cargado por

analiapeva29
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Unidad 2

Seguridad Lógica
Criptografía

[email protected]
Pablo Esteban Sánchez

Seguridad y Alta disponibilidad


2º ASIR
Recuerda ...

En esta
presentación

[email protected]
1. Introducción
Criptografía

Estudia los métodos para convertir un mensaje legible en otro ilegible
(mensaje cifrado) mediante el uso de una clave (key)
– La clave es imprescindible para volver a hacer legible el mensaje cifrado.


Gracias al uso de la criptografía se logran alcanzar los principios:
– Confidencialidad – gracias al cifrado de mensajes
– Integridad – Gracias al hash o resumen
– No repudio – gracias a la firma digital

[email protected]
1. Introducción
Criptografía

Un método de cifrado se considera seguro cuando el tiempo que hay
que emplear en romperlo es suficientemente grande

No hay sistema de cifrado infalible… a la larga, todos son
vulnerables al criptoanálisis:
– Vulnerabilidades en el algoritmo de encriptado o en su implementación
Diseño del algoritmo en el software
– Estadísticas de repeticiones
– Ataques de fuerza bruta: probar todas las posibles claves, …

[email protected]
1. Introducción
Un poco de historia

Uno de los sistemas de cifrado más famoso es el
cifrado del César.

Consiste en desplazar las letras del abecedario cierto
número de posiciones.
Desplazamiento de 3
La clave es 3


Por ejemplo, para el mensaje ‘Hola ASIR!’

https://eduescaperoom.com/cifrado-cesar/

[email protected]
1. Introducción
Un poco de historia

El cifrado del César nos permite explicar cómo funciona un sistema de
cifrado:
– La clave, secreta, es el desplazamiento de caracteres. (Por ejemplo, 3, 4,
…)
– La clave sólo debe ser conocida por Emisor y Receptor previamente.

– La clave no debe formar parte del mensaje cifrado.

– Punto crítico: compartir la clave entre el emisor y el receptor! Evitar


intercepciones y filtraciones

Posibles ataques a éste método:
– Fuerza bruta: probar todas las claves (desplazamientos), hasta que uno
funcione.
– Criptoanálisis estadístico: Estudiar la frecuencia de caracteres … En
castellano, la más frecuente es la ‘e’. La que más se repita en el texto
cifrado supondremos que equivale a la ‘e’...

[email protected]
2. Sistemas de cifrado

Actualmente, los sistemas de cifrado se han sofisticado y están basados
en algoritmos matemáticos

Los principales tipos son:
– Algoritmos simétricos o de clave privada

– Algoritmos asimétricos o de clave pública

– Algoritmos híbridos (lo mejor de simétrico y asimétrico)


Para todos se cumple que:
– Los algoritmos son públicos! Todos pueden conocer cómo funciona y
hacer su implementación (Di NO a la seguridad por oscuridad)
– A mayor tamaño de clave (en bits) más seguro es.
Regla de Oro

Ejemplo tonto … La seguridad recae en una clave
fuerte
– Clave corta: hola = 4 bytes = 32 bits no en el secreto del algoritmo.
– Clave larga: Hola1234$ = 9 bytes = 72 bits El algoritmo debe ser público.

[email protected]
Un paréntesis ...
Seguridad por oscuridad

Security Through Obscurity (STO)

La seguridad se basa en que los detalles de la implementación son
secretos.
– Si el secreto se desvela: adiós seguridad

Ejemplos:
– Usar un algoritmo de cifrado propietario.
– Usar puertos poco comunes (ssh en el puerto 3456)
– Mantener secreto el código fuente.
– Esconder la llave de casa debajo del felpudo …

Lo ideal es seguir los principios, guías técnicas y buenas prácticas de la
comunidad.

[email protected]
Un paréntesis ...
Seguridad por oscuridad

Ejemplo: algoritmo de cifrado que consiste en pasar a base64 y luego
hago un XOR con la clave ‘asir’
– Secreto!!! no le digo a nadie cómo lo hago!!

Cifrado Descifrado

[email protected]
2. Sistemas de cifrado
Cifrado simétrico o de clave privada

Se llaman simétricos porque usan la misma clave para cifrar y descifrar.


La clave sólo debe ser conocida por Emisor y Receptor (Por eso este
cifrado se conoce como de clave privada)

[email protected]
2. Sistemas de cifrado
Cifrado simétrico o de clave privada

Ventajas
– Son muy rápidos y eficientes: Alta velocidad de cifrado / descifrado

Inconvenientes:
– Es necesario que Emisor y Receptor conozcan previamente la clave
– ¿Cómo compartes esa clave de manera segura por un medio inseguro?

Puede haber mucha gente escuchando … Por ej. Internet

Principales algoritmos simétricos:
– DES: clave de 52 bits. Puede romperse en menos de 24 horas.
– TDES (Triple DES): Clave de 192 bits. Equivale a aplicar DES 3 veces.
– IDEA: Clave de 128 bits. Uno de los más seguros actualmente
– AES: Claves de 128, 192 o 256 bits. El más usado actualmente
– Blowfish: Clave de 32 a 488 bits. Usado para generar conjuntos de claves.

[email protected]
2. Sistemas de cifrado
Pregunta ...

AES tiene clave de 128 bits, 192 o 256 bits, … TDES de 192 bits, …
– Pero luego voy yo, y pongo de contraseña 12345!!
– ¿Cómo es posible?
– ¿!¿!Necesito una contraseña de 256 / 8 = 32 caracteres?!?!

Solución: KDF o Key Derivation Function o Funciones de derivación de clave
– Usadas para extender claves en otras más largas
– La idea es transformar una contraseña insegura, como "12345" otra de los bits
requeridos por el algoritmo usado.
– Por ejemplo, GPG utiliza la función de derivación de clave PBKDF2 (Password-
Based Key Derivation Function 2) o Scrypt, para fortalecer la contraseña y generar
una clave de cifrado segura a partir de ella.

A pesar de KDF, intenta usar contraseñas complejas … veremos por qué en
un ejercicio! Funciones KDF
Son potenciadas por SALT!

[email protected]
2. Sistemas de cifrado
Cifrado asimétrico o de clave pública

Cada persona (emisor y receptor) dispone de 2 claves:
– 1 pública: Puede ser consultada por cualquiera (… como lo oyes)

– 1 privada: No se comparte con nadie


Ambas claves se generan usando algoritmos matemáticos basados en
números primos, y …
Importante!
– No es posible deducir una a partir de la otra

– Cuantos más bits se usen para las claves, más seguras

– Lo que se cifra con una, se descifra con la otra (magia!!)


Emisor y receptor intercambian sus claves públicas sin problema
– Ya que no se puede sacar la privada a partir de la pública, esto no es problema.

El emisor cifra el mensaje usando la clave pública del receptor

El receptor lo descifra usando su propia clave privada

[email protected]
2. Sistemas de cifrado
Cifrado asimétrico o de clave pública

[email protected]
2. Sistemas de cifrado
Cifrado asimétrico o de clave pública

Ventajas:
– Resuelve el problema que tenían los simétricos para compartir la clave

La clave pública puede ser vista por cualquiera sin problemas!

Podemos añadirla a nuestro perfil en redes sociales, en nuestra firma de correo, ...
– Especialmente adecuado para transmitir datos por Internet.

Inconvenientes:
– Son poco eficientes: a igual longitud de clave, son mucho más lentos que los
algoritmos simétricos: pueden constituir un cuello de botella en telecomunicaciones
– Necesario proteger la clave privada!

No basta dejarla en una carpeta del disco duro

Se usa un fichero especial llamado Keyring (llavero), que a su vez está cifrado con
cifrado simétrico:
– Para acceder a mi propia clave en mi PC necesito una contraseña

[email protected]
2. Sistemas de cifrado
Cifrado asimétrico o de clave pública

Algunos algoritmos de cifrado asimétrico o de clave pública
– RSA: Clave de 128, 256, 1024, 2048 ó 4096 bits.
– DSA: Clave de 1024 y 3072bits. Mismo nivel de seguridad que RSA.
En constante desarrollo gracias al apoyo del gobierno de EEUU.
– ECC: Mismo nivel de seguridad que los anteriores, haciendo uso de
claves mas cortas. Por ejemplo: una clave ECC de 256 bits equivale a
una de 3072 bits DSA

[email protected]
2. Sistemas de cifrado
Cifrado híbrido

Recuerda que el cifrado asimétrico, aunque seguro, es muy lento para
cifrar todos los paquetes intercambiados entre 2 nodos en la red.

El cifrado simétrico, por su parte, es muy rápido cifrando, pero es
inseguro intercambiar la clave, …

Lo ideal es combinar ambas estrategias: Cifrado Híbrido!!!
– Usar criptografía asimétrica sólo para el inicio de la sesión

Para generar un canal seguro donde acordar la clave simétrica aleatoria que se
utilizará en esa conversación
– Usar criptografía simétrica durante la transmisión

Usando la clave simétrica acordada durante el inicio de sesión.

[email protected]
2. Sistemas de cifrado
Cifrado híbrido

Ejemplo de uso: protocolo SSH (Secure Shell) - Cuando A quiere establecer una
conversación con B, en A se

genera en ese instante una clave
simétrica (CS)
- Para enviársela a B de modo
seguro, A la cifra usando un
algoritmo asimétrico con la clave
pública de B.
- Cuando B recibe la CS cifrada, la
descifra con su clave privada
- Desde ese momento, A y B
pueden comunicarse usando la
clave simétrica (CS) para
intercambiar mensajes entre
ambos.

[email protected]
3. Huella digital

Una huella digital o hash es un conjunto de bytes …
– generado a partir de una entrada (documento, mensaje, flujo de bytes, …)
– Mediante un algoritmo (denominado función hash)

Que garantiza que:
– Cualquier cambio en el documento, incluso de un único bit, produce un hash totalmente
diferente
– Es imposible obtener la entrada inicial a partir del hash. No reversibles!!!

Los hashes producidos por un mismo algoritmo hash (hay varios):
– Tienen siempre el mismo tamaño en bytes (independientemente de cuantos bytes tenga la
entrada)
– Cuantos más bits tenga el hash, menor probabilidad de colisiones (que 2 entradas
produzcan el mismo hash)

Principales algoritmos:
– MD5: genera huellas de 128 bits (32 caracteres hexadecimales)
– SHA1: genera huellas de 160 bits (40 caracteres hexaadecimales)
– SHA2: hay varias veresiones con distinto número de bits: SHA-224, SHA-256, SHA-
512, ...Para SHA-512, el hash generado es de 512 bits o 128 caracteres hexadecimales
– SHA3

[email protected]
3. Huella digital

Ej. Para el mensaje: ‘Hola 2º de ASIR’ https://gchq.github.io/CyberChef/

Algoritmo Hash
Cada carácter son 4 bits

md5 E42be0d54935e09ea4ce49d8f647006b (32 caracteres)

128 bits

sha1 B6e20bfa04557711f67cdc8bba91e224c4b06854 (40 caracteres)

160 bits

sha2 3cafa56e1d8fd2f1d429d6323275e5ddac313b3581785e6e1ca261c2a83cd0ccd53b687cfdc2da4dccf49b151f62b
a72680c4c1a85731959d1f1b6c412d50143 (128 caracteres)
512 bits

sha3 2c1c5064bd44a91c7a5881674ad6d602f227e761464dff539eb4c7287b9c919596d959a737f263f316ec7c72e46b
43d43e2135b8aea653104e07f40cabaf2547 (128 caracteres)
512 bits

[email protected]
4. Firma digital

Usado para garantizar que el Emisor es quien dice ser (Autenticidad)

Se apoya en la criptografía asimétrica o de clave pública.

¿Cómo funciona? Supongamos que vamos a enviar un documento y
queremos que el receptor confíe en que somos nosotros.
– 1. El emisor aplica una función hash al documento → resumen o hash
– 2. El emisor cifra ese hash o resumen con su propia clave privada.
– 3. El emisor lo envía al destino junto con el documento original

¿Qué hace el receptor para verificar la autenticidad?
– 1. Aplica la misma función hash al documento recibido (paso 2)
– 2. Descifra el resumen recibido con la clave pública del emisor
– 3. Compara el hash calculado con el que ha descifrado. Deben ser =
Recuerda que lo

Resumiendo! La firma de un documento es: que se cifra con la
clave pública se
descifra con la
– El hash del mismo cifrado con la clave privada del emisor clave privada y
viceversa!!!

[email protected]
4. Firma digital
Proceso de firma

[email protected]
4. Firma digital

El proceso visto, garantiza la Autenticidad, pero no la Confidencialidad
– El Receptor sabe que el documento es del Emisor, pero ha podido ser
visto por cualquiera que haya interceptado la comunicación.

Con todo lo visto hasta ahora … ¿Se te ocurre qué hacer para proteger el
mensaje original y la firma de miradas indiscretas?

Solución:
Usando cifrado asimétrico, el emisor cifra el mensaje y la firma usando
la clave pública del receptor
El receptor, lo primero que hará será desencriptar mensaje y resumen
con su clave privada.
Luego comprobará la firma con lo visto en la diapositiva anterior.

[email protected]
5. Firma y certificado digital
Problemas a lo visto hasta ahora

Lo visto hasta ahora gracias al cifrado asimétrico o de clave pública está
muy bien:
– Nos permite intercambiar claves simétricas en un entorno inseguro como es
Internet.
– Nos da un mecanismo para firmar electrónicamente

Pero tiene 2 problemas muy serios! ¿Cuáles?
– 1. ¿Puedes estar seguro de las claves públicas que recibes?

Por ejemplo, si quiero mandar un mensaje a un compañero y el me pasa su clave
pública, ¿Puedo estar seguro de que esa clave es suya?
– ¿Y si alguien lo ha suplantado?

– 2. Para cualquier comunicación que quiera hacer de manera segura, ¿Tienen


que mandarme primero la clave pública por mail previamente?

De ser así, sería un desastre!

SOLUCIÓN: PKI (Public Key Infrastructure)

[email protected]
5. Firma y certificado digital
Solución: PKI (Public Key Infrastructure)

Infraestructura de clave pública

Ahora, entre el emisor y el receptor, aparecen nuevos interlocutores:
– La Autoridad Certificadora (CA o Certificate Authority): se encarga de
emitir certificados (hasta ahora los generábamos nosotros con gpg)
– La Autoridad de Registro (RA o Registration Authority): responsable de
asegurarse que el solicitante de un certificado es quien dice ser.
– La Autoridad de Validación (VA o Validation Authority): responsable de
comprobar la validez de los certificados emitidos. En la realidad, coincide
con la CA (Autoridad Certificadora).
– Los Repositorios: son almacenes de certificados. Hay 2 tipos: los que
almacenan certificados activos, y los que almacenan la lista de
certificados revocados (caducados, desactivados, ...)

[email protected]
5. Firma y certificado digital
Ej. Ciudadano firma declaración de la renta con certificado

[email protected]
6. Salt

Valor aleatorio añadido a la contraseña original antes de realizar operaciones
como hashing o una KDF (funciones de derivación de clave).
– Objetivo principal: evitar ataques de diccionario, al añadir aleatoriedad a la
contraseña.
– Recuerda que las contraseñas de usuarios no se almacenan en plano, sino que lo
que se guarda realmente es el hash de la misma.

Ejemplo:
– imagina que mi contraseña es pikachu, y estoy usando como salt el valor
AB34oW1D8hZcyt1Z7J.
– Se hará el hash de la contraseña AB34oW1D8hZcyt1Z7Jpikachu.
– Ej. md5: d92554e210e484368ae807895184f256.

¿Qué aporta el salt?
– 1. Evitar ataques de diccionario
– 2. Prevenir ataques de Rainbow tables
– 3. Introducir aleatoriedad en el cifrado

[email protected]

También podría gustarte