La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors INTRODUCCIÓN A PKI ( Public Key Infrastructure.

Presentaciones similares


Presentación del tema: "CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors INTRODUCCIÓN A PKI ( Public Key Infrastructure."— Transcripción de la presentación:

1 CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors INTRODUCCIÓN A PKI ( Public Key Infrastructure ) Raúl González Martínez David Sanz Llorente Ivan Fontanals Martínez

2 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 2 Amenazas o Espionaje o robo: cuando se copian los datos sin que estos hayan sido modificados de forma que el propietario no se ha dado cuenta. o Manipulación o modificación: cuando se ha modificado el contenido de los datos. o Falsificación o suplantación: cuando se ha manipulado la autoría del autor. o Repudio: esta amenza la sufre quién recibe los datos, cuando el autor de éstos dice no haberlos escrito nunca.

3 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 3 Medidas Para evitar el efecto de las anteriores amenazas, se pueden adoptar dos tipos de medidas: o Medidas físicas: encerrar los datos en alguna caja fuerte. o Medidas lógicas: la criptografía. La criptografía puede dividirse a su vez en dos subgrupos: o Criptografia de clave simétrica. o Criptografia de clave pública (o asimétrica).

4 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 4 Herramientas de la Criptografía o Cifrado: permite proteger los datos contra el espionaje. o Resumen o hash: permite la protección de la integridad de los datos contra la manipulación. o La firma: permite la verificación de la autoría de los datos protegiéndolos contra la falsificación o el repudio de autoría. Una vez configurada las herramientas criptográficas, pueden utilizarse para identificar a usuarios: la certificación o Infraestructura de clave pública o PKI.

5 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 5 Clave Simétrica (I) o Utiliza una clave K para los procesos de cifrado y descifrado: P = e (k,M) ; M = d (k,P) o Al tener únicamente una clave que es pública, esta debe ser intercambiada a través de un canal seguro. o Dos tipos de cifrado: Algoritmos de cifrado de flujo (RC4): P = e (k,M) = k xor M M = d (k,P) = k xor P donde k es una clave de igual longitud que M generada a partir de una semilla. Algoritmos de cifrado de bloque (3DES): trabaja sobre bloques de entrada produciendo bloques del mismo tamaño dependiendo de la clave de cifrado.

6 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 6 Clave Simetrica (II) o Ataques contra el cifrado: Criptoanálisis: Analizando la secuencia P. Fuerza Bruta: Probando todas las combinaciones de la clave k. Actualmente las claves tienen entre 112 y 168 bits, lo que implica que para descifrarlos es necesario 1,6*10 17 años. Además incrementando un bit de la clave, dobla el espacio y por tanto el tiempo para encontrar la clave correcta. o El hash permite obtener una secuencia de longitud fija y única para cada mensaje. o Algoritmos de hash empleados son MD5 y SHA1.

7 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 7 Clave pública (I) o Utiliza dos claves para el cifrado y el descifrado, una pública y otra privada. P = e (Kpub,M) M = d (Kprv,P) o La publicación de la clave pública no compromete la privacidad de la clave privada, puesto que no se puede encontrar la segunda a partir de la primera.

8 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 8 Clave pública (II) o Cifrado: P = e (Kpub,M) Descifrado: M = d (Kprv,P) o Si se aplica el mismo proceso al reves obtenemos la firma digital, la qual permite saber que solo una persona puede haber cifrado el mensaje M: P = e (Kprv,M) M = d (Kpub,P) o Ataques contra la criptografía asimétrica: La longitud de las claves: Suelen utilizarse claves de 1024 bits, y en algunos casos de 2048 bits. Corrección en la aplicación de algoritmos: Toda la seguridad del sistema se basa en el hecho de mantener protegidas las claves privadas.

9 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 9 Uso práctico de cifrado y firma (I) Proceso de cifrado: o Se genera una clave simétrica ‘K’ de forma aleatoria y con ella se cifra el mensaje M: P1 = e (K,M) o La clave de sesión se cifra con la clave pública del destinatario: P2 = e (Kpub,K) Enviamos la concatenación de P1 y P2. Proceso de firma: o Se extrae el hash del mensaje a firmar: H = h (M) o Se firma el hash: P = (Kprv,H) Se envía una concatenación de M y la firma P.

10 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 10 Uso práctico de cifrado y firma (II) o Cuando recibe P1 y P2 simplemente debe descifrar la clave de sesión y con ella el resto del mensaje. o Cuando se recibe la firma, se calcula H a partir de M: H1 = h (M) o y la clave pública del firmante se aplica sobre la firma P. H2 = e (Kpub,P) Ambas versiones del hash deben ser iguales: H1 = H2 = H Si no es así, el mensaje M ha sido manipulado o bien la firma no es válida y ha sido realizado por otra persona.

11 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 11 o Introducción o Definición de certificado o Autoridades de Certificación o Autoridades de Registro o Lista de Revocaciones de Certificados (CRL’s) Infraestructura de clave pública (PKI)

12 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 12 Introducción o ¿Cómo podemos tener la certeza de que las claves públicas pertenecen a quien parecen pertenecer? o PKI es una combinación de procesos, algoritmos y estructuras de datos que permitirá asegurar la identidad de los participantes en un intercambio de datos mediante la utilización de la criptografía. o La estructura de datos más importante de PKI es el certificado.

13 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 13 Certificado Es una estructura de datos que permite identificar al titular de una clave pública. Consta de tres campos: o Nombre del titular del certificado o Titular de la clave pública o Firma de los campos previos (La firma de los dos campos previos asegura la integridad contra una posible manipulación no deseada.)

14 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 14 Autoridades de Certificación (CA) - Son los encargados de emitir los certificados. Débe ser alguien de confianza para los participantes. - Las CA’s auto-firmadas, son las llamadas CA’s Raíz - La petición de certificación la realiza el titular firmando una secuencia de datos (generalmente es su nombre) con su clave privada. De esta manera la CA puede comprobar si las claves son correctas. La confianza en la CA se basa en dos factores: 1. Sigue procedimientos de verificación de los datos del titular y verifica que su clave pública sea realmente suya. 2. La clave privada de la CA se mantiene bajo medidas de seguridad

15 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 15 Listas de revocación (CRLs) Si el certificado se utiliza para cifrar la información del titular sólo podrá utilizarse durante su período de validez; si no es así, se dice que el certificado ha caducado. Un certificado podrá dejar de ser válido por varias razones, como por ejemplo si el titular ya no trabaja en la misma empresa o si la clave privada ya no es secreta. Cada CA sabe que tendrá que retirar algunos certificados debido a que alguno de sus campos dejan de ser válidos, certificados revocados. Las CRLs son las listas donde cada CA va a publicar los certificados revocados o caducados. Dichas CRL’s contendrán el número de certificado dentro de la CA y serán de acceso público, por ejemplo mediante un LDAP.

16 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 16 Autoridades de Registro (RA) Son los responsables de verificar los datos que se añadirán al certificado como verificar el nombre del titular,... de acuerdo con una política de certificación. Cada CA tiene una o más RAs que le proporcionan peticiones de certificado. La RA será la encargada de enviar la petición de certificados a la CA una vez las comprobaciones sean correctas. Los certificados podrán ser publicados en un servicio de directorios como puede ser LDAP y donde todo el mundo pueda acceder a él.

17 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 17 Formatos y codificación de un certificado o Certificado X.509 v1 o Certificado X.509 v3 o Certificados de una CA o Certificados de una CRL o Contenedores de estructuras criptográficas

18 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 18 Certificado X.509 v1

19 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 19 Certificado X.509 v3

20 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 20 Certificado X.509 v3: extensiones Extensiones más comunes: SubjectAltName: Nombre alternativo del titular (web o e-mail del titular) keyUsage (crítico): Indica el uso que se debe hacer de ese certificado, por ejemplo si es para firmar, cifrar, firmar CRL’s, etc... ExtendedKeyUsage (crítico): Similar al anterior. Microsoft lo utiliza para añadir funcionalidades apropiadas a su sistema operativo. netscapeCertType (crítico): Similar a KeyUsage pero implementado por Netscape. crlDistributionPoints (crítico): Identifica los puntos donde se podrá acceder a las CRL’s para comprobar si el certificado ha sido revocado. basicContraints (crítico): Indica si el certificado proviene de una CA o no. En caso afirmativo, indica si es raiz o no.

21 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 21 Certificados de la Autoridad de Certificación o Los certificados de una CA versión 1, son prácticamente idénticos al de los usuarios. o Los certificados versión 3, incluirán la extensión mencionada antes de “basicContraints” con valor “true”. o Cuando el emisor de una CA es el mismo que el receptor, campos Issuer y Subject respectivamente, se dice que que el certificado es auto-firmado. En este caso estaremos hablando de una CA raíz. o No todas las CA’s son raíz, existen también subordinadas que disponen de un certificado firmado por una CA de nivel superior.

22 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 22 Jerarquía de certificación

23 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 23 Ejemplo de CRL: CRL: SEQUENCE { toBeSigned: SEQUENCE { version: 1 (v2) signature: pkcs1-sha1WithRsaSignature issuer: CN=root, O=UOC, C=es thisUpdate: [utcTime] "000830165749Z" nextUpdate: [utcTime] "000930165749Z" revokedCertificates: SEQUENCE OF { revokedCertificate } crlExtensions: SEQUENCE OF { extension } } signatureAlgorithm: pkcs1-sha1WithRsaSignature signature: "56A376E029E97824... DFB19FBFAF" } Lista de Revocaciones: CRL’s (I) Las CRL’s disponen de un formato ASN.1. Contienen una lista de números de serie de certificados revocados por la CA.

24 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 24 revokedCertificate: SEQUENCE { certificate: 4 revocationDate: [utcTime] "000830165749Z" crlEntryExtensions: SEQUENCE OF { extension } } extension: SEQUENCE OF { extnId: id-ce-reasonCode critical: false extnValue: (enum) certificateHold } Lista de Revocaciones: CRL’s (II) Suspendido o inhabilitado No especificado Clave comprometida CA comprometida Modificación de afiliciación Obsoleto Fin de opeativilidad

25 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 25 Contenedores de estructuras criptográficas: PKCS (Public Key Criptograhic Standards) Todas las estructuras que veremos a continuación, son secuencias en ASN.1 y codificación DER o BER. Tanto DER como BER son codificaciones binarias. Uno de los usos de los PKCS son las peticiones de certificados. Básicamente existen dos maneras de pedir un certificado: 1- El cliente genera su clave pública y privada y manda a validar su certificado a una CA. En este caso se usa PCSK #10. 2- El cliente pide a una CA un certificado. En este caso es la CA quien genera el par de claves y se lo envía con un PKCS #12. Este contenedor ira protegido con un password para que nadie pueda ver la clave privada emitida.

26 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 26 Ejemplo de PKCS #10: Petición de un certificado SEQUENCE { toBeSigned: SEQUENCE { version: 0 (v1) subject: CN=Melcior, O=Reis Mags subjectPublicKeyInfo: "AF3FFDA...08F8DF7" attributes:... signatureAlgorithm: sha1WithRsaSignature } signature: " 7767DD15200 … 3DC00F60A“ } Son las extensiones pero no se usan en la petición de un certificado.

27 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 27 Otros PKCS: PKCS #7: Contenedores de datos no estructurados. Usos: Datos firmados no incluidos. (No contiene los datos que firma) Datos firmados incluidos. Datos cifrados. Datos cifrados y firmados. Cadenas de certificación. Certificados individuales. (por ejemplo que responden a una petición de certificación).

28 Seminaris de CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament. d’Arquitectura de Computadors - UPC 28 Otros PKCS... PKCS #1: define el formato de la clave privada en RSA. PKCS #5: define un contenedor de información genérica para cifrar simétricamente desde una contraseña. PKCS #8: especifica un contenedor para claves privadas genéricas a las cuales puede aplicarse la criptografía del PKCS #5....


Descargar ppt "CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Departament d’Arquitectura de Computadors (Seminaris de CASO) Autors INTRODUCCIÓN A PKI ( Public Key Infrastructure."

Presentaciones similares


Anuncios Google