La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Curso de Seguridad Informática

Presentaciones similares


Presentación del tema: "Curso de Seguridad Informática"— Transcripción de la presentación:

1 Curso de Seguridad Informática
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Tema 14 Autenticación y Firma Digital Curso de Seguridad Informática Ultima actualización: 10/02/02 Archivo con 40 diapositivas NOTAS SOBRE EL TEMA: Material Docente de Libre Distribución Dr. Jorge Ramió Aguirre Universidad Politécnica de Madrid Este archivo forma parte de un curso completo sobre Seguridad Informática y Criptografía. Se autoriza su uso, reproducción en computador e impresión en papel sólo para fines docentes, respetando siempre los derechos del autor. Curso de Seguridad Informática © Jorge Ramió Aguirre © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

2 Confidencialidad v/s integridad
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Confidencialidad v/s integridad Confidencialidad: Para lograrla se cifra el mensaje M  criptograma. Integridad: Para lograrla se firma el mensaje añadiendo una marca. Si bien en ciertos escenarios es muy importante mantener el secreto de la información, si ésta lo requiere, en muchos casos tiene quizás más trascendencia el poder certificar la autenticidad entre cliente y servidor (Internet). NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

3 Los problemas de la integridad (1)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Los problemas de la integridad (1) a) Autenticidad del emisor ¿Cómo comprueba Benito (B) que el mensaje recibido del emisor que dice ser Adelaida (A) es efectivamente de esa persona? b) Integridad del mensaje ¿Cómo comprueba Benito (B) que el mensaje recibido del emisor Adelaida (A) es el auténtico y no un mensaje falso? NOTAS SOBRE EL TEMA: c) Actualidad del mensaje ¿Cómo comprueba Benito (B) que el mensaje recibido del emisor Adelaida (A) es actual, no un mensaje de fecha anterior reenviado? Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

4 Los problemas de la integridad (2)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Los problemas de la integridad (2) d) No repudio del emisor ¿Cómo comprueba Benito (B) que el mensaje enviado por el emisor Adelaida (A) -y que niega haberlo enviado- efectivamente ha llegado? e) No repudio del receptor ¿Cómo comprueba Benito (B) que el mensaje enviado al receptor Adelaida (A) -y que niega haberlo recibido- efectivamente se envió? NOTAS SOBRE EL TEMA: d) Usurpación de identidad del emisor/receptor ¿Cómo comprueba Benito (B) que Adelaida (A), Clarisa (C) u otros usuarios están enviando mensajes firmados como Benito (B)? Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

5 Escenarios de integridad (1)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Escenarios de integridad (1) A envía un mensaje M a B: A cifra M con la clave KA  EKA(M) y lo envía al Juez. Este comprueba la integridad de A, lo descifra y envía a B, cifrado con KB, el mensaje M, la identidad de A y la firma EKA(M): EKB{M, A, EKA(M)}. Ambos confían en el Juez y ante cualquier duda éste puede desvelar la identidad de A descifrando EKA(M). 1er escenario de desconfianza 1ª Solución. Uso de un Juez. El Juez tendrá una clave KA con la que se comunica con A y una clave KB con la que se comunica con B. NOTAS SOBRE EL TEMA: Usa criptografía simétrica Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

6 Escenarios de integridad (2)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Escenarios de integridad (2) 2º escenario de desconfianza No está claro que pueda convertirse en un estándar. Permanece la figura de la Autoridad de Certificación ... es decir 2ª Solución. Prescindir de la figura del Juez y aceptar la autenticidad e integridad por convencimiento propio y la confianza en los algoritmos. NOTAS SOBRE EL TEMA: Ambos confiarán en un protocolo seguro y se autenticarán a través de una Autoridad de Certificación AC. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

7 Funciones de autenticación
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Funciones de autenticación Autenticación mediante el cifrado de mensajes con criptografía simétrica La cifra de datos puede servir como autenticación. Autenticación con MAC Message Code Authentication o checksum Una función pública y una clave secreta producen un valor de longitud fija válida como autenticador. Autenticación mediante funciones hash Una función pública reduce el mensaje a una longitud de valor hash que sirve como autenticador. Autenticación mediante firma digital del mensaje con criptografía asimétrica Una función pública y un par de claves, pública y privada inversas en un cuerpo, permiten la autenticación completa. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

