Tema 2 Criptologia y Autentificacion

16
Chuina del Carmen Zapata Gómez Tema 2.- Criptografía y Autentificación Criptografía La criptografía es una de las ciencias consideradas como más antiguas, ya que sus orígenes se remontan al nacimiento de nuestra civilización. Su uso original era el proteger la confidencialidad de informaciones militares y políticas, pero en la actualidad es una ciencia interesante no sólo en esos círculos cerrados, sino para cualquiera que esté interesado en la confidencialidad de unos determinados datos: actualmente existe multitud de software y hardware destinado a analizar y monitorizar el tráfico de datos en redes de computadoras; si bien estas herramientas constituyen un avance en técnicas de seguridad y protección, su uso indebido es al mismo tiempo un grave problema y una enorme fuente de ataques a la intimidad de los usuarios y a la integridad de los propios sistemas. Aunque el objetivo original de la criptografía era mantener en secreto un mensaje, en la actualidad no se persigue únicamente la privacidad o confidencialidad de los datos, sino que se busca además garantizar la autenticidad de los mismos (el emisor del mensaje es quien dice ser, y no otro), su integridad (el mensaje que leemos es el mismo que nos enviaron) y su no repudio (el emisor no puede negar el haber enviado el mensaje). Antecedentes El origen de la criptografía data del año 2000 AC., con los egipcios y sus jeroglíficos. Los jeroglíficos estaban compuestos de pictogramas complejos, donde sólo el significado completo podría ser interpretado por algunos. El primer indicio de criptografía moderna fue usado por Julio César (100 AC. a 44 AC.), quien no confiaba en sus mensajeros cuando se comunicaba con los gobernadores y oficiales. Por esta razón, creó un sistema en donde los caracteres eran reemplazados por el tercer carácter siguiente del alfabeto romano. No solo los romanos, sino los árabes y los vikingos hicieron uso de sistemas de cifrado.

Transcript of Tema 2 Criptologia y Autentificacion

Page 1: Tema 2 Criptologia y Autentificacion

Chuina del Carmen Zapata Gómez

Tema 2.- Criptografía y Autentificación

Criptografía

La criptografía es una de las ciencias consideradas como más antiguas, ya que sus orígenes se remontan al nacimiento de nuestra civilización. Su uso original era el proteger la confidencialidad de informaciones militares y políticas, pero en la actualidad es una ciencia interesante no sólo en esos círculos cerrados, sino para cualquiera que esté interesado en la confidencialidad de unos determinados datos: actualmente existe multitud de software y hardware destinado a analizar y monitorizar el tráfico de datos en redes de computadoras; si bien estas herramientas constituyen un avance en técnicas de seguridad y protección, su uso indebido es al mismo tiempo un grave problema y una enorme fuente de ataques a la intimidad de los usuarios y a la integridad de los propios sistemas. Aunque el objetivo original de la criptografía era mantener en secreto un mensaje, en la actualidad no se persigue únicamente la privacidad o confidencialidad de los datos, sino que se busca además garantizar la autenticidad de los mismos (el emisor del mensaje es quien dice ser, y no otro), su integridad (el mensaje que leemos es el mismo que nos enviaron) y su no repudio (el emisor no puede negar el haber enviado el mensaje).

Antecedentes

El origen de la criptografía data del año 2000 AC., con los egipcios y sus jeroglíficos. Los jeroglíficos estaban compuestos de pictogramas complejos, donde sólo el significado completo podría ser interpretado por algunos. El primer indicio de criptografía moderna fue usado por Julio César (100 AC. a 44 AC.), quien no confiaba en sus mensajeros cuando se comunicaba con los gobernadores y oficiales. Por esta razón, creó un sistema en donde los caracteres eran reemplazados por el tercer carácter siguiente del alfabeto romano. No solo los romanos, sino los árabes y los vikingos hicieron uso de sistemas de cifrado.

Gabriel de Lavinde hizo de la criptografía una ciencia más formal cuando publicó su primer manual sobre Criptología en 1379.

