CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf ·...

30
CRIPTOGRAFÍA 5º CURSO DE INGENIERÍA INFORMÁTICA E.T.S.I. Informática Universidad de Sevilla Curso 2007/2008 Aplicaciones

Transcript of CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf ·...

Page 1: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

CRIPTOGRAFÍA5º CURSO DE INGENIERÍA INFORMÁTICA

E.T.S.I. Informática

Universidad de Sevilla

Curso 2007/2008

Aplicaciones

Page 2: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

SOBRE DIGITAL

Problema:

◦ Cómo intercambiar gran volumen de información

cifrada entre usuarios A y B que no comparten un

secreto.

Solución 1: Uso de un criptosistema de

clave pública

◦ Inconveniente: muy lento. Además los datos cifrados

aumentan mucho de tamaño. Poco práctica.

Solución 2: Uso de un criptosistema

simétrico.

◦ Inconveniente: ¿cómo ponerse de acuerdo en la clave?

Solución 3: El sobre digital.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 3: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

SOBRE DIGITAL

• Cifra la clave de sesión con la clave pública de B:

• Envía a B el mensaje cifrado y la clave de

sesión cifrada:

Pasos que sigue A para enviar el mensaje a B:

• Obtiene la clave pública de B para un criptosistema de clave pública

(p. e. RSA).

• Genera aleatoriamente una clave K (clave de sesión) para un

criptosistema simétrico, p. e. AES y cifra el mensaje con esa clave:

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 4: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

INTERCAMBIO DE CLAVES D-H

Solución 2: Intercambio de claves

◦ A través de un canal abierto, dos interlocutores que no

poseen ningún conocimiento secreto común, necesitan

compartir una clave secreta.

◦ Las mismas ideas que dieron origen a la Criptografía de

clave pública aportaron soluciones a este antiguo

problema.

◦ Primera solución:

Diffie y Hellman propusieron en 1976 un método que basa

su seguridad en el problema del logaritmo discreto.

◦ Hay actualmente muchos otros protocolos de

intercambio de claves, algunos perfeccionando el de D-H

y otros basados en nuevas ideas.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 5: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

INTERCAMBIO DE CLAVES D-H

A y B se envían mensajes usando un canal abierto y consiguen compartir un secreto 𝐾 que sólo es conocido por ellos:

1. Eligen y publican un primo adecuado 𝑝 y un generador 𝑔, 2 ≤ 𝑔 ≤ 𝑝 ― 2 del grupo multiplicativo de ℤ𝑝.

2. A elige un secreto 𝑥, 1 ≤ 𝑥 ≤ 𝑝 ― 2 y envía a B el mensaje 𝑔𝑥 mod 𝑝.

3. B elige un secreto 𝑦, 1 ≤ 𝑦 ≤ 𝑝 ― 2 y envía a A el mensaje 𝑔y mod 𝑝.

4. B recibe 𝑔𝑥 y calcula la clave compartida como

𝐾 = (𝑔𝑥) y mod 𝑝

5. A recibe 𝑔y y calcula la clave compartida como

𝐾 = (𝑔y)𝑥 mod 𝑝

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 6: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

INTERCAMBIO DE CLAVES D-H

Un ejemplo artificialmente pequeño:

1. A y B eligen y publican un primo adecuado 𝑝 =71 y un

generador 𝑔=21 del grupo multiplicativo de ℤ₇₁.

2. A elige un secreto 𝑥=46 y envía a B el mensaje

𝑔𝑥 mod 𝑝 = 21´¶ mod 71 = 9.

3. B elige un secreto 𝑦 = 57 y envía a A el mensaje

𝑔y mod 𝑝 = 21µ·mod 71 = 61.

4. B recibe 𝑔 𝑥= 9 y calcula la clave compartida como

𝐾 = (𝑔𝑥) y mod 𝑝 = 9µ·mod 71 = 16.

5. A recibe 𝑔y y calcula la clave compartida como

𝐾 = (𝑔y)𝑥 mod 𝑝 = 61´¶ mod 71 = 16.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 7: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

INTERCAMBIO DE CLAVES D-H

Seguridad:◦ Si un atacante interceptara toda la comunicación,

llegaría a conocer los valores de 𝑝, 𝑔, 𝑔𝑥 y 𝑔y.

◦ Para encontrar 𝐾 necesita conocer uno de los valores

