Slide 15
Slide 15 text
History Crypto Primitives TLS < 1.3 Hands on Bibliography
TLS 1.3 – Handshake
The TLS 1.3 is much more efficient using an early encryption scheme.
Internet (TLS) Server
(TLS) Client
1
Finished (HKDF/Handshake)
Message
2a
TCP Session established
a)
Version = 3.3, Random, Nonce, Cipher
Suites, C = 0,
ClientHello
Version = 3.3, Random, SessionID, Cipher
Suite, C = 0,
ServerHello
Certificate Verify (signature TH)
Certificate
3 Finished (HKDF/Handshake)
Generates
Master &
Session keys
TLS Connection
Verifies Certificate
Generates Master
& Session keys
Internet (TLS)
Server
(TLS) Client
1
Finished (HKDF/Handshake)
Message
TCP Session established
b)
Certificate Verify (signature TH)
Certificate
Finished (HKDF/Handshake)
TLS Connection
Certificate Request
Certificate
Certificate Verify (signature TH)
Version = 3.3, Random, Nonce, Cipher
Suites, C = 0,
ClientHello
Version = 3.3, Random, SessionID, Cipher
Suite, C = 0,
ServerHello
Key Exchange
Authentication
Message
2b
2c
2d
2a
2b
2c
2d
2e
3a
3c
3b
Extensions: ’x304’, ALPN
Extensions: ’x304’, ADP
Extensions: ’x304’, ALPN
Extensions: ’x304’, ADP
en-
crypted en-
crypted
HKDF(shared secret,“s/c hs traffic“,TH)
HKDF(shared secret,“c/s app traffic …“,TH)
Traffic key
Application key
Figure: TLS 1.3 Handshake; (a) without and (b) with Client Certificate Request; ALPN: Application
Layer Protocol Notifications
Only three messages are exchanged:
Client → Server The (unencrypted) Client Hello message.
Server → Client The Server Hello message: The first part including protocol artefacts in
clear text; the further parts are encrypted with a provisional secret
(Traffic Key) covering in particular the X.509 cert.
Client → Server The encrypted Finish message, telling that the Application Key is
ready for use. 15 / 23