The SSL/TLS Handshake Explained in Simple Terms
SSL Certificate works on a TCP (Transmission Control Protocol) protocol to securely send data over the internet. SSL performs a handshake process that sets up an encrypted connection without disturbing customers’ shopping experience.
The SSL handshake process works as under:
-
Client Hello
After establishing a TCP connection, the client (e.g., a browser) starts the handshake by sending a message with:
- Supported SSL/TLS versions
- Cipher suites
- Compression methods (if supported)
- A random value for key generation
-
Server Hello & Certificate
The server responds by selecting:
- The highest supported TLS version
- A cipher suite from the client’s list
It then sends its SSL certificate, which includes its public key and identity details.
-
Certificate Verification
The client verifies the server’s certificate to check it is issued by a trusted Certificate Authority and matches the domain. If valid, the process continues.
-
Pre-Master Secret Generation
The client creates a pre-master secret, encrypts it using the server’s public key, and sends it to the server.
-
Decryption by Server
The server uses its private key to decrypt the pre-master secret.
-
Session Key Creation
Both client and server now use the same pre-master secret and previously shared random values to generate session keys. These are symmetric keys used for encrypting and decrypting data during the SSL session.
-
Finished Messages
Finally, both client and server exchange encrypted messages using the session key to confirm the handshake was successful, and future communication will be encrypted.
The SSL handshake builds a secure connection and customers or users of a website will have a safe environment for potential web transactions.
Related Articles