8 Autenticación con sistemas simétricos
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación con sistemas simétricos Si la clave de un sistema simétrico es segura, es decir no está en entredicho, podemos afirmar que, además de la confidencialidad que nos entrega dicha cifra, se obtienen también simultáneamente la integridad del emisor y autenticidad del mensaje, en tanto que sólo el usuario emisor (en quien se confía por el modelo de cifra) puede generar ese mensaje. Con los sistemas de cifra simétricos no podremos realizar una autenticación completa (emisor y mensaje). Ahora bien, podremos hacerse algo similar con algunos procedimientos más o menos complejos que usen sistemas de cifra simétrica como es el caso de Kerberos. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

9 Los problemas de la autenticación simétrica
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Los problemas de la autenticación simétrica No obstante, subyacen los problemas característicos de un criptosistema: ¿cómo asegurar que la clave simétrica entre emisor y receptor es segura? o lo que es lo mismo, ¿cómo intercambiar claves de forma segura? El intercambio de claves de forma segura ya hemos visto que se logra sólo a través de sistemas asimétricos. Las herramientas más usuales para autenticación serán los códigos de autenticación de mensajes MACs y el sistema Kerberos con cifras simétricas o bien las firmas digitales que usan criptografía asimétrica. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

10 Redundancia del lenguaje en autenticación
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Redundancia del lenguaje en autenticación Se añade una marca de autenticación al final del criptograma. Esta marca depende del mensaje M. Por tanto, se trata de un texto redundante MR, establecido a priori. C = EK(M, MR) MR = Resumen o Marca ¿Para qué sirve la redundancia? Al ser texto redundante, la probabilidad de una autenticación errónea será igual que la de descriptar un criptograma que según el modelo de Hellman visto era PE = 2rN/2RN = 2(r-R)N. Así, la probabilidad de una autenticación correcta será PA = 1 - PE. Como r = 1.3 y R = 4.75, PE decrece rápidamente al crecer N. Si no hay redundancia (r  R) PE  1 y el ataque prospera . Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

11 Autenticación con MAC o Checksum
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación con MAC o Checksum Los dos extremos de la comunicación A y B comparten una única clave secreta que no está en entredicho. El MAC o checksum será una función que se aplica al mensaje M junto a una clave secreta K  CK(M). A envía el mensaje en claro y el Messsage Authentication Code (MAC) o Checksum CK(M) a B. Integridad: el receptor B puede estar seguro de que nadie ha modificado el mensaje durante la transmisión pues el valor CK(M) en destino coincide con el enviado por A. Autenticación: como solamente el emisor A y el receptor B comparten la clave secreta K, se asegura la autenticación de ambos usuarios  la clave K debe ser muy segura. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

12 Message Code Authentication con DES
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Message Code Authentication con DES Se inserta un código al final del mensaje M transmitido en claro, consistente en la cifra con clave secreta de los últimos bytes del texto, por ejemplo 64 bits de DES. En destino, con el mismo algoritmo y clave secreta, se realiza la cifra y se comparan estos últimos bloques. Como la cifra es por encadenamiento o realimentación, esos bytes cifrados dependen de todo el mensaje por lo que cualquier modificación será detectada al no coincidir los resultados del cifrado de M en emisor y receptor. Esquema Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

13 Algoritmo de autenticación MAC con DES
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Algoritmo de autenticación MAC con DES Mensaje M Cifrado del último bloque con encadenamiento M1 M2 ... Mn E (K,M) emisor K receptor M1 M2 Mn ... Am E (K,M) = Am  MR MR: espacio de marcas de autenticación La Marca Am son sólo 16, 32 ó 64 bits. Es un tamaño muy pequeño y puede dar lugar a colisiones: mensajes distintos con iguales MACs. ¿Cuáles son las debilidades de este modelo? Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

