330 likes | 543 Views
PGP (Pretty Good Privacy). Jacobo Bermúdez Fernández María Casanova Vázquez. INDICE. Introducción a PGP Historia de PGP Software Principios básicos de PGP Modo de funcionamiento Problemas y vulnerabilidades Otras aplicaciones de PGP S/MIME, PGP/MIME Ejemplo de uso.
E N D
PGP (Pretty Good Privacy) Jacobo Bermúdez Fernández María Casanova Vázquez
INDICE • Introducción a PGP • Historia de PGP • Software • Principios básicos de PGP • Modo de funcionamiento • Problemas y vulnerabilidades • Otras aplicaciones de PGP • S/MIME, PGP/MIME • Ejemplo de uso
Introducción a PGP (I) • Creado en 1991 por Philip Zimmermann • Aplicació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
Introducción a PGP (y II) • Motivaciones • Servicios • Confidencialidad • Integridad • Autenticación • No repudio
Historia de PGP • Junio 1991: versión 1.0 en texto plano • 1992: 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
Software • Derechos pertenecientes a PGP Corporation • Proyecto Open Source: GnuPG
Principios básicos PGP (I)Sistemas de cifrado Cifrado simétrico(o de clave privada): • Clave única para cifrado y descifrado • Problema de la compartición de la clave
Principios básicos PGP (II)Sistemas de cifrado Cifrado 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
Principios básicos PGP (III)Sistemas de cifrado Cifrado 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
Principios básicos PGP (IV)Algoritmos de cifrado Simé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 = 40-128 bits
Principios básicos PGP (V)Algoritmos de cifrado • AES: algoritmo Rijndael ganador del concurso AES. Tam. bloque = 128 bits, long. claves = 128-192-256 bits • Twofish: participante concurso AES. Tam. bloque = 128 bits, long. claves = 128-192-256 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.
Principios básicos PGP (VI)Algoritmos de cifrado Asimé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).
Principios básicos PGP (VII)Algoritmos de cifrado • Algoritmo 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
Principios básicos PGP (VIII)Algoritmos de cifrado Funciones 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.
Principios básicos PGP (IX)Algoritmos de cifrado • RIPEMD-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
Principios básicos PGP (X)Algoritmos de cifrado • En 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
Principios básicos PGP (XI)Firma Digital • Soluciona 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)
Principios básicos PGP (XII)Firma Digital • Proceso de firma • Verificación de firma
Principios básicos PGP (XIII)Certificados Digitales • Soluciona 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
Principios básicos PGP (XIV)Certificados Digitales • Existen 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)
Principios básicos PGP (XV)Certificados Digitales • Validez. 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
Principios básicos PGP (XVI)Certificados Digitales • Modelos 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
Principios básicos PGP (y XVII)Anillo de claves • PGP 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
Modo de funcionamiento (I)Creación de claves • Clave. 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
Modo de funcionamiento (II)Exportación e importación de claves públicas • Se 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
Modo de funcionamiento (III) Funcionamiento General • Proceso de firma digital
Modo de funcionamiento (IV) Funcionamiento General • Proceso de compresión y cifrado
Modo de funcionamiento (V) Funcionamiento General • Proceso de descifrado y descompresión
Modo de funcionamiento (VI) Funcionamiento General • Verificación de la firma digital
Problemas y vulnerabilidades • Fallos 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)
Otras aplicaciones de PGP • Cifrado 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.
S/MIME, PGP/MIME • S/MIME • Está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