1 PGP (Pretty Good Privacy)Jacobo Bermúdez Fernández María Casanova Vázquez
2 INDICE Introducción a PGP Historia de PGP SoftwarePrincipios básicos de PGP Modo de funcionamiento Problemas y vulnerabilidades Otras aplicaciones de PGP S/MIME, PGP/MIME Ejemplo de uso
3 Introducción a PGP (I) Creado en 1991 por Philip ZimmermannAplicación de criptografía de alta seguridad Basado en criptografía de clave pública Utilidades: cifrar y firmar mensajes y ficheros y borrar “realmente” ficheros
4 Introducción a PGP (y II)Motivaciones Servicios Confidencialidad Integridad Autenticación No repudio
5 Historia de PGP Junio 1991: versión 1.0 en texto plano1992: versión 2 (primera versión software) 1995: primera versión internacional (Stale Schumacher) para evitar leyes norteamericanas 1998: solución a problemas legales con OpenPGP. 1999: se relajan las leyes norteamericanas y desaparece la versión internacional
6 Software Derechos pertenecientes a PGP CorporationProyecto Open Source: GnuPG
7 Principios básicos PGP (I) Sistemas de cifradoCifrado simétrico (o de clave privada): Clave única para cifrado y descifrado Problema de la compartición de la clave
8 Principios básicos PGP (II) Sistemas de cifradoCifrado asimétrico (o de clave pública): Par de claves: pública y privada. Características: Reversibles Asimétricas Se evita el problema de compartición de claves, pero es poco eficiente
9 Principios básicos PGP (III) Sistemas de cifradoCifrado híbrido (usado por PGP) : Clave de sesión (simétrica) para cifrar el mensaje Clave pública (asimétrica) para cifrar la clave de sesión Solucionados los problemas de compartición de claves y de eficiencia
10 Principios básicos PGP (IV) Algoritmos de cifradoSimétricos, intervienen en: Cifrado de mensajes Cifrado de la clave privada para su almacenamiento Disponibles en PGP: IDEA: rondas = 8, tam. bloque = 64 bits, long. claves =128 bits Triple-DES: tam. bloque = 64 bits, long. claves =168 (3*56)bits. CAST: familia de cifradores de bloque. CAST-128: rondas = 12-16, tam. bloque = 64 bits, long. claves = bits
11 Principios básicos PGP (V) Algoritmos de cifradoAES: algoritmo Rijndael ganador del concurso AES. Tam. bloque = 128 bits, long. claves = bits Twofish: participante concurso AES. Tam. bloque = 128 bits, long. claves = bits Se concluye: Difícil determinar cual es el mejor Ninguno ha sido roto Mayor seguridad para PGP, si se rompe uno se podrá escoger otro.
12 Principios básicos PGP (VI) Algoritmos de cifradoAsimétricos, intervienen en: Generación del par de claves Cifrado de las claves de sesión Cifrado del hash del mensaje para firma digital Disponibles en PGP: RSA: Basado en el problema de factorización de números grandes. Proceso de cifrado y firmado iguales. Sólo se cambia la clave a usar (pública o privada).
13 Principios básicos PGP (VII) Algoritmos de cifradoAlgoritmo ElGamal: Basado en la dificultad del cálculo de logaritmos discretos del grupo multiplicativo en un campo finito Basado en el algortimo de intercambio de claves Diffie-Hellman Los procesos de cifrado y firmado difieren. El proceso de firma es denominado DSS (Digital Signature Standard) Comparativas: DH (ElGamal) expande el mensaje al doble del tamaño orginal DSS sólo ofrece 1024 bits para la firma, RSA hasta 4096 RSA ofrece menos seguridad por cada bit que DH/DSS DH se basa en una teoría matemática, en principio, más sólida
14 Principios básicos PGP (VIII) Algoritmos de cifradoFunciones Hash, intervienen en: El proceso de firma Cifrado/descifrado de la clave privada Disponibles en PGP: MD5: Diseñado por Ronald Rivest en sustitución de MD4. Salida de 128 bits. Descubiertas colisiones que se desconoce como afectarán en su seguridad. Actualmente no se recomienda por razones de seguridad.
15 Principios básicos PGP (IX) Algoritmos de cifradoRIPEMD-160: Diseñado por comunidad académica abierta Versión mejorada del algoritmo original RIPEMD que estaba basado en MD4 Salida de 160 bits. Existen versiones de 128, 256 y 320 bits Familia SHA: Diseñado por la agencia de seguridad nacional americana (NSA) y publicado por el instituto de estándares y tecnología (NIST) SHA-0 y SHA-1 producen salidas de 160 bits. SHA-2 salidas de 224, 256,384 y 512 bits. Fallo en SHA-0 y varios ataques conocidos contra SHA-1 Búsqueda de un algoritmo estándar que sustituya SHA-1
16 Principios básicos PGP (X) Algoritmos de cifradoEn PGP, por defecto, vienen deshabilitados MD5, RIPEMD-160 y SHA-1. Sólo se usan las variantes de SHA-2 El poder escoger entre varias funciones proporciona mayor seguridad a PGP, igual que en el caso de los algoritmos de cifrado
17 Principios básicos PGP (XI) Firma DigitalSoluciona los problemas de integridad y autenticidad (y no repudio por tanto) de los sistemas asimétricos e híbridos La característica más importante de una firma es que sólo pueda ser producida por un único firmante Cifrando parte del mensaje (el hash) con la clave privada se garantiza que el mensaje sólo ha sido enviado por el poseedor de dicha clave (autenticidad y no repudio). Y nadie podrá modificar el mensaje sin que se detecte (integridad)
18 Principios básicos PGP (XII) Firma DigitalProceso de firma Verificación de firma
19 Principios básicos PGP (XIII) Certificados DigitalesSoluciona el problema de la suplantación de identidad a la hora de intercambiar claves públicas. Un certificado consta de las siguientes partes: Una clave pública Información del propietario Una o más firmas digitales La firma establece que la información del certificado ha sido avalada por una persona o entidad
20 Principios básicos PGP (XIV) Certificados DigitalesExisten servidores de certificados y PKIs para intercambio de claves. Formatos: Certificados PGP. Puede ser firmado por cualquier persona y contener varias firmas Certificados X.509. Deben ser validados por una autoridad certificadora (CA)
21 Principios básicos PGP (XV) Certificados DigitalesValidez. Propiedad que certifica que una clave pública pertenece al aparente propietario. Niveles: válido, marginalmete válido e inválido. Confianza. Es la creencia en la responsabilidad del dueño de la clave a la hora de firmar otras claves. Niveles: completa, marginal, no confianza. Confianza implícita: la que se tiene en tu propio par de claves
22 Principios básicos PGP (XVI) Certificados DigitalesModelos de confianza. Forma en la que se confía en la validez de los certificados. Confianza directa Jerarquía de confianza Red de confianza (el más usado en PGP) Revocación de certificados. Método para invalidar un certificado. Motivos: Expiración del periodo de validez Clave comprometida Por propia iniciativa
23 Principios básicos PGP (y XVII) Anillo de clavesPGP guarda las claves en dos ficheros en el disco duro llamados anillos. Las claves públicas de tus receptores se almacenan en el anillo público Tus claves privadas se guardan en el anillo privado que estará cifrado. Si se pierde este anillo será imposible descifrar los mensajes recibidos
24 Modo de funcionamiento (I) Creación de clavesClave. Valor que trabaja con un algoritmo criptográfico para cifrar un texto El tamaño de la clave es determinante en la seguridad del algoritmo usado Cada usuario genera su par de claves. Para ello: Introduce sus datos Escoge el algoritmo a utilizar y el tamaño de las claves Escoge una frase de paso para proteger la clave privada Huella. Es un resumen (hash) de la clave pública. Es única para cada clave y por lo tanto sirve para identificarla
25 Modo de funcionamiento (II) Exportación e importación de claves públicasSe puede subir la clave pública a un servidor de claves para que otras personas tengan acceso a ellas Se puede modificar una clave almacenada en un servidor pero no se podrá eliminar. Sólo se podrá revocar Las claves disponibles en el servidor pueden ser importadas a nuestro anillo público. Será necesario comprobar que es válida para poder firmarla
26 Modo de funcionamiento (III) Funcionamiento GeneralProceso de firma digital
27 Modo de funcionamiento (IV) Funcionamiento GeneralProceso de compresión y cifrado
28 Modo de funcionamiento (V) Funcionamiento GeneralProceso de descifrado y descompresión
29 Modo de funcionamiento (VI) Funcionamiento GeneralVerificación de la firma digital
30 Problemas y vulnerabilidadesFallos más importantes: ADK bug Ataque checo Problemas: Imposibilidad de comprobación satisfactoria de la firma Exigencias o limitaciones que impone PGP Vulnerabilidad de la validez de las claves (talón de Aquiles de PGP)
31 Otras aplicaciones de PGPCifrado de documentos. Se cifran archivos en disco del mismo modo que el cifrado de mensajes. Borrado seguro de archivos mediante reescritura de la zona de datos donde residían los archivos.
32 S/MIME, PGP/MIME S/MIME PGP/MIMEEstándar para criptografía de clave pública y firmado de correo electrónico encapsulado en MIME. Necesita un certificado expedido por parte de una Autoridad Certificadora Ofrece los mismos servicios que PGP PGP/MIME Integración de PGP con MIME No tuvo mucho éxito
33 Ejemplo de uso