!!! Overview
The Full [TLS Handshake] is what is shown in [How SSL-TLS Works].
The [{$pagename}] looks like this:
{{{
Client Server
ClientHello -------->
ServerHello
Certificate*
ServerKeyExchange*
CertificateRequest*
<-------- ServerHelloDone
Certificate*
ClientKeyExchange
CertificateVerify*
[Change_cipher_spec]
Finished -------->
[Change_cipher_spec]
<-------- Finished
Application Data <-------> Application Data
}}}
!! [TLS 1.3] [{$pagename}][1]
As [RSA key-exchange] is no longer supported in [TLS 1.3] means we can start with [{$pagename}] using [Perfect Forward Secrecy] using [Diffie-Hellman].
Another important change is the removal of the [Change_cipher_spec] [protocol]. With [TLS 1.3] every message sent after [ServerHello] is encrypted with the so-called [Ephemeral Key] secret to lock out passive [Passive attackers].
[EncryptedExtensions] carries Hello extension data that must be [encrypted] because it is not needed to set up [secure connection].
[{Image src='TLS Full Handshake/tls13-hs-ecdhe.png' caption='[TLS 1.3] FULL HANDSHAKE' align=left width=1024 height=768 style='font-size: 120%}]\\
One of the most important change with regard to [1-RTT Handshake] is the removal of the [ServerKeyExchange] and [ClientKeyExchange] messages.
The [DH] parameters and [Public Keys] are now sent in special [KeyShare] extensions, a new type of extension to be included in the [ServerHello] and [ClientHello] messages. Moving this [data] into Hello extensions keeps the handshake compatible with [TLS 1.2] as it doesn’t change the order of messages.
The client sends a list of [KeyShareEntry] values, each consisting of a named [ECDH] group and an [Ephemeral|Ephemeral Key] [Public Key]. If the server accepts [Ephemeral|Ephemeral Key] [Public Key] must respond with one of the proposed [ECDH] group and its own [Ephemeral|Ephemeral Key] [Public Key].
If the server __does not__ support any of the given key shares the server will request retrying the [{$pagename}] or abort the connection with a fatal handshake_failure alert.
!! More Information
There might be more information for this subject on one of the following:
[{ReferringPagesPlugin before='*' after='\n' }]
----
* [#1] - [Improved Handshakes in TLS version 1.3|https://timtaubert.de/blog/2015/11/more-privacy-less-latency-improved-handshakes-in-tls-13/|target='_blank'] - based on information obtained 2017-01-05