SSL Certificate Decoder
Read what is actually inside a certificate.
Runs entirely in your browser — nothing you paste is sent to our servers.
What this tool does
Every field
Subject, issuer, validity, serial, key algorithm and size, and each extension with its value where it is understood.
Problems called out
SHA-1 signatures, undersized RSA keys, expiry, a missing SAN — the things that make a browser reject a certificate.
Nothing transmitted
A hand-written DER parser runs in this tab. No upload, no request, nothing to log.
Honest about extensions
An extension it cannot interpret is listed with its OID rather than quietly dropped.
Frequently asked questions
Is my certificate uploaded anywhere?
No. The certificate is parsed by JavaScript in this tab and no request is made — you can confirm that in your browser's network panel. Certificates are public by design, but the habit of pasting them into remote services is a bad one to build, and there is no reason for this tool to need a server.
What formats does it accept?
PEM — the block beginning -----BEGIN CERTIFICATE----- — and the bare base64 body without the armour lines. Binary DER can be converted with `openssl x509 -inform der -in cert.der -out cert.pem`. If you paste a full chain, the first certificate in the file is decoded.
What is the difference between the Common Name and Subject Alternative Name?
The Common Name is a single legacy field in the subject. Subject Alternative Name is the extension that actually lists the hostnames a certificate covers, and browsers have ignored the Common Name for hostname matching since 2017. A certificate with a Common Name and no SAN matches no hostname at all in a modern browser.
Why does my certificate say it is not a CA?
Because it is a leaf — an ordinary server certificate. The Basic Constraints extension marks whether a certificate may sign others. Only intermediate and root certificates are CAs; a leaf that was marked as one would be a serious misissuance.
What is the serial number for?
It identifies the certificate uniquely within the issuing CA, and it is what a revocation list or OCSP request refers to. CAs are required to include a large random component so a serial cannot be predicted, which closes off a class of collision attack against the signature.
What are Signed Certificate Timestamps?
Proof that the certificate was submitted to Certificate Transparency logs before issuance. Chrome and Safari require them, so a publicly trusted certificate without SCTs will be rejected regardless of whether the signature is valid.
Can this verify the certificate is trusted?
No, and that is a genuine limitation. Decoding tells you what a certificate claims; establishing trust means verifying the signature chain up to a root your system trusts, and checking revocation. Use the chain checker for the first and the OCSP checker for the second.
Monitor it, don't just check it
One-off checks catch what is broken today. CertNotify watches your certificates, domains, DNS and code continuously and tells you before something breaks.