Certificación y firma electrónica

3,675 views

Published on

Curso para Ibermatica sobre certificados y firma electrónica

Published in: Technology, Education
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,675
On SlideShare
0
From Embeds
0
Number of Embeds
154
Actions
Shares
0
Downloads
295
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Certificación y firma electrónica

  1. 1. Seguridad Telemática Avanzada CURSO FORMACIÓN "Certificación y firma electrónica" Impartido por: Iker Sagasti Markina <iker@irontec.com> 09/11/2009
  2. 2. Seguridad Telemática Avanzada - Índice - Tema 1 Introducción a necesidades de seguridad * Protocolos vulnerables, analizadores de redes * Necesidades para la seguridad en las comunicaciones o Privacidad o Autenticación o Integridad o No repudio
  3. 3. Seguridad Telemática Avanzada - Índice - Tema 2 Introducción a la criptografía * Bases de la criptografía, definiciones * Criptografía simétrica ? Clave privada * Criptografía asimétrica ? Clave pública * Criptografía no reversible ? Hashing y HMAC * Criptografía híbrida - Esquema de comunicaciones seguras * Autenticación y firma digital
  4. 4. Seguridad Telemática Avanzada - Índice - Tema 3 Criptografía y la gestión de la confianza * Modelos de Confianza: centralizada, cruzada y distribuida * PKI distribuida o Gestión personal de la confianza o Prácticas GPG y OpenPGP * PKI centralizadas o PKI y sus componentes: CAs, RAs, Directorios... o Autoridades de Certificación y Registro o Petición generación, distribución, validación y revocación de certificados o Prácticas OpenSSL, generación, gestión y revocación de certs * PKI desde el lado del cliente o Usos de certificados, formatos... o Aplicaciones: VPN, HTTPS, etc...
  5. 5. Seguridad Telemática Avanzada INTRODUCCIÓN - GARANTÍAS DE SEGURIDAD 5
  6. 6. Seguridad Telemática Avanzada Problemática Evolución de los sistemas y las comunicaciones en las dos últimas décadas: Tecnologías pensadas sin garantías de seguridad Internet Sucesivas evoluciones las han ido parcheando Tecnologías accesibles a todos los públicos Incluso gente sin formación en las mismas Acercamiento al usuario Nuevos mercados Acceso a administraciones Contactos entre empresas Mantener el mismo sistema que lleva funcionando decenas de años pero en Internet 6
  7. 7. Seguridad Telemática Avanzada Escenario 7
  8. 8. Seguridad Telemática Avanzada Problemática El “mundo digital” ha de convertirse en el escenario en el que se produzcan: Compras/ventas entre empresas, particulares, etc Contratos Facturaciones Accesos a la administración Servicios de notaría Etc... Han de darse las mismas garantías que en el “mundo real” P. ej.: Procedimiento de firma. Un sujeto certifica que es el autor o que está conforme con un documento 8
  9. 9. Seguridad Telemática Avanzada Problemática Internet en sí, en su forma más reducida (protocolos sobre TCP/IP) no está preparado para esto. Se necesitan, garantías de: Privacidad de las comunicaciones Autenticidad de las comunicaciones Integridad de las comunicaciones No repudio de las comunicaciones La tecnología que lo da -> CRIPTOGRAFÍA 9
  10. 10. Seguridad Telemática Avanzada Objetivos de la seguridad de las comunicaciones Se trata de garantizar la confidencialidad autenticidad integridad no repudio control de acceso disponibilidad de la información presente en las comunicaciones Esta información incluirá un posible intercambio de datos de autenticación de los comunicantes Todo esto se puede conseguir ayudado de la criptografía a través de la implantación de criptosistemas
  11. 11. Seguridad Telemática Avanzada Conceptos teóricos I * Confidencialidad: requiere que la información sea accesible únicamente por las entidades autorizadas. * Autenticidad: requiere una identificación correcta del origen del mensaje, asegurando que la entidad no es falsa. * Integridad: requiere que la información sólo pueda ser modificada por las entidades autorizadas.
  12. 12. Seguridad Telemática Avanzada Privacidad 12
  13. 13. Seguridad Telemática Avanzada Autenticidad, Integridad, No-Repudio 13
  14. 14. Seguridad Telemática Avanzada Autenticidad, Integridad, No-Repudio 14
  15. 15. Seguridad Telemática Avanzada Conceptos teóricos II * No repudio: ofrece protección a un usuario frente a otro usuario que niegue posteriormente que en realidad se realizó cierta comunicación. * Control de acceso: requiere que el acceso a los recursos (información, capacidad de cálculo, nodos de comunicaciones, entidades físicas, etc.) sea controlado y limitado por el sistema destino. * Disponibilidad: requiere que los recursos del sistema informático estén disponibles a las entidades autorizadas cuando los necesiten.
  16. 16. Seguridad Telemática Avanzada Autenticidad, Integridad, No-Repudio 16
  17. 17. Seguridad Telemática Avanzada Amenazas a la seguridad I Interrupción: un recurso se vuelve no disponible. Este es un ataque contra la disponibilidad. Intercepción: una entidad no autorizada consigue acceso a un recurso. Este es un ataque contra la confidencialidad. Modificación: una entidad no autorizada no sólo consigue acceder a un recurso, sino que es capaz de manipularlo. Ataque contra la integridad. Fabricación: una entidad no autorizada inserta objetos falsificados en el sistema. Este es un ataque contra la autenticidad.
  18. 18. Seguridad Telemática Avanzada Amenazas a la seguridad II
  19. 19. Seguridad Telemática Avanzada MECANISMOS DE SEGURIDAD I - Intercambio de autenticación: corrobora que una entidad, ya sea origen o destino de la información, es la deseada. (Contraseñas, Certificados ...) - Cifrado: garantiza que la información no es inteligible para individuos, entidades o procesos no autorizados. (Cifrado de datos con AES ...) - Integridad de datos: para verificar que los datos no han sido modificados en el trayecto (Hash o resumen de un mensaje)
  20. 20. Seguridad Telemática Avanzada MECANISMOS DE SEGURIDAD II - Firma digital: se enviará junto con los datos ordinarios, garantizará la autenticidad y el no repudio de los datos - Unicidad: consiste en añadir a los datos un número de secuencia, la fecha y hora, un número aleatorio, o alguna combinación de los anteriores, que se incluyen en la firma digital o integridad de datos para darnos la unicidad en el tiempo.
  21. 21. Seguridad Telemática Avanzada Objetivo legal y jurídico Se trata de obtener un marco que permita un soporte tecnológico válido para realizar trámites por vía telemática La firma digital será la base de todo ello La firma digital se basará en la criptografía y en sus estándares 21
  22. 22. Seguridad Telemática Avanzada MECANISMOS CRIPTOGRÁFICOS 22
  23. 23. Seguridad Telemática Avanzada Definiciones La criptografía es la técnica, ciencia o arte de la escritura secreta. A la transformación del mensaje original en el mensaje cifrado (criptograma) le llamamos cifrado, y a la inversa, el paso del criptograma al mensaje original le llamamos descifrado. Estos pasos se realizan mediante un conjunto de reglas preestablecidas entre los comunicantes, definidas por el algoritmo, y dependientes (hace únicas las operaciones) de un valor numérico al que llamamos clave. Clave ≠ Password (Clave de paso) Clave ≠ Passphrase (Frase de paso) El criptoanálisis es el conjunto de técnicas que intenta “romper” un algoritmo entre dos comunicantes: trata de encontrar “la clave” 23
  24. 24. Seguridad Telemática Avanzada Algoritmo vs Clave Algoritmo: Descripción precisa de una sucesión de instrucciones que permiten llevar a cabo un trabajo en un número finito de pasos. Clave: Un valor numérico usado que hace que las operaciones hechas sean únicas. Las claves son los valores concretos que junto con los algoritmos criptográficos se usan para generar un texto cifrado concreto. Básicamente son números muy grandes Para computación, en bits -> Nº de bits de la clave Un bit más -> doble seguridad 24
  25. 25. Seguridad Telemática Avanzada Cifrado/descifrado 25
  26. 26. Seguridad Telemática Avanzada Cifrado vs Codificación NO ES LO MISMO EL CIFRADO QUE LA CODIFICACIÓN Codificación: representación de la información de distintas formas, según diferentes criterios (lenguajes, alfabetos…), pero no necesariamente con cifrado Por ejemplo, un número decimal puede codificarse como hexadecimal, y no por ello se convierte en un criptograma. Cifrado: requiere “complejidad” en la transformada. Además, el algoritmo debe depender de una clave de paso 26
  27. 27. Seguridad Telemática Avanzada Criptoanálisis y criptología Criptoanálisis: Técnicas orientadas a la ruptura de los códigos de la criptografía. Criptología: Ciencia que estudia las bases matemáticas de la criptografía y el criptoanálisis.
  28. 28. Seguridad Telemática Avanzada Criptografía Fuerte Del inglés strong cryptography “There are two kinds of cryptography in this world: cryptography that will stop your kid sister from reading your files, and cryptography that will stop major governments from reading your files. Our trade is about the latter.” La criptografía puede ser fuerte o débil Se mide según el tiempo y esfuerzo (recursos usados) necesarios para romperla 28
  29. 29. Seguridad Telemática Avanzada Criptosistemas abiertos VS cerrados Abiertos  La fortaleza está en la clave usada y no en el algoritmo. Sistemas abiertos Cerrados  La fortaleza reside en la clave y en el algoritmo. Sistemas propietarios
  30. 30. Seguridad Telemática Avanzada Tipos Reversible: Del mensaje cifrado se puede obtener el mensaje en claro original Irreversible: Del mensaje cifrado no se puede obtener el mensaje en claro original (hashing o resumen) 30
  31. 31. Seguridad Telemática Avanzada Tipos Hoy en día existen dos tipos de criptosistemas reversibles: reversibles De clave simétrica (SKC): Una sola clave para cifrar y descifrar. También llamada de clave privada De clave asimétrica (PKC): Una clave cifrará y otra descifrará los mensajes, dichas claves estarán relacionadas de alguna manera (de modo que sea computacionalmente imposible sacar una de la otra) 31
  32. 32. Seguridad Telemática Avanzada Historia Antiguo Egipto: Escritura de jeroglíficos Cifrado Cesar: Sustituir cada letra por otra 3 más allá en el abecedario San Bernardino: Irregularidad de los símbolos Tarjetas con agujeros perforados Cifrado de Vignere: Cifrado por sustitución con uso de una clave Primera y segunda guerra mundial: La dificultad de códigos daba robustez ¡¡PREHISTORIA!! Explosión en el area de la computación Explosión de la criptografía actual  DES y RSA en los 70 Sistemas híbridos…
  33. 33. Seguridad Telemática Avanzada Criptosistemas simétricos Cifrado simétrico Medio de k Transmisión k C C M M EK EK MT D DKK Texto Texto Base protegida Criptograma protegida Base C’ no permitido M no permitido Integridad Intruso Confidencialidad La confidencialidad y la integridad se lograrán si se DES, 3DES, protegen las claves en el cifrado y en el descifrado. Es IDEA, CAST, decir, se obtienen simultáneamente si se protege la RIJNDAEL clave secreta. 33
  34. 34. Seguridad Telemática Avanzada Cifrado Cesar
  35. 35. Seguridad Telemática Avanzada Clave simétrica (SKC) Algoritmos usados: DES: Nunca ha sido roto (salvo por fuerza bruta). Sujeto a las leyes U.S.A. IDEA: Se usa en Europa. No está sujeto a leyes RC5: Su seguridad no está completamente probada Triple DES: Mejora del DES. Cifrado múltiple AES: Salto generacional del cifrado DES (estándar USA actual) TWOFISH: Evolución del blowfish. Libre y muy efectivo 35
  36. 36. Seguridad Telemática Avanzada Características La mayor dificultad  La distribución de la clave ¿Cómo se da a conocer la clave al receptor del mensaje? ¿Se necesita otro canal para esta transmisión? El procesado requerido es más simple y rápido que el de clave pública 36
  37. 37. Seguridad Telemática Avanzada Esquemas Esquemas de cifrado: De bloque: Encripta por bloques de datos. Hay diferentes modos de implementación (EBC y CBC) De streams: Bit a bit. Con mecanismo de realimentación (CFB y OFB) De hash
  38. 38. Seguridad Telemática Avanzada Clave simétrica (SKC) Velocidad de cifrado alcanzada por los diferentes algoritmos
  39. 39. Seguridad Telemática Avanzada Criptosistemas asimétricos (1) 2 claves complementarias: Una cifra y otra descifra Son intercambiables Una se oculta y la otra se publica 39
  40. 40. Seguridad Telemática Avanzada Criptosistemas asimétricos (2) Cifrado con clave pública del receptor Intercambio: RSA y DH Clave pública Medio de Clave privada del usuario B Transmisión del usuario B M EB MT D DBB M Usuario A C C Usuario B Criptograma protegida M no permitido Observe que se cifra con la clave pública Intruso Confidencialidad del destinatario. Las claves de EB y DB Un sistema similar es el son “inversas” intercambio de clave de Diffie y Hellman DH 40
  41. 41. Seguridad Telemática Avanzada Criptosistemas asimétricos (3) Cifrado con clave privada del emisor Firmas: RSA y DSS Clave privada Medio de Clave pública del usuario A Transmisión del usuario A M DA DA MT EA M Usuario A C C Usuario B protegida Criptograma Observe que se cifra C’ no permitido con la clave privada Integridad Intruso del emisor. Se firma sobre un hash Las claves de EA y DA La firma DSS está basada H(M) del mensaje, por son “inversas” en el algoritmo de cifra de ejemplo MD5 o SHA-1 El Gamal 41
  42. 42. Seguridad Telemática Avanzada Tipos de cifra con sistemas asimétricos Criptosistemas de clave pública k privada k k privada k pública de A pública de B de A de B M DA EB DB DB EA M C Usuario Usuario A B Confidencialidad Integridad Firma digital Autenticación del usuario A; Información cifrada integridad de M La confidencialidad y la integridad se obtienen por separado
  43. 43. Seguridad Telemática Avanzada Clave asimétrica (PKC) Razón matemática para la existencia de este tipo de criptografía  Dificultad matemática para hallar funciones inversas Multiplicación vs Factorización Exponenciación vs Logaritmos Curvas elípticas El destinatario da a conocer su clave pública para posibilitar la recepción y el envío de mensajes
  44. 44. Seguridad Telemática Avanzada Clave asimétrica (PKC) Algoritmos usados: RSA DSA Diffie-Hellman Una clave se denomina “pública” y la otra “privada”. Se dan a conocer las claves públicas 44
  45. 45. Seguridad Telemática Avanzada Usos Ideal para la distribución de claves Claves de “sesión” 45
  46. 46. Seguridad Telemática Avanzada Ejemplo – Distribución de claves
  47. 47. Seguridad Telemática Avanzada Clave asimétrica (PKC) Ejemplo Diffie – Hellman: Sea p = 97, g = 5 A elige su secreto: a = 36 Publica su clave pública: Pa = 5^36 mod 97 = 50 B elige su secreto: b = 58 Publica su clave pública: Pb = 5^68 mod 97 = 44 A calcula k = Pba = 44^36 mod 97 = 75 B calcula k = Pab = 50^58 mod 97 = 75 Esa será la clave a usar en las comunicaciones entre A y B
  48. 48. Seguridad Telemática Avanzada Ejemplo: RSA (firma digital) Se cogen dos primos enteros muy grandes (p y q) y se calcula su producto p x q = n (el módulo) Se escoge un número e (menor que n), que sea relativamente primo a (p-1)(q-1), (e y (p-1)(q-1) no tienen factores en común salvo el número 1) Se busca otro número d, tal que (exd -1) es divisible por (p-1) (q-1) Los valores e y d se les denomina los exponentes público y privado, respectivamente La clave pública es el par (n,e), y la clave privada el par (n,d). Los factores generadores p y q pueden ser destruidos o mantenidos en secreto junto a la clave privada
  49. 49. Seguridad Telemática Avanzada Clave asimétrica (PKC) Ejemplo RSA Se cifra con la pública del receptor y así sólo el receptor puede descifrarla
  50. 50. Seguridad Telemática Avanzada Clave asimétrica (PKC)
  51. 51. Seguridad Telemática Avanzada Clave asimétrica (PKC) Aplicaciones y usos: Intercambio de claves privadas Firma digital: se cifra un resumen del mensaje Las claves a emplear para que se considere seguro son mucho mayores que en SKC Difícil de implementar y lentitud del proceso de cálculo  ¡¡No se usa para cifrar mensajes!!  ¡¡Se usa para distribuir claves!!
  52. 52. Seguridad Telemática Avanzada Funciones Hash Para resolver el problema de la integridad de los mensajes Realiza una transformación a un mensaje consiguiendo otro mensaje de longitud constante  Valor de Hash Requerimientos: La entrada puede ser de cualquier longitud La salida tiene longitud fija (128, 160 o 256 bits) La transformación es de cálculo fácil La inversa es computacionalmente imposible Libre de colisiones 52
  53. 53. Seguridad Telemática Avanzada Funciones Hash Se usa para dos funciones: Algoritmos: Integridad de mensajes MD5, SHA1 Firmas digitales (autenticidad y no-repudio) 53
  54. 54. Seguridad Telemática Avanzada HMAC Message Authentication Code Añade un password al hash Sólo el que posee la clave puede generar el hash Los últimos estudios demuestran que existen colisiones en las funciones SHA-1 y MD5
  55. 55. Seguridad Telemática Avanzada Proceso Hash
  56. 56. Seguridad Telemática Avanzada MD5 Inventado por Rivest  RFC 1321 Coge un mensaje de entrada de longitud arbitraria y produce una salida de 128 bits (message digest o resumen) Se trata de que computacionalmente sea imposible producir dos mensajes que tengan el mismo resumen, o que se pueda producir un mensaje con un resumen pre-especificado Para aplicaciones de firma digital: Un archivo grande se “comprime” de manera segura antes de aplicarle la clave privada para su transmisión por medio de un criptosistema PKC
  57. 57. Seguridad Telemática Avanzada Ejemplos Para la integridad del SW Vamos a descargarnos un SW: El propio calculador de Hash MD5 http://www.vonwangelin.com/md5/ Nos dice el hash MD5 de su ejecutable
  58. 58. Seguridad Telemática Avanzada ¿Qué usar, simétricos o asimétricos? Los sistemas de clave pública (PKC) son muy lentos pero tienen firma digital. Los sistemas de clave secreta (SKC) son muy rápidos pero no tienen firma digital. ¿Qué hacer? Cifrado de la información: Sistemas de clave secreta Firma e intercambio de claves de sesión: Sistemas de clave pública 58
  59. 59. Seguridad Telemática Avanzada Sistema híbrido de cifra y firma 59
  60. 60. Seguridad Telemática Avanzada ¿Por qué 3 técnicas? Cada esquema está optimizado para una aplicación Hash: integridad de datos SKC: confidencialidad de los datos PKC: Intercambio de claves, autenticación y no-repudio Conseguimos un criptosistema híbrido Vemos resumen: http://en.wikipedia.org/wiki/Cryptography
  61. 61. Seguridad Telemática Avanzada Longitud de las claves En la criptografía el tamaño importa La longitud de las claves es la encargada de proveer mayor seguridad a los algoritmos de cifrado contra los ataques de fuerza bruta Cada día es mayor la capacidad de cálculo del hardware
  62. 62. Seguridad Telemática Avanzada Longitud de claves Comparativa de nivel de seguridad en PKC y SKC
  63. 63. Seguridad Telemática Avanzada Longitud de las claves (1995!!) TABLE 1. Minimum Key Lengths for Symmetric Ciphers. Time and Cost Key Length Needed Type of Attacker Budget Tool Per Key Recovered For Protection In Late-1995 40 bits 56 bits Scavange Tiny d 1 week Infeasible 45 computer Pedestrian Hacker time 5 hours 38 years $400 FPGA 50 ($0.08) ($5,000) 12 minutes 18 months Small Business $10,000 FPGA 55 ($0.08) ($5,000) 24 seconds 19 days FPGA ($0.08) ($5,000) Corporate Department $300K 60 0.18 seconds 3 hours ASIC ($0.001) ($38) 7 seconds 13 hours FPGA ($0.08) ($5,000) Big Company $10M 70 0.005 seconds 6 minutes ASIC ($0.001) ($38) 0.0002 12 Intelligence Agency $300M ASIC seconds seconds 75 ($0.001) ($38)
  64. 64. Seguridad Telemática Avanzada Los sistemas actuales utilizan algoritmo público y claves secretas, debido a: · Los algoritmos públicos se pueden fabricar en cadena, tanto chips de hardware como aplicaciones software. · Los algoritmos públicos están más probados, ya que toda la comunidad científica puede trabajar sobre ellos buscando fallos o agujeros. Un algoritmo secreto puede tener agujeros detectables sin necesidad de conocer su funcionamiento completo. · Es más fácil y más seguro transmitir una clave que todo el funcionamiento de un algoritmo.
  65. 65. Seguridad Telemática Avanzada Criptoanálisis - Ataques Dependerán de lo que los atacantes dispongan Suponemos que el atacante tiene acceso al texto cifrado Entonces puede: Sólo captura texto cifrado Conoce (o puede adivinar) parte del texto plano Puede cifrar el texto que quiera Múltiples tipos: http://en.wikipedia.org/wiki/Category:Cryptographic_attacks En todo caso, siempre existirá un ataque, conocido el algoritmo, la “fuerza bruta”. La única protección: Longitud de claves
  66. 66. Seguridad Telemática Avanzada Criptoanálisis - Ataques Criptoanálisis diferencial: Leves diferencias en entradas, qué diferentes salidas producen Busca comportamientos no aleatorios del algoritmo detección de patrones estadísticos Necesita chosen-plaintext-atack Criptoanálisis lineal: Se trata de buscar aproximaciones afines de la acción del cifrado
  67. 67. Seguridad Telemática Avanzada Problemas Temas legales en la criptografía: Limitaciones en legislación USA para la exportación Clasifica la criptografía como munición Según el tamaño de la clave de los algoritmos PGP y PGPi Digital Millennium Copyright Act (DMCA) Criminaliza la producción y distribución de ciertas técnicas y tecnologías criptoanalíticas Sobre todo las destinadas a “romper” tecnologías de aseguración de copyright (DRM) fuente: wikipedia
  68. 68. Seguridad Telemática Avanzada Autenticación y Firma digital 68
  69. 69. Seguridad Telemática Avanzada Autenticación de mensajes Requerimiento básico de seguridad: Asegurar la procedencia de los mensajes. Cartas lacradas en la edad media Tarjetas identificadoras, claves de acceso, etc. Objetivos: El mensaje procede de la persona que dice remitirlo Nadie ha modificado el mensaje en cuestión Se usan firmas digitales y certificados  Sustitutos de la firma manuscrita 69
  70. 70. Seguridad Telemática Avanzada Firmas digitales Necesidad del equivalente electrónico a la firma manuscrita Aseguran la procedencia de un mensaje  Autenticidad y no repudio Implicaciones económicas, legales y jurídicas Ley de firma electrónica RD 17/9/1999 70
  71. 71. Seguridad Telemática Avanzada Firmas digitales Propiedades: Personal Infalsificable Fácil de autenticar No repudio Fácil de generar ¡Aún más segura que la manuscrita!
  72. 72. Seguridad Telemática Avanzada Firmas digitales La firma debe depender del “mensaje” a firmar (¡No siempre la misma!) Previene sustitución Determinista: Dos firmas del mismo mensaje dan mismo resultado Es un bloque de datos unívoco, sólo lo ha podido generar la persona que lo firma Con PKC, mediante su clave privada En vez de cifrar un mensaje completo con la clave privada (proceso tedioso) se cifra el resumen (hash) de un mensaje Se suele adjuntar al propio mensaje 72
  73. 73. Seguridad Telemática Avanzada Firmas digitales Esquema de firma, siempre hay dos partes: Algoritmo de firma: Cómo crearla Algoritmo de verificación: Cómo validar una firma recibida 73
  74. 74. Seguridad Telemática Avanzada Firmas digitales 74
  75. 75. Seguridad Telemática Avanzada Firmas digitales Una de las formas de realizar firma digital es la siguiente forma: A genera un resumen del mensaje (función hash (conocida y pública)), y lo cifra usando PKC con su clave privada (F(H(M))) A envía el par mensaje original + resultado anterior a B B calcula dos cosas: Con el mensaje saca el hash Con PKC y clave pública de A descifra F(H(M))) Si ambos resúmenes son iguales se acepta la firma
  76. 76. Seguridad Telemática Avanzada Firmas digitales Usa PKC + Hashing Con la firma digital conseguimos: integridad autenticación no repudio Ejemplo: DSS (Digital Signature Standard) Algoritmo DSA de firma SHA-1 como Hash 76
  77. 77. Seguridad Telemática Avanzada GESTIÓN DE LA CONFIANZA, INFRAESTRUCTURAS PKI 77
  78. 78. Seguridad Telemática Avanzada Modelos de confianza - TRUST TRUST: creencia personal en que algo es verdadero Para poder hacer uso de la criptografía para securizar: Se requiere el establecimiento de relaciones de confianza, es decir, en algún momento se tiene que confiar en que algo es verdad Public Key Infrastructure: Mecanismo de distribución de “confianza” basado en cript. asimétrica Existen varios modelos: Modelo de confianza distribuida, GPG/PGP Modelo de confianza centralizada, CAs basadas en X.509 78
  79. 79. Seguridad Telemática Avanzada PKI's Es el conjunto de hardware, software, gente, políticas y procedimientos necesarios para crear, gestionar, guardar, distribuir y revocar certificados basados en criptografía de clave pública. 79
  80. 80. Seguridad Telemática Avanzada PKI's JERÁRQUICAS Normalmente basadas en estandar X.509 Asume un sistema jerárquico estricto de entidades para la emisión de certificados A diferencia de PGP, que cualquiera puede firmar y avalar así a otros, en X.509 nos basamos en confianzas en entes centralizados Autoridades de Certificación -> CAs 80
  81. 81. Seguridad Telemática Avanzada PKI's JERÁRQUICAS Las PKIs garantizan la seguridad en los negocios electrónicos No hay una sola tecnología ni un estándar único de PKIs Debería existir una estructura mundial de PKI que soporte políticas y regulaciones internacionales  Variedad de intereses, no es posible… 81
  82. 82. Seguridad Telemática Avanzada Componentes de una PKI Una PKI y sus mecanismos proveen: Autenticación  Vía certificados digitales Control de acceso  Vía gestión de claves Confidencialidad  Vía cifrado Integridad  Vía firmas digitales No repudio  Vía firmas digitales
  83. 83. Seguridad Telemática Avanzada Componentes de una PKI Una PKI consiste de: Una Autoridad Certificadora (CA) que expide y verifica certificados digitales. Estos certificados contienen las claves públicas Una Autoridad de Registro (RA), que actúa como verificador del CA antes de que un certificado sea expedido a un solicitante Uno o más directorios donde se almacenan los certificados (con sus claves públicas) Sistemas de consulta de validez (CRLs y OCSP) Una política de seguridad definida por el CPS Un sistema de gestión de certificados 83
  84. 84. Seguridad Telemática Avanzada Componentes de un PKI
  85. 85. Seguridad Telemática Avanzada Certificados digitales X.509 85
  86. 86. Seguridad Telemática Avanzada ¿Qué es un certificado digital? Un certificado digital de identidad es un documento con diversos datos, entre otros: Entidad del titular (DN de LDAP) Su clave pública para la comunicación CA que firma el certificado La firma en sí Un certificado queda, por tanto, bajo la “confianza” de una CA No implica que, para comunicarse dos individuos no puedan usar certs de diferentes CAs A todo certificado de identidad le corresponde una clave privada (en otro documento/fichero o en el mismo) Un usuario que tenga un certificado se podrá autenticar ante otro y realizar comm seguras 86
  87. 87. Seguridad Telemática Avanzada Certificados digitales Características: El formato será el de un fichero digital intransferible y no modificable Si se modifica la firma que contiene ya no será validable (sólo la CA que lo firmó puede generar dicha firma) Esta identidad nos hace funcionar con gente que ha dado su confianza a dicha CA Resuelve el problema de autenticación Presentación del certificado y habilidad para comunicarse en base a la clave privada correspondiente Permite comunicaciones seguras 87
  88. 88. Seguridad Telemática Avanzada Certificados digitales Además X.509, permite una serie de atributos extendidos (propósitos) que pueden dar usos válidos o no al certificado Envío de mails Autenticación web Firma de documentos Firma de certificados -> Una CA ... 88
  89. 89. Seguridad Telemática Avanzada Certificados digitales Se trata de una credencial que contiene información acerca de la entidad certificadora (CA) y de la entidad certificada (usuario) Caso de DNI  paralelismo El formato será el de un fichero digital intransferible y no modificable Una CA da fe de la firma de una entidad certificada
  90. 90. Seguridad Telemática Avanzada Certificados digitales Funciones de los certificados: Establecer identidades: Asocia una clave pública a un individuo u otra entidad Asignar una autoridad: Establece qué acciones podrá realizar el poseedor del certificado Securiza la información confidencial Ejemplo: X.509 Existen muchas CAs, que proveen los certificados (Verisign, Thawte, FNMT, Izenpe...)
  91. 91. Seguridad Telemática Avanzada Aplicaciones de los Certificados Algunas de las aplicaciones más habituales en las que se utilizan certificados digitales son: Para la autenticación de Servidores Web---> Certificados de Servidor Web Para la autenticación de Clientes Web---> Certificados de Cliente Web Para la protección de correos electrónicos ---> Certificado de correo electrónico Para el sellado de tiempos ---> Certificado de tiempo 91
  92. 92. Seguridad Telemática Avanzada Formato del certificado digital X.509 Versión Identificador del algoritmo Nº de serie Algoritmo Parámetros Período de validez Autoridad de Certificación Inicio de la validez Caducidad de la validez Clave pública que se firma Nombre del usuario Algoritmo Parámetros Función hash que se cifra con la clave Clave pública del usuario privada de la AC Firma de la AC 92
  93. 93. Seguridad Telemática Avanzada Campos del certificado digital X.509 V: Versión del certificado (actualmente V3 de X.509). SN: Número de serie (bajo la CA) AI: identificador del algoritmo de firma CA: Autoridad certificadora (issuer) TA: Periodo de validez A: Titular de la clave pública que se está firmando (subject) P: Clave pública más identificador de algoritmo utilizado y más parámetros si son necesarios. Y{I}:Firma digital de Y por I usando la clave privada de la entidad certificadora 93
  94. 94. Seguridad Telemática Avanzada CSR Certificate Signing Request: Estándar PKCS #10 Esto no es un certificado, es el formato de los mensajes enviados a una CA para solicitar la certificación de una clave pública de un usuario Se complementa con la clave privada (normalmente en otro archivo) Los datos que lleva serán parte de los que lleva un certificado, pero le faltará la parte de compromiso de la autoridad Subject Clave pública Algoritmo de firma 94
  95. 95. Seguridad Telemática Avanzada Certificate Enrollment Mecanismo que simplifica la gestión de la creación y distribución de certificados a gran escala Protocolo SCEP: Se trata de un trabajo que estandariza la manera de emitir y revocar certificados, haciéndolo escalable Normalmente se implementa embebido en navegadores web, mediante scripts (ActiveX, Java), que, una vez generado el CSR, permiten realizar la firma por parte de la CA y devolver el certificado el usuario 95
  96. 96. Seguridad Telemática Avanzada Certificate Revocation List (CRL) Es otro certificado emitido periódicamente por la CA Está vez no nos certifica una identidad (subject) Se trata de una lista identificadora de los certificados revocados (anulados para su funcionamiento) por la CA Dos tipos: CRL absoluta o Delta CRL (incremental) Dos estados de revocación (según x509): Revoked, anulado sin vuelta a atrás Hold, estado reversible de invalidez temporal Las CRL se deben publicar por parte de la PKI De forma periódica, mediante algún tipo de recurso accesible: http, ftp, etc... On-line: Protocolo de consulta de CRLs --> OCSP 96
  97. 97. Seguridad Telemática Avanzada Revocación La revocación de Certificados son instrumentos a utilizar en el supuesto de que por alguna causa, se deje de confiar en el Certificado antes de la finalización de su período de validez originalmente previsto. Causas de la revocación, entre otras, son: Solicitud voluntaria del Suscriptor. Pérdida o inutilización por daños del soporte del certificado. Fallecimiento del signatario o de su representado. Inexactitudes graves en los datos aportados por el signatario. Que se detecte que las claves privadas del Suscriptor o de la CA han sido comprometidas. Por resolución judicial o administrativa que lo ordene 97
  98. 98. Seguridad Telemática Avanzada Autoridades de Certificación La Autoridad de Certificación es un A B ente u organismo que, de acuerdo con certificado de B unas políticas y algoritmos, certificará -por ejemplo- claves públicas de certificado de A usuarios o servidores. El usuario A enviará al usuario B su certificado (la clave pública firmada por AC) y éste comprobará con esa clave clave pública AC AC pública AC autoridad su autenticidad. Lo mismo en sentido contrario. Autoridad de Certificación AC 98
  99. 99. Seguridad Telemática Avanzada Características de una Autoridad Certificadora Algunas de las funciones de una entidad de certificación son: Emisión de certificados para nuevos usuarios. Acreditan que la clave pública pertenece al usuario a quien se atribuye y su vigencia. Evita la generación de certificados falsos, sólo los válidos se encuentran firmados por la autoridad certificadora. Rutinas para modificar o dar de baja un certificado. Generar listas de revocación (CRL). Comunicarse con otros centros de certificación (estructuras jerárquicas) 99
  100. 100. Seguridad Telemática Avanzada Características de diseño Deberá definirse una política de certificación Ámbito de actuación y estructura Relaciones con otras CAs Documento CPS (Certificate Practice Statement) Deberá definirse el procedimiento de certificación para la emisión de certificados: Verificación on-line Verificación presencial Deberá generarse una Lista de Certificados Revocados 100
  101. 101. Seguridad Telemática Avanzada Funcionamiento de una CA, pasos Puesta en marcha de la CA: Generará su par de claves, “ceremonia de claves” (normalmente ante notario) Protegerá la clave privada con una passphrase Generará el certificado de la propia CA Distribución del certificado de la CA: A través del d Directorio X.500 Por medio de páginas Web Podrá certificar a usuarios (servidores y a clientes): Tipos de certificados según la profundidad en el registro Clase 1, 2, 3 y 4. Permiten diferentes usos... https://www.verisign.com/repository/CPS/CPSCH2.HTM#_toc361806948 101
  102. 102. Seguridad Telemática Avanzada Autoridad de registro (AR) Es la entidad que comprueba las identidades de los solicitantes de un certificado. Se pueden constituir tantas AR como se quiera o establezca la CA en su CPS . Las AR comprobarán la identidad de los solicitantes de acuerdo con las normas establecidas en el CPS de la CA. En su caso, la relación con las AR deberá regirse por contratos específicos de prestación de servicios. 102
  103. 103. Seguridad Telemática Avanzada Obligaciones de AR Identificar y autenticar correctamente al Suscriptor y/o Solicitante y/o a la Organización que represente, conforme a los procedimientos que se establecen en las Prácticas de Certificación específicas para cada tipo de Certificado, utilizando cualquiera de los medios admitidos en derecho. Validar las solicitudes de revocación y suspensión respecto a aquellos Certificados en cuya emisión hayan participado. Formalizar los contratos de expedición de Certificados con el Suscriptor en los términos y condiciones que establezca la CA. Almacenar de forma segura y por un periodo razonable la documentación aportada en el proceso de emisión del Certificado y en el proceso de suspensión/revocación del mismo. 103
  104. 104. Seguridad Telemática Avanzada Certificados y formatos de claves PEM Puede contener todas las claves privadas (RSA y DSA), claves públicas (RSA y DSA) y certificados (x509). Es el formato por defecto para OpenSSL. Guarda datos codificados en Base64 y formato DER, rodeado de cabeceras ASCII, de tal forma que es muy adecuado para transferencias entre sistemas. DER Puede contener todas las claves privadas, públicas y certificados. Se guarda de acuerdo con el formato ASN1 DER. Suele ser el utilizado por los navegadores PKCS#12 También conocido como PFX (ext .p12 y .pfx). Puede contener todas las claves privadas, públicas y certificados. Se guardan los datos en binario. Lo usa Microsoft. 104
  105. 105. Seguridad Telemática Avanzada Autoridad de sellado de tiempos Por un lado, puede existir la necesidad legal o jurídica de saber cuándo se ha firmado algo También de la necesidad de que los certificados tienen una validez temporal crítica: Revocaciones Caducidades Se trata de realizar una validación temporal por parte de una entidad de confianza. El principio es igual que el de la firma, lo que pasa, que en este caso lo que certifica la nueva autoridad es un momento temporal, en el que se realiza una acción P.e.: Una firma, por ejemplo Este tipo de servicios suelen ser de pago (timestamp en tiempo real a través de Internet) Es algo a considerar a la hora de firmar un documento No sólo quién lo firma Si no que cuando se ha hecho, esa firma es válida 105
  106. 106. Seguridad Telemática Avanzada Autoridad de sellado de tiempos 106
  107. 107. Seguridad Telemática Avanzada Almacenamiento seguro de material criptográfico Material a proteger -> Claves privadas del certificado Almacenamiento en disco -> Problema! Solución -> Cifrado simétrico para el acceso Transferencias entre dispositivos -> Problema. Se crea en un dispositivo, se traspasa a otro, etc... Hablando de Internet, no se “traza” bien el camino seguido Posibilidad de ataques Off-line de fuerza bruta al algoritmo simétrico, sin saberlo 107
  108. 108. Seguridad Telemática Avanzada Hardware Security Modules Un HSM es un dispositivo criptográfico basado en hardware -> Provee la aceleración de operaciones criptográficas Realizan la generación de las claves y toda operación criptográfica que se haga con ellas Garantizan que nunca nadie vaya a acceder a las claves (si realizan la generación) En cuanto al almacenamiento de las claves, tienen un componente portable, como tarjetas personales, tokens, etc... Ej: DNI Electrónico 108
  109. 109. Seguridad Telemática Avanzada Aplicaciones de la firma digital 109
  110. 110. Seguridad Telemática Avanzada Legalidad, marco jurídico La Ley de Firma Electrónica, que puede ser diferente en cada país, define tres tipos de firma: Simple. Incluye un método de identificar al firmante Avanzada. Además de identificar al firmante permite garantizar la integridad del documento. Se emplean técnicas de PKI Reconocida. Es la firma avanzada ejecutada con un DSCF (dispositivo seguro de creación de firma) y amparada por un certificado reconocido (certificado que se otorga tras la verificación presencial de la identidad del firmante) En España lo regula todo la Ley 59/2003, de 19 diciembre, de firma electrónica. 110
  111. 111. Seguridad Telemática Avanzada Ley 59/2003 Establece el régimen aplicable a la actuación de personas jurídicas como firmantes. Se exige especial legitimación para las personas físicas que soliciten la expedición de estos certificados. Obliga a los solicitantes a responsabilizarse de la custodia de los datos de creación de firma electrónica, asociados a dichos certificados, sin perjuicio de que puedan ser utilizados por otras personas físicas vinculadas a la entidad. Define las garantías que deben ser cumplidas por los dispositivos de creación de firma para que sean considerados dispositivos seguros. Establece el marco de obligaciones aplicables a los prestadores de servicios de certificación, en función de si emiten certificados reconocidos o no, y determina su régimen de responsabilidad. 111
  112. 112. Seguridad Telemática Avanzada No repudio Se necesita que la firma electrónica sea un documento válido para las transacciones electrónicas El no repudio es la garantía de seguridad más importante que se debe dar en el aspecto jurídico-legal-administrativo La garantía de que el sistema sea seguro en el transcurso del tiempo es que las claves privadas sólo sean responsabilidad de cada usuario, desde su creación hasta su caducidad, de aquí la generación segura de claves 112
  113. 113. Seguridad Telemática Avanzada Facturación digital La Facturación Telemática (OM EHA/962/2007) consiste en incorporar una Firma Electrónica Avanzada a las facturas, es decir, una serie de mecanismos técnicos de certificación, para garantizar los principios básicos exigibles legalmente a la facturación: * La autenticidad del origen de las facturas electrónicas. * La integridad del contenido. Las facturas enviadas electrónicamente gozan de validez legal (igual que el soporte papel) La Firma Electrónica Avanzada, se obtiene a través de los certificados emitidos por las “CAs reconocidas” -> Firma reconocida Son formatos reconocidos: Ficheros a firmar: XML, PDF, DOC, XLS, HTML, JPEG, GIF, TXT... Firma XML (XadES), firma PDF (Acrobat) y EDI 113
  114. 114. Seguridad Telemática Avanzada Validación de la firma Comprobación de que el documento no ha sido alterado después de haber sido firmado. Comprobación de que no está caducado. Comprobación de que es de confianza. Comprobación de que el certificado no está revocado. 114
  115. 115. Seguridad Telemática Avanzada Prestadores de servicios de certificación La validez de los datos del certificado es fundamental para asegurarnos de que el emisor de un mensaje sea realmente quien dice ser. Si éste ha sido expedido por una entidad confiable, tenemos la garantía de que dicha entidad ha asegurado la identidad del emisor Tipos de prestadores: Comerciales Institucionales y estatales Particulares Las diferencias estriban en el ámbito de uso del certificado emitido y en el modelo de comercialización de los certificados: algunas cobran por el certificado emitido, otras por consulta de la CRL, otras suministran los certificados gratuitos y cobran a la renovación. 115
  116. 116. Seguridad Telemática Avanzada CAs comerciales La más conocida: Verisign http://www.verisign.com/index3.html -> Free Trial Certificado de 14 días de validez bajo la CA Con una CSR generada por el usuario (¡¡La clave privada!!) Propósito del certificado (orientado a servidores) Se obtiene via email CA especial -> Test CA Root 116
  117. 117. Seguridad Telemática Avanzada CAs reconocidas O.M. HAC/1181/2003 Entidades reconocidas http://www.aeat.es/wps/portal/DetalleContenido?&content=c60501ae9dc89010VgnVCM1000004ef01e0aRC FNMT, ANF, AC Camerfirma, Izenpe, Banesto, ... Requisitos básicos (hay más en el área de control del registro) Longitud mínima de clave pública del certificado de usuario: 512 bits. Longitud mínima de clave del certificado de la CA: 1024 bits. Según la Ley de Firma Electrónica se pueden emitir certificados con un máximo de 4 años de validez. Dispositivos seguros de creación de firma Ejemplo: Creación de la tarjeta sanitaria Osakidetza Certificate enrollment de FNMT (con auth y firma en la AR) 117
  118. 118. Seguridad Telemática Avanzada Obtención de certificados de prestadores En la FNMT: http://www.cert.fnmt.es/index.php?cha=cit&sec=obtain_cert 1 Solicitud vía internet de su Certificado. 2 Acreditación de la identidad en una Oficina de Registro. 3 Descarga de su Certificado de Usuario 4 Posible copia de seguridad 118
  119. 119. Seguridad Telemática Avanzada Tarjetas Criptográficas 119
  120. 120. Seguridad Telemática Avanzada Tarjetas Criptográficas También conocida como smartcard Es una tarjeta con circuitos integrados Tarjeta de crédito Procesador criptográfico seguro Provee servicios de seguridad
  121. 121. Seguridad Telemática Avanzada Módulo SAM Es otra tarjeta inteligente en formato ID-000 alojada en un lector interno propio Contiene aplicaciones criptográficas que permiten negociar las claves oportunas con la tarjeta inteligente del usuario Tipos de claves Clave maestra: clave a partir de la cual se pueden averiguar claves diversificadas Clave diversificada: clave que se almacena en una tarjeta inteligente normal
  122. 122. Seguridad Telemática Avanzada Módulo SAM Tipos de módulo SAM de carga: clave maestra, para incrementar monedero SAM de consumo: clave maestra, para decrementar monedero SAM de aplicación: clave para operar por otras zonas de la tarjeta
  123. 123. Seguridad Telemática Avanzada Ciclo de vida
  124. 124. Seguridad Telemática Avanzada Sistemas Operativos Multiples sistemas operativos en las tarjetas del mercado: MultOS JavaCard Cyberflex StarCOS MFC
  125. 125. Seguridad Telemática Avanzada Programación de aplicaciones Existen varias API's de programación estandarizadas para comunicarse con los lectores de tarjetas inteligentes desde un ordenador Protocolo petición/respuesta PC/SC: implementación para Windows y Linux (a través de MUSCLE) OCF: proporciona diseño orientado a objetos facilmente extensible y modular. Implementación de referencia en Java Adaptador para trabajar sobre PC/SC
  126. 126. Seguridad Telemática Avanzada Práctica 126
  127. 127. Seguridad Telemática Avanzada SOFTWARE PKI
  128. 128. Seguridad Telemática Avanzada PGP - Pretty Good Privacy Es un software que provee un esquema de e-mail basado en criptografía de clave pública, con posibilidad de cifrado y firma de documentos Mantiene “anillos de confianza”, donde guarda tanto las claves privadas como las claves públicas de las personas en quién se confía, vinculadas a sus direcciones de e-mail
  129. 129. Seguridad Telemática Avanzada PGP - Pretty Good Privacy La confianza será siempre una decisión personal del usuario  Confianza distribuida Usa diferentes algoritmos de cifrado (posibilidad de elegir) Usa PKC, para la gestión de claves y para la firma electrónica y comunicaciones Se accede a la clave privada por medio de un password (SKC) Es de uso muy sencillo
  130. 130. Seguridad Telemática Avanzada Sistema PGP – Pretty Good Privacy - Creador: Philip Zimmermann - Criptosistema mixto basado en anillos de confianza. - Flexible y potente, admite certificados y se puede integrar con otros modelos de PKI ya existentes
  131. 131. Seguridad Telemática Avanzada GnuPG - Gnu Privacy Guard - Implementación de PGP bajo licencia GNU (GPL) - Basado en el esquema de PGP, propone un sistema de comunicaciones basado en criptografía asimétrica, dónde la confianza está distribuida a cada uno de los usuarios - Creador/mantenedor: Comunidad Open Source - También basado en anillos de confianza. - Flexible y potente, admite certificados y se puede integrar con otros modelos de PKI ya existentes
  132. 132. Seguridad Telemática Avanzada PGP (Pretty Good Privacy) -----BEGIN PGP PUBLIC KEY BLOCK----- -----BEGIN PGP PRIVATE KEY BLOCK----- Version: PGP 8.0.3 Version: PGP 8.0.3 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 FEgRLWw9dgA==jBw7 4g===cHzL -----END PGP PRIVATE KEY BLOCK----- -----END PGP PUBLIC KEY BLOCK-----
  133. 133. Seguridad Telemática Avanzada PGP (Pretty Good Privacy) -----BEGIN PGP MESSAGE----- *** PGP SIGNATURE VERIFICATION *** Version: PGP 8.0.3 *** Status: Good Signature *** Signer: aaguirre <aaguirre@nesys-st.com> (0x5FAE003E) qANQR1DBwU4DPTkmezh5CM0QB/9yL+0Yqndji+j3+lTICW4OTGEOYmm478D9LEcB *** Signed: 09/09/2005 10:16:49 p1SNqcUF6/CHnMI2mqjMIh7x8oMbHtUoZVeoYLUjO7LbZugI0qauR2dDtke+r/cu VpJp2KNBS+H/qdGPOXF6CIWhdKAwrUwlu85FqdkNnst3k2EUZ+qz9ThPFx2uBVx7 *** Verified: 09/09/2005 10:17:20 /i3dlF3250Sg0QmWk8uw1IkCmecjUV+2FI64mEBA1bPiMPxmYMB6eI7HJW39U3Zf *** BEGIN PGP DECRYPTED/VERIFIED MESSAGE *** uaOgIHD8/K8kFi2yl+8gwvbtob11/KNGQbLfi9d4UGgjVhj0pYLfVNcTjeRZeFlZ juv1fzcS5NquHsiunwHltvGI7mKbsWd5X8AISAR4ExZ3k7ovB/9DpSrRbNRSV3yP fnp0bu3IrBEydujTS4PozESpmVGOm9eOeAPJm4VobZbF8AJR1YAHbpYVVR0UhXJ7 RAXzwCstYeEiZLcfYQxH0uFjjxlouG27/htGJ6Qq1wn/N+b61vb3WS2SkLQmYSOv MENSAJE CIFRADO 9GArnGQ3uS/y3lwv/6gOcUP3uUf6P70eSzqSlJdZdbEqbpqVhOdhuqf+b40k+4+g 4qGlmfRhj2gVWvjTpEpn75JVM76yRqzq0fTJxoWzol0yWy4/FuiO+GiRE3E8V7u7 *** END PGP DECRYPTED/VERIFIED MESSAGE *** oTwzj+ksUcuz/1Uqyy7yNe6Vlu0kH/X2XDK8CDISsRcqji4wpYIVzVNTd8GK1xNz dVzWFy260pQBV+x1cDsYIFUaVLthEsBRgTKnFKfq9Um1MFADdzJ6BR5JViURk7ZD PICoJ9Lm7DKjw19t+k1G8S+8VSpVEW5FAh9X02beUgzoClYQAkLxl30xMsP9UByb GBrHtaJG1bc4BF7pP5NBnKb/4IludrBhZCqAUK++qIRFbDfv5QIxyVZyVnTGfUUM CnqZdSr1D0SmQHDD =Xa3L -----END PGP MESSAGE----- -----BEGIN PGP SIGNED MESSAGE----- *** PGP SIGNATURE VERIFICATION *** Hash: SHA1 *** Status: Good Signature *** Signer: aaguirre <aaguirre@nesys-st.com> (0x5FAE003E) MENSAJE CIFRADO *** Signed: 09/09/2005 10:23:31 -----BEGIN PGP SIGNATURE----- *** Verified: 09/09/2005 10:25:33 Version: PGP 8.0.3 *** BEGIN PGP VERIFIED MESSAGE *** iQA/AwUBQyFGgxibNN1frgA+EQJ15ACg+FGVWbBQ0rLKm4CsRotxp7mR8kwAoPSj MENSAJE CIFRADO z2QSryPMOv7pak0E76igFO7p =j0Nb -----END PGP SIGNATURE----- *** END PGP VERIFIED MESSAGE ***
  134. 134. Seguridad Telemática Avanzada OpenSSL OpenSSL es un trabajo derivado de SSLeay. SSLeay fue desarrollado originalmente por Eric A. Young y Tim J. Hudson en 1995. En Diciembre de 1998, el desarrollo de SSLeay fue interrumpido y la primera versión de OpenSSL fue liberada (0.9.1c) , utilizando SSLeay 0.9.1b como punto de partida. OpenSSL se compone de dos partes: 1.librería criptográfica 2.conjunto de aplicaciones SSL Existen versiones para distintas plataformas http://www.openssl.org OpenSSL> Standard commands asn1parse ca ciphers crl crl2pkcs7 dgst dh dhparam dsa dsaparam enc engine errstr gendh gendsa genrsa nseq ocsp passwd pkcs12 pkcs7 pkcs8 rand req rsa rsautl s_client s_server s_time sess_id smime speed spkac verify version x509 Message Digest commands (see the `dgst' command for more details) md2 md4 md5 rmd160 sha sha1 Cipher commands (see the `enc' command for more details) aes-128-cbc aes-128-ecb aes-192-cbc aes-192-ecb aes-256-cbc aes-256-ecb base64 bf bf-cbc bf-cfb bf-ecb bf-ofb cast cast-cbc cast5-cbc cast5-cfb cast5-ecb cast5-ofb des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb des-ede-ofb des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb des-ofb des3 desx rc2 rc2-40-cbc rc2-64-cbc rc2-cbc rc2-cfb rc2-ecb rc2-ofb rc4 rc4-40
  135. 135. Seguridad Telemática Avanzada OpenSSL [root@irontec ssl]# apt-get install openssl [root@irontec ssl]# openssl version OpenSSL 0.9.8e 23 Feb 2007 [root@irontec ssl]# openssl version -d OPENSSLDIR: "/usr/share/ssl" [root@irontec ssl]# ls -sla total 36 4 drwxr-xr-x 7 root root 4096 sep 7 22:30 . 4 drwxr-xr-x 161 root root 4096 jun 29 13:45 .. 4 drwx------ 3 root root 4096 jun 14 09:42 CA 0 lrwxrwxrwx 1 root root 19 jun 14 09:42 cert.pem -> certs/ca-bundle.crt 4 drwxr-xr-x 2 root root 4096 jun 24 19:10 certs 4 drwxr-xr-x 2 root root 4096 mar 25 2004 lib 4 drwxr-xr-x 3 root root 4096 jun 16 12:01 misc 8 -rw-r--r-- 1 root root 7655 sep 7 22:30 openssl.cnf 4 drwxr-xr-x 2 root root 4096 jun 24 19:10 private Archivo de configuración de openssl [root@nesys209 ssl]# cat /usr/share/ssl/openssl.cnf
  136. 136. Seguridad Telemática Avanzada OpenSSL Hashing #openssl md5 a.txt #openssl sha1 a.txt #openssl sha1 -out a_hash.txt a.txt Cifrado simétrico 3DES #openssl enc -des3 -salt -in a.txt -out cifra_a.bin -pass pass:CLAVE Descifrado 3DES #openssl enc -des-ede3-cbc -d -in cifra_a.bin -out descifra_a_3des.txt -pass pass:CLAVE Cifrado simétrico BLOWFISH #openssl bf-cfb -salt -in a.txt -out cifra_a.bin -pass pass:CLAVE Descifrado BLOWFISH #openssl bf-cbc -salt -d -in cifra_a.bin -out descifra_a_blow.txt -pass pass:CLAVE Codificación de la información #openssl base64 -in cifra_a.bin -out cifra_a_base64.txt
  137. 137. Seguridad Telemática Avanzada OpenSSL Construyendo una Autoridad de Certificación Creamos la estructura del entorno de la PKI # mkdir /tmp/newca # cd /tmp/newca # mkdir certs private # chmod g-rwx,o-rwx private # echo '01' > serial # touch index.txt # ls -las 4 drwxr-xr-x 4 root root 4096 sep 10 17:20 . 4 drwxrwxrwt 9 root root 4096 sep 10 17:19 .. 4 drwxr-xr-x 2 root root 4096 sep 10 17:19 certs 0 -rw-r--r-- 1 root root 0 sep 10 17:20 index.txt 4 drwx------ 2 root root 4096 sep 10 17:19 private 4 -rw-r--r-- 1 root root 3 sep 10 17:20 serial
  138. 138. Seguridad Telemática Avanzada OpenSSL /usr/share/ssl/openssl.cnf [ CA_default ] dir = /tmp/newca # Where everything is kept certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. new_certs_dir = $dir/certs # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crl = $dir/crl.pem # The current CRL private_key = $dir/private/privkey.pem # The private key RANDFILE = $dir/private/.rand # private random number file x509_extensions = usr_cert # The extentions to add to the cert . . . # crl_extensions = crl_ext default_days = 365 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = md5 # which md to use. preserve = no # keep passed DN ordering [ req ] default_bits = 2048 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes
  139. 139. Seguridad Telemática Avanzada OpenSSL Construyendo una Autoridad de Certificación + Construyendo el certificado de la CA autofirmado #openssl req -x509 -days 3650 -newkey rsa -out cacert.pem -outform PEM –keyout cakey.pem Información del certificado #openssl x509 -in cacert.pem -text -noout + Se han realizado dos pasos en uno, crear el CSR de la CA y luego convertirlo en un certificado x509 rellenándole los campos necesarios + Generación de una petición del certificado (request) # openssl req -newkey rsa:1024 -keyout userkey.pem -keyform PEM -out userreq.pem -outform PEM Información de la petición del certificado (request) #openssl req -in userreq.pem -text -noout
  140. 140. Seguridad Telemática Avanzada OpenSSL [root@irontec newca]# cat userkey.pem -----BEGIN RSA PRIVATE KEY----- Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,CE2D5DC9F9275BE0 fPVuz1E2dFPb5ja3dSQrgUyJ1Z0vMMPyuREAL53eoUAplkBQnkutKyiK13GXFlHT mb4kYswgy4koa/Jj9AjO10jTUdQ0bKF4F69w/hWLKl7CcOdTiZpCFXtE/b8kS/+d Kecw/4YEfDW2V+rrlYu8QaMUSvTBGjlrT2wlJIdTpn78uEjdEeyjDmf5VL8yyeSb FqKZa1zgE3qCUedpL24NCYBUESCoMUH4YtdXn4hvxaHkdgBigDS3LW9Ztedo+tCy qqYBqO9LBQAgYVgYoxe37BKw++mBAo32AbP9KUY/TqW3atsGEzeTKgt8XErvkEsJ NquuxjwEQClOcoASF5ox8TOEAGMic7iUKlmIZB37a4n7on075Wenoez7/i/EuFR6 YMxABMVZ9jTcPJfNJViKpCUFEli8vGgBF83iifbGgYaCfRyCcyvB5fFBzmkYHft4 uVaJJLoaxotLj8FHTPPeCQqtfgpESPSVrq+funfDtZJiKzUB3JATeyshK8Zc0OR8 REu51+jWD9CY5piRDvfk6JEvsSv2vXt6rbFXGkzysasrbgcb722dpkLNTWDTJxEl UyCfLJflCxZ08lXbG6oaMIHxhbaewcEyovxOTHIFbYzL+y3xetwDD3I3f+XhikB/ l9eC+MUIaFzSS9rFXOzxULzZ3gdCUMHkcIRUY7J1e6mYmBs6Z3g4lchKVe1/cxrd B6AtRxIJIJFLwBumXGnXvBHTfTdAcN6Ical32zyL2DOgY4yy/sdwUA8yFEoavK0g g9aQhgULjdPAcuvxloF4YE8UosBhu0VqzdhMtiY5oosK5A/AAC7cNg== -----END RSA PRIVATE KEY----- [root@irontec newca]# cat userreq.pem -----BEGIN CERTIFICATE REQUEST----- MIIBxTCCAS4CAQAwgYQxCzAJBgNVBAYTAkVTMRAwDgYDVQQIEwd2aXpjYXlhMRAw DgYDVQQHEwdTb25kaWNhMQ4wDAYDVQQKEwVORVNZUzEMMAoGA1UECxMDUEtJMREw DwYDVQQDEwhuZXN5czIwOTEgMB4GCSqGSIb3DQEJARYRaW5mb0BuZXN5cy1zdC5j b20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAK393j3aF0hBgsRR1lbwfswo 99b2rzXHB5npgq6BjKind1IaWfDcy/zMF+fcYWD1o2A5s6R0XoKaIDTKFVd3P338 uL8HuIoMcfY2e6kL7FmvjCtDBP8mdOtBp7YNb3j1wVQYkivJoIUwLFZpYDJBwGFW Wq1RK405PklL7ltgOxPNAgMBAAGgADANBgkqhkiG9w0BAQQFAAOBgQAAQH24mSdP nzbYM11pIltXlZPUYuxSDUrt2eq6snGrMgnKprZDqObKixkM/8nQnhT1Jv/buVKG Jpf8iivMWgSHED/KVB3fwmnJ/Qy6gQgQLJ/ip7SufpjTtMVMg4ETG/bbvtn9tBkL NcZ9jkcPATUVaajuHaQ5ExmjCcJfCfurvA== -----END CERTIFICATE REQUEST-----
  141. 141. Seguridad Telemática Avanzada OpenSSL Generación de un certificado a partir del request (CSR) #openssl ca -in userreq.pem ... -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIBATANBgkqhkiG9w0BAQQFADCBhDELMAkGA1UEBhMCRVMx EDAOBgNVBAgTB3ZpemNheWExEDAOBgNVBAcTB1NvbmRpY2ExDjAMBgNVBAoTBU5F U1lTMQwwCgYDVQQLEwNQS0kxETAPBgNVBAMTCG5lc3lzMjA5MSAwHgYJKoZIhvcN ... IppRmJrZ7HCOsgOkhsoYe4EIYcZRoqgZFK0dehcRWG4/auXmKFO+XtdYorjYEU0/ 07PI2LtOyEjA2lgCEk5pH/khbAI= -----END CERTIFICATE----- [root@irontec newca]# cat index.txt V 060910160943Z 01 unknown . . . Revocación de certificados # cp certs/01.pem testcert.pem # openssl ca -revoke usercert.pem Using configuration from openssl.cnf Enter PEM pass phrase: Revoking Certificate 01. Data Base Updated [root@irontec newca]# cat index.txt R 060910160943Z 050910161743Z 01 unknown . . .
  142. 142. Seguridad Telemática Avanzada OpenSSL Generación de una lista de revocación #openssl ca -gencrl -out exampleca.crl [root@irontec newca]# cat exampleca.crl -----BEGIN X509 CRL----- MIIB4TCByjANBgkqhkiG9w0BAQQFADCBhDELMAkGA1UEBhMCRVMxEDAOBgNVBAgT B3ZpemNheWExEDAOBgNVBAcTB1NvbmRpY2ExDjAMBgNVBAoTBU5FU1lTMQwwCgYD ... pzZzTn8qjaa04D3DDOaque8XTILCLJWk7gUrMGR0VrAbghr79B69gFAJWKMKRJ/Y gmOO85lAAfr1waQEb6ooCBK2LpZONOpiCKMAwLKAvFQnSCfcrWIlrXmJMhXvPjab SFbI6V4= -----END X509 CRL----- #openssl crl -in exampleca.crl -text -noout Certificate Revocation List (CRL): Version 1 (0x0) Signature Algorithm: md5WithRSAEncryption Issuer: /C=ES/ST=vizcaya/L=Sondica/O=NESYS/OU=PKI/CN=nesys209/emailAddress=info@nesys-st.com Last Update: Sep 10 16:21:38 2005 GMT Next Update: Oct 10 16:21:38 2005 GMT Revoked Certificates: Serial Number: 01 Revocation Date: Sep 10 16:17:43 2005 GMT Signature Algorithm: md5WithRSAEncryption ba:93:b1:5c:e9:21:03:b3:ed:ec:f6:17:89:f6:41:61:36:ab:
  143. 143. Seguridad Telemática Avanzada Mozilla Thunderbird 143
  144. 144. Seguridad Telemática Avanzada Mozilla Thunderbird 144
  145. 145. Seguridad Telemática Avanzada Mozilla Thunderbird 145
  146. 146. Seguridad Telemática Avanzada Mozilla Thunderbird 146
  147. 147. Seguridad Telemática Avanzada Mozilla Firefox http://www.osanet.euskadi.net/ 147
  148. 148. Seguridad Telemática Avanzada Mozilla Firefox https://www.aeat.es/wps/portal/Navegacion2?channel=9fbd457892d98110Vgn 148
  149. 149. Seguridad Telemática Avanzada Ejercicios Firma de documentación 149
  150. 150. Seguridad Telemática Avanzada OpenOffice Herramienta de ofimática libre Dispone de plugin de gestión de firma/cifrado Almacena los archivos en formato Open Document, un estándar internacional ISO ISO/IEC DIS 26300 Formato basado en XML Mediante la misma generaremos documentos firmados y cifrados 150
  151. 151. Seguridad Telemática Avanzada OpenOffice Se añaden firmas a la documentación Maneja los repositorios de Mozilla 151
  152. 152. Seguridad Telemática Avanzada Sinadura Software GPL para firma electrónica de PDF Dispone de repositorio propio 152
  153. 153. Seguridad Telemática Avanzada REFERENCIAS Openssl.org, gnupg.org, openoffice.org, openvpn.org, seguridaddigital.info Wikipedia UPM, Jorge Ramió Aguirre, J.L. Mañas Jérémy Chartier Alberto Urquiza NESYS-ST.COM Boletín Cryptogram 15/09/98, www.counterpane.com Applied Cryptography, B.Schneier www.kriptopolis.org 153
  154. 154. Seguridad Telemática Avanzada AGRADECIMIENTOS Este documento es un trabajo derivado de otros excelentes documentos elaborados y desarrollados por Jon Urionaguena jon.urionaguena@alliaria.net. Quiero aprovechar la ocasión para agradecer a Jon su disposición por facilitar el uso, modificación y distribución de su trabajo, por la facilidad que ha supuesto para la impartición de este curso. 154
  155. 155. Seguridad Telemática Avanzada Licencia 155

×