𝑥, 𝑦. Su dificultad es que para hallar 𝑥 tiene que calcular

el logaritmo discreto en ℤ𝑝 de 𝑔𝑥 de base 𝑔, y éste es

un problema intratable (análogamente para 𝑦).

◦ Se podría aumentar la seguridad mediante el uso de un

grupo sobre el que el PLD fuese más duro: por

ejemplo, el grupo multiplicativo de un cuerpo finito o

el grupo de una curva elíptica.

◦ Es seguro ante ataques pasivos, pero se necesitarán

mejoras para protegerse de ataques activos:

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 8: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

INTERCAMBIO DE CLAVES D-H

Ataque de intercepción y suplantación:

◦ A elige un secreto 𝑥, 1 ≤ 𝑥 ≤ 𝑝 ― 2 y envía a B el mensaje 𝑔𝑥 mod 𝑝.

C intercepta 𝑔𝑥 mod 𝑝, elige un 𝑧 con 1 ≤ 𝑧 ≤ 𝑝 ― 2 y envía a B el valor 𝑔𝑧 mod 𝑝.

◦ B elige un secreto 𝑦, 1 ≤ 𝑦 ≤ 𝑝 ― 2 y envía a A el mensaje 𝑔y mod 𝑝.

C intercepta 𝑔y mod 𝑝 y envía a A el valor 𝑔𝑧 mod 𝑝.

◦ B recibe 𝑔𝑧 y calcula la clave compartida como

𝐾 = (𝑔𝑧)y mod 𝑝

◦ A recibe 𝑔𝑧 y calcula la clave compartida como

𝐾 = (𝑔𝑧)𝑥 mod 𝑝

C calcula también la clave compartida haciendo

𝐾 = (𝑔𝑥)𝑧 mod 𝑝

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 9: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

AUTENTICACIÓN E INTEGRIDAD

Necesidad de autenticación:

◦ Al ataque anterior (y a otros) son susceptibles también

todos los todos los criptosistemas de clave pública que

hemos visto.

◦ La debilidad clave es la dificultad de autenticación y de

integridad, en varios sentidos:

Autenticación de la identidad del emisor del mensaje.

Autenticación de la identidad del que recibe el mensaje.

Verificación de la integridad del mensaje, etc.

◦ Las soluciones vendrán de una combinación de las

técnicas estudiadas.

Este estudio nos llevará a los conceptos de

funciones resumen, certificados, firma, etc.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 10: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

AUTENTICACIÓN E INTEGRIDAD

Si A utiliza un criptosistema RSA con clave pública

(𝑛, 𝑒) y privada 𝑑, entonces B puede comprobar que

su interlocutor es A:

1. B envía a A un valor 𝑥 obtenido aleatoriamente y que

sólo va a usar en esa ocasión.

2. A cifra 𝑥 con RSA pero usando su clave privada:

𝑦 = 𝑥𝑑mod 𝑛.

3. B recibe 𝑦 y obtiene el valor

𝑥 = 𝑦𝑒mod 𝑛.

4. Si el valor obtenido no es 𝑥, entonces alguien está

intentando suplantar a A.

Sólo A puede realizar el paso 2, por lo que un

atacante no puede suplantarle.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 11: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

En una versión ingenua, se podría decir que en el

proceso anterior, A ha firmado el mensaje 𝑥.

Esta es una gran idea, pero con un problema: el

mensaje a firmar puede ser muy grande, y RSA es

lento y pesado.

Necesitamos procedimientos para crear un

resumen pequeño del mensaje y poder usar el

resumen para la firma (luego servirá también

para más cosas).

Las funciones que hacen esa tarea se llaman

funciones resumen.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 12: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

Una función resumen ℎ recibe como entrada un bloque de información de tamaño arbitrario 𝑀 y devuelve un valor ℎ(𝑀) (pequeño) llamado resumen.

• La idea es que el pequeño resumen pueda sustituir al mensaje en los procesos en los que el tamaño importa. Para ello es necesario que la función resumen esté fuertemente asociada al mensaje y que no pueda ser falsificada.

• Esto se traduce en varias condiciones básicas:

Mensaje Función resumen Resumen

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 13: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

Condiciones de validez:

Para que la función resumen sea válida debe cumplir al menos 4 condiciones:

1. Facilidad de cálculo: debe ser muy fácil y rápido calcular ℎ(𝑀).

