12
Secrets and Keys in TLS 1.3
In Chapter 7, Public-Key Cryptography, and Chapter 8, Elliptic Curves, we discussed how Alice and Bob can establish a key K in principle, using key transport or key agreement mechanisms based on public-key cryptography. In the present chapter, we will see how these mechanisms are implemented within the TLS 1.3 handshake. We will see what the messages look like that server Alice and client Bob exchange, how the shared master secret is established, and how further, context-specific secrets and keys are derived in the scope of TLS 1.3’s key derivation schedule.
To this end, we will describe the TLS key establishment process, the key derivation functions used in TLS 1.3, and the generation and updating of the shared secret keys. In addition, we will take a detailed look at key exchange messages defined in Section 4.1 of RFC 8446 [147], the official IETF specification of TLS V1.3. In particular, we will cover the following aspects:
Cryptographic...