X.509 Certificate Decoder
Paste a PEM-encoded X.509 certificate — inspect subject, issuer, validity window, SANs, key usage, and SHA fingerprints. Runs in your browser.
PEM certificate
Paste a certificate to see the breakdown.
Decoded entirely on your device.
Parsing uses node-forge in your browser. Fingerprints are computed via the native Web Crypto API. The certificate never leaves the page — safe for internal CAs, customer certs, anything you wouldn’t paste into a random web tool.
How to use it
- 1Paste a PEM block (starts with -----BEGIN CERTIFICATE-----), drop a .pem / .crt / .cer file, or hit Open file. The breakdown appears as you type.
- 2Read the validity banner first — green means valid, amber means expiring soon (≤30 days), red means already expired.
- 3Subject and Issuer panes show the distinguished name fields with human labels (Common name, Organization, Country, …).
- 4Subject alternative names list every hostname / IP / email the cert covers — the bit that actually matters for TLS server certs.
- 5Public Key section shows the algorithm (RSA / ECDSA) and size. Fingerprints pane has SHA-1 and SHA-256 in openssl colon format with one-click copy.
Common use cases
- Sanity-check a TLS server certificate before renewal — confirm the SANs match the hostnames you expect.
- Inspect a customer-provided certificate without piping it through openssl.
- Compare two fingerprints by eye when verifying a cert pin.
- Confirm a self-signed CA cert was generated with the expected key algorithm and lifetime.
- Identify the issuer of a mystery cert pulled from a packet capture or a server's chain.
Frequently asked questions
- Is the certificate sent to a server?
- No. Parsing happens entirely in your browser via node-forge; fingerprints are computed by the Web Crypto API on the device. The cert never leaves the page — safe for internal CAs, customer certs, anything you wouldn't paste into a random web tool.
- What formats are supported?
- PEM-encoded X.509 v3 certificates — the standard format with `-----BEGIN CERTIFICATE-----` headers. Drop a .pem, .crt, or .cer file (text-based forms). For DER-encoded binary certs, convert to PEM first with `openssl x509 -inform DER -in cert.der -out cert.pem`.
- Why does my chain only show one cert?
- Each PEM block decodes a single certificate. If you paste a chain file with multiple BEGIN/END blocks, only the first is parsed. For chain inspection, decode each cert individually by pasting them one at a time.
- What's the difference between Subject and Subject Alternative Names (SAN)?
- Subject is the DN containing fields like Common Name (CN), Organization, Country. Modern TLS clients ignore CN for hostname matching and use SAN entries instead. If a server cert doesn't have SANs covering the hostname you're connecting to, browsers will reject it regardless of what CN says.
- Why is SHA-1 still shown alongside SHA-256?
- Many existing systems (certificate transparency logs, older monitoring tools, pinning configurations) still reference SHA-1 fingerprints. SHA-256 is the modern standard, but having SHA-1 available is useful when comparing against legacy records. The cert's *signature* security depends on the signature algorithm, not on which fingerprint you read.
- Can I decode a CSR (certificate signing request)?
- Not yet — this tool decodes signed certificates only. CSRs use a different ASN.1 structure (PKCS#10). A dedicated CSR decoder is on the roadmap; suggest it via the form linked in the footer if you want it prioritized.
Related tools
Base64 Encode / Decode
Encode and decode text and files to and from Base64.
HTML Live Preview
Write HTML, CSS, and JavaScript and see the result instantly.
JSON Formatter
Format, validate, minify, diff, and explore JSON — with optional on-device AI that summarizes any payload in plain English.
JWT Decoder
Inspect the header, payload, and expiry of any JSON Web Token — with optional on-device AI that explains what the token grants in plain English.
SQL Formatter
Beautify, format, and minify SQL queries for any dialect — with optional on-device AI that explains what a query does in plain English.
Unix Timestamp Converter
Convert Unix timestamps to dates and back, in any timezone.
Hash Generator
Generate MD5, SHA-1, SHA-256, and SHA-512 hashes in your browser.
JSON to TypeScript
Generate TypeScript interfaces or type aliases from JSON.
Markdown to PDF
Convert Markdown to a beautifully styled PDF in your browser.
QR Code Generator
Make QR codes for websites, Wi-Fi passwords, contact cards, social handles, email, SMS, and more. Download as PNG or SVG — or as a ZIP with one branded QR per social platform.
Password Generator
Generate strong, secure passwords in your browser. Nothing is sent or saved to any server.
Text Diff
Compare two pieces of text and see line-by-line, word-by-word, or character-by-character what changed.
UUID / ULID Generator
Generate UUID v4, UUID v7, or ULID identifiers in bulk, instantly in your browser.
SVG to PNG / JPEG / WebP
Convert SVG to PNG, JPEG, or WebP at any size — quality slider, transparent or colored background, copy to clipboard. Free, in your browser.
URL Encoder / Decoder
Encode or decode URLs and query parameters with component-vs-full-URI scope, plus a query-string breakdown. Free, in your browser.
Regex Tester
Test JavaScript regular expressions with live highlighting and a capture-group inspector — plus an AI regex generator that turns plain-English descriptions into regex (on-device Gemini Nano).
Color Converter
Convert colors between HEX, RGB, HSL, HSV, and OKLCH, and generate tint, shade, and harmony palettes. Free, in your browser.
HTML ↔ Markdown Converter
Convert HTML to Markdown or Markdown to HTML with a live preview. GFM tables, fenced code blocks, inline formatting. Free, in your browser.
Cron Builder
Build cron expressions visually or describe the schedule in plain English and let on-device AI write it for you. Plain-English explanation, next 5 runs, presets.
YAML ↔ JSON Converter
Bidirectional YAML / JSON conversion with multi-document support and indentation control. Free, in your browser.
Convert CSV to JSON
Bidirectional CSV / TSV / JSON conversion. Custom delimiters, header detection, auto-typed numbers. Free, in your browser.
Word & Character Counter
Live word, character, sentence, and paragraph counts with reading and speaking time. Free, in your browser.
Lorem Ipsum Generator
Generate placeholder text — paragraphs, sentences, words, or HTML-wrapped output. Free, in your browser.
JWT Generator
Sign JSON Web Tokens with HS256/384/512, RS256/384/512, or ES256/384. In-browser key generation, no server.
Image Compressor
Compress PNG, JPEG, and WebP images with a live quality slider and side-by-side preview. Free, in your browser.
Favicon Generator
Generate the full favicon set — ICO, PNGs at every size, apple-touch-icon, and PWA manifest — from one image. Free, in your browser.
AI Code Explainer
Paste code, get a plain-English explanation from on-device Gemini Nano — no upload, no API key, no signup.
CSS Gradient Generator
Build linear, radial, and conic CSS gradients visually with color stops, presets, and one-click copy. Free, in your browser.
Box Shadow Generator
Build CSS box-shadows visually with offset, blur, spread, opacity, and inset across stacked layers. Live preview, copy-ready CSS.
Mermaid Live Editor
Render Mermaid diagrams live — flowcharts, sequence, class, state, ER, gantt, pie, and mindmap. Export SVG or PNG.
Australian Medicare Number Generator
Generate and validate Australian Medicare card numbers instantly in your browser. Uses the official check-digit algorithm — perfect for testing and development.
Australian ABN Generator & Validator
Generate and validate Australian Business Numbers (ABN) using the official weighted checksum algorithm. Perfect for testing and development — runs entirely in your browser.
Australian ACN Generator & Validator
Generate and validate Australian Company Numbers (ACN) using the official check-digit algorithm. For testing and development — runs entirely in your browser.
Australian Tax File Number (TFN) Validator
Validate Australian Tax File Numbers (TFN) — checks format and the official check-digit algorithm. No TFN generation to protect against misuse. Runs entirely in your browser.
Australian BSB Number Validator
Validate Australian Bank State Branch (BSB) numbers — checks the 6-digit format and identifies the bank from the first two digits.
New Zealand IRD Number Generator
Generate and validate New Zealand IRD (Inland Revenue Department) numbers for testing and development. Uses the official check-digit algorithm.
New Zealand Business Number (NZBN) Generator
Generate and validate New Zealand Business Numbers (NZBN) — 13-digit GS1 identifiers used by NZ companies. For testing and development.
New Zealand Bank Account Number Validator
Validate New Zealand bank account numbers — checks the BB-BBBB-AAAAAAA-SS format, bank code, and overall structure.
Text Case Converter
Convert text between camelCase, PascalCase, snake_case, kebab-case, SCREAMING_SNAKE, Title Case and more — instantly in your browser.
Number Base Converter
Convert numbers between binary, octal, decimal, and hexadecimal — type in any field and the rest update live.
XML Formatter & Validator
Format, validate, and minify XML documents with custom indentation — uses the browser's native DOMParser, nothing uploaded.
CSS & JS Minifier
Minify CSS and JavaScript online — strip comments, collapse whitespace, and see byte-size savings. Runs entirely in your browser.