Criptografía en Redes de Comunicación
Criptografía en Redes de Comunicación
Tema 2:
Criptografía
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
2
1. Fundamentos
-Definiciones-
Texto plano/claro, P texto cifrado, C
Seguridad en Redes de Comunicación – 3º GITT
P C C P
Requisitos:
Tema 2: Criptografía
M E T A N O L
4 2 7 1 5 6 3
Tema 2: Criptografía
S1 S4
Cifrado
T1 S2 T2 S5 T3
general
S3 S6
4
Índice
Seguridad en Redes de Comunicación – 3º GITT
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
5
2. Cifrado simétrico
-DES-
Iteración 1
Función Feistel:
K de
Tema 2: Criptografía
... 4 etapas
56 bits
Iteración 16 Iteración i Li-1 f (Ri-1,Ki)
Swap 32 bits
Proceso Transpos. inversa
general
Li, 32 bits Ri, 32 bits
C de 64 bits
(a) (b)
6
2. Cifrado simétrico
-IDEA-
3DES: K1 K2 K1 K1 K2 K1
Seguridad en Redes de Comunicación – 3º GITT
P C C P
E D E D E D
cifrado descifrado
P de 64 bits
K1 K2 K3 K4
Tema 2: Criptografía
Iteración 1
... K5
Iteración i
Iteración 8 K6
Transformación
C de 64 bits
Proceso general 4 x 16 bits 7
2. Cifrado simétrico
-AES (i)-
AES (“Advanced Encryption Standard”, NIST 2001):
Seguridad en Redes de Comunicación – 3º GITT
8
Seguridad en Redes de Comunicación – 3º GITT
Tema 2: Criptografía
PGT - DTSTC - UGR – 2024
round
Encryption
AES (cont.):
2. Cifrado simétrico
-AES (ii)-
9
Seguridad en Redes de Comunicación – 3º GITT
Tema 2: Criptografía
PGT - DTSTC - UGR – 2024
Block
(CBC)
Cipher
Chaining
Modos:
2. Cifrado simétrico
-Modos de operación (i)-
10
Seguridad en Redes de Comunicación – 3º GITT
Tema 2: Criptografía
PGT - DTSTC - UGR – 2024
(CFB)
Cipher
FeedBack
Modos (cont.):
2. Cifrado simétrico
-Modos de operación (ii)-
11
Seguridad en Redes de Comunicación – 3º GITT
Tema 2: Criptografía
PGT - DTSTC - UGR – 2024
(CTR)
Counter
Modos (cont.):
2. Cifrado simétrico
-Modos de operación (iii)-
12
2. Cifrado simétrico
-Streaming: RC4 (i)-
Algoritmos de cifrado continuo (flujo vs. de bloque):
Seguridad en Redes de Comunicación – 3º GITT
RC4, A5, …
13
2. Cifrado simétrico
-Streaming: RC4 (ii)-
RC4 (“Rivest Cipher 4”):
Seguridad en Redes de Comunicación – 3º GITT
j := 0
Tema 2: Criptografía
i := 0
j := 0
while GeneratingOutput:
i := (i + 1) mod 256
j := (j + S[i]) mod 256
swap values of S[i] and S[j]
K := S[(S[i] + S[j]) mod 256]
output K
endwhile
14
Índice
Seguridad en Redes de Comunicación – 3º GITT
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
15
3. Cifrado asimétrico
-RSA (i)-
Dos claves por usuario: pública (Kpu) y privada (Kpr):
Seguridad en Redes de Comunicación – 3º GITT
P P
A
PGT - DTSTC - UGR – 2024
n = 311=33, z = 2x10=20
d = 7 (primo respecto de z)
e x 7 = 1 mod 20 e = 3
Kpu=(3,33) y Kpr=(7,33)
PGT - DTSTC - UGR – 2024
S 19 6859 28 13492928512 19 S
U 21 9261 21 1801088541 21 U
Z 26 17576 20 1280000000 26 Z
A 01 1 1 1 01 A
N 14 2744 5 78125 14 N
N 14 2744 5 78125 14 N
E 05 125 26 8031810176 05 E
P C P
17
3. Cifrado asimétrico
-Diffie-Hellman-
Características:
Seguridad en Redes de Comunicación – 3º GITT
Proceso de
Tema 2: Criptografía
establecimiento
18
Índice
Seguridad en Redes de Comunicación – 3º GITT
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
19
4. Autenticación de mensajes
-MAC-
MAC (“Message Authenticacion Code”):
Seguridad en Redes de Comunicación – 3º GITT
MACM = F(KAB,M)
F() DES, RC4, RSA, … CMAC, CCM
PGT - DTSTC - UGR – 2024
Tema 2: Criptografía
20
4. Autenticación de mensajes
-Funciones hash e integridad (i)-
De cálculo sencillo
Mensaje de salida de longitud fija
Dados P y P’ distintos, sus compendios también lo son
Imposible obtener P a partir de su resumen: one-way
PGT - DTSTC - UGR – 2024
Tema 2: Criptografía
21
4. Autenticación de mensajes
-Funciones hash e integridad (ii)-
MD5 (“Message Digest 5”): resumen de 128 bits
Seguridad en Redes de Comunicación – 3º GITT
q 128
32
L x 512 bits 512 A B C D
- A=01234567 B=89ABCDEF C=FEDCBA98 D=76543210
K bits relleno: ABCD f F (ABCD,Yq ,T[1..16])
PGT - DTSTC - UGR – 2024
fH(X,Y,Z) = X Y Z A B C D
longitud: 64 bits
fI(X,Y,Z) = Y (X | !Z)
512 bits ABCD f H (ABCD,Yq ,T[33..48])
siendo &, |, ! y los operadores binarios AND, OR, NOT y
XOR, respectivamente. A B C D
Y1 Y2 YL
ABCD f I (ABCD,Yq ,T[49..64])
- Los argumentos512 de las funciones mencionadas son:
X = ABCD
512
.. 512
Y=Yq + + + +
T[i...i+15],HMD5
con i = 1,H17,
.
Z=
ABCD HMD532 × abs(sen
MD5 33, 49 y T[i] = int(2
128 128 128
i)), estando ‘i’ especificado en radianes.
Cada función realiza 16 operaciones en bloques de 32 bits
MD MD q+1
(32×16=512) del tipo (para más detalles consultar RFC):
A = BProceso MD5+general
+ ((A + f(B,C,D) 128<<
Yq1...16 + T[1..64]) bits
shift) Proceso para un bloque q 22
4. Autenticación de mensajes
-Funciones hash e integridad (iii)-
SHA-1 (“Secure Hash Algorithm 1”): resumen de 160 bits
Seguridad en Redes de Comunicación – 3º GITT
ipad = 0x3636…
opad = 0x5c5c…
K+ = 00… || K
Tema 2: Criptografía
b = 64 bytes
24
Índice
Seguridad en Redes de Comunicación – 3º GITT
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
25
5. Autenticación del usuario
A
RB
A KAB (R B ) B
RA
KAB (R A )
PGT - DTSTC - UGR – 2024
B
A A
B
A B 26
5. Autenticación del usuario
-Firma digital-
Proporciona confidencialidad, autenticación e integridad:
Seguridad en Redes de Comunicación – 3º GITT
A
B
Emisor: HASH FD
1.- R = hash(P)
2.- FD = RSAKprA(R)
R +
3.- C = RSAKpuB (FD+P) C
PGT - DTSTC - UGR – 2024
(a)
Tema 2: Criptografía
Proceso
general de A
envío/recepción FD
B Receptor:
R 1.- FD + P = RSAKprB (C)
C + HASH 2.- R = RSAKpuA (FD)
3.- R = hash(P)??
(b)
27
Índice
Seguridad en Redes de Comunicación – 3º GITT
1. Fundamentos
2. Cifrado simétrico
3. Cifrado asimétrico
4. Autenticación de mensajes e
PGT - DTSTC - UGR – 2024
integridad
Tema 2: Criptografía
28
6. Gestión de claves
-KDC-
Key Distribution Center : +no repudio
Seguridad en Redes de Comunicación – 3º GITT
A,KA(B,KS)
KDC
A B
KB(A,KS)
PGT - DTSTC - UGR – 2024
Tema 2: Criptografía
A, B
Kerberos 5: AS
KA(Ks, KB(A, Ks))
(RFC 4120) A
KB(A, KS), Ks(t)
B
Ks(t+1)
29
6. Gestión de claves
-X.509-
Autenticación usuarios servicio directorio X.500:
Estándar ITU ampliamente usado (p.e., S/MIME, SSL, …)
Seguridad en Redes de Comunicación – 3º GITT
PGT - DTSTC - UGR – 2024
Tema 2: Criptografía
v2 v3
30
6. Gestión de claves
-Public Key Infrastructure-
PKI (RFC 2828,4949): conjunto de hardware, software,
Seguridad en Redes de Comunicación – 3º GITT
Modelo PKIX
(RFC 2527)
31
6. Gestión de claves
-Gestión federada de identidad-
Operación
Tema 2: Criptografía
32