14 Aproximación con cifrado convencional
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Aproximación con cifrado convencional Utilización de un KDC (Key Distribution Centre) o Distribuidor de Claves de Confianza, que comparte una clave llamada maestra con los clientes. Cada parte de la red comparte una clave secreta o clave maestra con el KDC. El KDC se ocupa de distribuir una clave de sesión que va a ser utilizada en la conexión entre las dos partes. La clave de sesión se protege con la clave maestra de los participantes de una comunicación. En general esta estrategia requiere la utilización de un distribuidor de claves de confianza (KDC). Cada parte en la red comparte una clave secreta, conocida como una clave maestra con el KDC. El KDC es el responsable de generar claves que van a ser utilizadas durante un tiempo determinado en la conexión entre dos partes, estas claves son conocidas como clave de sesión (session key), y para proteger la distribución de estas claves se utilizan las claves maestras. Esta aproximación es la utilizada por Kerberos Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

15 Propuesta de Needham y Schroeder
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Propuesta de Needham y Schroeder A  KDC: IDA||IDB||N1 KDC  A: EKA[KS||IDB||N1||EKB[KS||IDA]] A  B: EKB[KS||IDA] B  A: EKS[N2] A  B: EKS[f (N2)] f (N2) es una función conocida por A y B. ¿Qué sucede si no se realizan los pasos 4 y 5? IDA = Nombre de A o identificador de A IDB = Nombre de B o identificador de B NX = Valor nonce KS = Clave de sesión EKX = Cifrado con clave secreta de X KX = Clave secreta de X (A ó B) Un intruso podría capturar el mensaje en el paso 3 y repetirlo, interfiriendo así las operaciones de B. Este diálogo se inicia con una petición de A al KDC para establecer una comunicación con B. Las claves secretas Ka y Kb son compartidas entre A y el KDC, y B y el KDC respectivamente. El propósito de este protocolo es distribuir de una forma segura una clave de sesión Ks a A y a B. A adquiere de una forma segura una nueva clave de sesión en el paso 2. El mensaje en el paso 3 puede ser descifrado, y por lo tanto comprendido, solamente por B. El paso 4 refleja el conocimiento que tiene B de la clave de sesión Ks, y en el paso 5, B afirma el conocimiento de A de la clave de sesión, ya que A devuelve un valor, cifrado con la clave se sesión, generado al aplicar una función conocida por ambos al valor nonce N2 de B. Los pasos 4 y 5 son necesarios, para evitar un ataque por repetición. En cierto modo si un intruso es capaz de capturar el mensaje en el paso 3, y repetirlo, éste podría de alguna forma interferir en las operaciones de B. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

16 Más debilidades de la propuesta N-S
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Más debilidades de la propuesta N-S Algo más improbable es que un intruso X tenga una clave de sesión antigua y repita el mensaje del paso 3 enviado a B, quien no tiene porqué recordar todas las claves de sesión usadas previamente con A. Si X captura el mensaje del paso 4, podrá suplantar la respuesta de A del paso 5, enviando a B mensajes que parecen venir de A con clave de sesión autenticada. Denning propone la inclusión de un valor timestamp en los pasos 2 y 3. La utilización de timestamps requiere la sincronización de relojes, pero la utilización de valores nonce es también vulnerable. Se propone como solución óptima dar una duración a la clave de sesión (tickets). A pesar de la confirmación realizada en los pasos 4 y 5 de que A y B son quienes dicen que son, este protocolo continúa siendo vulnerable a un ataque por repetición. Solamente hay que suponer que un cierto intruso X, ha sido capaz de capturar una clave de sesión antigua, admitiendo que esto es mucho más improbable que el simple hecho que un intruso que esté escuchando la red capture el mensaje 3. Sin embargo, esto supone un gran riesgo de seguridad, ya que X puede hacerse pasar por A y engañar a B utilizando una clave antigua solamente repitiendo el mensaje del paso 3. Al menos que B recuerde indefinidamente todas las claves de sesión antiguas utilizadas con A, B probablemente no sea capaz de determinar si el mensaje recibido es una repetición. Si X es capaz de capturar el mensaje del paso 4, éste puede suplantar la respuesta de A del paso 5. Desde este punto de vista, X puede enviar mensajes a B que le hagan parecer a éste que realmente vienen de A, utilizando una clave de sesión autenticada. El protocolo descrito por Denning parece proporcionar un incremento en el grado de seguridad al protocolo propuesto por Needham/Schroeder. Sin embargo, se descubre un nuevo problema, debido a que este protocolo se basa en la confianza de la sincronización de los relojes a través de la red, suponiendo esto un gran riesgo. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

