PDF de programación - Seguridad del canal de comunicaciones Criptografía - Seguridad en Sistemas Informáticos

<<>>
Imágen de pdf Seguridad del canal de comunicaciones Criptografía - Seguridad en Sistemas Informáticos

Seguridad del canal de comunicaciones Criptografía - Seguridad en Sistemas Informáticosgráfica de visualizaciones

Publicado el 30 de Abril del 2021
288 visualizaciones desde el 30 de Abril del 2021
236,5 KB
28 paginas
Seguridad en Sistemas Informáticos

Seguridad del canal de comunicaciones

Criptografía



Área de Ingeniería Telemática
Dpto. Automática y Computación
http://www.tlm.unavarra.es/

En clases anteriores...
‣ La cadena de seguridad
> Seguridad perimetral

‣ Sistemas de defensa

> Firewalls, IDSs, honeypots...

Hoy
‣ Asegurando el canal de comunicación

> Un poco de criptografia

Criptografía

2

/28

Criptografía
‣ En ocasiones tenemos que enviar datos sensibles a través de redes o

enlaces que no son de confianza
Propiedades a garantizar/problemas a resolver

‣ Confidencialidad

> Solo emisor y receptor son capaces de entender el contenido del

mensaje (encriptación)

‣ Autentificación

> Ambos son capaces de confirmar la identidad del otro

‣ Integridad y no repudio

> Verificar que el mensaje no se ha alterado
> Probar que viene de quien dice

‣ Disponibilidad y control de acceso
> Que la comunicación pueda tener lugar
> Evitar accesos no autorizados y DoS

Criptografía

3

/28

Criptografía: amigos y enemigos
‣ Usuarios A(Alice) y B(Bob)

> Desean comunicarse de forma

segura

> Pueden ser

+ usuarios reales
+ navegador y servidor web
+ cliente y servidor de compras

online

+ routers intercambiando información
+ servidores DNS
+ ...

‣ Intruso T(Trudy)
‣ ¿Qué puede hacer?

> Ver mensajes

> Insertar/modificar mensajes

> Hacerse pasar por alguien

> Evitar el uso del servicio

http://en.wikipedia.org/wiki/Alice_and_Bob

Intruso

A(lice)

canal

Criptografía

B(ob)

4

/28

Criptografía: encriptación
‣ Algoritmos de encriptación

Transforman un mensaje original m (plain text) en un nuevo mensaje
cifrado. En el proceso se utiliza una clave.
> Utilizando un algoritmo asociado de desencriptación y la misma

clave u otra asociada puedo reconstruir el texto original

> El algoritmo de encriptación tiene que cumplir que el texto plano

sea dificil de recuperar a partir del mensaje cifrado si no se
conoce la clave

‣ Con esto podemos enviar el mensaje cifrado por el canal inseguro
sin que sea descifrado por un observador que desconozca las claves

Ka
m

Ka(m)

???

Kb
m

algoritmo
encriptación

Criptografía

algoritmo
encriptación

5

/28

Criptografía: encriptación

¿Es suficiente con que sea dificil recuperar el texto a partir del texto cifrado?


‣ NO
‣ En criptografía moderna también debe cumplirse

> Que sea difícil recuperar la clave aunque conozca el mensaje cifrado y sin cifrar

(known plaintext attack)

> Se supone que el atacante conoce el algoritmo de cifrado/descifrado
> Se supone que el atacante conoce la existencia del mensaje

+ Ocultar la existencia de mensajes tiene sus propias técnicas (véase

Steganography, steganografía?)

Ka

hola

Known plaintext

:-)

???

Si con eso puedo sacar la clave
podria descifrar los siguientes
/28

6

Criptografía

Criptografía: herramientas
‣ Algoritmos de encriptación/desencriptación

> Encriptación de clave privada (encriptación simétrica)
> Encriptación de clave pública (encriptación asimétrica)

‣ Algoritmos de hash (resumen de mensaje o message digest)

