En pocas palabras, la mayoría de las veces no hay 'claves' para compartir. Lo que intercambian el servidor web y el navegador es mucho más cercano al nonce que a las teclas. Simplemente se utiliza para cifrar la clave de cifrado 'simétrica' de segundo nivel que se usa para el resto de la transmisión (ya que la criptografía pública / privada es muy costosa, y uso simétrica para facilitar la explicación. Sé que es más compleja)
El problema que tiene es que inicialmente no tiene motivos comunes para comenzar una sesión segura (sin una base de cifrado compartida solo entre usted y el servidor), por lo que tenemos que usar un proceso complejo y "costoso" para establecer algo que solo se comparte entre el navegador y el servidor.
En cuanto a por qué el navegador no mantiene la conexión abierta, esto es parte del historial, parte de cómo funcionan los navegadores. Afortunadamente para los navegadores y servidores más nuevos que tenemos spdy, spdy permite una reacción más inteligente al permitir mantener la conexión https abierta durante más tiempo (y reutilizar la conexión durante el mayor tiempo posible) e incluso datos de suministros preventivos que el servidor ya sabe que el cliente necesitará. (como los archivos css adjuntos a un archivo html específico).