17 Solución propuesta por Denning y tickets
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Solución propuesta por Denning y tickets A  KDC: IDA||IDB KDC  A: EKA[KS||IDB||T||EKB[KS||IDA||T]] A  B: EKB[KS||IDA||T] B  A: EKS[N1] A  B: EKS[f (N1)] Denning T = Timestamp | Clock – t | < t1 + t2 A  B: IDA||NA B  KDC: IDB||NB||EKB[IDA||NA||TB] KDC  A: EKA[IDB||NA||KS||TB]||EKB[IDA||KS||TB]||NB A  B: EKB[IDA||KS||TB]||EKS[NB] Tickets Tickets Solución al problema del timestamp Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

18 Autenticación en un sentido
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación en un sentido El correo electrónico es un ejemplo de aplicación que requiere este tipo de autenticación: No es necesario que el emisor y el receptor estén conectados al mismo tiempo. El receptor necesita confirmar de alguna forma que el emisor del mensaje es quien dice ser. A  KDC: IDA||IDB||N1 KDC  A: EKA[KS||IDB||N1||EKB[KS||IDA]] A  B: EKB[KS||IDA]||EKS[M] Una aplicación donde el cifrado está alcanzando unos niveles de popularidad muy importantes es en el correo electrónico ( ). La propia naturaleza del correo electrónico nos dice que no es necesario que el emisor y el receptor estén conectados al mismo tiempo. El correo electrónico es enviado al buzón de correo del receptor, donde es almacenado hasta que el receptor lo lea. Esta aproximación garantiza que solamente quien recibe el mensaje es justamente quien puede leerlo, proporcionando un nivel de autenticación que asegura que quien envía el mensaje es quien dice ser. Este protocolo no aporta una protección contra repeticiones; aunque se puede añadir alguna medida de defensa, como puede ser la inclusión de un timestamp dentro del mensaje, sin embargo debido al retraso en el procesamiento de los mensajes, los timestamps podrían tener una utilidad muy limitada. Se garantiza así que sólo el receptor puede leer el mensaje y autentica además al emisor. Es vulnerable a repeticiones. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

19 Autenticación con Kerberos
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación con Kerberos Servicio de autenticación desarrollado en el Massachusetts Institute of Technology (MIT) Perro de tres cabezas y cola de serpiente según mitología griega, guardián de la entrada del Templo de Hades. Tres componentes guardarán la puerta: Autenticación, Contabilidad y Auditoría. Las dos últimas cabezas nunca han sido implementadas. Asume un entorno distribuido y abierto en el que los usuarios desean acceder desde sus estaciones de trabajo a servicios situados en servidores distribuidos a través de la red. Desearíamos que los servidores fueran capaces de restringir el acceso solamente a usuarios autorizados y ser capaces de autenticar peticiones a servicios. En este entorno, no se puede confiar en una estación de trabajo para identificar correctamente el acceso de sus usuarios a los servicios de red. Mejor que construir elaborados protocolos de autenticación para cada servidor, Kerberos proporciona un servidor de autenticación centralizado cuya función es autenticar usuarios a servidores y servidores a usuarios. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

20 Características y fases de Kerberos
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Características y fases de Kerberos Está basado en el protocolo de distribución de claves de Needham & Schroeder. Fases de autenticación: Obtención de credenciales Tickets Autenticadores Petición de autenticación contra un servicio. Presentación de las credenciales al servidor final. Como ya se ha mencionado el protocolo de autenticación de Kerberos está basado en el protocolo de distribución de claves de Needham y Schroeder. Cuando un usuario pide un servicio, éste debe probar su identidad. Para hacer esto, un ticket es presentado al servidor junto con la información necesaria para probar que el ticket fue originalmente emitido para el usuario y no robado. Existen tres fases en la autenticación a través de Kerberos: Obtención de credenciales: Estas credenciales será utilizadas para para pedir acceso a los distintos servicios de red existentes. Petición de autenticación de un servicio dado: El usuario pide una autenticación para poder acceder a un servicio. Presentación de credenciales: El usuario finalmente presental sus credenciales al servidor final. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