> Como un cifrador sin clave
> Generan un resumen del mensaje de un tamaño limitado.
> Cumplen que es muy difícil de invertir. Obtener un

mensaje original que al aplicarle el algoritmo de hash de
un valor determinado

Criptografía

7

/28

Criptografía de clave privada/secreta

‣ Alice y Bob comparten una clave secreta K
‣ La misma clave que se usó para encriptar el mensaje debe usarse para

desencriptarlo

‣ Algunas propiedades

> La confidencialidad viene de que el atacante no conozca la clave secreta
> El conocimiento de la clave secreta se puede usar también como prueba de

identidad (autentificación)

> Los algoritmos de este tipo suelen ser más sencillos de implementar (y

rápidos)

K

K(m)

K?

Criptografía

K

m

8

/28

Criptografía de clave privada/secreta

> Autentificación

K

K?

Demuestrame que eres bob cifrando este mensaje

> El mensaje cifrado funciona como firma del mensaje

K

Soy Alice compra acciones de Google

Soy Alice compra acciones de Mycompany.com

K

K

???

Criptografía

pero no la firma
Pero si que puedo repetir

mensajes válidos :-)

Puedo imitar el mensaje

9

/28

Criptografía de clave privada/secreta

> Autentificación mas complicacion

K?

K

Soy Alice compra acciones de Google

Demuestrame que eres Alice cifrando X

K(X)

> Y si el intruso puede modificar el mensaje inicial?

K

m=Soy Alice compra acciones de Google

Mycompany.com

Demuestrame cifrando X+hash(m)

K(X+hash(m))

K

X

K

X

Criptografía

10

/28

Criptografía de clave privada/secreta

‣ Y si no compartimos una clave? Podemos comunicarnosla de alguna manera?

> Si pudieramos hacer eso no necesitaríamos la clave

K

K



¿Hay alguna manera de generar una clave entre dos partes si el canal está siendo
observado?

‣ En resumen

> Se pueden hacer muchas cosas con criptografía simetrica
> Hay que tener cuidado con el protocolo no todo son los algoritmos de cifrado
> Pero tiene sus límites (compartición inicial de claves)

Criptografía

11

/28

Criptografía de clave pública (asimétrica)

‣ Algoritmos con clave diferente para cifrar y descifrar
‣ Bob genera dos claves KB+ (publica) y KB- (privada)

> Lo que cifra una lo descifra la otra

KB -(KB+(m))=m (O mejor KB -(KB+(m))= KB +(KB-(m)) =m )

> Bob puede hacer publica su clave KB+

(puede enviarla a Alice sobre el canal o inseguro o ponerla en su
pagina web)

Generador
de claves

KB+

KB+(m)

KB+

KB-??

KB+

m

KB-

KB+(KB+(m))!=m

Criptografía

KB-(KB+(m))=m
/28

12

Criptografía de clave pública (asimétrica)

‣ Y esto para que vale?

> Cifrado unidireccional a costa de que una clave no sea secreta

KB+

KB+(KB-(m))=m

KB+

!!!

KB+

KB-

KB-(m)

m

‣ Cifrando con KB- cualquiera puede descifrar y no vale para mucho
13
‣ Para bidireccional Alice y Bob deben generar cada uno una pareja de claves

KB+

KA-

KB+(m)

KA+

KB-

Criptografía

KA+(m)

/28

Criptografía de clave pública (asimétrica)

‣ Cifrado bidireccional entre dos partes que no se conocen

previamente !!!

KA-

KB+
KA+

Comunicaciones cifradas seguras

¿Ha resuelto esto el problema del intercambio de claves?


‣ Hay algo que pueda hacer nuestro intruso?

.... La respuesta despues de la publicidad....

KB-

14

Criptografía

/28

Criptografía de clave pública (asimétrica)

‣ Otra utilidad

> Ahora la capacidad de cifrar un mensaje no prueba la identidad

Todo el mundo tiene KB+ y puede cifrar para Bob

> La capacidad de cifrar Si prueba la identidad

‣ Firma digital

