In order to ensure security, the TLS protocol accomplishes:
Encryption (hides the data being transferred from third parties),
Authentication (ensure that the parties exchanging information are who they claim to be)
Integrity (verifies that the data has not been forged or tampered with).
For a website or an application that uses TLS, a certificate issued by the certificate authority must be installed on a web server or domain where the certificate comprises important information like the server's public key and who owns the domain or website.
When a user opts to visit a TLS certified website, a TLS connection is initiated using a sequence known as a TLS handshake. During the TLS handshake, the web server and user’s device:-
Specifies which version of TLS the web server and the user’s device will use
Specifies cipher suites that the web server and the user’s device will use.
Authenticate the identity of the web server by using a TLS certificate.
Generate the session keys for encrypting messages between the web server and the user’s device.
For each session between the web server and the user’s device, the TLS handshake will establish cipher suites. A cipher suite is basically a set of algorithms that contains details like encryption keys or session keys. Matching session keys are set for each session on an unencrypted channel by TLS with the help of public-key cryptography in which data is encrypted using two different keys from which one key is made public which anyone can use and the other key is made private.
The data which will be encrypted using a public key will only be decrypted using a private key only and vice-versa. Similarly, authentication is also handled by TLS handshake which usually consists of providing the web server’s identity to the user. Once the data is encrypted and authenticated, it is then signed with the message authentication code (MAC). The recipient can verify the MAC to ensure the integrity of the data.
TLS 1.3 vs. TLS 1.2
Major differences between TLS 1.3 and TLS 1.2 are more secure cipher suites, zero round trip time (0-RTT) and a better handshake, altogether providing better performance and robust security.
1. Zero Round-Trip Time (0-RTT)
In TLS 1.2, handshakes take place using two mechanisms i.e. a static RSA key or a Deffie Hellman key. Security risks posed by a static key can compromise the security of the network if accessed illegally. Therefore, handshakes in TLS 1.3 completely relies on the Deffie-Hellman key. Deffie-Hellman allows the client to send the requisite randoms and inputs needed for the key generation while performing handshake. This saves an entire round-trip on the handshake which improves overall performance. In addition to this boost, when a user is accessing a site that has been visited previously, a client can send data on the first message to the server by leveraging pre-shared keys (PSK) from the prior session—thus “zero round-trip time” (0-RTT).
2. A Faster Handshake
TLS encryption and decryption need CPU memory which adds latency in the network. In TLS 1.2, a total of 5-7 data packets are needed to complete the handshake and in TLS 1.3, where new faster methods are implied, handshakes can be done in only 0-3 packets. Thus, reducing latency and promoting performance in the network.
3. Elementary and Robust Cipher suites
In TLS 1.3, the number of packets while handshake and the size of cipher suites used for encryption are reduced. In TLS 1.2 and earlier versions, the cipher suites had a cryptographic weakness which further poses threats and questions about the security of the system. On the other hand, in TLS 1.3, the algorithms used in cipher suites are more secure and have no known vulnerabilities. The up-gradation of TLS 1.2 into 1.3 has also removed an occurrence of instances where clients and servers can negotiate new parameters and generate new keys (popularly known as “renegotiation”), which increases the risk. Therefore, the algorithms for cipher suites in TLS 1.3 are less vulnerable to cyberattacks as compared to its latter version TLS 1.2.
With these changes in the latest version of TLS protocols, various web browsers shifted to TLS 1.3 to maintain user satisfaction and trust in their products.
Security has always been a concern for every field, particularly where data related to any community is included. Like any other respective field of operation, IETF has also launched a security protocol for the internet and network known as SSL which was later recognized as TSL. TLS 1.3 protocol has many advantages over its predecessor TLS 1.2 including increased security, performance and zero round trip time, which makes TLS 1.3 most favorable to be executed in today’s world.
Sukhjeet is a research analyst at Copperpod IP. He has a Bachelor’s degree in Electronics and Communications Engineering. His areas of interest are Wireless Communication, Internet of things (IoT), Embedded systems, 3D-Prototyping and Control and Automation.