Samuel Morse. El Código Morse, desarrollado en 1832, aunque no es propiamente un código como los otros, es una forma de cifrar las letras del alfabeto dentro de sonidos largos y cortos.

En tiempos modernos, la criptografía se ha convertido en una compleja batalla entre los mejores matemáticos del mundo y de los ingenieros en sistemas computacionales. La habilidad de poder almacenar de manera segura y de transferir la información ha dado un factor de éxito en la guerra y en los negocios.

Dado a que los gobiernos no desean que ciertas entidades entren y salgan de sus países para tener acceso a recibir o enviar información que puede comprometer y ser de interés nacional, la criptografía ha sido restringida en muchos países, desde la limitación en el uso, la

Page 2: Tema 2 Criptologia y Autentificacion

exportación o la distribución de software de conceptos matemáticos que pueden ser usados para desarrollar sistemas criptográficos.

De cualquier manera, el Internet ha permitido que todas estas herramientas sean distribuidas, así como las tecnologías y técnicas de criptografía, de tal manera, que al día de hoy, la mayoría de los sistemas criptográficos avanzados están en dominio público.

La criptografía incluye técnicas como esconder textos y en imágenes y otras formas de esconder información almacenada o en tránsito.

Simplificando el concepto, hoy en día la criptografía se asocia más a convertir texto sencillo a texto cifrado y viceversa. La Criptografía se ocupa de dar solución a los problemas de identificación, autenticación y privacidad de la información en los sistemas informáticos. Debido a la naturaleza de un medio no físico, no resultan útiles los métodos tradicionales de sellar o firmar documentos, con propósitos comerciales o legales.

En lugar de esto, dentro de la información digital que se desea proteger, debe colocarse algún tipo de marca codificada que sirva para identificar el origen, autenticar el contenido y asegurar la privacidad ante posibles intrusos. La protección de la privacidad utilizando un algoritmo simétrico, como por ejemplo el contenido en el estándar DES (Data Encryption Standard), es sencillo en redes pequeñas pero requiere el intercambio de la clave secreta de encriptación entre cada una de las partes. En la medida en que han proliferado las redes, el intercambio seguro de las claves secretas se ha vuelto costoso e inadecuado. Por tanto, el empleo aislado de esta solución, es inadecuado para grandes redes de comunicación. El estándar DES sufre una desventaja adicional: requiere que se comparta el conocimiento de la Clave Privada. Cada persona debe confiar en la otra respecto de la custodia de la clave secreta común y, además, no transmitírsela a nadie más. Teniendo en cuenta que el usuario debe tener diferentes claves para cada una de las personas con las que se quiere comunicar, debe compartir con cada una de ellas una de sus claves secretas. Esto significa que desde el punto de vista de la implantación práctica, solamente se puede establecer una comunicación segura entre personas que tengan alguna relación.

Por tanto, los aspectos fundamentales que DES no cubre son la autenticación y el no repudio. El hecho de que la clave secreta sea compartida implica que cada una de las partes no puede estar absolutamente segura de lo que la otra ha hecho con la misma. Incluso, una de las partes puede, maliciosamente, modificar los datos sin que un tercero pueda determinar la verdadera identidad del remitente ni quién es el culpable de la alteración. La misma clave que hace posible comunicaciones seguras puede ser empleada para crear documentos falsificados en nombre del otro usuario.

Criptoanálisis

El criptoanálisis es la ciencia opuesta a la criptografía (quizás no es muy afortunado hablar de ciencias opuestas, sino más bien de ciencias complementarias), ya que si ésta trata principalmente de crear y analizar criptosistemas seguros, la primera intenta romper esos sistemas, demostrando su vulnerabilidad: dicho de otra forma, trata de descifrar los

Page 3: Tema 2 Criptologia y Autentificacion

criptogramas. El término descifrar siempre va acompañado de discusiones de carácter técnico, aunque asumiremos que descifrar es conseguir el texto en claro a partir de un criptograma, sin entrar en polémicas de reversibilidad y solidez de criptosistemas.

