intercambio de claves SSL [duplicado]

0

Según tengo entendido, cuando inicio sesión en un sitio web a través de HTTPS, las claves públicas se comparten al comienzo de la conversación. Lo que he leído en Internet es que si un MITM logra leer toda la conversación desde el principio, puede descifrar el paquete y leer la información. Lo que me pregunto es ¿por qué hay que compartir las claves con cada conexión? ¿Por qué el navegador no mantiene la clave de los sitios web para su uso posterior (supongo que no, porque no puedo encontrar nada que diga que lo hace)?

    
pregunta Ayadi Ghait 15.02.2016 - 15:42
fuente

1 respuesta

0

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).

    
respondido por el LvB 15.02.2016 - 16:40
fuente

Lea otras preguntas en las etiquetas