KB+

KB+

que sea a mi cuenta!!

KB+

KB-

m,KB-(m)

KB-(m)

m

solo le hago caso
si KB+(firma)=m

m=soy Bob haz una transferencia a la cuenta X

Criptografía

15

/28

que sea a mi cuenta!!

Criptografía de clave pública (asimétrica)

‣ Firma digital

> Ahora la firma puede ser verificada por cualquiera porque KB+ es

publica

> Normalmente no se cifra el mensaje completo para firmar sino algo
que dependa de todo el mensaje para que no pueda ser modificado
nada

> Una vez firmado podemos cifrarlo para que solo lo lea Alice

KB-(hash(m))

m

KA+

KB-

hash

m

Alice necesita KA- para descifrar el mensaje y

KB+ para verificar la firma
Criptografía

16

/28

que sea a mi cuenta!!

Algoritmos

‣ Estas son las herramientas criptograficas


Cifradores simetricos, asimetricos y hashes

‣ Cifradores simétricos

> DES (Data Encryption Standard),

AES (Advanced Encryption Standard),
Blowfish, IDEA...

> Combinaciones y encadenamientos de cifradores para utilizar claves mas largas

‣ Cifradores asimétricos (de clave pública)

> Diffie-Hellman
> RSA

Basados en general en la dificultad de descomponer un numero muy grande en sus
factores primos

> Son más costosos de calcular que los simetricos

(= cifran a menos velocidad)

> Se puede usar un intercambio de claves basado en clave publica para decidir entre

dos partes una clave secreta y luego usar un cifrador simétrico

Criptografía

17

/28

Certificados
‣ Estantar X.509
‣ Certificado

> Declaración de datos de una entidad incluyendo una clave pública
> Puede bajarse de una web o enviarse al principio del protocolo
> Y como decido si me fio de un certificado?

+ Si lo he obtenido de una fuente fiable
+ Si alguien de quien me fio se fia de el

‣ Cadena de confianza

> Unas entidades certifican a otras
> Firmando su certificado con su clave privada

Empresa A

Cert A
Ka+

Empresa C Cert C
Kc+
firmado
por B

Empresa B Cert B
Kb+
firmado
por A

Criptografía

18

/28

Certificados
‣ Autoridades de certificacion

> Dan certificados a otras autoridades de mas bajo nivel y a servidores web
> Se supone que me fio de los certificados de las empresas de arriba de la

jerarquia (i.e. Verisign)

> Si el certificado esta firmado con una clave que esta firmada por una clave

que esta firmada por una clave que esta firmada...
... que esta firmada por alguno de los top level CAs (Certification
authority)

‣ Los navegadores se fian automaticamente de los certificados de la lista de CAs

que tienen

‣ Y aparte yo puedo fiarme individualmente de los que quiera

‣ Pero esencialmente fiarme o no del certificado es lo mismo que fiarme o no

de una clave publica que tengo

Criptografía

19

/28

Aplicaciones

Encriptando el canal a nivel de transporte/aplicación

‣ SSL: secure socket layer

Librerias de sockets con encriptación para establecer sesiones utilizando
intercambio de claves basado en claves publicas y cifrado con claves de sesión
(por ejemplo usando certificados X.509)
Aplicaciones que usan SSL para asegurar sus comunicaciones
> HTTPS: HTTP seguro sobre SSL
> SSH: Secure shell, acceso remoto y transferencia de ficheros sobre SSL
> ...

‣ PGP: pretty good privacy, correo seguro utilizando clave pública
‣ Muchas otras aplicaciones más o menos estándares...

Nivel de red y enlace

‣ VPN virtual private networks y túneles...

Criptografía

20

/28

Ejemplos
‣ SSH: Protocolo de sesion remota

El servidor me envia una clave publica, la primera vez me
pregunta si me fio y
  • Links de descarga
http://lwp-l.com/pdf19141

Comentarios de: Seguridad del canal de comunicaciones Criptografía - Seguridad en Sistemas Informáticos (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad