tema 2: autenticación y firmas digitales

48
Interconexión de redes 1 Tema 2: Autenticación y Firmas digitales. Introducción a la Criptografía. ¿Qué es la criptografía? Tipos de funciones criptográficas Criptografía de clave secreta Criptografía de clave pública Funciones de mezcla (“ hash”) Aplicación ejemplo: PGP Distribución de claves Aplicación al comercio electrónico: SET Índice del tema

Upload: others

Post on 14-Nov-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tema 2: Autenticación y Firmas digitales

Interconexión de redes 1

Tema 2: Autenticación yFirmas digitales. Introducción a la Criptografía.

¿Qué es la criptografía?

Tipos de funciones criptográficas

Criptografía de clave secreta

Criptografía de clave pública

Funciones de mezcla (“hash”)

Aplicación ejemplo: PGP

Distribución de claves

Aplicación al comercio electrónico:SET

Índice del tema

Page 2: Tema 2: Autenticación y Firmas digitales

2

Tema 2: Introducción a la criptografía

Fuentesn Kaufman, Cap. 2, 3, 4

n En español:u http://www.criptored.upm.esu http:// www.kriptopolis.comu http:// www.rediris.esu http:// www.cs.hut.fi/ssh/cripto/intro.htmlu http://bbs.seker.es/~alvy/cripto.html (muchos enlaces

interesantes)

n http:// www.rsa.comn Página internacional PGP:

u http:// www.pgpi.com

n Certificadosu www.verisign.com

Fuentes de consulta

Page 3: Tema 2: Autenticación y Firmas digitales

3

Tema 2: Introducción a la criptografía

Autenticaciónn ¿Cómo puede una persona dar fe de quién

es?n ¿Cómo se puede saber de quién es un

mensaje?n ¿Cómo se puede saber si un mensaje ha sido

modificado en el camino?n ¿Cómo se puede determinar si un documento

es de quién dice que es?

Page 4: Tema 2: Autenticación y Firmas digitales

4

Tema 2: Introducción a la criptografía

Autenticaciónn Permite identificar a la persona que envía el mensaje.n ¿Cómo?

u Firma Digitalu ¿Cómo?

F Cifrado del mensaje

n También se puede hablar de Autenticación de:

u Personas ⇒ Firma Digital ⇒ (Criptografía asimétrica)

u Mensajes ⇒ Cifrado (Criptografía simétrica)

Page 5: Tema 2: Autenticación y Firmas digitales

5

Tema 2: Introducción a la criptografía

Objetivosn Conocer que es y para que sirve la criptografía.

u Diferenciar el cifrado de clave privada del declave pública y sus implicaciones.

n Comprender el problema de la distribución declaves públicas y su solución mediantecertificados

Objetivos del tema

Page 6: Tema 2: Autenticación y Firmas digitales

6

Tema 2: Introducción a la criptografía

Algunos conceptos...n Criptografía: es la ciencia que estudia la escritura

secreta.u En la práctica se ocupa del cifrado y el descifrado

de mensajes. Los términos encriptar y desencriptarno existen en castellano.

n Criptoanálisis: es la ciencia que se ocupa deesclarecer el significado de la escriturainintelegible.

n Criptología: es la ciencia que auna ambastécnicas.

Page 7: Tema 2: Autenticación y Firmas digitales

7

Tema 2: Introducción a la criptografía

1. ¿Qué es la criptografía?

1. ¿Qué es el cifrado?n Cifrar información consiste en transformar un

mensaje en claro en un mensaje ininteligible

n Se basa en la utilización de un algoritmo y unaclave de cifrado

n Proporciona.u Privacidadu Integridad de los datosu Autenticaciónu El no rechazo

Texto nativo descifrado Texto cifrado

cifrado

Page 8: Tema 2: Autenticación y Firmas digitales

8

Tema 2: Introducción a la criptografía

Cifradon Se puede plantear desde dos puntos de vista:

u Algoritmo secretou Algoritmo público clave secreta

¿Cuál es mejor?

Page 9: Tema 2: Autenticación y Firmas digitales

9

Tema 2: Introducción a la criptografía

Clave secreta frente aalgoritmo secreton Algoritmo secreto ⇒ dificultad adicionaln Difícil si se va a usar ampliamenten Publicarlo permite averiguar sus puntos

débilesn Generalmente:

u Públicos: en entornos comercialesu Privados: en entornos militares

1. ¿Qué es la criptografía?

Page 10: Tema 2: Autenticación y Firmas digitales

10

Tema 2: Introducción a la criptografía

