SSL Handshake
This is no rocket science either. All communication over the internet happens with the SSL(Secure sockets layer) handshake which is now called as the TLS(Transport layer security) handshake. SSL was designed for HTTP connections and TLS has replaced the SSL.
The TLS handshake happens between the client and the server. The two parties involved will do the following
Below are the exact steps that occur during the TLS DH handshake
The TLS handshake happens between the client and the server. The two parties involved will do the following
- Specify the version of TLS they are using
- The type of cipher suite
- Identify the server and authenticate it through server's public key or SSL certificate authority's digital signature.
- Establish session keys to use the symmetric encryption for further data in transit.
Below are the exact steps that occur during the TLS DH handshake
- The browser(client) will send the "Hello" message to server with details of its TLS version and cipher suites. It also sends string of random bytes known as client random
- The server replies with to the client with its SSL certificate, cipher suite and server random.
- The client verifies the server's SSL certificate with the certificate authority that issued it. This confirms that the server is who it says it is, and that the client is interacting with the actual owner of the domain.
- The client sends one more random string of bytes, the "premaster secret." The premaster secret is encrypted with the public key and can only be decrypted with the private key by the server. (The client gets the public key from the server's SSL certificate.)
- The server decrypts the premaster secret using the private key
- Both client and server generate session keys from the client random, the server random, and the premaster secret. They should arrive at the same results.
- The client sends a "finished" message that is encrypted with a session key.
- The server sends a "finished" message encrypted with a session key.
Comments
Post a Comment