¿Por qué no se realiza la autenticación del cliente a través de KeyExchange como con el servidor, sino a través de un mensaje CertificateVerify ?
EDITAR: Para ser más claros:
Cuando se utiliza el intercambio de claves RSA, el cliente cifra el material de la clave con la clave pública del servidor para que solo el servidor real (que tiene la clave privada) pueda descifrarla. [ RFC5246: 7.4.7.1 ] ¿Por qué el cliente tampoco firma la clave? ¿Material con su clave privada al usar la autenticación de cliente?
Cuando se utiliza el intercambio de claves Diffie-Hellman, el servidor firma sus parámetros clave utilizando su clave privada para probar que tiene la clave privada (y, por lo tanto, es el servidor real). [ RFC5246: 7.4.7.2 ] ¿Por qué el cliente no firma sus parámetros también? ¿Cuándo se usa la autenticación de cliente?
En lugar de estos métodos (creo que más lógicos), el cliente envía un mensaje de CertificateVerify con una firma en todos los mensajes de intercambio. ¿Por qué se elige este método?
EDITAR: Esto solo se aplica a los certificados con capacidad de firma, porque con por ejemplo. la autenticación de cliente de certificados DH estáticos se realiza durante KeyExchange. [ RFC5246: 7.4.8 ]