¿Cómo se mantiene el secreto?Dificultad computacional

n El algoritmo de cifrado debe ser razonablementeeficiente de aplicar

n No debe ser susceptible de ataque mediante prueba yerror

n Cualquier esquema puede romperse depende de$=f(t)

n Clave más larga ⇒ mayor seguridad

u Cifrado O(n+1)u Criptoanálisis mediante fuerza bruta O(2n+1)

1. ¿Qué es la criptografía?

Page 11: Tema 2: Autenticación y Firmas digitales

11

Tema 2: Introducción a la criptografía

2. Tipos de funciones criptográficas

n 3 tipos distintos:u Criptografía de clave secreta

F Una sóla clave

u Criptografía de clave públicaF Dos claves distintas

u Funciones “hash” (de mezcla)F No utilizan clave de cifrado

2. Tipos de funciones criptográficas

Page 12: Tema 2: Autenticación y Firmas digitales

12

Tema 2: Introducción a la criptografía

Criptografía de clave secretan Convencional o simétrican Una sola clave

u La misma para cifrar que para descifrar

descifrado2.1 Criptografía de clave secreta

cifradoTexto nativo Texto cifrado

Texto nativoTexto cifrado

clave

Page 13: Tema 2: Autenticación y Firmas digitales

14

Tema 2: Introducción a la criptografía

Criptografía de clave secreta.Funcionamienton Los algoritmos de cifrado de clave secreta

trabajan habitualmente con bloques de entradade tamaño fijou Si el mensaje es demasiado largo se divide

n Sobre estos bloques realizan permutaciones ysustituciones de los bitsu Substitución: Para cada una de las 2k entradas

especifica los k bits de salidau Permutación: cambia la posición de cada bit

2.1 Criptografía de clave secreta

Page 14: Tema 2: Autenticación y Firmas digitales

15

Tema 2: Introducción a la criptografía

2.1 Criptografía de clave secreta

Ejemplo de cifrado de bloquesEntrada: 64 bits

8 bits 8 bits 8 bits8 bits. . .

8 bits 8 bits 8 bits8 bits. . .

S1 S2 S7 S8

64 bits intermedios

64 bits de salida

Page 15: Tema 2: Autenticación y Firmas digitales

16

Tema 2: Introducción a la criptografía

n Transmisión de datos sobre un canal inseguron Almacenamiento de datosn Autenticación

n Control de integridad

CS. Aplicaciones

ra

A B

rb cifrada con Kab

ra cifrada con Kab

rb

2.1 Criptografía de clave secreta

Page 16: Tema 2: Autenticación y Firmas digitales

17

Tema 2: Introducción a la criptografía CS. Algoritmo DES (DataEncryption Standard)

n Se publicó como standard para uso comercial (NationalBureau of Standards- USA) en 1977

n Desarrollado en IBM (“Lucifer”)n Bloques de 64 y este se somete a 16 interacciones y una

clave de 56 bits, más bits de paridad.

n Eficiente en hardware pero lento en software

n No se ha podido romper desde la perspectiva de poder deducir laclave a partir del mensaje interceptado.

n Pero con un método de fuerza bruta -probando 256 posiblesclaves- se pudo romper DES en 1999.

2.1 Criptografía de clave secreta

Page 17: Tema 2: Autenticación y Firmas digitales

18

Tema 2: Introducción a la criptografía

CS. Ataques al DESn Con el tamaño de clave actual NO se considera fiable

u En el último desafío propuesto se encontró la clavemediante un ataque por fuerza bruta en 21 horas

u Pero sigue siendo muy utilizado

n Dadas las mejoras en la tecnología (40% anual) la clavedebería crecer 1 bit cada 2 años

u 128 bits serían suficientes hasta el 2121

La opción optada se conoce como Triple-DES(TDES) que consiste en aplicar DES tres veces.

2.1 Criptografía de clave secreta

Page 18: Tema 2: Autenticación y Firmas digitales

19

Tema 2: Introducción a la criptografía

Triple DESn Utiliza dos claves y tres ejecuciones del algoritmo

n Longitud efectiva de la clave 112 bits

u Todavía se considera fiable

E D EA B

Texto cifradoTexto nativo

K1K2 K1

Texto nativoD E DB A

Texto cifrado

K1K2 K1

CIFRADO

DESCIFRADO

2.1 Criptografía de clave secreta

Page 19: Tema 2: Autenticación y Firmas digitales

20

Tema 2: Introducción a la criptografía

