Averigüe la clave generada por AES del navegador en SSL / TLS [duplicado]

0

Cuando se trata de apretones de manos TLS. En primer lugar, me pregunto cómo se generan las claves AES que son responsables de cifrar los datos. ¿Se genera de forma aleatoria en el navegador y se envía de forma segura al servidor HTTPS o el servidor es responsable de generar esas claves? En segundo lugar, ¿hay alguna manera de averiguar realmente qué claves AES utiliza el navegador (por ejemplo, Chrome) para cifrar los datos (después de que la autenticación SSL / TLS se haya manejado correctamente)?

    
pregunta Michaelzgonnalearn 05.02.2018 - 10:38
fuente

2 respuestas

0

0ms

  

TLSseejecutaenuntransporteconfiable(TCP),loquesignificaquedebemos  Enprimerlugar,completeelprotocolodeenlacedetresvíasTCP,querequiereunacompleta.  idayvuelta.

56ms

  

ConlaconexiónTCPensulugar,elclienteenvíaunnúmerode  Especificacionesentextoplano,comolaversióndelprotocoloTLS.  seestáejecutando,lalistadeconjuntosdecifradosadmitidosyotrosTLS  opcionesquepuedequererusar.

84ms

  

ElservidoreligelaversióndelprotocoloTLSparaunamayorcomunicación,  decidesobreunconjuntodecifradodelalistaproporcionadaporelcliente,  adjuntasucertificadoyenvíalarespuestaalcliente.  Opcionalmente,elservidortambiénpuedeenviarunasolicitudparaelcliente  CertificadoyparámetrosparaotrasextensionesTLS.

112ms

  

Suponiendoqueambaspartespuedannegociarunaversiónyuncifradocomunes,  yelclienteestácontentoconelcertificadoproporcionadoporelservidor,  elclienteinicialaclaveRSAoDiffie-Hellman  intercambio,queseutilizaparaestablecerlaclavesimétricaparaelsiguiente  sesión.

140ms

  

Elservidorprocesalosparámetrosdeintercambiodeclavesenviadosporelcliente,  compruebalaintegridaddelmensajealverificarelMACydevuelveun  mensajefinalizadocifradodenuevoalcliente.

168ms

  

Elclientedescifraelmensajeconlaclavesimétricanegociada,  VerificaelMAC,ysitodoestábien,entoncesseestableceeltúnel.  yahorasepuedenenviarlosdatosdelaaplicación.

referencia

En teoría, debería ser posible obtener la clave de sesión en el extremo del remitente o el destinatario de la comunicación ... sin embargo, esta clave (debería) solo debe durar la sesión (si no es más breve debido a la renegociación de una clave) . La mayoría de las aplicaciones aseguran el almacenamiento de esta clave de sesión para que no se pueda obtener fácilmente.

Se debe tener en cuenta que la clave de sesión también se podría usar para un cifrado distinto de AES ... vea aquí

    
respondido por el CaffeineAddiction 05.02.2018 - 10:53
fuente
0

Esto depende del algoritmo de intercambio de claves que se esté utilizando.

Cuando se usa el intercambio de claves RSA, la clave es generada aleatoriamente por el cliente y luego se cifra mediante el certificado del servidor. Cuando se utiliza el intercambio de claves RSA, el servidor tiene muy poco que decir sobre la clave de sesión.

La configuración moderna de TLS por lo general recomienda Diffie Hellman , que más adecuadamente se llama acuerdo clave protocolo porque la clave de sesión se calcula utilizando entradas aleatorias tanto del cliente como del servidor.

Ambos Firefox y Chrome tiene una función para volcar la clave de sesión en un archivo, configurando la variable de entorno SSLKEYLOGFILE.

    
respondido por el Lie Ryan 05.02.2018 - 11:28
fuente

Lea otras preguntas en las etiquetas