2. Resúmenes de longitud fija, independientemente de la longitud del mensaje.

3. Unidireccionalidad: conocido un resumen ℎ(𝑀), debe ser computacionalmente imposible encontrar 𝑀.

4. Difusión: el resumen ℎ(𝑀) debe ser una función compleja de todos los bits del mensaje 𝑀. La modificación de un solo bit del mensaje 𝑀 debería cambiar aproximadamente la mitad de los bits de ℎ(𝑀).

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 14: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

Resistencia a colisiones

◦ Una buena función resumen debe ser resistente

a colisiones:

Colisión simple: dado 𝑀, debe ser

computacionalmente imposible encontrar otro 𝑀’ tal

que ℎ(𝑀) = ℎ(𝑀’) (resistencia débil a las colisiones).

Colisión fuerte: Debe ser computacionalmente

imposible encontrar un par (𝑀, 𝑀’) de forma que

ℎ(𝑀) = ℎ(𝑀’) (resistencia fuerte a las colisiones).

◦ Además del buen diseño de la función, el adecuado

tamaño del resumen es esencial para que sea

resistente a las colisiones.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 15: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

Tamaño del resumen

• Supongamos que el tamaño en bits de los resúmenes que

obtiene nuestra función ℎ es 𝑛. Por la paradoja del

cumpleaños, si evaluamos ℎ sobre 2𝑛/2 mensajes, la

probabilidad de encontrar dos de ellos con igual resumen

es superior al 50%.

• Si tuviéramos resúmenes de 32 bits, con sólo calcular

ℎ(𝑀) para 232/2 = 65536 mensajes, tendríamos una

probabilidad del 50% de encontrar una colisión fuerte.

• Por tanto, hacen falta resúmenes suficientemente grandes:

los recomendados tradicionalmente han sido de 128 bits

o de 160 bits. En la actualidad se utilizan resúmenes de al

menos 160 bits.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 16: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN

Algunas funciones resumen destacadas:

Año Nombre Autor Res.

(bits)

Comentarios

1992 MD5 Ron Rivest 128 Recientemente rota. Se

desaconseja su uso

1994 SHA1

SHA-256

SHA-512

NIST 160

256

512

Más fuerte que MD5. SHA1

ha sido recientemente rota.

1996 Tiger Anderson y

Biham

192 Optimizada para máquinas

de 64 bits.

2003 Whirlpool Rijmen y

Barreto

512 Libre. Basada en AES.

Recomendada por NESSIE.

Parte del estándar ISO/IEC

10118-3.

Un enlace que permite calcular interactivamente varias funciones

resumen: http://www.fileformat.info/tool/hash.htm

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 17: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FUNCIONES RESUMEN: RESUMEN DE LA SITUACIÓN

Importancia de la rotura de la función.

◦ Es mejor usar funciones resumen que sean robustas, pero

en la práctica no hay tanta tragedia. El resumen es como

una huella digital del documento; el atacante no busca otro

documento con la misma huella, sino modificar el actual a

su conveniencia y que la huella no cambie. Habitualmente

el contexto del documento hace esto muy difícil.

Propuestas de sustitución.

◦ Recientemente se propuso formalmente el sustituir MD5

por SHA1 en todos los sistemas. Ahora se proponen

otros estándares: SHA-512, Tiger o WHIRLPOOL, pero

los cambios no son fáciles, y no todo se arregla

aumentando los tamaños.

◦ Quizás haga falta un nuevo paradigma.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 18: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMAS DIGITALES

Concepto de firma digital:

◦ Una firma digital es una cadena de bits que se añade a

un documento y que permite garantizar su autoría y su

integridad.

◦ El documento puede estar cifrado o en claro.

Características:

◦ Va ligada indisolublemente al documento. Una firma

digital válida para un documento no es válida para otro.

◦ Una firma digital para un documento sólo puede ser

generada por el propietario de la firma.

◦ Es públicamente verificable. Cualquiera puede, de forma

sencilla, comprobar su autenticidad en cualquier

momento.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 19: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL RSA

En un criptosistema RSA de clave pública (𝑛,𝑒) y clave

privada 𝑑, si ciframos con la clave privada un mensaje 𝑥:

𝑦 = 𝑅𝑆𝐴(𝑛,𝑑)(𝑥) = 𝑥𝑑 mod 𝑛