21 Elementos del diálogo de autenticación
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Elementos del diálogo de autenticación Usuario, cliente y servidor: persona o máquina que necesita autenticarse en la red. Principal: entidad o cliente que usa Kerberos y que ha sido previamente autenticado por un servidor de autenticación. Servicio y servidor: servicio es una entidad abstracta (por ejemplo correo) y servidor el proceso que lo ejecuta. Clave y password: función aplicada a la clave de usuario. Credenciales: lo que se utiliza para autenticarse. Maestros y esclavos: la máquina que hospeda la base de datos es el master y esclavos son las máquinas que poseen copias de ésta. Dominio: nombre de entidad administrativa que mantiene los datos de autenticación.. Usuario, cliente y servidor: Por usuario entendemos la persona humana que utiliza un porgrama o servicio. Un cliente es quien realiza las acciones de computación necesitando una autenticación previa, no es necesario que sea una persona, puede ser un programa, un proceso, etc. Cada entidad que utilice un sistema Kerberos, sea un usuario o un servidor de red, es llamado cliente en el momento que utiliza el servicio Kerberos. Principal: Es cada entidad o cliente que hace uso del servicio de autenticación Kerberos. Este nombre lo recibe todo aquello que previamente ha sido autenticado por un servidor de autenticación. Se utiliza esta terminología para distinguir los clientes que están haciendo uso del servicio de Kerberos de aquellos que no. Servicio vs servidor: Un servicio es definido como una especificación abstracta de alguna acción a ser realizada, como por ejemplo, el servico de correo electrónico. El proceso que realiza las acciones es el servidor. Clave privada y password: La clave privada de un usuario es una función aplicada a la password de éste. Credenciales: Es aquello que se utiliza para identificarnos, es decir, lo que se va a utilizar para decir quienes realmente somos. Master y esclavos: Es posible realizar la autenticación en más de un servidor de Kerberos. La máquina que hospeda la B.D se llama master y las máquinas que poseen copias de ésta se llaman esclavas. Dominio: Es el nombre de una entidad administrativa que mantiene datos de autenticación, por ejemplo, una institución que esté distribuida en varias localidades necesite tener varios servidores de Kerberos, por lo que sería interesante dividir esta organización en dominios. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

22 Credenciales en Kerberos (ticket)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Credenciales en Kerberos (ticket) Existen dos tipos de credenciales utilizadas en el modelo de Kerberos: tickets y autenticadores. Es necesario un ticket para pasar de una forma segura la identidad del cliente entre el servidor de autenticación y el servidor final. [s, c, addr, timestamp, life, KS,C]KS s = nombre del servidor c = nombre del cliente addr = dirección Internet del cliente timestamp = fecha de iniciación del ticket life = duración KS = clave de sesión aleatoria Un ticket es necesario para pasar de una forma segura la identidad de una persona, a quien se le emitió el ticket, entre el servidor de autenticación y el servidor final, además transfiere información que puede ser utilizada para asegurarse que la persona, a quien pertenece el ticket, es la misma persona a quien se le entregó el ticket. El autenticador contiene información adicional que comparada con el ticket prueba que el cliente que presenta el ticket es el mismo a quien se le entregó. Ticket: Contiene el nombre del servidor, el nombre del cliente, la dirección Internet del cliente, fecha de inicialización del ticket (timestamp), duración (lifetime), y una clave de sesión aleatoria (session key). Autenticador: Contiene el nombre del cliente, la IP de la estación de trabajo, y la fecha actual, éste es cifrado con la session key que es parte del ticket. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