CS. IDEA (International DataEncryption Algorithm)n Zurich, 1991n Eficiente para calcular por softwaren Bloques de 64 bitsn Clave de 128 bitsn No se conocen ataques mediante fuerza bruta

con éxito

2.1 Criptografía de clave secreta

Page 20: Tema 2: Autenticación y Firmas digitales

21

Tema 2: Introducción a la criptografía

Cifrado de mensajes largosn ¿Y si el mensaje tiene más de 64 bits?n El standard DES propone varios esquemas

u aplicables a otros métodos de cifrado debloques mediante clave secreta

u el más utilizado:F CBC (Cipher Block Chaining)

2.1 Criptografía de clave secreta

Page 21: Tema 2: Autenticación y Firmas digitales

22

Tema 2: Introducción a la criptografía

CBCn Muy utilizado

VI

c1

E

m1

+

c2

E

m2

+

c3

E

m3

+

c4

E

m4

+

c5

E

m5

+

Cifrado de mensajes largos

VI⇒⇒vector de inicialización

E ⇒⇒función de cifrado

Page 22: Tema 2: Autenticación y Firmas digitales

23

Tema 2: Introducción a la criptografía

2.2 Criptografía de clave públican Criptografía asimétrican 2 claves:

u privadau pública

2.2 Criptografía de clave pública

cifradoTexto nativo Texto cifrado

Texto nativoTexto cifrado

clave pública

clave privada

descifrado

Page 23: Tema 2: Autenticación y Firmas digitales

24

Tema 2: Introducción a la criptografía

2.2 Criptografía de clave pública

Criptografía de clave pública (II)n Se apoya en funciones matemáticas, no en

substituciones y transposicionesn Diferentes algoritmos pueden realizar

diferentes funciones:u RSA: cifrado y firmas digitalesu El Gamal y DSS: firmas digitales pero no

cifradou Diffie - Hellman: establecimiento de una clave

secreta compartida

Page 24: Tema 2: Autenticación y Firmas digitales

25

Tema 2: Introducción a la criptografía

Errores corrientes sobre c.c.p.n La criptografía de clave pública es más

segura que la convencionalu Depende de la longitud de la clave y coste

computacional para romper el cifrado

n Es una técnica de propósito general que hasustituido a la criptografía secreta

n Resuelve el problema de la distribución declaves de forma trivial

2.2 Criptografía de clave pública

Page 25: Tema 2: Autenticación y Firmas digitales

26

Tema 2: Introducción a la criptografía

Aplicaciones (clave pública)n Las mismas que la criptografía de clave

secretaF Transmisión de datos sobre canal no fiable

F Almacenamiento de datos

F Autenticación

u pero con mayor coste computacionalu ambas pueden combinarse

n y otras:u Firmas digitales

2.2 Criptografía de clave pública

Page 26: Tema 2: Autenticación y Firmas digitales

27

Tema 2: Introducción a la criptografía

Firmas digitalesn Permiten demostrar:

u Quién generó la informaciónF Impiden la repudiación del mensaje

u Que la información no se ha modificado

2.2 Criptografía de clave pública

firmaTexto nativo Texto cifrado

Texto nativoTexto cifrado

clave pública

clave privada

verificación

Page 27: Tema 2: Autenticación y Firmas digitales

28

Tema 2: Introducción a la criptografía

Ejemplo: RSAn Permite cifrado y descifradon Longitudes de clave variables (512 bits)n Mucho más lento que DES o IDEA

u Se emplea principalmente para cifrar clavessecretas

n No se conoce ningún ataque contra él que haya tenidoéxito

n Se apoya en la dificultad de factorizar númerosgrandesu Factorizar un número de 512 bits ≈ 500.000 años

MIPS

2.2 Criptografía de clave pública

Page 28: Tema 2: Autenticación y Firmas digitales

29

Tema 2: Introducción a la criptografía

2.3 Funciones de mezcla(“hash”)

n Transformaciones no reversiblesn Calculan un número de longitud fija (corta) a partir

de un mensaje de longitud arbitrariau m ⇒ h(m)

n Propiedades:u h(m) debe ser fácil de calcular para cualquier mu Conocido h(m) encontrar m debe implicar calcular

todos los m posiblesu No debe ser posible (computacionalmente)

encontrar 2 m’s que se ajusten al mismo h(m)

2.3 Funciones de mezcla

Page 29: Tema 2: Autenticación y Firmas digitales

30

Tema 2: Introducción a la criptografía

Funciones de mezcla (II)

2.3. Funciones de mezcla

n Ventaja: Más rápida que la criptografía de clavepública

