Sei sulla pagina 1di 3

Diferencias entre SSL y TLS

SSLv3 TLSv1
Errores de
Alerta
Durante la ejecucin del HandShake Protocol,
el servidor deber esperar por la respuesta
del cliente. Si el servidor ha enviado un
mensaje de requerimiento de certificado, el
cliente debe enviar en su lugar el mensaje
certificado o un alerta no_certificate, la cual se
describe como sigue:
no_certificate: Un mensaje de alerta
no_certificate puede ser enviado en respuesta
al requerimiento de certificado si no es
apropiado el certificado disponible.
Una vez que el server ha enviado un mensaje de pedido
de certificado el cliente deber enviar el mensaje
certificado
En la
computacin
criptogrfica,
se calcula
distinto el
master secret
Antes de una encriptacin o verificacin de
integridad sobre los registros, el cliente y el
servidor necesitan generar informacin
secreta compartida conocida slo por ellos.
Este valor de 48 bytes es llamado
master_secret y es usado para generar claves
y secretos para la encriptacin y computacin
del MAC. Algunos algoritmos como por
ejemplo FORTEZZA, tienen sus propios
procedimientos para generar las claves de
encriptacin, as el master_secret es usado
slo para la computacin del MAC.
El master_secret es calculado como :
Se utiliza la funcin PRF para generar el master_secret:
master_secret = PRF(pre_master_secret, "master
secret", ClientHello.random +
ServerHello.random)[0..n]
Recordemos que la funcin PRF se obtiene como:
PRF(secret,label,seed) = P_MD5(S1, label + seed)
XOR P_SHA-1(S2, label + seed)
Adems, en TLS al generar el key_block se utiliza la
funcin PRF como se muestra a continuacin:
master_secret = MD5(pre_master_secret +
SHA ('A' + pre_master_secret
+ ClientHello.random +
ServerHello.random)) +
MD5(pre_master_secret +
SHA ('BB' + pre_master_secret
+ ClientHello.random +
ServerHello.random)) +
MD5(pre_master_secret +
SHA ('CCC' +
pre_master_secret +
ClientHello.random +
ServerHello.random))
Adems, en SSL, el key_block se genera de
la siguiente manera:
key_block = MD5 (master_secret + SHA ('A' +
master_secret +
ServerHello.random +
ClientHello.random)) + MD5
(master_secret + SHA ('BB' +
master_secret +
ServerHello.random +
ClientHello.random)) + MD5
(master_secret + SHA ('CCC' +
master_secret +
ServerHello.random +
ClientHello.random)) + [...]
key_block = PRF(SecurityParameters.master_secret, "key
expansion", SecurityParameters.server_random
+ SecurityParameters.clients_random)
Algoritmos de En SSL se tienen como algoritmos de TLS no soporta el algoritmo de intercambio de claves
Intercambio
de Claves
intercambio de claves RSA, Diffie
Hellman y Fortezza Kea.
A nivel de protocolo, el FORTEZZA es similar
al Diffie-Hellman, con valores pblicos fijos,
contenidos en los certificados.
El resultado del proceso de intercambio de
claves es el TEK (token encryption key), el
cual es utilizado para proteger los datos de
las claves encriptadas, la clave de escritura
del cliente, la clave de escritura del servidor, y
la clave de encriptacin del master secret. Las
claves de encriptacin de datos no derivan del
pre_master_secret porque claves no
protegidas no son accesibles desde fuera del
token.
El pre_master_secret encriptado es mandado
al server en un mensaje de intercambio de
claves por el cliente.
Fortezza Kea.
el MAC se
calcula
diferente
En SSL, en el clculo del MAC no se ingresa
ni el SSLCompressed.ContentType ni el
SSLCompressed.ProtocolVersion, por lo tanto
estos campos no estn protegidos
contra ataques contra la integridad.
Se protegen tambin los campos
TLSCompressed.ContentType y
TLSCompressed.ProtocolVersion, incluyndolos en el
clculo del MAC.

Potrebbero piacerti anche