You are on page 1of 96

Asimtricos

Texto Plano x

Algoritmo
cifrador

Texto cifrado y
??

Algoritmo
descifrador

Alice
KpubA
KprivA

Texto Plano
Bob

K
Clave pblica de B

KpubB

K
Clave privada de B

y e(k pubB , x) x P

KpubB
KprivB
KpubA

x d (k privB , y) y C
Marcela Meja

Universidad Piloto de Colombia

1. RSA (Rivest, Shamir y Adleman)


Desarrollado por Rivest, Shamir y Adleman en el MIT en 1977 y publicado en 1978. Sus
caractersticas son:

Cifra texto plano en bloques de tamao variable.


Opera en los n donde n es el producto de dos nmeros primos.
El bloque de mensaje a cifrar esta representado por enteros entre 0 y n-1
Longitud de clave variable, se recomienda mayor a 512 bits.
El proceso de cifrado toma ms tiempo que en los sistemas simtricos
En ocasiones se utiliza para el intercambio de clave secreta entre Alice y Bob.
Utilizado para generar firmas digitales.

Cifrado

y ekpubB ( x) x mod n

kpubB e, n

Descifrado

x dkprivB ( y) y mod n

kprivB d

Marcela Meja

Universidad Piloto de Colombia

Seleccionar p, q tal que p, q sean primos y p q


Calcular n p q
Calcular (n) ( p 1)(q 1)
Seleccionar e : Mcd ( (n), e) 1;1 e (n)
Calcular d : de 1mod (n)
kpub e, n
kpriv d
Marcela Meja

Universidad Piloto de Colombia

1. Seleccin de dos nmeros primos


p 17, q 11
2. Calculo de n
n 17 11 187
3. Calculo de (n)
(n) ( p 1)(q 1) 160
4. Seleccin de e
Mcd ( (n), e) 1,1 e (n)
se puede seleccionar por ejemplo e 7
Se puede comprobar con el algoritmo de Euclides
Marcela Meja

Universidad Piloto de Colombia

5. Determinar d
de 1mod (n), d (n)
de 1mod160
con e 7, d e1 23 (algoritmo extendido Euclides)
6. Las claves sern:
k pub n, e 187,7
k priv p, q, d 17,11,23

Marcela Meja

Universidad Piloto de Colombia

Dadas las claves:


k pub n, e 187,7

k priv p, q, d 17,11,23

cifrar x 88

ek 187,7 ( x 88) 887 mod187


887 mod187 884 mod187 882 mod187 88mod187
88mod187 88
882 mod187 7744mod187 77
884 mod187 (77)2 mod187 5929mod187 132
887 mod187 (88 77 132) mod187 894432mod187 11
Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

Este algoritmo fue desarrollado en 1976 por Diffie and Hellman y


tiene como propsito permitir que dos usuarios intercambien una
clave secreta de manera segura que posteriormente pueden utilizar
para cifrar mensajes con la tcnica que gusten.
El algoritmo esta limitado nicamente al intercambio de claves
Su efectividad depende de la dificultad en calcular logaritmos
discretos para nmeros primos muy grandes

El algoritmo consiste en lo siguiente:


q, valores conocidos pblicamente por Alice y Bob.
q es un nmero primo y < q es una raz primitiva de q.
Marcela Meja

Universidad Piloto de Colombia

Alice

Bob

Selecciona xa , privada y xa q

Selecciona xb , privada y xb q

Calcula ya xa mod q

Calcula yb xb mod q
ya

yb
Calcula la clave secreta

Calcula la clave secreta

k ( yb ) xa mod q

k ( ya ) xb mod q
Por qu?

Marcela Meja

Universidad Piloto de Colombia

k ( yb ) xa mod q

mod q
xb

xb xa

xa

mod q

mod q

xb xa mod q

mod q
xa

xb

mod q

ya mod q
xb

Marcela Meja

Universidad Piloto de Colombia

Ejemplo

q 353, 3
xa 97 Seleccin secreta de Alice
xb 233 Seleccin secreta de Bob
Alice calcula ya
ya xa mod q 397 mod353 40
Bob calcula yb
yb xb mod q 3233 mod353 248
Despues de intercambiar ya , yb cada uno calcula k
Alice

k yb mod q 24897 mod353 160

Bob

k ya mod q 40233 mod353 160

Marcela Meja

xa

xb

Universidad Piloto de Colombia

Es un tipo de criptografa asimtrica que como diffie-hellman permiten transmitir por un


canal inseguro una clave secreta entre Alice y Bob, adems de cumplir con las otras
caractersticas de criptografa de clave publica, tales como cifrado, autenticacin y firma
digital. La utilizacin de la curva elptica en criptografa fue propuesta por Neal Koblitz y
Victor Miller en 1985
Su seguridad se basa en la dificultad de calcular el logaritmo elptico discreto, y ofrece
la misma seguridad que RSA pero reduce la longitud de las claves. NIST y ANSI han
establecido unos requisitos mnimos de tamao de clave de 1024 bits para RSA y de
160 bits para ECC. Tabla
La criptografa de curva elptica utiliza las propiedades de las curvas de la forma

y2 = x3 + rx + s
Con = {(x,y)2 : y2 = x3 + rx + s } como el conjunto de puntos que forman la curva

Marcela Meja

Universidad Piloto de Colombia

y2 - x3 + x - 0.4 = 0

y2 - x3 + x - 0.75 = 0
5

-5
-5

0
x

-5
-5

y2 - x3 + x = 0
5

0
x

-5
-5

0
x

La idea es encontrar una operacin binaria (denominada adicin, +) entre los puntos
de la curva que formen un grupo abeliano, esto es:
Propiedad clausurativa : Si a, b, a+b
Propiedad asociativa : Si a, b, c (a+b)+c = a+(b+c)
Propiedad identidad : e : a+e = e+a = a a
Propiedad inverso: a -a : a+(-a) = (-a)+a = e
Hasta aqu, (, +) forman un grupo. El grupo abeliano necesita una propiedad ms
Propiedad conmutativa : (a+b) = (b+a) a,b
Marcela Meja

Universidad Piloto de Colombia

La operacin adicin que satisface esas cuatro propiedades es la siguiente:


Dados dos puntos P y Q en , definimos P+Q como el punto que intersecta la curva
elptica a travs de la recta que une a los puntos P y Q. Si un punto es tangente, se repite
en la suma. Si la recta es vertical, se introduce el punto en el infinito, que se denota por .

Marcela Meja

Universidad Piloto de Colombia

Para utilizar este concepto en criptografa debemos definir un


conjunto finito de puntos en n, n primo, y definir la adicin de la
siguiente manera:

