TLS (Transport Layer Security) is the cryptographic protocol that encrypts the connection between your browser and the websites you visit. Every time you see "HTTPS" in your browser's address bar, TLS is at work. You can check which version of TLS your connection uses on whatsmy.fyi.
TLS vs SSL: What Is the Difference?
You will often see "SSL" and "TLS" used interchangeably in everyday conversation, but technically they are different:
- SSL (Secure Sockets Layer) was the original protocol, developed by Netscape in the 1990s. SSL 2.0 and SSL 3.0 are both deprecated and have known critical vulnerabilities.
- TLS (Transport Layer Security) is the successor to SSL, first standardised as TLS 1.0 in 1999. It is what all modern HTTPS connections use.
No modern browser or server uses SSL. When someone says "SSL certificate", they mean a TLS certificate. The term "SSL" has survived only as a colloquialism.
What Does TLS Do?
TLS provides three fundamental security guarantees:
- Confidentiality: The data exchanged between your browser and the server is encrypted. No one between you and the server (your ISP, a hacker on public Wi-Fi, a government network tap) can read the content.
- Integrity: The data cannot be modified in transit. If someone tampers with a packet, the TLS MAC (Message Authentication Code) will detect it.
- Authentication: TLS uses digital certificates to verify you are actually talking to the real server, not an impersonator. This prevents man-in-the-middle attacks.
TLS 1.2 vs TLS 1.3
TLS 1.3 was standardised in RFC 8446 (August 2018) and represents a major upgrade over TLS 1.2:
| Feature | TLS 1.2 | TLS 1.3 |
|---|---|---|
| Handshake round trips | 2-RTT | 1-RTT (0-RTT for resumed sessions) |
| Cipher suites | Many, including weak ones | Only 5 strong suites |
| Perfect Forward Secrecy | Optional | Mandatory |
| RSA key exchange | Supported (vulnerable) | Removed |
| MD5/SHA-1 in handshake | Allowed | Removed |
The most significant improvement is Perfect Forward Secrecy (PFS), which is mandatory in TLS 1.3. PFS means that even if a server's private key is compromised in the future, past recorded encrypted traffic cannot be decrypted retroactively.
How the TLS Handshake Works
Before encrypted data can flow, your browser and the server perform a TLS handshake:
- ClientHello: Your browser sends the TLS versions it supports and a list of cipher suites it can use, along with a random number.
- ServerHello: The server picks the highest TLS version and strongest cipher both sides support, and sends its certificate.
- Certificate verification: Your browser verifies the server's certificate against trusted Certificate Authorities (CAs) in your OS or browser.
- Key exchange: Both sides derive the same session keys using Diffie-Hellman key exchange (in TLS 1.3, always ephemeral).
- Encrypted traffic begins.
In TLS 1.3, this entire process takes one round trip instead of two, making HTTPS connections noticeably faster.
What Is a TLS Cipher Suite?
A cipher suite is a combination of algorithms used for different parts of the TLS connection: key exchange, authentication, encryption, and message integrity. A TLS 1.3 cipher suite like AEAD-AES256-GCM-SHA384 means:
- AES-256-GCM β 256-bit AES encryption in Galois/Counter Mode
- SHA-384 β the HMAC hash function for message authentication
TLS 1.3 removed all weak cipher suites (RC4, DES, 3DES, CBC-mode ciphers) that had been allowed in TLS 1.2. This dramatically reduces the attack surface.
Frequently Asked Questions
Is TLS 1.2 safe to use?
TLS 1.2, when configured correctly (using only strong cipher suites, PFS enabled), is still considered safe. However, TLS 1.3 is simpler, faster, and provides stronger security guarantees. You should prefer servers that support TLS 1.3.
How do I check my TLS version?
Visit whatsmy.fyi β the TLS Security card shows the exact TLS version and cipher suite your connection used, directly from Cloudflare's edge.
Can I force a website to use TLS 1.3?
TLS version negotiation is automatic β your browser and the server agree on the highest version both support. If the server supports TLS 1.3 (most modern ones do), it will be used automatically. You cannot force a server to upgrade its TLS support from the client side.
What is HTTPS?
HTTPS (Hypertext Transfer Protocol Secure) is simply HTTP transported over a TLS connection. The "S" stands for Secure. When you see HTTPS in your address bar, it means TLS encryption is active and your connection is protected.



