Client sends
- Client random
Server sends
- Server random
- **Certificate** (this contains the public key of the server)
- **Digital signature** of this message signed by the server's private key
Client verifies
- Certificate against its CA certs store (which contains recognized CA certificates)
- Digital signature
Client uses
- Public key (in the server certificate) to encrypt a pre-master secret and sends it to the server
Client uses
- Pre-master secret
- Client random
- Server random
to generate the symmetric key
Server uses
- Pre-master secret
- Client random
- Server random
to generate the symmetric key
Server & client uses symmetric key to encrypt and decrypt application data