Applied Cryptography

In TLS, which of the following key exchange methods provides the property that previously recorded communications cannot be decrypted even if the private key of the server certificate leaks later (forward secrecy)?

  1. AKey exchange such as ECDHE, which uses throwaway values created for each connection
  2. BA method in which the client encrypts the key material it created with the RSA public key of the server certificate and sends it
  3. CA method in which the server and client keep using the same symmetric key, agreed in advance, for every connection
Show answer and explanation

Answer: A. Key exchange such as ECDHE, which uses throwaway values created for each connection

The final E in ECDHE stands for ephemeral (throwaway): a new secret value is used for the key exchange of each connection and discarded afterwards. The private key of the certificate is used only for signing, so even if it leaks later, the shared secrets of past connections cannot be computed. By contrast, with the method of sending key material encrypted with the server's RSA public key, the recorded traffic plus a later-leaked private key allows all past communications to be decrypted. TLS 1.3 removed that method, and key exchange is now based on (EC)DHE with forward secrecy (except when a connection is resumed with a pre-shared key alone).

  • A. Correct. The throwaway secret values are not kept, so past shared secrets cannot be recomputed.
  • B. With RSA key transport, past communications can be decrypted once the private key leaks. It was removed in TLS 1.3.
  • C. If the fixed key leaks, all past and future communications can be read.
Practice this topic Back to topic

Books on Applied Cryptography Ad

As an Amazon Associate I earn from qualifying purchases.

More Applied Cryptography questions

  1. In ECDSA digital signatures, a secret random number k is used for each signature. Which of the following correctly describes how k must be handled?
  2. Which of the following correctly describes the certificate chain when a browser validates a web server's certificate?
  3. In TLS certificate validation, besides the chain of signatures and the validity period, the client checks that the host name it is connecting to is included in the SAN (subject alternative name) of the certificate. Which of the following is the reason this check is indispensable?
  4. Which of the following correctly describes the mechanism of Certificate Transparency (CT)?
  5. Which of the following correctly describes a change from TLS 1.2 in TLS 1.3 (RFC 8446)?

Comparisons in this topic