Considerando que
P ( x1, y1 ) y Q=(x2 , y2 ) son puntos en y es el punto en el infinito
Si x1 x2 y y2 y1 entonces P Q , de lo contrario P Q ( x3, y3 )
Donde
x3 2 x1 x2
y3 ( x1 x3 ) y1
y2 y1
x x P Q
22 1
3x1 n P Q
3 y1
Marcela Meja

Universidad Piloto de Colombia

Ejemplo: Si consideramos la curva

( y 2 x3 x 6) mod11
x

(x2) mod 11

y2 = x3 + x + 6

0
1
2
3
4
5
6
7
8
9
10

0
1
4
9
5
3
3
5
9
4
1

6
8
16
36
74
136
228
356
526
744
1016

Marcela Meja

(y2) mod 11 (y2) mod 11


6
8
5
3
8
4
8
4
9
7
4

No existe
No existe
4, 7
5, 6
No existe
2, 9
No existe
2, 9
3, 8
No existe
2, 9
Universidad Piloto de Colombia

Incluyendo el punto en el infinito, , hay 13 puntos en la curva elptica mdulo 11:

= {,(2,4),(2,7),(3,5),(3,6),(5,2),(5,9),(7,2),(7,9),(8,3),(8,8),(10,2),(10,9)}
La suma en , como se defini antes genera la siguiente tabla:

2,4
2,7
3,5
3,6
5,2
5,9
7,2
7,9
8,3
8,8
10,2
10,9

2,4 2,7 3,5 3,6 5,2 5,9 7,2 7,9 8,3 8,8 10,2 10,9
2,4 2,7 3,5 3,6 5,2 5,9 7,2 7,9 8,3 8,8 10,2 10,9
2,4 5,9

7,2 10,2 2,7 8,8 7,9 3,6 5,2 10,9 8,3 3,5
2,7
5,2 10,9 7,9 8,3 2,4 3,5 7,2 10,2 5,9 3,6 8,8
3,5 7,2 10,9 8,3

8,8 7,9 5,2 2,7 5,9 3,6 2,4 10,2


3,6 10,2 7,9

8,8 7,2 8,3 2,4 5,9 3,5 5,2 10,9 2,7


5,2 2,7 8,3 8,8 7,2 10,2 10,9 3,5 3,6 2,4 7,9 5,9
5,9 8,8 2,4 7,9 8,3
10,9 3,6 10,2 2,7 3,5 5,2 7,2
7,2 7,9 3,5 5,2 2,4 10,9 3,6 2,7

8,8 10,2 5,9 8,3


7,9 3,6 7,2 2,7 5,9 3,5 10,2
2,4 10,9 8,3 8,8 5,2
8,3 5,2 10,2 5,9 3,5 3,6 2,7 8,8 10,9 7,9

7,2 2,4
8,8 10,9 5,9 3,6 5,2 2,4 3,5 10,2 8,3

7,2 2,7 7,9


10,2 8,3 3,6 2,4 10,9 7,9 5,2 5,9 8,8 7,2 2,7 3,5

10,9 3,5Meja
8,8 10,2 2,7 5,9 7,2 8,3 5,2
2,4 7,9Piloto
de Colombia
3,6
Marcela
Universidad

La criptografa de curva elptica se usa como en Diffie-Hellman: Se elige un punto


base G especfico y publicado para utilizar con una curva .
Alice escoge un nmero entero aleatorio a como clave privada y da a conocer el valor
Ap = aG como clave pblica.
Bob escoge un nmero entero aleatorio b como clave privada y da a conocer el valor
Bp = bG como clave pblica.
Alice puede calcular k = aBP = abG
Bob puede calcular el mismo valor, k = bAP = abG.
Este secreto K, compartido slo por Alice y Bob, puede ser la clave para un cifrador
simtrico usado entre ellos.
El producto aG consiste slo en sumar el punto G consigo mismo a veces.
Marcela Meja

Universidad Piloto de Colombia

( y 2 x3 x 6) mod11
mod 11 G (7,9)
a 3 Seleccin secreta de Alice
b 5 Seleccin secreta de Bob
Alice calcula A p

Ap a G mod11 3 (7,9) (3,6)


Bob calcula Bp
Bp b G mod11 5 (7,9) (10,2)
Despues de intercambiar A p , Bp cada uno calcula k
Alice

k a Bp mod11 a b G mod11 3 (10,2) (2,4)

Bob

k b Ap mod11 b a G mod11 5 (3,6) (2,4)


Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

Simtrico

Asimtrico

Clave secreta tanto para


cifrar como para descifrar

Clave pblica para cifrar y clave


privada para descifrar

Acceso a la
clave

Ninguno

Todos clave pblica


Ninguno clave privada

Requerimientos

Distribucin de claves

Certificadores de clave publica

Algoritmos

DES
3DES
AES
RC4

RSA
ECC

Clave

Marcela Meja

Universidad Piloto de Colombia

La autenticacin de mensajes es un procedimiento que permite a las dos partes que se


estn comunicando verificar que los mensajes recibidos son integros.
Existen diferentes mecanismos para autenticar mensajes (garantizar integridad):
Cdigo de autenticacin de mensajes MAC: si Alice y Bob se quieren autenticar y
comparten una clave secreta K pueden generar un cdigo en funcin del mensaje y la
clave, el cual agregan al mensaje y el receptor har el calculo correspondiente y
autenticar al transmisor y la integridad del mensaje slo s el cdigo recibido y el
calculado son iguales. (Autenticacin e integridad)
Firma digital: El transmisor genera el hash lo cifra con su clave privada. El receptor
descifra con la clave pblica del receptor y compara el hash. (Autenticacin e
integridad)
Funcin Hash Unidireccional: El emisor genera un valor a partir de la funcin hash y
lo enva junto con el mensaje, el receptor hace el mismo calculo y compara. No
requiere de clave secreta. La funcin es unidireccional, ya que a partir del Hash no se
puede obtener el mensaje original (suma de verificacin)
Marcela Meja

Universidad Piloto de Colombia

Una funcin Hash Criptogrfica puede asegurar la integridad de los datos a travs de
la construccin de una huella digital.
Si la informacin es alterada la huella digital ya no concuerda.
La integridad de los datos se puede verificar recalculando la funcin Hash para
verificar que la huella digital no ha cambiado y por tanto los datos se conservan tal
como se generaron.
Sea h la funcin Hash y x algn flujo de bits de longitud cualquiera, la huella digital estar
dada por:

y = h(x)
Esta huella digital es tambin conocida como Message Digest y es nica para cada flujo
de bits:

x: y1=h(x)
Marcela Meja

x: y2=h(x)

tal que y1 y2
Universidad Piloto de Colombia

Funcin Hash Simple


Todas las funciones hash cumplen los siguientes principios fundamentales:
La entrada (mensaje) se ve como una secuencia de bloques de n bits
La entrada se procesa bloque a bloque de forma iterativa para producir una huella
digital de n bits.
Bit 2

