¿Cuál es el propósito de ServerKeyExchange
cuando se usa el efímero Diffie-Hellman? En este caso, el ClientHello
anunció EDH y EECDH (y no los protocolos anónimos), y el servidor seleccionó TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
en su ServerHello
.
Según RFC 5246 , Sección 7.4.3:
This message will be sent immediately after the server Certificate
message (or the ServerHello message, if this is an anonymous
negotiation).
The ServerKeyExchange message is sent by the server only when the
server Certificate message (if sent) does not contain enough data
to allow the client to exchange a premaster secret. This is true
for the following key exchange methods:
DHE_DSS
DHE_RSA
DH_anon
Entiendo que RSA se está utilizando para la autenticación (y no para el transporte de claves). Pero como se está utilizando Diffie-Hellman, ambas partes contribuyen con material al master_secret
final. Así que no hay necesidad de un mensaje que le permita al cliente contribuir más material antes para el premaster_secret
.
¿Cuál es el propósito de ServerKeyExchange
cuando se usa el efímero Diffie-Hellman?