{
  "id": 3179349,
  "title": "Stop saying SSL: TLS only does three jobs, and your 'SSL cert' is usually not the outage",
  "url": "https://urgent.news/2026/08/25/stop-saying-ssl-tls-only-does-three-jobs-and-your-ssl-cert-is-usually",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-08-25T03:34:23.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/sunshoutkernel/stop-saying-ssl-tls-only-does-three-jobs-and-your-ssl-cert-is-usually-not-the-outage-26dh"
  },
  "original_language": "en",
  "account": "Many runbooks still instruct renewing the SSL certificate when encountering a browser warning about an obsolete protocol. However, this new certificate might be brand new; the issue lies within the tunnel using TLS 1.0. The distinction between SSL and TLS is crucial. SSL is an outdated Netscape protocol from the 1990s, now withdrawn due to vulnerabilities like POODLE.\n\nToday, browsers primarily communicate using TLS, currently versions 1.2 or 1.3. The file containing the X.509 certificate remains unchanged; it is still referred to as an SSL certificate. The SSL/TLS handshake remains integral to the secure connection process. Many still use the terms SSL cert, as vendors popularized this terminology. This certificate that people often refer to as an \"SSL cert\" is actually an X.509 certificate.\n\nThe handshake that utilizes this certificate is still TLS, not SSL. The SSL/TLS versions in use could be 2.0/3.0 (disabled), 1.0/1.1 (disabled), or 1.2/1.3 (enabled). The handshake's three primary jobs are confidentiality, integrity, and authentication. Confidentiality is achieved through encryption, preventing unauthorized access to the data. Integrity ensures that the data has not been tampered with during transmission, often achieved using a MAC (Message Authentication Code) based on AES. Authentication is verified through the certificate, which binds a hostname to a key that the Certificate Authority (CA) vouches for.\n\nThe HTTPS tunnel's metaphor is not solely defined by the lock icon indicating safety; it signifies that the bits on the wire are encrypted and unmodified for the specified name. However, trusting the lock does not imply safety from other layers of vulnerabilities like XSS and malicious origins. An outage caused by this scenario involves a new Let's Encrypt leaf certificate being refused by browsers due to still supporting obsolete TLS versions like 1.0 or 1.1. The cause is often rooted in servers retaining outdated protocols or lacking support for TLS 1.2 or higher. Simply renewing the certificate does not resolve the issue; instead, one must check the configuration thoroughly.\n\nTo diagnose these problems, one must employ specific commands. For instance, running `openssl s_client -connect example.com:443 -tls1` should result in failure, while `openssl s_client -connect example.com:443 -tls1_2` should succeed. For web servers like nginx or Apache, ensure that `ssl_protocols` is set to `TLSv1.2 TLSv1.3` and `ssl_prefer_server_ciphers` is disabled. This configuration forces the server to use only TLS 1.2 or TLS 1.3, preventing compatibility issues with older clients.\n\nWhen securing communications, it is essential to prioritize modern encryption methods. The key exchange method should be ECDHE, which provides forward secrecy. Avoid static RSA key exchange, as it leaves data vulnerable to decryption if the private key is compromised. Utilize strong bulk encryption algorithms like AES-GCM or ChaCha20-Poly1305, which offer robust protection against various attack vectors. Avoid using outdated encryption methods such as CBC + HMAC, 3DES, RC4, MD5, or SHA-1.\n\nIt is important to note that OpenSSL versions 1.0.2 and 1.1.1 have reached their end of life, meaning they no longer receive security updates. Therefore, running these versions poses a significant risk. Instead, adopt LTS (Long-Term Support) versions and promptly apply patches when critical security issues are announced. Let's Encrypt issues certificates to secure websites, but securing the handshake involves configuring `ssl_protocols` correctly within OpenSSL or BoringSSL. Buying a certificate does not inherently enhance security; rather, it is the configuration of `ssl_protocols`, proper key management, and disabling compression that fortifies the connection.\n\nLastly, the Korean original provides additional details regarding the SSL/TLS handshake process and includes a cipher table. If you encounter situations where sites appear to function but scan tools still flag TLS 1.0, it is advisable to review the output from `openssl s_client -tls1` before considering further actions like certificate renewal.",
  "summary": "Runbooks still say \"renew the SSL certificate\" when the browser warning is obsolete protocol . The certificate can be brand new. The tunnel is still TLS 1.0. This is a shortened English note. The tables, handshake diagram, and OpenSSL CLI checks live on the original post: https://sunshout.tistory.com/2206 SSL vs TLS (the only distinction that matters) SSL is a Netscape protocol from the 1990s.…",
  "key_points": [
    "SSL and TLS are distinct protocols; SSL is outdated and vulnerable",
    "TLS versions 1.2 or 1.3 are currently used by browsers",
    "Three primary jobs of SSL/TLS handshake: confidentiality, integrity, authentication"
  ],
  "editors_take": "Relying on an outdated understanding of SSL and TLS can lead to misdiagnosing and mishandling outages, as the real issue often lies in disabled or outdated TLS versions, not the certificate itself.",
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}