entonces su descifrado es el cifrado con la clave pública:

𝑅𝑆𝐴(𝑛,𝑒)(𝑦) = 𝑦𝑒 mod 𝑛 = 𝑥

Esta propiedad hace este criptosistema muy natural

para su uso en firmas digitales como veremos a

continuación (usando las notaciones anteriores).

Los certificados digitales emitidos por la FNMT usan

como firma SHA1 + RSA.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital

RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 20: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL RSA

Firma del documento:

◦ Se calcula el resumen 𝑟 = ℎ(𝑚).

◦ La firma es el cifrado del resumen con la clave

privada:

𝑓 = 𝑅𝑆𝐴(𝑛,𝑑)(𝑟) = 𝑟𝑑 mod 𝑛

◦ Se adjunta la firma al documento.

◦ Sólo puede firmar el propietario de la clave

privada.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital

RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 21: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL RSA

Verificación de la firma:

◦ Se calcula el resumen 𝑟 = ℎ(𝑚).

◦ La firma es válida si

𝑅𝑆𝐴(𝑛,𝑒)(𝑓) = 𝑓𝑒 mod 𝑛 = 𝑟

◦ Si los resultados no coinciden: el documento ha

sido alterado o el firmante no es el legal.

◦ Cualquiera puede verificar la firma ya que para

ello se usa la clave pública.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital

RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 22: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL RSA

Un ejemplo artificialmente pequeño:

◦ Firmamos el mensaje 𝑀=“esto es muy importante”

Como función resumen usamos ℎ=CRC32:

ℎ(𝑀) = F0EBDC78 = 4041989240

Parámetros RSA:

(𝑛 = 10009202107, 𝑒 = 123456789)

𝑑 = 4295292925

Firma:

4041989240´²¹µ²¹¹²µ mod 10009202107 = = 14275210

Verificación de la firma:

14275210 ¹²³´µ¶·¸¹ mod 10009202107 = = 4041989240 = ℎ(𝑀)

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital

RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 23: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL ELGAMAL

A firma un mensaje 𝑚:

◦ Sus claves Elgamal son: pública = (𝑝, 𝑔, 𝛽), privada = 𝑎

◦ Elige un entero secreto 𝑘, 1 ≤ 𝑘 ≤ 𝑝―2, primo con 𝑝―1.

◦ Calcula 𝑟 = 𝑔𝑘 mod 𝑝.

◦ Calcula 𝑠 = 𝑘⁻¹(ℎ(𝑚) ― 𝑎𝑟) mod (𝑝―1).

◦ La firma del mensaje 𝑚 es el par (𝑟, 𝑠).

B verifica la firma:

◦ Calcula 𝑣₁ = 𝛽𝑟𝑟𝑠 mod 𝑝.

◦ Calcula 𝑣₂ = 𝑔ℎ(𝑚) mod 𝑝.

◦ La firma es válida si 𝑣₁ = 𝑣₂.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 24: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL ELGAMAL

Por qué funciona la firma:

◦ Si la firma (𝑟, 𝑠) que B recibe es válida, entonces

𝑠 = 𝑘⁻¹(ℎ(𝑚) ― 𝑎𝑟) mod (𝑝―1) ⇒

𝑘𝑠 = ℎ(𝑚) ― 𝑎𝑟 mod (𝑝―1) ⇒

ℎ(𝑚) = 𝑘𝑠 + 𝑎𝑟 mod (𝑝―1) ⇒

ℎ(𝑚) = 𝑘𝑠 + 𝑎𝑟 + 𝜆(𝑝―1)

de aquí

𝑔ℎ(𝑚) = 𝑔𝑘𝑠 + 𝑎𝑟 + 𝜆(𝑝―1) = 𝑔𝑘𝑠 + 𝑎𝑟 𝑔𝜆(𝑝―1)

y por el teorema de Fermat

𝑔ℎ(𝑚) = 𝑔𝑘𝑠 + 𝑎𝑟 = 𝑟𝑠 (𝑔𝑎)𝑟 = 𝑟𝑠 𝛽𝑟

Así𝑣₁ debe ser igual a 𝑣₂

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 25: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

FIRMA DIGITAL ELGAMAL

Un ejemplo pequeño:

◦ Firma:

A tiene como clave pública (𝑝 = 2357, 𝑔 = 2, 𝛽 = 1185),clave privada 𝑎 = 1751 y firma un mensaje 𝑚 de resumen

