¿Cómo sabe el servidor acerca de client_write_key para descifrar el mensaje del cliente? [duplicar]

1

Tengo una pregunta con respecto al apretón de manos TLS. A partir de mi lectura, llegué a saber que master_secret se derivará de pre_master_secret compartido por el cliente de la siguiente manera:

  • master_secret = PRF(pre_master_secret, "master secret", lientHello.random + ServerHello.random)

  • De este master_secret se derivan las claves de sesión siguientes.

  • En el lado del cliente:

    client_write_MAC_secret[SecurityParameters.hash_size]
    client_write_key[SecurityParameters.key_material_length]
    client_write_IV[SecurityParameters.IV_size]
    
  • En el lado del servidor:

    server_write_MAC_secret[SecurityParameters.hash_size]
    server_write_key[SecurityParameters.key_material_length]
    server_write_IV[SecurityParameters.IV_size]
    

Cuando estas claves de sesión se generan por separado en el cliente y el servidor y nunca se intercambian y se transmiten entre ellas, ¿cómo descifra el servidor el mensaje cifrado del cliente y viceversa?

O las 6 claves de sesión se crean individualmente tanto en el cliente como en el servidor y esperamos que sean similares. Si esto es cierto, tanto el cliente como el servidor pueden descifrar los otros mensajes cifrados.

    
pregunta Srinivas M 27.05.2016 - 14:04
fuente

1 respuesta

0

Mire RFC 5246 Sección 6.3 . En ambos lados, los bytes se generan utilizando el PRF a partir de los mismos argumentos, por lo que los bytes generados son los mismos. Los bytes generados se utilizan de la siguiente manera: los primeros bytes "mac_key_length" (por ejemplo, 20 bytes) son la clave MAC del cliente y los siguientes "mac_key_length" son los del servidor. Luego, el siguiente "enc_key_length" (por ejemplo, 16 bytes) es la clave de cifrado del cliente (por ejemplo, AE) y la siguiente es la del servidor, etc.

Cada lado sabe si es el cliente o el servidor, por lo que eligen la MAC / tecla / IV correcta al leer y la otra MAC / tecla / IV al escribir.

    
respondido por el Z.T. 27.05.2016 - 14:26
fuente

Lea otras preguntas en las etiquetas