En el análisis para establecer las posibles debilidades de un sistema de cifrado, se han de asumir las denominadas condiciones del peor caso: (1) el criptoanalista tiene acceso completo al algoritmo de encriptación, (2) el criptoanalista tiene una cantidad considerable de texto cifrado, y (3) el criptoanalista conoce el texto en claro de parte de ese texto cifrado. También se asume generalmente el Principio de Kerckhoffs, que establece que la seguridad del cifrado ha de residir exclusivamente en el secreto de la clave, y no en el mecanismo de cifrado.

Aunque para validar la robustez de un criptosistema normalmente se suponen todas las condiciones del peor caso, existen ataques más específicos, en los que no se cumplen todas estas condiciones. Cuando el método de ataque consiste simplemente en probar todas y cada una de las posibles claves del espacio de claves hasta encontrar la correcta, nos encontramos ante un ataque de fuerza bruta o ataque exhaustivo. Si el atacante conoce el algoritmo de cifrado y sólo tiene acceso al criptograma, se plantea un ataque sólo al criptograma; un caso más favorable para el criptoanalista se produce cuando el ataque cumple todas las condiciones del peor caso; en este caso, el criptoanálisis se denomina de texto en claro conocido. Si además el atacante puede cifrar una cantidad indeterminada de texto en claro al ataque se le denomina de texto en claro escogido; este es el caso habitual de los ataques contra el sistema de verificación de usuarios utilizado por Unix, donde un intruso consigue la tabla de contraseñas (generalmente /etc/passwd) y se limita a realizar cifrados de textos en claro de su elección y a comparar los resultados con las claves cifradas (a este ataque también se le llama de diccionario, debido a que el atacante suele utilizar un fichero `diccionario' con los textos en claro que va a utilizar). El caso más favorable para un analista se produce cuando puede obtener el texto en claro correspondiente a criptogramas de su elección; en este caso el ataque se denomina de texto cifrado escogido.

Cualquier algoritmo de cifrado, para ser considerado seguro, ha de soportar todos estos ataques y otros no citados; sin embargo, en la criptografía, como en cualquier aspecto de la seguridad, informática o no, no debemos olvidar un factor muy importante: las personas. El sistema más robusto caerá fácilmente si se tortura al emisor o al receptor hasta que desvelen el contenido del mensaje, o si se le ofrece a uno de ellos una gran cantidad de dinero; este tipo de ataques (sobornos, amenazas, extorsión, tortura...) se consideran siempre los más efectivos.

Criptografía

En la jerga de la criptografía, la información original que debe protegerse se denomina texto en claro o texto plano. El cifrado es el proceso de convertir el texto plano en un galimatías ilegible, denominado texto cifrado o criptograma. Por lo general, la aplicación concreta del algoritmo de cifrado (también llamado cifra) se basa en la existencia de una clave: información secreta que adapta el algoritmo de cifrado para cada uso distinto. Cifra es una antigua palabra arábiga para designar el número cero; en la Antigüedad, cuando Europa

Page 4: Tema 2 Criptologia y Autentificacion

empezaba a cambiar del sistema de numeración romano al arábigo, se desconocía el cero, por lo que este resultaba misterioso, de ahí probablemente que cifrado signifique misterioso.

Las dos técnicas más sencillas de cifrado, en la criptografía clásica, son la sustitución (que supone el cambio de significado de los elementos básicos del mensaje -las letras, los dígitos o los símbolos-) y la transposición (que supone una reordenación de los mismos); la gran mayoría de las cifras clásicas son combinaciones de estas dos operaciones básicas.

El descifrado es el proceso inverso que recupera el texto plano a partir del criptograma y la clave. El protocolo criptográfico especifica los detalles de cómo se utilizan los algoritmos y las claves (y otras operaciones primitivas) para conseguir el efecto deseado. El conjunto de protocolos, algoritmos de cifrado, procesos de gestión de claves y actuaciones de los usuarios, es lo que constituyen en conjunto un criptosistema, que es con lo que el usuario final trabaja e interactúa.

Existen dos grandes grupos de cifras: los algoritmos que usan una única clave tanto en el proceso de cifrado como en el de descifrado, y los que emplean una clave para cifrar mensajes y una clave distinta para descifrarlos. Los primeros se denominan cifras simétricas, de clave simétrica o de clave privada, y son la base de los algoritmos de cifrado clásico. Los segundos se denominan cifras asimétricas, de clave asimétrica o de clave pública y forman el núcleo de las técnicas de cifrado modernas.

En el lenguaje cotidiano, la palabra código se usa de forma indistinta con cifra. En la jerga de la criptografía, sin embargo, el término tiene un uso técnico especializado: los códigos son un método de criptografía clásica que consiste en sustituir unidades textuales más o menos largas o complejas, habitualmente palabras o frases, para ocultar el mensaje; por ejemplo, "cielo azul" podría significar «atacar al amanecer». Por el contrario, las cifras clásicas normalmente sustituyen o reordenan los elementos básicos del mensaje -letras, dígitos o símbolos-; en el ejemplo anterior, «rcnm arcteeaal aaa» sería un criptograma obtenido por transposición. Cuando se usa una técnica de códigos, la información secreta suele recopilarse en un libro de códigos.

Con frecuencia los procesos de cifrado y descifrado se encuentran en la literatura como encriptado y desencriptado, aunque ambos son neologismos erróneos —anglicismos de los términos ingleses encrypt y decrypt— todavía sin reconocimiento académico. Hay quien hace distinción entre cifrado/descifrado y encriptado/desencriptado según estén hablando de criptografía simétrica o asimétrica, pero la realidad es que la mayoría de los expertos hispanohablantes prefieren evitar ambos neologismos hasta el punto de que el uso de los mismos llega incluso a discernir a los aficionados y novatos en la materia de aquellos que han adquirido más experiencia y profundidad en la misma.

Ideológicamente cifrar equivale a escribir y descifrar a leer lo escrito.

Page 5: Tema 2 Criptologia y Autentificacion

Criptología

La criptografía (del griego krypto y logos, estudio de lo oculto, lo escondido) es la ciencia que trata los problemas teóricos relacionados con la seguridad en el intercambio de mensajes en clave entre un emisor y un receptor a través de un canal de comunicaciones (en términos informáticos, ese canal suele ser una red de computadoras). Esta ciencia está dividida en dos grandes ramas: la criptografía, ocupada del cifrado de mensajes en clave y del diseño de criptosistemas (hablaremos de éstos más adelante), y el criptoanálisis, que trata de descifrar los mensajes en clave, rompiendo así el criptosistema. En lo sucesivo nos centraremos más en la criptografía y los criptosistemas que en el criptoanálisis, ya que nos interesa, más que romper sistemas de cifrado (lo cual es bastante complicado cuando trabajamos con criptosistemas serios), el saber cómo funcionan éstos y conocer el diseño elemental de algunos sistemas seguros.

Métodos de Autentificación

Autenticación[1] o autentificación[2] es el acto de establecimiento o confirmación de algo (o alguien) como auténtico, es decir que reclama hecho por, o sobre la cosa son verdadero. La autenticación de un objeto puede significar (pensar) la confirmación de su procedencia, mientras que la autenticación de una persona a menudo consiste en verificar su identidad. La autenticación depende de uno o varios factores

Los métodos de autenticación están en función de lo que utilizan para la verificación y estos se dividen en tres categorías:

Sistemas basados en algo conocido. Ejemplo, un password (Unix) o passphrase (PGP).

Sistemas basados en algo poseído. Ejemplo, una tarjeta de identidad, una tarjeta inteligente(smartcard), dispositivo usb tipo epass token, smartcard o dongle criptográfico.

Sistemas basados en una característica física del usuario o un acto involuntario del mismo: Ejemplo, verificación de voz, de escritura, de huellas, de patrones oculares.

Planos

Kerberos

La seguridad e integridad de sistemas dentro de una red puede ser complicada. Puede ocupar el tiempo de varios administradores de sistemas sólo para mantener la pista de cuáles servicios se están ejecutando en una red y la manera en que estos servicios son usados. Más aún, la autenticación de los usuarios a los servicios de red puede mostrarse peligrosa cuando el método utilizado por el protocolo es inherentemente inseguro, como se evidencia por la transferencia de contraseñas sin encriptar sobre la red bajo los protocolos FTP y Telnet. Kerberos es una forma eliminar la necesidad de aquellos protocolos que permiten métodos de autenticación inseguros, y de esta forma mejorar la seguridad general de la red.

Page 6: Tema 2 Criptologia y Autentificacion

19.1. Qué es Kerberos?

Kerberos es un protocolo de seguridad creado por MIT que usa una criptografía de claves simétricas [1] para validar usuarios con los servicios de red — evitando así tener que enviar contraseñas a través de la red. Al validar los usuarios para los servicios de la red por medio de Kerberos, se frustran los intentos de usuarios no autorizados que intentan interceptar contraseñas en la red.

19.1.1. Ventajas de Kerberos

Los servicios de redes más convencionales usan esquemas de autenticación basados en contraseñas. Tales esquemas requieren que cuando un usuario necesita una autenticación en un servidor de red, debe proporcionar un nombre de usuario y una contraseña. Lamentablemente, la información de autenticación para muchos servicios se transmite sin estar encriptada. Para que un esquema de este tipo sea seguro, la red tiene que estar inaccequible a usuarios externos, y todos los usuarios de la red deben ser de confianza.

Aún en este caso, una vez que la red se conecte a la Internet, ya no puede asumir que la red es segura. Cualquier intruso del sistema con acceso a la red y un analizador de paquetes pueden interceptar cualquier contraseña enviada de este modo, comprometiendo las cuentas de usuarios y la integridad de toda la infraestructura de seguridad.

El primer objetivo de Kerberos es el de eliminar la transmisión a través de la red de información de autenticación. Un uso correcto de Kerberos erradica la amenaza de analizadores de paquetes que intercepten contraseñas en su red.

19.1.2. Desventajas de Kerberos

A pesar de que Kerberos elimina una amenaza de seguridad común, puede ser difícil de implementar por una variedad de razones:

La migración de contraseñas de usuarios desde una base de datos de contraseñasestándar UNIX, tal como /etc/passwd o /etc/shadow, a una base de datos de contraseñas Kerberos puede ser tediosa y no hay un mecanismo rápido para realizar esta tarea. Para más información, refiérase a la pregunta número 2.23 en el la sección FAQ de Kerberos en:

http://www.nrl.navy.mil/CCS/people/kenh/kerberos-faq.html

Kerberos es sólo parcialmente compatible con los Pluggable Authentication Modules (PAM) usados por la mayoría de los servidores Red Hat Enterprise Linux. Para más información sobre éste tópico, vea Sección 19.4.

Kerberos presupone que cada usuario es de confianza pero que está utilizando una máquina no fiable en una red no fiable. Su principal objetivo es el de prevenir que las contraseñas no encriptadas sean enviadas a través de la red. Sin embargo, si cualquier otro usuario aparte del usuario adecuado, tiene acceso a la máquina que emite tickets

Page 7: Tema 2 Criptologia y Autentificacion

usados para la autenticación — llamado Centro de distribución de llaves (KDC) —, el sistema de autenticación de Kerberos completo está en riesgo.

Para que una aplicación use Kerberos, el código debe ser modificado para hacer las llamadas apropiadas a las librerías de Kerberos. Las aplicaciones que son modificadas de esta forma son consideradas kerberizadas. Para algunas aplicaciones, esto puede suponer un esfuerzo excesivo de programación, debido al tamaño de la aplicación o su diseño. Para otras aplicaciones incompatibles, los cambios se deben realizar en el modo en que el servidor de red y sus clientes se comunican; de nuevo, esto puede suponer bastante programación. En general, las aplicaciones de código cerrado que no tienen soporte de Kerberos son usualmente las más problemáticas.

Finalmente, si decide usar Kerberos en su red, debe darse cuenta de que es una elección de todo o nada. Si decide usar Kerberos en su red, debe recordar que si se transmite cualquier contraseña a un servicio que no usa Kerberos para autenticar, se corre el riesgo de que el paquete pueda ser interceptado. Así, su red no obtendrá ningún beneficio de usar Kerberos. Para asegurar su red con Kerberos, solo debe utilizar las versiones kerberizadas (que funcionen con Kerberos) de todas las aplicaciones cliente/servidor que envien contraseñas sin encriptar o no utilizar ninguna de estas aplicaciones en la red.

ORIGEN Y DESARROLLO DE KERBEROSEl Instituto Tecnológico de Massachusetts (MIT) desarrolló Kerberos para proteger los servicios de red proporcionados por el proyecto Athena. El proyecto recibió el nombre debido al personaje mitológico griego Kerberos (o Can Cerberos), el perro guardián de tres cabezas de Hades. Existen varias versiones del protocolo. Las versiones 1 a 3 se desarrollaron sólo dentro del ambiente del MIT.

Steve Miller y Clifford Neuman, los principales diseñadores de la versión 4 de Kerberos, publicaron esa versión al final de la década de 1980, aunque la había orientado principalmente para el proyecto Athena.

La versión 5, diseñada por John Kohl y Clifford Neuman, apareció como la RFC 1510 en 1993 (que quedó obsoleta por la RFC 4120 en 2005), con la intención de eliminar las limitaciones y problemas de seguridad presentes en la versión 4. Actualmente, el MIT distribuye una implementación de Kerberos libremente bajo una licencia similar a la de BSD.

Autoridades de los Estados Unidos clasificaron a Kerberos como munición y prohibieron su exportación porque usa el algoritmo de cifrado DES (con clave de 56 bits). Una implementación no estadounidense de Kerberos 4, KTH-KRB, desarrollada en Suecia, puso el sistema a disposición fuera de los Estados Unidos antes de que éste cambiara sus políticas de exportación de criptografía (alrededor del año 2000). La implementación sueca se basó en una versión llamada eBones, la cual se basaba en la versión exportada MIT Bones (a la que se le habían quitado las funciones de cifrado y las llamadas a ellas), basada a su vez en Kerberos 4, nivel de corrección 9. El australiano Eric Young, autor de numerosas librerías criptográficas, puso nuevamente las llamadas a funciones y usó su librería de cifrado libdes. Esta versión algo

Page 8: Tema 2 Criptologia y Autentificacion

limitada de Kerberos se llamó versión eBones. Una implementación de Kerberos en su versión 5, Heimdal, se lanzó por básicamente el mismo grupo de gente que lanzó KTH-KRB.

Windows 2000, Windows XP y Windows Server 2003 usan una variante de Kerberos como su método de autenticación por defecto. Algunos agregados de Microsoft al conjunto de protocolos de Kerberos están documentados en la RFC 3244 "Microsoft Windows 2000 Kerberos Change Password and Set Password Protocols" (Protocolos de cambio y establecimiento de clave de tipo Kerberos en Microsoft Windows 2000). Mac OS X de Apple también usa Kerberos tanto en sus versiones de cliente y de servidor.

Notas

[1] Un sistema donde ambos el cliente y el servidor comparten una llave común que es usada para encriptar y descifrar la comunicación de la red.

Certificados Digitales

Un certificado digital es un documento digital mediante el cual un tercero confiable (una autoridad de certificación) garantiza la vinculación entre la identidad de un sujeto o entidad y su clave pública.

Si bien existen variados formatos para certificados digitales, los más comúnmente empleados se rigen por el estándar UIT-T X.509. El certificado contiene usualmente el nombre de la entidad certificada, número de serie, fecha de expiración, una copia de la clave pública del titular del certificado (utilizada para la verificación de su firma digital) y la firma digital de la autoridad emisora del certificado de forma que el receptor pueda verificar que esta última ha establecido realmente la asociación.

Uno de los problemas que surgen en Internet es el de la identificación de las personas o entidades, por Ejemplo, cómo asegurarnos de que una clave pública que hemos encontrado en Internet pertenece realmente a quién dice pertenecer.

Una posible solución es la utilización de un certificado digital que es fichero digital intransferible y no modificable, emitido por una tercera parte de confianza (AC), que asocia a una persona o entidad una clave pública.

Un certificado digital que siga el standard X509v3, utilizado por los navegadores, contiene la siguiente información:

Identificación del titular del certificado: Nombre, dirección, etc.

Clave pública del titular del certificado.

Fecha de validez.

Page 9: Tema 2 Criptologia y Autentificacion

Número de serie.

Identificación del emisor del certificado.

Un ejemplo sería:

issuer: C=ES ST=L=Barcelona O=SECURITY ZUTANEZ OU=Division de certificados CN=Fulano Menganez [email protected] subject: C=ES ST=O=OU=CN=Jaimito Email=Jaimito@jaimito serial:15

Certificate: Data: Version: 1 (0x0) Serial Number: 21 (0x15) Signature Algorithm: md5WithRSAEncryption Issuer: C=ES ST=L=Barcelona O=SECURITY ZUTANEZ OU=Division de certificados CN=Fulano Menganez [email protected] Validity Not Before: Nov 18 15:15:31 1998 GMT Not After : Nov 13 15:15:31 1999 GMT Subject: C=ES, ST=, O=, OU=, CN=Jaimito Email=Jaimito@jaimito Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA Public Key: (1024 bit) Modulus (1024 bit): 00:9e:74:de:c9:1a:6b:f4:fe:d1:04:30:58:7e:8b: 51:7a:98:23:e9:45:a9:c2:a7:7c:f8:f8:b5:9a:a2: ea:c1:99:68:ba:f7:c3:d8:06:05:1b:6a:47:a1:44: 5c:2c:a6:e0:4b:6f:ce:02:c4:06:32:20:34:be:13: 97:39:a3:aa:6f:2f:41:a7:bc:14:c8:f3:0c:ad:9d: 09:63:8a:f5:eb:60:5b:06:a6:01:fb:1a:07:b2:c6: 39:48:bb:b7:00:56:4e:20:6d:87:3f:67:0b:2f:f4: b0:5f:74:7f:90:6b:b4:47:6f:56:1a:b5:c5:42:54: 9b:e5:e3:00:e2:4f:e3:14:47 Exponent: 65537 (0x10001) Signature Algorithm: md5WithRSAEncryption 3b:2b:e9:ff:48:48:35:ab:30:5c:e2:d1:88:c9:29:8b:bc:09: b2:58:80:17:9c:e7:08:0a:7d:8a:5e:46:a8:83:3b:ee:84:de: 62:e3:ea:51:cb:92:bc:fa:db:90:bd:cd:9f:25:d4:4a:48:63: ac:b8:93:f9:dc:9c:cf:ef:fd:45

- -----BEGIN CERTIFICATE----- MIICOzCCAeUCARUwDQYJKoZIhvcNAQEEBQAwgaYxCzAJBgNVBAYTAkVTMRIwEAYD VQQIEwlDYXRhbHVueWExDDAKBgNVBAcTA0JjbjEVMBMGA1UEChMMU0VDVVJJVFkg QkNOMRowGAYDVQQLExFzZWNjaW8gZCdlbXByZXNlczEdMBsGA1UEAxMURGF2aWQg R3VlcnJlcm8gVmlkYWwxIzAhBgkqhkiG9w0BCQEWFGd1ZXJyZXJvQGdyZWMudXBj LmVzMB4XDTk4MTExODE1MTUzMVoXDTk5MTExMzE1MTUzMVowZjELMAkGA1UEBhMC RVMxCTAHBgNVBAgTADEJMAcGA1UEChMAMQkwBwYDVQQLEwAxGDAWBgNVBAMUD0Nh bHZpbiAmIEhvYmJlczEcMBoGCSqGSIb3DQEJARYNY2FsdmluQGhvYmJlczCBnzAN BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAnnTeyRpr9P7RBDBYfotRepgj6UWpwqd8 +Pi1mqLqwZlouvfD2AYFG2pHoURcLKbgS2/OAsQGMiA0vhOXOaOqby9Bp7wUyPMM rZ0JY4r162BbBqYB+xoHssY5SLu3AFZOIG2HP2cLL/SwX3R/kGu0R29WGrXFQlSb 5eMA4k/jFEcCAwEAATANBgkqhkiG9w0BAQQFAANBADsr6f9ISDWrMFzi0YjJKYu8 CbJYgBec5wgKfYpeRqiDO+6E3mLj6lHLkrz625C9zZ8l1EpIY6y4k/ncnM/v/UU= - -----END CERTIFICATE-----

Este es un certificado, válido durante un año, emitido por la autoridad certificadora SECURITY ZUTANEZ para el usuario Jaimito cuya clave pública RSA es:

exponente: 65537

Page 10: Tema 2 Criptologia y Autentificacion

modulo: 11127195552971827497702000105328725497115357432563948646524265 42649114539614030882310105443040321585401884991855044788817550 61645893205889184340440484177173313682979482908132499473623983 65177107544610936519826706567881109010715263259238888910151015 7610404623906744451048525264576885364836810773621503974118471

Todos los datos están firmados por la AC usando la función hash MD5 y su clave privada RSA.

Una firma digital es el equivalente de la firma convencional, en el sentido de que es un añadido al final del mensaje conforme se está de acuerdo con lo que allí se dice. Formalmente, una firma digital es una transformación de un mensaje de forma que cualquier persona con conocimiento del mensaje y de la clave pública del firmante pueda comprobar que dicha transformación ha sido realizada realmente por el firmante.

Para verificar que el certificado es correcto deberíamos hacernos con el certificado digital emitido para dicha AC por una segunda AC. Para verificar la veracidad de este segundo certificado deberíamos obtener el certificado digital emitido para segunda AC por una tercera AC. Como este proceso podría eternizarse, existen las llamadas autoridades raíz que firman sus propios certificados, un ejemplo de autoridad raíz es Verisign.

Aparte de los datos del emisor y del propietario del certificado éste puede contener información referente a las limitaciones que se hayan establecido para su uso: e-mail, www, etc...

Como puede observarse en el certificado del ejemplo, no existe ninguna referencia a algoritmos de clave secreta. Cuando navegamos con Netscape y recibimos un certificado de un servidor web 'seguro' aparece la ventana:

New Site Certificate

Here is the Certificate that is being presented:

Certificate for: UPC Signed by: UPC Encryption: Highest Grade (RC4 with 128-bit secret key)

The signer of the Certificate promises you that the holder of this Certificate is who they say they are. The encryption level is an indication of how difficult it would be for someone to eavesdrop on any information exchanged between you and this web site.

La información ''Encryption: Highest Grade (RC4 with 128-bit secret key)'' no tiene nada que ver con el certificado presentado por el servidor, sólo depende del navegador utilizado y del servidor, a distinto navegador distinto grado de cifrado.

Aunque desde un punto de vista técnico cualquiera puede erigirse en AC (sólo es necesario disponer de un par de claves pública-privada para firmar y verificar la firma, y todo aquel que desee obtener un certificado las tiene), una AC, además de emitir certificados, debería ofrecer los servicios siguientes:

Page 11: Tema 2 Criptologia y Autentificacion

Búsqueda de certificados: Una persona puede querer buscar el certificado referente a otra persona o entidad.

Revocación: Si un certificado se pierde, el titular debe poder informar a la AC para que lo anule y emita otro. También si la clave privada ha quedado comprometida debe ser posible su revocación.

Suspensión: La AC debe suspender la validez de un certificado si se hace un uso anormal de él.

Estado del certificado: Las personas a las que se les presenta un certificado deben de poder comprobar que no ha sido revocado o suspendido.

Actualmente aún se está desarrollando el marco legal que regule el reconocimiento de la validez legal de las firmas digitales y cuáles han de ser los requerimientos mínimos que han de reunir las autoridades certificadoras para ser reconocidas como tales.

Hibridos