Después de aprender la teoría detrás de la criptografía, tengo algunos problemas para entender cómo funcionan los certificados SSL o X509 en la práctica y simplemente no puedo encontrar información útil en Internet.
A mi entender, un servidor web necesita un certificado SSL para demostrar al cliente que él es quien dice ser (por ejemplo, www.company.com). Además de eso, asumo que también se usa para intercambiar una clave de sesión temporal por cifrado simétrico (probablemente AES) por algún sistema de distribución de claves asimétricas como diffie-helmann?
En ese caso: ¿El certificado que tiene el servidor web contiene varias claves públicas para todos estos sistemas criptográficos, por ejemplo, una clave RSA para firmas RSA, los parámetros de DL para Diffie-Hellmann? ¿O necesita varias claves (también para múltiples tamaños de clave)?
Estaría muy agradecido si alguien pudiera decirme qué sucede exactamente (paso a paso), cuando un cliente se conecta a una dirección https. ¡Muchas gracias!