23 Credenciales en Kerberos (autenticador)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Credenciales en Kerberos (autenticador) El autenticador contiene información adicional que, comparada con el ticket, prueba que el cliente que presenta el ticket es el mismo a quien se le entregó, [c, addr, timestamp]KS,C c = nombre del cliente addr = dirección Internet de la estación de trabajo timestamp = fecha de iniciación del ticket KS,C = clave de sesión que es parte del ticket Un ticket es necesario para pasar de una forma segura la identidad de una persona, a quien se le emitió el ticket, entre el servidor de autenticación y el servidor final, además transfiere información que puede ser utilizada para asegurarse que la persona, a quien pertenece el ticket, es la misma persona a quien se le entregó el ticket. El autenticador contiene información adicional que comparada con el ticket prueba que el cliente que presenta el ticket es el mismo a quien se le entregó. Ticket: Contiene el nombre del servidor, el nombre del cliente, la dirección Internet del cliente, fecha de inicialización del ticket (timestamp), duración (lifetime), y una clave de sesión aleatoria (session key). Autenticador: Contiene el nombre del cliente, la IP de la estación de trabajo, y la fecha actual, éste es cifrado con la session key que es parte del ticket. Los objetivos de las credenciales son minimizar el número de veces que un usuario tiene que introducir la password así como eliminar el problema de enviar la password en texto plano por la red. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

24 Autenticación con funciones hash
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación con funciones hash H(M) es el resultado de un algoritmo que con una entrada M de cualquier tamaño, produce salida de tamaño fijo. El emisor A envía el mensaje M y la función hash H(M) a B, quien aplica la misma función al mensaje M’ recibido. Si los mensajes son iguales entonces se asegura que los hash también son iguales. No obstante, el hecho de que los hash coincidan no significa que los mensajes M y M’ sean iguales (ya visto en el capítulo correspondiente). Integridad: el receptor B puede confiar en que nadie ha modificado el mensaje durante la transmisión pues el valor H(M) en destino coincide con el enviado por A. Autenticación: Es imposible la autenticación de usuario. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

25 Autenticación con sistemas asimétricos
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Autenticación con sistemas asimétricos Al existir una clave pública y otra privada que son inversas, se autentica el mensaje y al emisor. Permite la firma digital, única para cada mensaje Problema: Los sistemas de cifra asimétricos son muy lentos y el mensaje podría tener miles o millones de bytes ... Solución: Se genera un resumen del mensaje, representativo del mismo, con una función hash imposible de invertir. La función hash comprime un mensaje de longitud variable a uno de longitud fija y pequeña. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

26 Características de una firma digital
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Características de una firma digital Requisitos de la Firma Digital: a) Debe ser fácil de generar. b) Será irrevocable, no rechazable por su propietario. c) Será única, sólo posible de generar por su propietario. d) Será fácil de autenticar o reconocer por su propietario y los usuarios receptores. e) Debe depender del mensaje y del autor. NOTAS SOBRE EL TEMA: Son condiciones más fuertes que la de una firma manuscrita. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

27 Firma digital RSA de A hacia B
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Firma digital RSA de A hacia B Clave Pública (nA, eA) Clave Privada (dA) Algoritmo: Adelaida Rúbrica: rAH(M) = H(M)dA mod nA A envía el mensaje M en claro (o cifrado) al destinatario B junto a la rúbrica: {M, rAH(M)} El destinatario B tiene la clave pública eA,nA de A y descifra rAH(M)  {(H(M)dA)eA mod nA} obteniendo así H(M). Como recibe el mensaje M’, calcula la función hash H(M’) y compara: Si H(M’) = H(M) se acepta la firma. NOTAS SOBRE EL TEMA: Benito Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

28 Ejemplo de firma digital RSA (B  A)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Ejemplo de firma digital RSA (B  A) Hola. Te envío el documento. Saludos, Beni. Sea H(M) = F3A9 (16 bits) Benito Adelaida Claves Benito nB = eB = 35, dB = 216   217 luego, firmará con bloques de 16 bits Claves Adelaida nA = eA = 25, dA = Firma Los primos elegidos por Benito y Adelaida son (97, 677) y (113, 587) NOTAS SOBRE EL TEMA: H (M) = F3A916 = rH(M) = H(M)dB mod nB rH(M) = mod = Benito envía el par (M, r) = (M, ) Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