Bloque 2

b11
b12

b21
b22

Bit 1

Bloque m

b1m

b2m

bnm

Huella Digital

C1

C2

Cn

Bloque 1

bn1
bn2

Marcela Meja

Bit n

Universidad Piloto de Colombia

Funcin Hash Iterada


El algoritmo hash toma un mensaje de entrada y lo divide en m bloques de n bits cada
uno para generar la huella digital a travs de una funcin de compresin que toma los n
bits del mensaje y c bits de la etapa anterior, denominados variables de concatenacin,
para producir c bits de salida, con n > c, as:
B1

B3

B2

IV = y0

y1

Bm

y2

ym

y0 IV
yi f ( yi 1, Bm ) 1 i m
h( x) y
Marcela Meja

Universidad Piloto de Colombia

Algoritmo Hash Seguro SHA (FIPS PUB 180)*


SHA-1

SHA-256

SHA-384

SHA-512

Message Digest
o huella Digital

160 bits

256 bits

384 bits

512 bits

Mensaje

<264 bits

<264 bits

<2128 bits

<2128 bits

Bloque

512 bits

512 bits

1024 bits

1024 bits

Palabra

32 bits

32 bits

64 bits

64 bits

Etapas

80

64

80

80

* Federal Information Processing Standards Publication 180


Marcela Meja

Universidad Piloto de Colombia

512- b - 64

Estructura SHA-1

10000

64 bits

m x 512 bits
Mensaje de X bits
b

512 bits

512 bits

512 bits

B1

B2

Bm

512

IV
160

y1

Marcela Meja

y2

h(x)

160 bits

Universidad Piloto de Colombia

ym-1 (160 bits)

Bm

512 bits

e
32

w0

Etapa 0

32
wt

32

Etapa 79
c
d

h0

h1

+
ym

h2

k0

kt

Etapa t

w79

Marcela Meja

h3

k79

h4
160 bits

Universidad Piloto de Colombia

Paso 1: Aadir bits de relleno hasta obtener una mensaje con longitud mxima de
448 bits + 64 bits de longitud de mensaje. El relleno esta conformado por un nico bit
1 seguido por los ceros que sean necesarios.
Paso 2: Incluir los 64 bits que corresponden a la longitud total del mensaje antes del
relleno.

Paso 3: Inicializar los registros a, b, c, d y e cada uno de 32 bits para un total de 160
bits (tamao del message digest). En SHA se manejan todos los valores en
hexadecimal y los registros se inicializan de la siguiente manera:

a = 67452301
b = EFCDAB89
c = 98BADCFE
d = 10325476
e = C3D2E1F0
Marcela Meja

Universidad Piloto de Colombia

Paso 4: Procesar cada bloque de 512 bits. Se divide cada bloque en 16 palabras de
32 bits que alimentan las primeras 16 etapas de la estructura Hash (0 t 15), las
siguientes se calculan como sigue:

Wt = S1(Wt - 3 XOR Wt - 8 XOR Wt - 14 XOR Wt -16)

(16 t 79)

Donde Sn significa desplazamiento circular a la derecha n veces y t es la etapa.


Adicionalmente cada etapa utiliza una constante kt:

kt = 5A827999
kt = 6ED9EBA1
kt = 8F1BBCDC
kt = CA62C1D6

Marcela Meja

(0 t 19)
(20 t 39)
(40 t 59)
(60 t 79)

Universidad Piloto de Colombia

Paso 5: En cada etapa se realiza la siguiente operacin:

Registro temporal = S5(a) + ft(b,c,d) + e + Wt + Kt


e = d; d = c; c = S30(b); b = a; a = Registro temporal

ym h0= a + ym-1; h1= b + ym-1; h2 = c + ym-1; h3 = d + ym-1; h4 = e + ym-1


Donde ft(B,C,D) es:

ft(b,c,d) =
ft(b,c,d) =
ft(b,c,d) =
ft(b,c,d) =

(b AND c) OR ((NOT b) AND d)


b XOR c XOR d
(b AND c) OR (b AND d) OR (c AND d)
b XOR c XOR d

Marcela Meja

(0 t 19)
(20 t 39)
(40 t 59)
(60 t 79)

Universidad Piloto de Colombia

Ejemplo
El mensaje del que se desea obtener el hash o huella digital es el siguiente:

ABCD
La codificacin del mensaje es
01000001 01000010 01000011 01000100
41424344
00000000
00000000
00000000

80000000 00000000 00000000


00000000 00000000 00000000
00000000 00000000 00000000
00000000

41424344
00000000
00000000
00000000

80000000
00000000
00000000
00000000

00000000
00000000
00000000
00000000

Marcela Meja

00000000
00000000
00000000
00000020

Longitud 32 bits
Resultado Paso 1

Resultado Paso 2

Universidad Piloto de Colombia

W0= [41424344]
W4= [00000000]
W8= [00000000]
W12= [00000000]

W1= [80000000]
W5= [00000000]
W9= [00000000]
W13= [00000000]

W2= [00000000]
W6= [00000000]
W10= [00000000]
W14= [00000000]

W3= [00000000]
W7= [00000000]
W11= [00000000]
W15= [00000020]

W16= [20A121A2]
W20= [00000000]
W24= [00000000]

W17= [00000000]
W21= [00000000]
W25= [00000000]

W18= [00000000]
W22= [00000000]
W26= [00000000]

W19= [00000000]
W23= [00000000]
W27= [00000000]

W77= [00000000]

W76= [00000000]

W78= [00000000]

W79= [00000000]

Wt = S1(Wt - 3 XOR Wt - 8 XOR Wt - 14 XOR Wt -16)


W16 = S1(W13 XOR W8 XOR W2 XOR W0)
W16 = S1(00000000 XOR 00000000 XOR 00000000 XOR 41424344)
W16 = S1(41424344) = 20A121A2

Resultado Paso 4

Marcela Meja

Universidad Piloto de Colombia

a = 67452301
d = 10325476

b = EFCDAB89
e = C3D2E1F0

kt = 5A827999

c = 98BADCFE

Resultado Paso 3

(0 t 19)

Etapa 0
Registro temporal = S5(a) + ft(b,c,d) + e + Wt + Kt = S5(a) + f0(b,c,d) + e + W0 + K0
S5(a) = 0B3A2918 e = C3D2E1F0

W0= [41424344] k0 = 5A827999

f0(b,c,d) = (b AND c) OR ((NOT b) AND d) = 88888888 OR 10325476 = 98BADCFE


Entrada etapa 1

Resultado Paso 5

e = d; d = c; c = S30(b); b = a; a = Registro temporal


Marcela Meja

Universidad Piloto de Colombia

Cdigo generado por el transmisor que permite al receptor autenticar el mensaje al


