SSL certificate viewer (PEM/CRT)

Paste an SSL certificate and extract validity, issuer, and subject CN domain.

{{ sslCertViewer.message }}

Overview

SSL was developed by Netscape in 1994 to solve a problem that threatened to make e-commerce impossible before it even started: how to transmit credit card numbers over the internet without any router along the path being able to intercept and read the data. SSL 2.0 debuted with Netscape Navigator 1.1 in 1995, with SSL 3.0 arriving in 1996. The TLS protocol, which replaced SSL with fundamental cryptographic improvements, was standardized in RFC 2246 in 1999. Today we use TLS 1.3 (RFC 8446, 2018) — technically never SSL anymore, but the popular name persisted. The X.509 certificate format is even older: it was defined by the ITU-T in 1988 as part of the X.500 standard for network directories. The trust infrastructure we use today — certificate authorities (CAs) like DigiCert, Sectigo, and Let's Encrypt — is essentially the same hierarchical model proposed in 1988.

An X.509 certificate is a digitally signed document that associates a public key with an identity. The most relevant fields: Subject (CN = Common Name, the primary domain), SANs (Subject Alternative Names — the list of domains and IPs covered by the certificate, which replaced CN as the authoritative field), Issuer (the CA that signed the certificate), validity period (NotBefore and NotAfter), and the CA's digital signature that proves authenticity. Certificates form a chain: leaf — intermediate — root. The root certificate is pre-installed in the operating system and browser; intermediate certificates are delivered by the server alongside the leaf certificate. The browser's verification traverses the chain from leaf to root, checking the signature and validity at each level. In 2020, browsers reduced the maximum certificate validity to 398 days — forcing frequent renewals. Let's Encrypt, launched in 2015 by the ISRG, automated this process with the ACME protocol and made HTTPS a universal standard by offering free certificates.

This tool decodes certificates in PEM format (base64 between `-----BEGIN CERTIFICATE-----` and `-----END CERTIFICATE-----`) and displays the fields in a readable way — useful for the classic troubleshooting scenarios: verifying whether a certificate is about to expire before the uptime monitor fires an alert, confirming which domains are covered by the SANs before deploying, identifying the intermediate CA chain when a server returns SSL errors in some clients but not others, or simply understanding what is inside a certificate without needing `openssl x509 -text` in the terminal. A practical note: Let's Encrypt certificates have a 90-day validity by design — the argument is that frequent rotation limits the exposure window for compromised keys, and automation via certbot or Caddy eliminates the manual renewal work.

Technical deep dive

Common questions summarized

  • What is this tool for?: It runs fully in your browser: useful to validate, format, or convert data in everyday development.
  • Are my inputs sent to a server?: Processing happens locally with JavaScript. We do not store what you paste into the text areas.
  • Can I use this for real production data?: Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.

Sample payload to try

  • See also the larger "Code Snippets" sample; paste this excerpt to try locally: Example — -----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----

Tool guide

  • What an SSL/TLS certificate is An X.509 certificate signed by a CA that binds a domain to a public key and is used by HTTPS for authentication and encryption.

  • What the tool manipulates A PEM/CRT certificate pasted into the input area.

  • What the tool does Extracts key diagnostics: domain (Subject CN), issuer, and validity window (notBefore/notAfter).

  • Why use it Fast expiry checks, issuer-chain verification, and quick technical audits without external CLI tools.

Code Snippets

Code example
-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----

Example

-----BEGIN CERTIFICATE----- ... -----END CERTIFICATE-----

FAQ

What is this tool for?

It runs fully in your browser: useful to validate, format, or convert data in everyday development.

Are my inputs sent to a server?

Processing happens locally with JavaScript. We do not store what you paste into the text areas.

Can I use this for real production data?

Use at your own risk. For secrets (passwords, tokens), prefer controlled environments and your company policies. And always review the generated contents. Never trust blindly things you see on the internet.