29 Comprobación de firma RSA por A
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Comprobación de firma RSA por A Claves Benito nB = eB = 35, dB = Claves Adelaida nA = eA = 25, dA = Benito Adelaida Teníamos que: H (M) = F3A916 = rH(M) = H(M)dB mod nB rH(M) = mod = Benito había enviado el par (M, r) = (M, ) Adelaida recibe un mensaje M’ junto con una rúbrica r = : Calcula reB mod nB = mod = Calcula el resumen de M’ es decir H(M’) y lo compara con H(M). Si los mensajes M y M’ son iguales, entonces H(M) = H(M’) y se acepta la firma como válida. NOTA: No obstante, H(M) = H(M’) no implica que M = M’. NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

30 Firma digital ElGamal de A hacia B
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Firma digital ElGamal de A hacia B ElGamal: El usuario A generaba un número aleatorio a (clave privada) del cuerpo p. La clave pública es a mod p, con  generador. Adelaida Firma: (r, s) Algoritmo de firma: 1º El usuario A genera un número aleatorio h, que será primo relativo con (p): h / mcd {h, (p)} = 1 2º Calcula h-1 = inv {h, (p)} 3º Calcula r = h mod p 4º Resuelve la siguiente congruencia: NOTAS SOBRE EL TEMA: M = ar + hs mod (p)  s = (M - ar)inv[h,(p) mod (p) Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

31 Comprobación de firma ElGamal por B
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Comprobación de firma ElGamal por B Algoritmo comprobación de firma: 1º El usuario B recibe el par (r, s) y calcula: rs mod p y (a)r mod p 2º Calcula k = [(a)r  rs] mod p Como r era igual a h mod p entonces: k = [(arhs] mod p = (ar + hs) mod p =  mod p 3º Como M = (ar + hs) mod (p) y  es una raíz primitiva de p se cumple que:  =  ssi  =  mod (p-1) 4º Comprueba que k = M mod p Benito Conoce: p y (a) mod p Se acepta la firma NOTAS SOBRE EL TEMA: Si k = [(a)r  rs] mod p es igual a M mod p ... Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

32 Ejemplo firma digital ElGamal (B  A)
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Ejemplo firma digital ElGamal (B  A) ¡Hola otra vez! Soy Benito de nuevo... Salu2. Sea H(M) = A69B (16 bits) Benito Adelaida Claves Benito pB =  = 10 b mod p = 3.631 b = 20, h = 31 216   217 luego, firmará con bloques de 16 bits Firma 1) h-1 = inv[h, (p)] = inv (31, ) = 5.155 2) r = h mod p = 1031 mod = 3) s = [H(M) - br][inv(h,(p)] mod (p) H(M) = A69B16 = 4) s = [ 11.755]5.155 mod 5) s = NOTAS SOBRE EL TEMA: Luego, la firma será (r, s) = (11.755, ) Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

33 Comprobación de firma ElGamal por A
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Comprobación de firma ElGamal por A Claves Benito pB =  = 10 b mod p = 3.631 b = 20, h = 31 H(M) = A69B = Benito Adelaida Adelaida recibe el par (r, s) = (11.755, ) Comprobación de la firma: 1) rs mod p = mod = 2) (b)r mod p = mod = 3) (b)r  rs mod p = (  ) mod = = k 4) H(M) mod p = mod = Como hay igualdad se acepta la firma NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

34 El generador  en la firma de ElGamal
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución El generador  en la firma de ElGamal Claves Benito pB =  = 10 b mod p = 3.631 b = 20, h = 31  = 10 es un generador del cuerpo p = puesto que: Benito mod = mod = mod = mod = p-1 = = 23223193 q1 = 2; q2 = 3; q3 = 23; q4 = 193 y se cumple 10(p-1)qi mod p  1 NOTAS SOBRE EL TEMA: Por ejemplo, si se elige  = 11, para el exponente se obtiene el valor 1 y entonces no sirve para la firma. Será imposible comprobarla mediante la ecuación k = M mod p. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

