4 Security Protocols: TLS - Transport Layer Security
Security Protocols
TLS - Transport Layer Security
TLS (Transport Layer Security) is a security protocol. It builds upon lower-level network layers like TCP/IP.
Network Stack with HTTP
Introducing a Security Layer: HTTPS
Usage Beyond HTTP
TLS isn't just exclusive to HTTP. Other applications utilize it as well.
Example: Mail services.
SSL / TLS History and Versions
Originally, SSL (Secure Socket Layer) was developed by Netscape.
SSL Version 2.0 appeared in 1995 but was quickly succeeded by SSL 3.0 in 1996.
The IETF (Internet Engineering Taskforce) took over and published Transport Layer Security 1.0 as RFC 5246 in 1999. This was a successor to SSL.
The current version is TLS 1.3, defined in IETF RFC 8446.
Older versions (SSL 2.0, SSL 3.0, TLS 1.0, TLS 1.1, and TLS 1.2) should be disabled due to known security vulnerabilities.
SSL / TLS - How it Works
The primary objective is to establish a shared key. This ensures:
Confidentiality: Protecting message content from unauthorized access.
Integrity/Authenticity: Verifying that the message hasn't been altered and confirming the sender's identity.
Symmetric encryption is then used with the shared key to encrypt the messages.
Key sub-protocols:
TLS Handshake: Negotiates cryptographic parameters and (optionally) authenticates the server and/or client. It establishes the shared key.
TLS Record: The actual secure transport protocol used for encrypting and decrypting data.
Diffie-Hellman key exchange (or its variants) is often employed to create the shared secret.
TLS Phases
TLS Handshake:
Purpose: Authenticates the server (and sometimes the client). In HTTPS, mostly the server is authenticated.
Outcome: A shared key and a session ID (or session ticket) are established.
TLS Record:
After the ChangeCipherSpec messages are exchanged, all data transmitted is encrypted using the negotiated shared key and algorithm.
TLS Alert:
Used to signal errors or close the connection immediately.