recalcular el MAC o Criptographic Checksum.

MAC = Ck(m)

k: clave compartida, normalmente distinta a la clave de cifrado


m: mensaje de longitud variable

La longitud del cdigo MAC debe ser mnimo de 64 bits


Si el cdigo MAC enviado coincide con el cdigo calculado en el destino, esto puede
garantizar que:
El mensaje no fue alterado (integridad)
El mensaje proviene del transmisor indicado en el mensaje (autenticacin del
remitente)
Existen dos formas de obtener el valor MAC:
HMAC: utilizando funcin Hash (el ms utilizando actualmente es HMAC-SHA-256)
CMAC: Utilizando CBC (Cipher Block Chaining)
Marcela Meja

Universidad Piloto de Colombia

Ipad

K+

Si

Mensaje

IV
opad

K+

Hash

h(Si || M)
So

IV

Hash

K+ = 000..00 + k : b bits
Ipad = 34H repetida b/8
Opad = 5CH repetida b/8
Hash SHA-x

HMAC(k,M) = h((K+ opad) || (h((K+ ipad) || M))


Marcela Meja

Universidad Piloto de Colombia

Ipad

K+

Mensaje
Si

512

512

512

512

M + pad

512
IV

160
opad

K+

K+ = 000..00 + k : 512 bits

Hash
160

h(Si || M)
(512)

So

(160 + 288 (10000) + 64 (X) = 512)

IV

Ipad = 34H repetida 64 veces


Opad = 5CH repetida 64 veces

160

Hash

Hash SHA-1

Pad

160

Marcela Meja

Universidad Piloto de Colombia

B1

Bm / Bm + 1000

B2

IV = 0

K1 / K2

Cn-1

Cifrador

Cifrador

Cifrador
Cn

C1

Marcela Meja

C2

CMAC

Universidad Piloto de Colombia

0n

Cifrador

C
K1 y K2 son generadas a partir de la clave K, as:
Si el bit mas significativo de e(0n) = 0, entonces K1 = C << 1;
De lo contrario K1 = (C << 1) Rb
Si MSB K1 = 0, entonces K2 = K1 << 1;
De lo contrario K2 = (K1 << 1) Rb.
Donde Rb es: R128 = 012010000111, y R64 = 05911011
Marcela Meja

Universidad Piloto de Colombia

Para generar una firma digital se utiliza la criptografa de clave publica de la siguiente
manera: Si Alice quiere enviar un mensaje a Bob firmado, Alice genera el valor hash del
mensaje y lo cifra con su clave privada. Bob recibe el mensaje y la huella digital cifrada.
Bob Calcula la huella digital del mensaje y descifra la huella recibido con la clave pblica
de Alice, si son iguales Bob puede garantizar que Alice lo envi y que adems el mensaje
no fue alterado. Este sistema garantiza la integridad y la autenticacin, pero no la
confidencialidad de los datos.

Alice

Bob

Mensaje
Hash

Huella Digital

f
Mensaje

Mensaje

Comparacin
KprivA

KpubA

Firma
Marcela Meja

Universidad Piloto de Colombia

Alice

Bob

Mensaje

SHA1

SHA1

f
Mensaje

Huella Digital

Huella

Mensaje

Comparacin
KprivA

KpubA

d
Huella

(h( x))d mod n ((h( x))d )e mod n


y ekprivA ( x) xd mod n

kprivA d

x dkpubA ( y) ye mod n

kpubA e, n

Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

Protocolo de autenticacin de red desarrollado en el MIT en 1988 en sus primera versin 4,


en 1993 aparece la versin 5, la cual fue mejorada en el 2005 bajo el RFC 4120.
Diseado para proporcionar autenticacin robusta entre clientes y servidores de
aplicaciones a travs de criptografa de clave secreta.
Se basa en cifrado simtrico (DES/AES) y esquema cliente/servidor.
Diseado para entornos de red abiertos y distribuidos.
El esquema de Kerberos se basa en una tercera entidad confiable que media la
autenticacin mutua entre clientes y servidores

Marcela Meja

Universidad Piloto de Colombia

Base de
Datos

Cliente

KTGS,AS

KTGS,S

Servidor
Marcela Meja

Universidad Piloto de Colombia

Etapas e Intercambio de Mensajes

Cliente
Un usuario ingresa a su
estacin de trabajo y solicita
un servicio de un servidor

El cliente puede descifrar el


mensaje dado que Kc es una
clave
derivada
de
la
contrasea de usuario, de
esta manera slo el cliente
que envi la solicitud podr
descifrar el mensaje que
contiene la clave de sesin
con el TGS y el tiquete de
acceso al mismo
Marcela Meja

AS

El AS verifica la identidad del


usuario en la base de datos y
sus privilegios para generar un
tiquete y una clave de sesin
Kc, para cifrar el mensaje y
proteger el tiquete y la clave
de sesin generada entre el
cliente y TGS (KC,TGS).

TicketTGS = EKTGS,AS [KC,TGS || IDC || ADC || IDTGS || TS2 || Tiempo de vida]

Universidad Piloto de Colombia

Etapas e Intercambio de Mensajes


Cliente

TGS

El cliente enva un mensaje a


TGS solicitando un tiquete de
acceso al servicio requerido

El TGS puede asegurarse que


el emisor del tiquete es el
autntico propietario, ya que
compara el nombre y la
direccin del emisor en el
autenticador con el nombre y
la direccin del tiquete
((cifrado con la clave que
comparten AS/TGS) y la
direccin de donde recibi el
mensaje

El cliente obtienen el tiquete


de acceso al servidor y la
clave de sesin con ste.

TicketTGS = EKTGS,AS [KC,TGS || IDC || ADC || IDTGS || TS2 || Tiempo de vida]


TicketS = EKTGS,S [KC,S || IDC || ADC || IDS || TS4 || Tiempo de vida]
AutenticadorC = EKC,TGS [ IDC || ADC || TS3 ]
Marcela Meja

Universidad Piloto de Colombia

Etapas e Intercambio de Mensajes


Cliente

Servidor

El cliente presenta el tiquete al


servidor junto con un
autenticador para validar el
tiquete

El cliente sabe que el mensaje


viene del servidor porque esta
cifrado con la clave de sesin
entre ellos y al recibir el
tiempo sabe que no es un
mensaje retransmitido.

El servidor descifra el tiquete


con la clave secreta que
comparte con el TGS y el
autenticador con la clave de
sesin obtenida en el tiquete.
El autenticador garantiza al
servidor que quien presenta
este tiquete es el mismo
cliente para quien se gener.
TicketS = EKTGS,S [KC,S || IDC || ADC || IDS || TS4 || Tiempo de vida]
AutenticadorC = EKC,S [ IDC || ADC || TS5 ]

Marcela Meja

Universidad Piloto de Colombia

Qu tenemos al final del proceso?


Autenticacin mutua entre cliente y servidor
Clave secreta para ser utilizada durante la sesin entre cliente/servidor.

Qu pasa s en vez de servidor, Alice se quiere comunicar con Bob?


El sistema Kerberos puede servir tambin de centro de distribucin de
claves (KDC).

Marcela Meja

Universidad Piloto de Colombia

El servidor kerberos debe tener el ID y la contrasea de todos los clientes registrados


El servidor kerberos debe compartir una clave secreta con todos los servidores registrados
Al grupo de usuarios y servidores registrados con el servidor Kerberos conforman un
DOMINIO. Si se quiere tener comunicacin entre dominios, el servidor Kerberos en cada
dominio debe compartir una clave secreta con el servidor Kerberos del otro dominio con el que
quiere interoperar

Dominio A

Solicitud Servicio
Remoto

Solicitud Tiquete para TGS Local


Tiquete para TGS Local

Marcela Meja

Solicitud Tiquete para TGS Remoto


Tiquete para TGS Remoto

Dominio B

Universidad Piloto de Colombia

Abre la posibilidad de que se configure un algoritmo de cifrado diferente a DES.


Permite la autenticacin intermedia.
Mejora el esquema de autenticacin entre dominios ya que requiere menos
intercambio de claves secretas.
Para N dominios se requieren

N ( N 1)
2

A
B
D

Marcela Meja

Intercambio de claves
de manera segura

C
E

Universidad Piloto de Colombia

JERARQUIA DE DOMINIOS

A
B
D

Marcela Meja

C
E

Universidad Piloto de Colombia

Garantizar
la Identidad
de las
partes

Certificado
Digital

Cualquiera puede generar


un par de claves y
pretender que su clave
pblica es la de Alicia.
Marcela Meja

Solucin

Problema

En un ambiente de clave pblica

Un tercero de confianza
asume la responsabilidad
de garantizar su veracidad

Universidad Piloto de Colombia

Los estndares iniciales de PKI fueron generados por la ITU-T, sin embargo estos no se
implementaron completamente hasta que la IETF form un grupo de trabajo PKIX para
fomentar el uso y estandarizar la infraestructura de clave pblica basada en X.509 para
internet.

Qu es PKI?
Es un conjunto de componentes legales, tcnicos y organizacionales necesarios para
establecer un sistema que permita el uso a gran escala de la criptografa de clave
pblica para proveer autenticacin, confidencialidad, integridad y no repudiacin.
La estructura de PKI consta de hardware, software, personas, polticas y
procedimientos necesarios para crear, administrar, almacenar, distribuir y revocar
certificados digitales

Marcela Meja

Universidad Piloto de Colombia

Para gestionar el ciclo de vida de los certificados,


adems de tecnologa, se necesitan:

Personas

Titulares de Certificados

Polticas de
Seguridad

Para definir las reglas bajo las cuales deben


operar los sistemas criptogrficos

Procedimientos

Para especificar cmo deben generarse, distribuirse


y utilizarse las claves y los certificados

Marco Legal

Adecuados para el uso de la firma digital

Marcela Meja

Universidad Piloto de Colombia

Repositorio de Certificados y CRL

Usuarios de PKI
Acceso a certificados/CRL
Registro
Inicializacin
Publicacin
Certificados

Autoridad
de Registro

Publicacin Certificados/CRL
Publicacin CRL

Emisor de
CRL

Entidades
Administradoras de PKI
Marcela Meja

Entidad
Final
Certificacin
Recuperacin de claves
Actualizacin de Claves
Revocacin de certificados

Autoridad
certificadora
Certificacin cruzada

Autoridad
certificadora

Universidad Piloto de Colombia

Los elementos fundamentales del modelo PKI son:


Entidad Final: termino genrico utilizado para denotar a los usuarios finales, los dispositivos o
cualquier entidad que pueda ser identificada como sujeto del certificado de clave pblica.
Autoridades certificadoras: entidad confiable, encargada de garantizar de forma unvoca y
segura la identidad asociada a una clave pblica. Entidad que expide los certificados y
usualmente la lista de revocacin de los mismos.
Autoridad de registro: componente opcional que puede asumir algunas de las tareas de la
entidad certificadora tales como el proceso de registro de las entidades finales.

Emisor de la lista de revocacin de certificados (CRL): usualmente es la misma CA


Repositorio: termino genrico utilizado para denotar cualquier mtodo de almacenamiento de
certificados y las CRLs de tal manera que sean accesibles para las entidades finales.

Marcela Meja

Universidad Piloto de Colombia

Las principales funciones de administracin de PKI son:


Registro: Es el primer proceso que debe hacer una entidad final para darse a conocer a la CA.
Este proceso lo puede hacer a travs de la RA si existe.
Inicializacin: Antes de que el sistema del cliente pueda operar de forma segura es necesario
instalar en la entidad final material clave. Por ejemplo, el cliente debe tener almacenada
informacin necesaria sobre la CA tal como su clave publica.
Certificacin: este es el proceso por el cual la CA emite el certificado de clave pblica al
sujeto y lo enva a este o lo publica en el repositorio y a la Autoridad validadora.
Recuperacin del par de claves: este proceso permite que la entidad final pueda restaurar el
par de claves publica y privada desde una entidad que esta autorizada para tener un backup
de las claves, tpicamente suele ser la misma CA.
Actualizacin del par de clave: las claves necesitan ser actualizadas con regularidad y un
nuevo certificado expedido.
Marcela Meja

Universidad Piloto de Colombia

Solicitud de revocacin: se solicita cuando se advierte que una situacin anormal, tal como
una clave comprometida, cambio en la afiliacin o cambio de nombre.
Certificacin Cruzada.
Las Autoridades de Certificacin se organizan certificndose unas a otras de forma que
entre ellas exista una jerarqua que proporcione confianza, establecindose vnculos de
confianza a travs de los cuales se puede autenticar a entidades o clientes que no
pertenezcan a ese dominio.
El establecimiento de cadenas de confianza entre CA puede implementarse a travs de un
modelo jerrquico o a travs de la certificacin cruzada entre CAs.
La Certificacin Cruzada permite que una persona perteneciente al dominio de una CA
pueda reconocer un certificado emitido por otra CA que no reconoce, pero que ha sido
certificada por su CA
Para que dos CAs puedan certificarse de forma cruzada, es necesario que ambas confen
en las polticas de seguridad de la contraria
Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

Un CSR (Certificate Signing request) es un mensaje de solicitud a la CA, generado por el


servidor que desea obtener un certificado. Contiene la informacin que se incluir en su
certificado como el nombre de la organizacin, el nombre comn (nombre de dominio),
localidad y pas y la clave pblica que se incluir en el certificado.
La autoridad certificadora utilizar la informacin contenida en el CSR para crear el
certificado.

Marcela Meja

Universidad Piloto de Colombia

Una manera de distribuir la clave pblica es a travs de un certificado digital expedido


por una Autoridad Certificadora (CA) en la que todos confan. Este certificado asocia una
identidad a un par de claves utilizadas para cifrar y firmar documentos. Los certificados
permiten garantizar la legitimidad de un servidor o cliente si estn firmados por una CA.

CA

Verificacin

Informacin
de
identificacin
Clave Pblica

f
Informacin
de CA

Hash

Clave privada CA
Marcela Meja

Firma

Hash

Hash

Clave publica CA
Universidad Piloto de Colombia

Campo CSR

Descripcin

Ejemplo

Common Name

El nombre del domino del servidor que solicita

mail.google.com

Organization

El nombre legal de la compaa incluidos los


sufijos como Ltda, S.A

Google Inc.

Organizational Unit

La divisin de la compaa que maneja los


certificados.

City/Locality

La ciudad donde esta localizada la compaa

State/County/Region

El estado o departamento donde esta localizada


la compaa

California

Country

Las dos letras de cdigo ISO para el pas donde


esta la compaa

US

Email address

Un correo electrnico de contacto.

Public Key

La clave pblica que ir en el certificado

Marcela Meja

Information Technology
IT Department
Mountain View

webmaster@google.com

Universidad Piloto de Colombia

X.509 es un estndar de formato de certificados digitales de la UIT-T ampliamente utilizado


en aplicaciones de seguridad en redes, tales como SSL, Ipsec, correo electrnico,
transacciones electrnicas, etc.
Este estndar se public por primera vez en 1988. El formato de la versin 1 fue extendido
en la versin 2 en 1993. El formato fue revisado para permitir la extensin con campos
adicionales, dando lugar al X.509 v3, publicado en 1996.
El certificado Digital es emitido por una autoridad certificadora (CA) tienen las siguientes
caractersticas:
Cualquier usuario con acceso a la clave pblica de la CA puede verificar la clave pblica
del poseedor de un certificado digital.
Slo la CA puede modificar los certificados.
Los certificados tienen un periodo de validez.
Una autoridad certicadora es una organizacin able que acepta solicitudes de certicados
de entidades, las valida, genera certificados, los revoca y los renueva.
Marcela Meja

Universidad Piloto de Colombia

Clases de certificados
La confianza en el certificado usualmente esta determinada por el rigor del
procedimiento que verifica la identidad del propietario en el momento en que es expedido
el certificado.
Clase 0: Se expide con propsito de prueba y no se hace ninguna verificacin
Clase 1: Para individuos y esta enfocado en la verificacin del correo electrnico
Clase 2: Para las organizaciones y se requiere una prueba de identidad
Clase 3: Para servidores y software y se requiere verificacin
Clase 4: Para transacciones en lnea entre compaas y se requiere prueba de
identidad en persona.
Clase 5: Para las organizaciones privadas o gubernamentales de seguridad.
Marcela Meja

Universidad Piloto de Colombia

Clave
Pblica

Firma
digital
Marcela Meja

Versin 3

Versin 2

Versin 1

Periodo de
validez

Versin
Nmero de serie
Algoritmo firma
Nombre del emisor certificado
Validez desde
Validez hasta
Nombre del sujeto
Algoritmo
parmetros
Clave pblica
Identificador nico del emisor
Identificador nico del sujeto
Extensiones
Algoritmo
firma

Universidad Piloto de Colombia

Extensiones de la versin 3 de X.509


Las extensiones del X.509 v3 proporcionan una manera de asociar informacin
adicional a sujetos, claves pblicas, etc. El ITU y el ISO/IEC han desarrollado y
publicado un conjunto de extensiones estndar que se dividen en tres categoras:
Limitaciones bsicas: Indica si el sujeto puede actuar como una CA entre otras.
Informacin sobre Claves y Poltica: Estos campos aportan informacin
adicional sobre el uso de las claves y las polticas. Una poltica de certificados
es una serie de normas que indican la aplicabilidad de un certificado.
Atributos de sujetos y CA: Entrega informacin adicional sobre el sujeto y la CA
tal como nombres alternativos, atributos de los directorios y ubicacin de la
CRL.

Marcela Meja

Universidad Piloto de Colombia

CA1

CA2

CA1
CA2
Usuario
Marcela Meja

Universidad Piloto de Colombia

Los certicados tienen un periodo de validez que va de unos meses a unos pocos aos.
Durante el tiempo que el certicado es vlido la entidad certicadora que lo gener
mantiene informacin sobre el estado de ese certicado. Cuando este periodo termina la
entidad certificado lo anuncia en una lista de revocacin para informar que ya no se
puede confiar en dicho certificado.
Las razones de revocacin de un certicado son varias:
La clave privada del sujeto se ha visto comprometida
La clave privada de la CA se ha visto comprometida
Se ha producido un cambio en la aliacin del sujeto
Una CRL es una estructura de datos rmada por la CA que contiene su fecha y hora de
publicacin, el nombre de la entidad certicadora y los nmeros de serie de los
certicados revocados

Marcela Meja

Universidad Piloto de Colombia

...

Lista de
certificados
revocados

Versin
Algoritmo firma
Nombre del emisor certificado
Fecha de actualizacin
Prxima fecha de actualizacin
Nmero de serie del certificado
Fecha de revocacin
Nmero de serie del certificado
Fecha de revocacin
Nmero de serie del certificado
Fecha de revocacin

Firma
digital

Marcela Meja

Algoritmo
firma

Universidad Piloto de Colombia

Existen dos mtodos para la verificacin de la validez de los certificados:


1. Busqueda en CRLs. Las aplicaciones acceden a la CA y copian el ltimo CRL a intervalos
regulares. El problema de este esquema es que entre actualizaciones del CRL se puede aceptar
un certicado ya revocado.
2. Vericacin en lnea. La aplicacin hace una consulta en lnea a la CA para determinar el
estado de revocacin de un certicado. Es el mejor mtodo para las aplicaciones, pero es el
costoso en procesamiento para la CA. (este esquema utiliza el protocolo OCSP on-line certificate
status protocol RFC6960)
La principal diferencia entre OCSP y CRL es la forma que se lleva a cabo la verificacin.
CRL requiere recorrer la lista obtenida de la CA para determinar si el certificado ha sido revocado (o
si alguno de los certificados de la cadena de certificados del emisor ha sido revocado).
Con OCSP, el cliente enva el certificado a la CA y la comprobacin de revocacin es realizada por el
servidor de la entidad validadora, quien devuelve el estado del certificado actualizado.

Muchos aplicaciones utilizan una combinacin de los dos esquemas dependiendo de la necesidad.
Marcela Meja

Universidad Piloto de Colombia

CA

Iniciar transaccin / Enva su certificado


Iniciar transaccin

Marcela Meja

Universidad Piloto de Colombia

SSL fue creado inicialmente por Netscape con la participacin pblica y con el apoyo de
la industria y fue publicado como borrador de internet. Posteriormente el IETF form un
grupo de trabajo llamado Transport Layer Security(TLS) con el objetivo de desarrollar un
estndar comn. La primera versin publicada de TLS puede verse bsicamente como
SSLv3.1. RFC5246
El principal propsito del protocolo SSL es ofrecer integridad, autenticacin y
confidencialidad entre dos aplicaciones que se estn comunicando.
Handshake

Change
Cipher Spec

Alert

HTTP

Aplicacin

SSL Record
TCP

IP

Transporte
Red

Jerarqua de Protocolos SSL


Marcela Meja

Universidad Piloto de Colombia

Este protocolo se utiliza antes de que se transmitan datos de la aplicacin y permite:

La autenticacin mutua entre el servidor y el cliente


La negociacin de un algoritmo de cifrado
La determinacin del algoritmo MAC a utilizar
Acordar las claves criptogrficas que se van a utilizar para garantizar la confidencialidad

Para llevar a cabo este proceso se intercambian mensajes entre cliente y servidor con el
siguiente formato:
1 Byte
Tipo

3 Byte
Longitud

0 Byte
Parmetros

Tipo: Indica el tipo de mensaje que se esta intercambiando


Longitud: Longitud total del campo de parmetros
Parmetros: Informacin requerida como parmetro de acuerdo con el tipo de mensaje
Marcela Meja

Universidad Piloto de Colombia

Tipo de Mensaje

Parmetro

Hello_request

Nulo

Client_hello

Versin soportada, valor aleatorio, ID sesin, suite de


cifrado, mtodo de compresin

Server_hello

Versin seleccionada, valor aleatorio, ID sesin, mtodo


de cifrado, mtodo de compresin

Certificate

Cadena de certificados X.509

Server_key_exchange Parmetros, Firma


Certificate_request

Tipo, Autoridades

Server_done

Nulo

Certificate_verify

Firma

Client_key_exchange

Parmetros, Firma

Finished

Valor Hash

Marcela Meja

Universidad Piloto de Colombia

Fases para establecer una conexin entre cliente y servidor

Fase I
Establecimiento de la seguridad, versin del
protocolo, identificacin de la sesin, cifrado,
mtodo de compresin y nmeros aleatorios
iniciales.

Fase II
Envo certificado del servidor, intercambio de
claves y solicitud del certificado del cliente.
El servidor seala el final de la fase del
mensaje hello.

Marcela Meja

Universidad Piloto de Colombia

Fases para establecer una conexin entre cliente y servidor

Fase III
Envo certificado del cliente, si le es
solicitado, intercambio de claves y
verificacin del certificado.

Fase IV
Verificacin del Intercambio exitoso de
parmetros de cifrado y finalizacin del
protocolo handshake

Marcela Meja

Universidad Piloto de Colombia

Fase I
El intercambio lo inicia el cliente con el mensaje Client _hello y termina con el
Server_hello. Estos mensajes contienen los siguientes parmetros:

Versin de SSL/TSL: La versin ms alta con la que puede trabajar el cliente y la


aceptada por el servidor. SSLv2.0,SSLv3.0,TSL1.0(v3.1)
Valor aleatorio: Nmero de 4 bytes con la hora y la fecha del cliente/servidor
ms un nmero seudoaleatorio de 28-byte criptogrficamente generada. Este
nmero es utilizado posteriormente por el cliente y el servidor para generar
el secreto maestro del cual se van a derivar las claves de cifrado.
Identificador de sesin: Si el valor es cero indica que el cliente quiere establecer
una nueva sesin y conexin, si es diferente de cero indica que se quieren
actualizar los parmetros de una sesin ya existente. Si el campo ID del cliente es
cero, el servidor entrega el ID para esa nueva sesin, en caso contrario utiliza el
mismo entregado por el cliente.
Marcela Meja

Universidad Piloto de Colombia

Fase I
Sistema de cifrado: Lista con las combinaciones de algoritmos criptogrficos
admitidos por el cliente y definidos por el servidor.
El primer elemento de la lista corresponde al mtodo de intercambio de clave:
RSA o Diffie-Hellman. El segundo a las especificaciones de cifrado que se va a
utilizar para garantizar la confidencialidad y el tercero al mtodo de autenticacin
de mensaje para garantizar integridad.
TLS_RSA_WITH_AES_256_CBC_SHA256
Ejemplos de respuesta del servidor
TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA
Mtodo de compresin: lista de mtodos de compresin admitidos por el cliente
y decidido por el servidor

Marcela Meja

Universidad Piloto de Colombia

Client_hello
ClientVersion 3,1
ClientRandom[32]
SessionID: None (new session)
Suggested Cipher Suites:
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_DES_CBC_SHA
Suggested Compression Algorithm: NONE

Server_hello
Version 3,1
ServerRandom[32]
SessionID: bd608869f0c629767ea7e3ebf7a63bdcffb0ef
Use Cipher Suite:
TLS_RSA_WITH_3DES_EDE_CBC_SHA
Compression Algorithm: NONE

Marcela Meja

Universidad Piloto de Colombia

Fase II
Certificate: El servidor inicia esta fase enviando su certificado X.509
Server_key_exchange: Se solicita un intercambio de claves slo cuando el
certificado del servidor no contiene informacin de clave publica necesaria para el
intercambio de claves, ya que esta clave es necesaria para cifrar el pre-secreto
maestro.
Certificate_request: El servidor debe presentar siempre sus certificados ante el
cliente, pero el cliente no siempre se debe autenticar. Si el servidor no requiere
autenticacin de cliente, entonces no se enva este mensaje.

Server_hello_done: mensaje enviado por el servidor para indicar el fin de esta


etapa.

Marcela Meja

Universidad Piloto de Colombia

Fase III
Certificate: El cliente enviara su certificado, si previamente ha recibido la solicitud,
de lo contrario este mensaje no se enva.
Client_key_exchange: El cliente enva este mensaje despus de haber calculado
el pre-secreto maestro utilizando los dos valores aleatorios generados con el
mensaje Client Hello y el Server Hello. El mensaje es cifrado antes de ser enviado
con la clave pblica del servidor (confidencialidad y autenticacin). Cliente y
servidor calculan el secreto maestro localmente a partir de esta informacin.
El calculo del pre-secreto maestro depende de la tcnica de intercambio que se
haya acordado en la fase I, as:
RSA: genera una secuencia aleatoria de 48 byte que utilizara como presecreto maestro.
Diffie-Hellman: El cliente y el servidor utilizan diffie-Hellman para obtener el
pre-secreto maestro.

Marcela Meja

Universidad Piloto de Colombia

Fase III
Para crear el secreto maestro tanto el cliente como el servidor utilizan una funcin
seudoaleatoria cuyos parmetros de entrada son:
El pre-secreto maestros
La frase master secret
El numero aleatorio generado por el cliente concatenado por el nmero
aleatorio generado por el servidor e intercambiados en la primera fase.
Certificate_verify: Slo se enva cuando se le ha solicitado el certificado al cliente
y es una firma digital cifrada con la clave privada del cliente compuesta por:
Hash MD5 de todos los mensajes de handshake previos a este.
Hash SHA-1 de todos los mensajes de handshake previos a este.

Marcela Meja

Universidad Piloto de Colombia

Fase IV
Change_cipher_spec: Para este ultimo mensaje se utiliza el protocolo Change
cipher spec.
Este mensaje (de un nico byte) notifica al servidor/cliente que el cliente/servidor
esta listo para iniciar el cifrado de mensajes con las claves y los algoritmos que se
acaban de negociar, incluido el mensaje Finished
Finished: Este mensaje es un Hash de la conversacin completa entre cliente y
servidor. El cual es cifrado con la clave negociada y el mensaje autenticado con el
algoritmo correspondiente. Si cada una de las partes es capaz de recuperar el
mensaje y verificar los datos quiere decir que la negociacin finalizo con xito.

Marcela Meja

Universidad Piloto de Colombia

Una vez se han acordado todos los parmetros de operacin entre el cliente y el servidor
a travs del protocolo Handshake, es el protocolo Record quien realiza el intercambio de
informacin entre las aplicaciones ofreciendo confidencialidad e integridad de los
mensajes.
Datos de aplicacin
Fragmentar
Comprimir
Agregar HASH
Cifrar
Agregar
Encabezado SSL
Marcela Meja

Universidad Piloto de Colombia

HTTP + SSL Record


Marcela Meja

http://chimera.labs.oreilly.com/

Universidad Piloto de Colombia

Este protocolo se utiliza para transmitir los mensajes de alerta relacionadas con SSL a
la entidad par.
ALERTA
Nivel

Alerta

Nivel: determina el
gravedad del mensaje

(Bytes)

nivel

Aviso
Fatal (la conexin termina
inmediatamente)

Marcela Meja

de

ILLEGAL_PARAMETER
UNEXPECTED_MESSAGE
BAD_RECORD_MAC
DECOMPRESSION_FAILURE
HANDSHAKE_FAILURE
NO_CERTIFICATE
BAD_CERTIFICATE
UNSUPPORTED_CERTIFICATE
CERTIFICATE_REVOKED
CERTIFICATE_EXPIRED
CERTIFICATE_UNKNOWN
CLOSE_NOTIFY

Universidad Piloto de Colombia

IPSec es un conjunto de estndares para integrar en IP funciones de seguridad basadas


en criptografa. Proporciona Confidencialidad, Integridad y Autenticacin de paquetes IP
al combinar tecnologas de clave pblica, algoritmos de cifrado simtricos, algoritmos
Hash y Certificados digitales X.509v3.
IPSec contiene los siguientes protocolos:
Dos protocolos de seguridad para proteger el trfico IP
IP authentication Header (AH)
IP encapsulating Security Payload (ESP)
Un protocolo de gestin de claves que permite a dos nodos negociar las claves y los
parmetros necesarios para establecer una conexin AH o ESP.
Internet Key Exchange (IKE)

Marcela Meja

Universidad Piloto de Colombia

El protocolo AH garantiza la integridad y autenticacin de los paquetes IP, pero no


proporciona confidencialidad de los datos.
32 bits

Versin

IHL

Longitud del paquete

Tipo de Servicio

Identificador
Tiempo de Vida (TTL)

Desplazamiento del fragmento

DF MF

Protocolo = 51

Checksum encabezado

Direccin IP origen
Direccin IP destino
Siguiente Encabezado

Longitud de AH

Reservado

ndice de parmetros de seguridad


Nmero de secuencia

AH

Campo de Autenticacin
Datos

Marcela Meja

Universidad Piloto de Colombia

El protocolo AH garantiza la integridad y autenticacin de los paquetes IP, pero no


proporciona confidencialidad de los datos.
Siguiente Encabezado: Identifica el tipo de encabezado que hay en el campo de datos
Longitud de AH: Tamao del paquete AH
ndice de parmetros de seguridad: Indica los parmetros de seguridad que, en

combinacin con la direccin IP, identifican la seguridad implementada con este paquete.
Nmero de secuencia: Un nmero siempre creciente, utilizado para evitar ataques de

repeticin.
Campo de Autenticacin: contiene el valor HMAC de los campos invariables del paquete IP.

Marcela Meja

Universidad Piloto de Colombia

Fuente: comunicaciones de telefnica I + D

Marcela Meja

Universidad Piloto de Colombia

El protocolo ESP garantiza la confidencialidad de los datos utilizando cifrado simtrico y


puede ofrecer integridad y autenticacin del origen de los datos utilizando un mecanismo
similar al de AH.
32 bits

Versin

IHL

Tipo de Servicio

Identificador
Tiempo de Vida (TTL)

Longitud del paquete


Desplazamiento del fragmento

DF MF

Protocolo = 50

Checksum encabezado

Direccin IP origen
Direccin IP destino
ndice de parmetros de seguridad

Cifrado

Nmero de secuencia
ESP

Datos
Relleno

Longitud de Relleno

Siguiente Encabezado

Campo de Autenticacin

Marcela Meja

Universidad Piloto de Colombia

Fuente: comunicaciones de telefnica I + D

Marcela Meja

Universidad Piloto de Colombia

El protocolo IKE realiza la gestin automtica de claves y el establecimiento de una


asociacin de seguridad (SA)
SA es un canal de comunicacin unidireccional que conecta dos nodos a travs del cual
viajan los paquetes protegidos mediante un mecanismo criptogrfico acordado
previamente.
Una conexin IPSec se compone de dos SAs una para cada sentido de la comunicacin.
IKE es un hibrido entre los protocolos ISAKMP y Oakley que permite establecer una
conexin cifrada y autenticada entre dos entidades para negociar los parmetros
necesarios para establecer una SA.
Esta negociacin se lleva a cabo en dos fases:
Fase de establecimiento de un canal seguro y autenticado a travs de certificado
(PKI) o secreto compartido.
El canal seguro es utilizado para negociar los parmetros de IPSec.

Marcela Meja

Universidad Piloto de Colombia

Fuente: comunicaciones de telefnica I + D

Marcela Meja

Universidad Piloto de Colombia

Marcela Meja

Universidad Piloto de Colombia

You might also like