Publicado el 2 de Mayo del 2019
782 visualizaciones desde el 2 de Mayo del 2019
343,5 KB
54 paginas
Creado hace 9a (20/04/2015)
Capítulo 8
Seguridad de red
Redes de computadores
Bloque 4
A note on the use of these ppt slides:
We’re making these slides freely available to all (faculty, students, readers).
They’re in PowerPoint form so you can add, modify, and delete slides
(including this one) and slide content to suit your needs. They obviously
represent a lot of work on our part. In return for use, we only ask the
following:
If you use these slides (e.g., in a class) in substantially unaltered form, that
you mention their source (after all, we’d like people to use our book!)
If you post any slides in substantially unaltered form on a www site, that
you note that they are adapted from (or perhaps identical to) our slides, and
note our copyright of this material.
Thanks and enjoy! JFK/KWR
All material copyright 1996-2010
J.F Kurose and K.W. Ross, All Rights Reserved
Redes de
computadoras: Un
enfoque descendente,
5a edición.
Jim Kurose, Keith Ross
Pearson Educación,
2010.
20/04/2015 V1.4 Seguridad de red
8-1
Capítulo 8: Seguridad de red
Objetivos:
comprender los principios de la seguridad de
red:
criptografía: más allá de la “confidencialidad”
autenticación
integridad de mensajes
seguridad en la práctica:
cortafuegos, sistemas de detección de intrusiones
seguridad en las capas de aplicación, transporte,
red, enlace
20/04/2015 V1.4 Seguridad de red
8-2
Capítulo 8: hoja de ruta
8.1 ¿Qué la seguridad de red?
8.2 Principios de criptografía
8.3 Integridad de mensajes
8.4 Conexiones TCP seguras: SSL
8.5 Seguridad en la capa de red: IPsec
8.6 Seguridad en redes inalámbricas
20/04/2015 V1.4 Seguridad de red
8-3
¿Qué es la seguridad de red?
Confidencialidad: el mensaje solo deben “entenderlo”
el emisor y el receptor
el emisor cifra el mensaje...
...y el receptor lo descifra
Autenticación: confirmación mutua de identidad
emisor-receptor
Integridad: emisor y receptor quieren asegurarse de
que el mensaje no ha sido alterado sin que ellos se
den cuenta
No-repudio: Un firmante no puede después negar que
ha firmado (= repudiar su firma)
Seguridad operacional: A nivel corporativo, una
organización quiere mantener su red asegurada
20/04/2015 V1.4 Seguridad de red
8-4
Amigos y enemigos: Alicia, Benito y Eva
Alicia y Benito quieren comunicarse
“confidencialmente”
Eva (intruso) puede interceptar, añadir o borrar
mensajes
Alicia
canal
datos y mensajes
de control
datos
emisor
seguro
receptor
seguro
Benito
datos
Eva
20/04/2015 V1.4 Seguridad de red
8-5
Hay malotes por ahí...
P: ¿Qué pueden hacer “los malos”?
R: Bastante, por ejemplo:
escuchar:interceptar mensajes
insertar:activamente mensajes en el canal
suplantar:falsificar una dirección de emisión (o
cualquier otro campo) en un paquete
intermediar:eliminar al emisor o al receptor de
una conexión activa y tomar su puesto,
suplantándolo
denegación de servicio:impedir la prestación de
un servicio (p. ej., sobrecargando el servidor)
20/04/2015 V1.4 Seguridad de red
8-6
Capítulo 8: hoja de ruta
8.1 ¿Qué la seguridad de red?
8.2 Principios de criptografía
8.3 Integridad de mensajes
8.4 Conexiones TCP seguras: SSL
8.5 Seguridad en la capa de red: IPsec
8.6 Seguridad en redes inalámbricas
20/04/2015 V1.4 Seguridad de red
8-7
Clave de
descifrado
de Benito
KB
algorit. de
descifrado
texto claro
La jerga criptográfica…
KA
Clave de
cifrado de
Alicia
texto claro
algoritmo
de cifrado
texto cifrado
m mensaje en claro
KA(m) texto cifrado con la clave KA
m = KB(KA(m))
20/04/2015 V1.4 Seguridad de red
8-8
Esquema simple de cifrado
Cifrado por sustitución: sustituir una cosa por otra.
cifrado monoalfabético: sustituir una letra por otra
texto claro: abcdefghijklmnopqrstuvwxyz
texto cifrado: mnbvcxzasdfghjklpoiuytrewq
Ejemplo:
texto claro: te quiero. alicia
texto cifrado: uc pyscok. mgsbsm
Clave: la correspondencia desde el conjunto superior, de
26 letras, con el inferior, también de 26 letras
20/04/2015 V1.4 Seguridad de red
8-9
Cifrado polialfabético
ncifradores monoalfabéticos, M1,M2,…,Mn
Se toman repetidamente, según cierta
secuencia:
p. ej. n = 4, M1,M3,M4,M3,M2; M1,M3,M4,M3,M2;
Para cada símbolo en el texto claro (=letra),
usar el siguiente cifrador monoalfabético:
sol: sde M1, ode M3, lde M4
Clave: los cifradores monoalfabéticos y la
secuencia
20/04/2015 V1.4 Seguridad de red
8-10
Ataques a los esquemas de
cifrado
Ataque al texto
cifrado conocido:
Eva tiene el texto
Ataque al texto plano
conocido:
Eva sabe algún texto plano
y el correspondiente
cifrado.
cifrado y puede
analizarlo.
Dos métodos:
Probar todas las claves:
(pero tiene que saber
cuándo obtiene un texto
plano válido…)
Análisis estadístico
ej., en el monoalfabético,
Eva determina parejas tipo
(a,m),(l,g),(i,s),…
Ataque al texto plano
elegido:
Eva puede obtener textos
cifrados a partir de
textos planos elegidos por
ella.
20/04/2015 V1.4 Seguridad de red
8-11
Tipos de Criptografía
El secreto está en la clave...:
Algoritmos públicamente conocidos
Solo las claves son secretas
Criptografía de clave pública
A base de dos claves
Criptografía simétrica
Se usa una única clave
Funciones resumen (hash)
No se usan claves
No hay nada secreto... ¡y es útil a pesar de todo!
20/04/2015 V1.4 Seguridad de red
8-12
Criptografía de clave simétrica
K S
K S
texto claro
mensaje, m
algoritmo
de cifrado
texto cifrado
K (m)
S
algorit. de
descrifrado
texto claro
m = KS(KS(m))
clave simétrica: Benito y Alicia comparten la misma clave
(simétrica) K
S
ej., la clave es saber cuál es el esquema de sustitución
en el cifrado monoalfabético
P: ¿Cómo se ponen de acuerdo en ello Benito y Alicia?
20/04/2015 V1.4 Seguridad de red
8-13
Dos tipos de cifrado simétrico
Cifrado en flujo
se cifra de bit en bit
Cifrado en bloque
Se trocea el texto claro en bloques de igual
tamaño
Se cifra cada bloque como una unidad
20/04/2015 V1.4 Seguridad de red
8-14
Cifrado en flujo
clave
generador
de la secuencia
cifrante
pseudoaleatorio
secuencia cifrante
Combinar cada bit de la secuencia cifrante con un bit
del texto claro para obtener un bit del texto cifrado
m(i) = i-ésimo bit del mensaje
ks(i) = i-ésimo bit de la secuencia cifrante
c(i) = i-ésimo bit del texto cifrado
Cifrar: c(i) = ks(i) ⊕ m(i) (⊕ = “o” exclusivo, suma
módulo 2)
Descifrar: m(i) = ks(i) ⊕ c(i)
20/04/2015 V1.4 Seguridad de red
8-15
Cifrado en bloque
El mensaje en claro se divide en bloques de k
bits (ej. de 64 bits).
Se hace una biyección entre cada bloque de
kbits del texto claro y un bloque de kbits
del texto cifrado (es decir, una permutación)
Ejemplo con k = 3:
entrada salida
000 110
001 111
010 101
011 100
entrada salida
100 011
101 010
110 000
111 001
¿Cuál es criptograma correspondiente a 010110001111?
20/04/2015 V1.4 Seguridad de red
8-16
Cifrado en bloque
¿Cuántas biyecciones hay para k = 3?
¿Cuántas entradas de 3 bits? 23 = 8
¿Cuántas permutaciones de las entradas?
Respuesta: 8! = 40.320 ; ¡no son tantas!
En general, 2k! posibles biyecciones; para k
= 64 son muchísimas
Problema:
Una tabla con 264 entradas y cada entrada con
64 bits es inviable.
Solución: usar una función que simule una
tabla permutada aleatoriamente
20/04/2015 V1.4 Seguridad de red
8-17
Prototipo de función
entrada de 64 bits
Tomado de Kaufman
et al
8bits
8bits
8bits
8bits
8bits
8bits
8bits
8bits
S1
S2
S3
S4
S5
S6
S7
S8
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
8 bits
valor intermedio 64 bits
biyección
de 8 bits
a 8 bits
Lazo de n
rondas
salida de 64 bits
20/04/2015 V1.4 Seguridad de red
8-18
¿Por qué se hacen las rondas?
Si solo hubiera una ronda, entonces cada
bit de la entrada afectaría como máximo a
8 bits de la salida.
En la 2ª ronda, los 8 bits afectados se
esparcen por las “cajas-S”.
¿Cuántas rondas?
Es lo mismo que para barajar bien las cartas
Menos eficiencia para n más alto.
20/04/2015 V1.4 Seguridad de red
8-19
Cifrar un mensaje largo
¿Por qué no dividir el mensaje en trozos y
cifrar cada trozo independientemente?
Porque si el mismo bloque apareciera dos veces,
recibiría el mismo criptograma: ¡inseguro!
Qué tal si…
generamos un r(i) de 64 bits para cada bloque
de texto claro m(i),
calculamos c(i) = KS( m(i) ⊕ r(i) ),
transmitimos c(i), r(i), i=1,2,…
y, en recepción, m(i) = KS(c(i)) ⊕ r(i).
Problema: ineficiente, hay que enviar c(i) y r(i)
20/04/2015 V1.4 Seguridad de red
8-20
Encadenado de bloques cifrados (CBC)
CBC genera sus propios números aleatorios
el cifrado del bloque actual se hace depender
del bloque cifrado anterior:
c(i) = KS( m(i) ⊕ c(i-1) )
m(i) = KS
¿Y el primer bloque?
-1( c(i) ) ⊕ c(i-1) (¡ojo a los paréntesis!)
Usamos un vector de inicio (VI), aleatorio, =
c(0)
VI no ha de ser secreto
Cambiamos VI en cada mensaje o sesión
Así aseguramos que un mismo mensaje, enviado
dos veces, produce un criptograma distinto.
20/04/2015 V1.4 Seguridad de red
8-21
Encadenado de bloques cifrados
(cid:15
Comentarios de: Capítulo 8 - Seguridad de red (0)
No hay comentarios