ℎ(𝑚) = 1463.

A selecciona 𝑘 = 1529 y calcula

𝑟 = 21529 mod 2357 = 1490

𝑠 = 1529⁻¹(1463 ― 1751 · 1490) mod 2356 = 1777.

La firma es (1490, 1777).

◦ Verificación:

B verifica la firma calculando

𝑣₁=11851490 ·14901777 mod 2357 = 1072

𝑣₂= 21463 mod 2347 = 1072.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 26: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

CERTIFICADOS DIGITALES

Qué es un certificado digital

◦ Un documento que contiene fundamentalmente la clave

pública del usuario, un identificador y otros datos

adicionales, firmados digitalmente por una autoridad de

certificación.

Para qué se usa

◦ Su utilidad fundamental es permitir al propietario la

realización de tareas que requieren seguridad

(confidencialidad, firma, etc.)

◦ Al estar firmado por una autoridad de confianza, el

certificado permite a terceros confirmar la validez de las

claves y demostrar que pertenecen a ese usuario.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 27: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

CERTIFICADOS DIGITALES

Entidades emisoras

◦ Cualquiera puede emitir un certificado. Existen utilidades

como makecert.exe que los generan.

◦ Para que un certificado sea aceptado por otros tiene que

estar firmado por una autoridad de certificación (AC) que

los otros admitan como de confianza.

◦ Existen organizaciones internacionales que son

autoridades de certificación (VeriSign, Thawte, etc.)

◦ En España la principal AC es la FNMT, que emite

certificados gratuitos para uso personal.

◦ Los certificados para usos comerciales o especializados

no suelen ser gratuitos.

◦ Es posible organizar las AC en jerarquías o en anillos de

confianza.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 28: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

CERTIFICADOS DIGITALES

La mayor parte de los certificados se basan

en el estándar X.509 v3

El certificado contiene, entre otras

informaciones:

◦ Algoritmos de cifrado y de resumen.

◦ Clave pública del usuario.

◦ Información del usuario.

◦ Período de validez.

◦ Información del emisor.

◦ La firma digital del emisor, que valida el enlace entre la clave

pública del usuario y su identificación.

◦ Usos permitidos.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 29: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

CERTIFICADOS DIGITALES

El uso puede estar restringido:

◦ Se incluyen campos que determinan los usos permitidos: cifrar,

firmar documentos, firmar código, etc.

Múltiples certificados:

◦ En algunos sistemas (p. e. DNI electrónico) se incluyen dos

certificados para cada usuario, uno para el cifrado y otro para la

firma. Esto disminuye el riesgo de ciertos ataques.

Las claves privadas:

◦ Cuando se instala un certificado en un navegador, la clave privada

se guarda en un almacén protegido (en Windows está en

C:\Users\<user>\AppData\Roaming\Microsoft\Crypto\RSA)

◦ EL certificado se puede almacenar en distintos formatos (X.509

DER binario, X.509 codificado en base64, etc.)

◦ El certificado y la clave privada se pueden exportar (p. e. para

trasladarlos a otro sistema) mediante archivos especiales (p. e. P7B

PKCS #12).

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos

Page 30: CRIPTOGRAFÍA - Universidad de Sevillama1.eii.us.es/Material/Cripto_ii_Aplicaciones.pdf · Criptografía –5º Curso de Ingeniería Informática –Universidad de Sevilla INTERCAMBIO

Criptografía – 5º Curso de Ingeniería Informática – Universidad de Sevilla

ALGUNOS PROBLEMAS RESUELTOS

Objetivo Herramientas

Privacidad • Criptosistemas simétricos.

• Intercambio de claves.

• Sobres digitales.

• Criptosistemas de clave pública.

Integridad • Funciones resumen.

• Firma digital.

Autenticación • Firma digital.

• Certificados digitales.

Firma • Firma digital.

• Certificados digitales.

No repudio • Firma digital.

• Certificados digitales.

Control de acceso • Firma digital.

• Certificados digitales.

• Criptosistemas simétricos.

• Criptosistemas de clave pública.

Sobre digital

Intercambio de

claves de Diffie

y Hellman

Autenticación e

integridad

Funciones

resumen

Firmas digitales

Firma digital RSA

Firma digital

Elgamal

Certificados

digitales

Algunos

problemas

resueltos