3. Para obtener la Confianza
de las partes “CIDAN”
• Confidencialidad
– Confianza en la privacidad de la información.
• Integridad
– Confianza en que los datos no sean modificados.
• Disponibilidad
– Se trata de la capacidad de un servicio, de unos datos o de un sistema, a
ser accesible y utilizable por los usuarios (o procesos) autorizados cuando
estos lo requieran.
• Autenticación
– Confianza en la identidad de todas las entidades.
• No repudio
– Confianza en que las partes no se desdigan.
• Adicionalmente
– La Fecha y la Hora Cierta de la Firma “Secure Time Stamp” en la que se ha
generado, y se ha recibido el documento
– Conservación, e información histórica
4. Criptografía
• El conjunto de técnicas que permiten asegurar que un
mensaje sólo es entendible por aquel al que va
dirigido
– Criptografía (del griego κρύπτω krypto, «oculto», y γράφως
graphos, «escribir», literalmente «escritura oculta»)
– Es el arte de escribir en clave
– Protege la información del acceso de quien no está
autorizado a conocerla
• La criptografía oculta datos
– Cifrado: ocultación de datos
– Descifrado: liberación de datos
• Elementos:
– Clave y algoritmos
5. Clases de Criptografía
• Criptografía de clave privada
• Criptografía de clave pública
• Funciones resumen o hash
6. Criptografía simétrica o de clave
privada
• Se basa en el uso de una única llave entre las partes
implicadas, el remitente y el receptor.
– La información se cifra con una clave privada que tienen
tanto el remitente como el receptor
– Utiliza la misma clave para cifrado y descifrado
– Muy rápidos, adecuados para cifrar grandes volúmenes de
datos
– Se utilizan longitudes de clave cortas: 8, 16, 24 bits.
– Ejemplos:
• DES, Triple DES, DESX: aplicaciones bancarias, EFS
• IDEA: PGP
• RC4, RC5: SSL
• AES: Rijndael
• Blowfish, CAST, SAFER,...
– Problemas:
• Número y gestión de clave
7. Cifrado simétrico o
convencional
Clave secreta compartida por el emisor y el receptor
Texto cifrado transmitido
Texto nativo de salidaTexto nativo de entrada
Algoritmo de descifrado (p.e. DES)
Algoritmo de descifrado (algoritmo de cifrado inverso)
Clave secreta compartida por el emisor y el receptor
8. Ataques al cifrado convencional
• Criptoanálisis:
– Se basa en la naturaleza del algoritmo mas algún
conocimiento de las características generales del texto nativo.
– Intento de deducir un texto nativo o la clave.
9. Ataque de fuerza bruta
(o búsqueda exhaustiva de claves)
Fuerza bruta:
Consisten en probar una a una todas las
posibles combinaciones de la clave, hasta que
se obtenga una traducción inteligible del texto
nativo.
Para una clave de n bits, el número total de
claves posibles (o el tamaño del espacio de
claves) es igual a 2n.
En promedio, habrá que probar la mitad de claves
hasta dar con la correcta.
Hoy para que el ataque de fuerza bruta sea
computacionalmente irrealizable se
recomienda una longitud mínima de 128 bits
de clave.
10. Criptografía de clave pública o asimétrica
• Está basada en el uso de dos claves por cada entidad, dos claves
separadas pero relacionadas (asimétrica)
– Una pública y otra privada
– La privada sólo es conocida por su propietario
• Debe permanecer en secreto y bajo el control del usuario
– La pública puede y debe ser conocida por todo el mundo
• Puede difundirse
• Dichas llaves se caracterizan por que:
– Son diferentes,
– Están matemáticamente asociadas
– No se puede obtener la llave privada a partir de la pública.
– Longitudes de clave a partir de 512 bits (512, 1024, 2048, etc).
– Cada llave únicamente puede descifrar lo que la otra ha cifrado, por tanto;
• a.- Con la llave pública del suscriptor, cualquiera puede cifrar un mensaje, que solo
puede ser descifrado por la llave privada del suscriptor, se logra la
confidencialidad.
• b.- Con la llave pública del suscriptor, cualquiera puede descifrar un mensaje, y así
verificar la identidad del documento que ha sido cifrado por el suscriptor usando su
llave privada.
11. Cifrado de clave pública
• El suscriptor puede establecer la integridad y el origen (autoría)
de la información (datos) que envía a otro participante, firmando
digitalmente dicha información, cifrándola con su llave privada.
– Quien recibe la información puede usar la llave pública asociada del
suscriptor para validar que proviene del suscriptor (tenedor de la llave
privada), y verificar la integridad de la información.
• Más lentos, adecuados para:
– Autenticación
– Distribución de claves de sesión
– Firmas digitales
• Ejemplos:
– RSA, Diffie-Hellman, ElGamal, Algoritmos de curva elíptica
13. Pasos
• Cada usuario genera un par de claves.
• Cada usuario publica la clave pública.
• Para enviar un mensaje al usuario, se cifra el
mensaje utilizando la clave pública.
• El usuario descifra el mensaje utilizando su
clave privada.
14. Características del cifrado asimétrico
• La clave pública debe ser conocida por todo el mundo,
pero la clave privada sólo debe conocerla su
propietario
• A partir del conocimiento de la clave pública o del
texto cifrado no se puede obtener la clave privada
• Lo que se cifra con una clave, sólo puede descifrarse
con la otra
• Cualquiera puede cifrar un mensaje con la clave
pública, pero sólo el propietario de la clave privada
puede descifrarlo
– Proporciona confidencialidad
• Si el propietario de la clave privada cifra con ella un
mensaje, cualquiera puede descifrarlo con la
correspondiente clave pública
– Proporciona integridad, autenticación y no repudio
15. Distribución de claves secretas
mediante criptografía asimétrica
• El emisor envía la clave secreta, generada
aleatoriamente, cifrada con la clave pública del
receptor, el único capaz de descifrarla usando su
correspondiente clave privada
16. Autenticación mediante criptografía
asimétrica
• El emisor cifra el mensaje con su clave privada,
operación que sólo él puede realizar
• Cualquiera puede descifrarlo con su clave
pública, verificando así su autoría
• El mensaje se comprime antes de ser firmado
18. Funciones Resumen o Hash
• Transforman mensajes de longitud
arbitraria en mensajes de longitud fija.
– No se puede recobrar a partir del
resumen(Message Digest)
– Es completamente diferente si cambia un
solo bit de el mensaje original.
– Función con determinados requisitos.
– Ejemplos:
• MD4, MD5, SHA, SHA-1, SHA-256, RIPEMD-160
20. SSSL (Secure Sockets Layer)
● La empresa Netscape Communication crea en la
década de los 90 el protocolo estándar SSL, un
procedimiento para proporcionar comunicaciones
seguras en una red.
● Es un protocolo criptográfico que proporciona
confidencialidad, autenticidad e integridad en una
comunicación cliente/servidor
21. ¿Cómo establecer una comunicación segura
con SSL?
● SSL Handshake protocol
– Facilita la negociación de parámetros de
seguridad para facilitar la confidencialidad,
integridad y autenticidad en una comunicación
entre cliente y servidor.
● SSL Record protocol
– Especifica la forma de encapsular los datos
transmitidos y recibidos, incluidos los de
negociación.
22. Aplicaciones del protocolo TLS/SSL
● VoIPTLS:
– Mejora SSL en la protección frente a nuevos
ataques (nuevos algoritmos criptográficos,
evitadowngrade, etc.).
● USOS:
– Comercio electrónico y banca online
– Securizarredes privadas virtuales (OpenVPN)
– Autenticación y cifrado de datos VoIP
23. Seguridad del protocolo TLS/SSL
● La versión más moderna del protocolo
TLS con las extensiones
recomendadas, puede considerarse
segura frente a los ataques conocidos.
● Los ataques que vulneran su seguridad
se centran especialmente en engañar
al usuario con la dirección a la que se
conecta o con el certificado digital que
autentifica al servidor.
24. Firma Electrónica / Firma Digital
• Debemos distinguir dos términos que solemos
utilizar indistintamente: firma electrónica y
firma digital.
28. Firma Electrónica Reconocida
• La Ley distingue entre dos tipos de firma, avanzada y
reconocida, y también nos dice de forma expresa y tácita que
únicamente la firma reconocida se podrá considerar
equivalente a la firma manuscrita.
Una firma electrónica que sea reconocida debe cumplir las siguientes
propiedades o requisitos:
29. (b) Usando cifrado de clave pública
Compara
Mensaje
Mensaje
Mensaje
Kprivada Kpública
Enfoque típico de firma
digital
30. Estándares PKCS
● PKCS: Familia de estándares para los sistemas de
criptografía de clave pública definidos por los Laboratorios
RSA:
– PKCS#1,#2,#4: RSA Cryptography Standard
– PKCS#3: Diffie-Hellman Key Agreement Standard
– PCKS#5: Password-Based Cryptography Standard
– PKCS#6: Extended-Certificate Syntax Standard
– PKCS#7: Cryptographic Message Syntax Standard
– PKCS#8: Private Key Information Syntax Standard
– PKCS#9: Selected Attibuites Types
– PKCS#10: Certification Request Syntax Standard
– PKCS#11: Cryptographic Token Interface Standard
– PKCS#12: Password Information Exchange Syntax Standard
– PKCS#13: Elliptic Curve Cryptography Standard