🔐 Certificate Decoder – Parse X.509 PEM & DER Certificates
An X.509 certificate is the standard format for public key certificates used in TLS/SSL, code signing, email encryption, and more. While certificates are technically binary ASN.1 structures, this tool decodes them into a clear, human-readable breakdown — no OpenSSL installation required.
What Is a PEM Certificate?
PEM (Privacy Enhanced Mail) is the most common encoding format for X.509 certificates. A PEM certificate is a Base64-encoded DER certificate wrapped between -----BEGIN CERTIFICATE----- and -----END CERTIFICATE----- header lines. Most web server certificates, intermediate CA bundles, and root certificates are distributed in PEM format.
What Is a DER Certificate?
DER (Distinguished Encoding Rules) is the binary form of an ASN.1-structured X.509 certificate. Files with .cer or .der extensions are typically DER-encoded. This tool automatically converts DER binary files to PEM before decoding, so you can upload either format seamlessly.
Key Certificate Fields Explained
Subject & Issuer
The Subject identifies who the certificate was issued to — for a web server certificate, the Common Name (CN) is typically the domain name. The Issuer identifies the Certificate Authority (CA) that signed the certificate. When the Subject and Issuer are identical, the certificate is self-signed (common for root CAs or development environments).
Validity Period & Expiry
Every certificate has a Not Before and Not After date. The tool displays a visual timeline bar showing where today falls within the certificate's lifetime, along with a colour-coded countdown:
- 🟢 Green — Valid with more than 30 days remaining
- 🟠 Amber — Expiring within 8–30 days; renewal recommended
- 🔴 Red — Expires within 7 days or already expired
Subject Alternative Names (SANs)
SANs list every domain name, IP address, or email address the certificate is valid for. Modern TLS certificates use SANs instead of relying on the CN alone. For example, a certificate for example.com might include SANs for www.example.com, api.example.com, and an IP like 192.0.2.1. Browsers validate against the SAN list when establishing HTTPS connections.
Key Usage & Extended Key Usage
Key Usage flags define what cryptographic operations the certificate's public key may be used for (e.g., Digital Signature, Key Encipherment). Extended Key Usage (EKU) further restricts usage — for example, TLS Web Server Authentication allows the cert to authenticate HTTPS servers, while Code Signing allows it to sign software packages.
Certificate Fingerprints
A fingerprint is a cryptographic hash of the full DER-encoded certificate bytes. It uniquely identifies a specific certificate — even a minor change to any field produces a completely different fingerprint. The tool computes both SHA-256 (current standard) and SHA-1 (legacy) fingerprints using your browser's built-in WebCrypto API, matching the output of:
openssl x509 -fingerprint -sha256 -noout -in cert.pemSerial Number
The serial number is a unique integer assigned by the CA to each certificate it issues. It is displayed in both hexadecimal (colon-separated) and decimal formats. Serial numbers are used in Certificate Revocation Lists (CRLs) to identify revoked certificates.
Certificate Chains
A TLS connection typically involves three certificates in a chain: the leaf certificate (issued to your domain), one or more intermediate CA certificates, and a root CA certificate trusted by browsers. Paste a full PEM bundle (multiple -----BEGIN CERTIFICATE----- blocks) and this tool decodes each certificate separately, labelled by its position in the chain.
Common Use Cases
- Debugging HTTPS errors — check expiry, domain mismatch, or missing SANs
- Certificate renewal audit — compare serial numbers and fingerprints before and after renewal
- Security review — verify key size, signature algorithm, and key usage restrictions
- Development & testing — inspect self-signed or locally generated certificates
- Compliance checking — ensure certificates meet policy requirements (minimum 2048-bit RSA, SHA-256 signature, etc.)
Privacy & Security
All certificate parsing happens entirely in your browser using the node-forge library. No certificate data is transmitted to any server. It is safe to decode production, internal, or sensitive certificates with this tool.