35 Estándares de firma digital
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Estándares de firma digital 1991: National Institute of Standards and Technology (NIST) propone el DSA, Digital Signature Algorithm, una variante de los algoritmos de ElGamal y Schnoor. 1994: Se establece como estándar el DSA y se conoce como DSS, Digital Signature Standard. 1996: La administración de los Estados Unidos permite la exportación de Clipper 3.11 en donde viene inmerso el DSS, que usa una función hash de tipo SHS, Secure Hash Standard. NOTAS SOBRE EL TEMA: El peor inconveniente de la firma propuesta por ElGamal es que duplica el tamaño del mensaje M al enviar un par (r, s) en Zp y (p). No obstante, se solucionará con el algoritmo denominado DSS. Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

36 Digital Signature Standard DSS
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Digital Signature Standard DSS Parámetros públicos de la firma: Un número primo grande p (512 bits) Un número primo q (160 bits) divisor de p-1 Un generador  “de orden q” del grupo p ¿y eso qué es? Generador de orden q es aquella raíz  en el cuerpo Zp de forma que q es el entero más pequeño que verifica: q mod p = 1 NOTAS SOBRE EL TEMA: En este caso se cumple para todo t que: t = t (mod q) mod p Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

37 Generación de firma DSS de A  B
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Generación de firma DSS de A  B GENERACIÓN DE LA FIRMA POR PARTE DE A Claves públicas de A: primos p, q y el generador  Clave secreta de la firma: a (1 < a < q) aleatorio Clave pública de la firma: y = a mod p Para firmar un mensaje 1 < M < p, el firmante elige un valor aleatorio 1 < h < q y calcula: r = (h mod p) mod q s = [(M + ar)  inv (h,q)] mod q La firma digital de M será el par (r, s) NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

38 Comprobación de firma DSS por B
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Comprobación de firma DSS por B COMPROBACIÓN DE LA FIRMA DE A POR B B recibe el par (r, s) Luego calcula: w = inv (s, q) u = M  w mod q v = r  w mod q Comprueba que se cumple la relación: r = (u yv mod p) mod q Si se cumple, se acepta la firma como válida. La firma tendrá en este caso un tamaño menor que q, es decir, menos bits que los del módulo de firma p ya que se elige por diseño p >> q NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

39 Ejemplo de firma DSS de B  A
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Ejemplo de firma DSS de B  A Hola Adelaida, soy Benito y firmo con DSS. Sea H(M) = = 104 (un elemento de pB) Benito Adelaida Claves Benito pB = 223 qB = 37  = 17 y = b mod p = 30 b = 25, h = 12 28  pB = 223  27 Luego firmará bloques de 7 bits Firma 1) inv (h,q) = inv (12, 37) = 34 2) r = (h mod p) mod q = (1712 mod 223) mod 37 = 171 mod 37 = 23 3) s = [H(M)+br][inv (h,q)] mod q = [104+2523]34 mod 37 = 35 4) La firma digital de H(M) = 104 será: (r, s) = (23, 35) 5) Benito transmite a Adelaida el bloque (M, r, s) = (M, 23, 35) NOTAS SOBRE EL TEMA: Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.

40 Comprobación de firma DSS por A
Curso de Seguridad Informática en Diapositivas Material Docente de Libre Distribución Comprobación de firma DSS por A Claves Benito pB = 223 qB = 37  = 17 y = b mod p = 30 b = 25, h = 12 Adelaida recibe: (M, r, s) = (M, 23, 35) Benito Adelaida ¿igualdad? Comprobación de firma Se acepta la firma 1) w = inv (s, q) = inv (35, 37) = 18 2) u = Mw mod q = 10418 mod 37 = 22 3) v = rw mod q = 2318 mod 37 = 7 4) ¿(u yv mod p) mod q = r ? 5) [( ) mod 223] mod 37 = 23 Y el tamaño será menor que qB = 37 es decir << PB = 223 que era el punto débil de ElGamal NOTAS SOBRE EL TEMA: Fin del Tema 14 Curso de Seguridad Informática. Tema 14: Autenticación y Firma Digital. © Jorge Ramió Aguirre Tema 14: Autenticación y Firma Digital.


Descargar ppt "Curso de Seguridad Informática"

Presentaciones similares


Anuncios Google