n H no es secreta ⇒ requiere algún medioadicional para proteger el mensaje

n Longitudes seguras > 100 bits ⇒ 128 bits

Page 30: Tema 2: Autenticación y Firmas digitales

31

Tema 2: Introducción a la criptografía

Aplicaciones (funciones “hash”)n Con función hash

u AutenticaciónF A y B comparten Kab

u Almacenamiento de mensajes

A B

H(ra|| Kab)

rb

ra

H(rb|| Kab)

2.3 Funciones de mezcla

Page 31: Tema 2: Autenticación y Firmas digitales

32

Tema 2: Introducción a la criptografía

Aplicaciones (“hash”) (II)n Sólo con función hash

u Integridad de mensajes en transmisiónF A y B comparten Kab

mensaje

Kab

hash

2.3 Funciones de mezcla

Page 32: Tema 2: Autenticación y Firmas digitales

33

Tema 2: Introducción a la criptografía

Aplicaciones (“hash”) (III)n Hash + cifradon Firma digital + integridad del mensaje

u Sólo mediante clave pública

mensaje

Kra

hash E

A B

mensaje

KPa

hash

E

= ?

2.3 Funciones de mezcla

Page 33: Tema 2: Autenticación y Firmas digitales

34

Tema 2: Introducción a la criptografía

Aplicaciones (“hash”) (IV)n Hash + cifradon Firma digital + integridad y privacidad del

mensajeu Clave pública + clave secreta

mensaje

Kra

hash E

A

Kab

E

2.3 Funciones de mezcla

Page 34: Tema 2: Autenticación y Firmas digitales

35

Tema 2: Introducción a la criptografía

Ejemplos: MD5 y SHS

2.3 Funciones de mezcla

Message Digest 5 Secure Hash Standard

Basada en MD4 Similar a MD5 pero:- Ligeramente más lenta (25%)- Presumiblemente más segura

Entrada: - Longitud arbitraria - Se procesa enbloques de 512 bits

Entrada:- Long. máxima 2 64 bits

Salida: 128 bits Salida: 160 bits

Page 35: Tema 2: Autenticación y Firmas digitales

36

Tema 2: Introducción a la criptografía

Una aplicación ejemplo: PGPn Aplicación informática de criptografía de alta

seguridad.n Permite:

u Enviar mensajes de correo con intimidad yautenticación (firmas digitales)

F Utilizando cifrado simétrico y asimétricocombinados

u Cifrar y firmar archivos almacenadosu Borrado seguro

n Fácil de usar y con buena integración en lamayoría de los programas de correo

2.4 Aplicación ejemplo: PGP

Page 36: Tema 2: Autenticación y Firmas digitales

37

Tema 2: Introducción a la criptografía

Funcionamiento - Cifradomediante PGP

MensajeTexto Llano

MensajeCifrado

Cifrado conClave secreta

0100111010100110

Número aleatorioPara clave de sesión

Cifrado con la clavepública del destinatario

1001101010011011

Clave de sesión cifrada

2.4 Aplicación ejemplo: PGP

Page 37: Tema 2: Autenticación y Firmas digitales

38

Tema 2: Introducción a la criptografía

Funcionamiento (II) -Descifrado mediante PGP

MensajeTexto LlanoDescifrado con

Clave secreta

0100111010100110

Clave de sesión

Descifrado con la claveprivada del destinatario

001000110100111

MensajeCifrado

Clave de sesióncifrada

2.4 Aplicación ejemplo: PGP

Page 38: Tema 2: Autenticación y Firmas digitales

39

Tema 2: Introducción a la criptografía

Creación de un nuevo par declavesn Desde el PGPkeys seleccionar el menú keys

⇒New Key y seguir las indicaciones delprograma

Page 39: Tema 2: Autenticación y Firmas digitales

40

Tema 2: Introducción a la criptografía

Cifrado y descifrado demensajesn Coloca los mensajes en el portapapelesn Mediante el PGPtray (con el botón derecho

del ratón) selecciona la opción adecuadan También puedes hacerlo mediante el

PGPtools

firmarcifrar

Firmar + cifrar

Descifrar/verificar

Borrrado seguro

2.4 Aplicación ejemplo: PGP

Page 40: Tema 2: Autenticación y Firmas digitales

41

Tema 2: Introducción a la criptografía

3. Distribución de clavesn Distribución de las claves públicas ⇒

problema muy importante en este tipo decifrados

n Se han propuesto varias soluciones:u Anuncio público (PGP)u Autoridad centralu Certificados de clave pública

3 Distribución de claves

Page 41: Tema 2: Autenticación y Firmas digitales

42

Tema 2: Introducción a la criptografía

Certificados digitalesn el certificado digital sirve para dar identidad a una

clave pública.u Su origen: surge para resolver el problema de administrar

las claves públicas y que la identidad del dueño no puedaser falsificada.

u La idea: es que una tercera identidad intervenga en laadministación de las claves públicas y asegure que lasclaves públicas tengan un usuario claramente identificado[Kohnfelder MIT 86].

u Partes:F Una clave pública

F La identidad de un implicado

F Una entidad llamada autoridad certificadora

Page 42: Tema 2: Autenticación y Firmas digitales

43

Tema 2: Introducción a la criptografía

Certificados de clave pública

IniciadorA B

Autoridadcentral

3. Distribución de claves

En la actualidad casi todas las aplicaciones de comercio electrónico y transacciones seguras requieren un certificado digital y se tiene ya un formato estándar de certificado digítal: X509 v.3

KuA

CA=EKraut[T1,IDA,KUA]

CB=EKraut[T2,IDB,KUB]

(1) CA

(1) CB

KuB

Page 43: Tema 2: Autenticación y Firmas digitales

44

Tema 2: Introducción a la criptografía

Proveedor de servicios decertificaciónn Todos los nodos deben conocer:

u su propia clave privadau la clave pública de la autoridad

n Ventajas:u La AC no necesita estar conectada a la redu Los certificados pueden utilizarse

independientemente de que la AC esté activao no

u Es menos vulnerable al sabotaje

3. Distribución de claves

Page 44: Tema 2: Autenticación y Firmas digitales

45

Tema 2: Introducción a la criptografía

Revocación de certificadosn Los certificados llevan fecha de caducidad

n Pero pueden anularse antes ⇒ Listas de Revocaciónde Certificados (CRL)

n Formato (X.509):

u De certificado:F Nombre del usuarioF Clave pública del usuarioF Fecha de caducidadF Número de serieF Firma de la autoridad de certificación

u De CRL:F Lista de números de serie de certificados revocadosF Fecha de publicación del CRL

3. Distribución de claves

Page 45: Tema 2: Autenticación y Firmas digitales

46

Tema 2: Introducción a la criptografía

Múltiples dominios de certificaciónn Se divide el espacio en dominiosn Cada AC:

u Gestiona un dominiou Emite certificados para las AC de los dominios con

los que desee comunicarsen Si A y B, en dominios distintos, quieren comunicarse:

u A debe obtener:F Un certificado firmado por ACA, de la ACB

F El certificado de B firmado por ACB

n Pueden emplearse cadenas de certificados

3. Distribución de claves

Page 46: Tema 2: Autenticación y Firmas digitales

47

Tema 2: Introducción a la criptografía

Certificados para correon Un ejemplo de aplicación de los certificados

está en los certificados para direcciones decorreou Aseguran la identidad del usuario asociado a

una dirección de correo determinadau Muchos de los programas de correo: Outlook

Express, Communicator y otros llevan laposibilidad de utilizarlos

u Permiten:F Firmar digitalmente mensajes y/o cifrarlos

3. Distribución de claves

Page 47: Tema 2: Autenticación y Firmas digitales

48

Tema 2: Introducción a la criptografía

SET 1 el cliente incia la compra enviandodos mensajes firmados por el cliente

-Contenido compra (cifrado y firmadoclave pública del comerciante)

- Informaciónd e pago (cifrado yfirmado clave pública del banco)

cifrado clave pública del banco

2 Orden de pagorequerimiento deautorización.Comprimido -hash- yfirmado comerciante ycifrado sistemasimétrico

3 banco verificarequerimientolo firma y envia aB.T.

4 solicita validación tarjeta

5 Autorizatransacción

6 autoriza transacción

cliente

B. emisortarjeta

B. delcomercio

comercio

7 completatransacción

Áviso decrédito alcliente

captura transaccióna su banco y genera un cargoen la cuenta del cliente

Page 48: Tema 2: Autenticación y Firmas digitales

49

Tema 2: Introducción a la criptografía

Protocolo SETn es un protocolo que permite dar seguridad a las

transacciones por internet usando tarjeta de crédito.u Se basa en dar seguridad tanto al cliente, al

comerciante como al banco emisor de la tarjeta y albanco del comerciante.

u Requiere un certificado digítal para cada paso de laautenticación y usa dos pares de claves

F una para el cifrado del sobre digital

F y otra para la firma

u Función Hash SHA-1, DES y RSA de 1024 bits