Skip to content
ecdsa.com

Local-first: keys and signatures you paste stay in your browser

The home of digital signatures.

ECDSA signs most of the modern internet — TLS, SSH, JWTs, passkeys, Bitcoin and Ethereum. When a signature refuses to verify, this is where you debug it: free tools that auto-detect curves, formats and encodings, and explain what is actually wrong.

Detected locally in your browser — nothing you paste leaves the page.

free tools
91
no paywall, no trial
run fully in your browser
64/91
the rest say what they send
accounts required
0
open a tool and paste
NIST draft horizon
2035
classical signatures disallowed

Signature Lab

Free tools that do the cryptography in your browser: no accounts, and nothing you paste is sent anywhere. The few tools that must look up public data — a domain, a URL, a Bitcoin address — say so on their page before they do.

Browse by category

Featured tools

Featured

Signature Error Explainer

Diagnose why verification fails

Your signature looks valid but verification fails? Paste key, message and signature — the explainer tests common mismatch causes: wrong hash, wrong curve, encoding confusion, high-S, double hashing.

Open tool
Featured

Nonce Reuse Checker

Scan a Bitcoin address for repeated r values

ECDSA's one fatal mistake: signing twice with the same nonce reveals the private key. Paste a Bitcoin address — the checker scans its historical signatures for repeated r values, the fingerprint of nonce reuse.

Open tool
Featured

OpenSSL Command Builder

Build the openssl command you need

Pick a task — EC or RSA keys, self-signed certificates, CSRs, PKCS#12 bundles, signatures, TLS probes — fill in the blanks and copy a command that works, with every flag explained. Paste a command you found somewhere and it explains that too.

Open tool
Featured

JWT Signer

Sign tokens with your own key

Build a JWT from a header and claims, set iat, nbf and exp with relative times, and sign it with any JOSE algorithm — HMAC, RSA, RSA-PSS, ECDSA or EdDSA. The key stays in your browser.

Open tool
Featured

ASN.1 Explorer

Decode any DER or BER structure

Paste PEM, base64 or hex, or drop a DER file, and walk its ASN.1 tree with byte offsets, OID names and highlighted hex. Flags every place that is BER but not DER.

Open tool
Featured

CSR Generator

Create a CSR and its key locally

Create a PKCS #10 certificate signing request with a key generated in your browser or with your own key. Get the PEM files and the equivalent openssl req command — the private key never leaves the page.

Open tool
Featured

TLS Config Generator

SSL configs for 28 servers

TLS settings for nginx, Apache, HAProxy, Caddy, Postfix, Node.js, Go, Java, .NET and 19 more servers from the TLSRef guidelines — the continuation of Mozilla’s — with post-quantum key exchange where your version supports it, and an explainer for the configuration you already run.

Open tool
Featured

47-Day Certificate Calculator

Plan renewals for 200 → 100 → 47 days

Publicly trusted TLS certificates shrink from 398 to 200, 100 and finally 47 days by 2029. See what that means for your certificates: renewals and domain validations per year, the next deadlines and where your renewal policy breaks.

Open tool
Featured

Post-Quantum Browser Check

Does your browser use ML-KEM?

One click shows whether your browser negotiates the post-quantum hybrid X25519MLKEM768 with Cloudflare, over TLS on TCP and inside QUIC (HTTP/3), whether that is what its version should do, and what intercepting proxies or old versions change.

Open tool
Featured

DKIM Debugger

Why a DKIM signature fails, step by step

Paste a raw email and watch every DKIM signature being checked: simple and relaxed canonicalization with each change highlighted, body and header hashes, the key from DNS. When a signature fails, the debugger rebuilds what the signer saw and names the change that broke it.

Open tool
Featured

EIP-712 Inspector

What a typed-data signature really allows

Paste the typed data a site asks your wallet to sign and read, in plain words, what the signature allows: token permits, Permit2 allowances, Seaport, Blur, LooksRare and CoW orders. Flags unlimited approvals, listings that pay you nothing, far-off deadlines, the wrong chain and look-alike contracts.

Open tool
Featured

Ethereum Transaction Decoder

Decode raw signed transactions

Paste a raw transaction or an eth_getTransactionByHash object: every field, the sender recovered from the signature, the decoded function call and warnings for unlimited approvals and delegations. All envelopes, from legacy to EIP-7702.

Open tool
Featured

Post-Quantum Signatures

Sign & verify ML-DSA, SLH-DSA, Falcon

Generate keys, sign and verify with ML-DSA, SLH-DSA and Falcon, with context strings, pre-hash and deterministic modes. See how much larger post-quantum keys and signatures are than ECDSA and Ed25519.

Open tool
Featured

Passkey Sandbox

Try passkey sign-up and sign-in

Register a real passkey and authenticate with it against a relying party that runs in this page: the WebAuthn options, each verification step of §7.1 and §7.2, the flags, the attestation and the credential record.

Open tool
Featured

Sigstore Bundle Verifier

cosign, npm and GitHub attestation bundles

Verify a Sigstore bundle against the file it signs and the identity you expect: the Fulcio certificate and its SCTs, the Rekor log entry with its inclusion proof and checkpoint, signed and RFC 3161 time-stamps, DSSE and message signatures — offline, like cosign verify-blob.

Open tool
Featured

SSH Signature Verifier

ssh-keygen -Y files, signed commits and tags

Check an SSHSIG signature made with ssh-keygen -Y sign, or a Git commit or tag signed with an SSH key, against an allowed_signers file — namespaces, principals, validity windows and SSH certificates, with the same rules as ssh-keygen.

Open tool
Featured

PDF Signature Verifier

Check PDF signatures without uploading

Drop a signed PDF to see what each signature covers, whether the document changed after signing, who signed it and when. PAdES, CMS, RFC 3161 time-stamps and LTV data are checked in your browser — the file is never uploaded.

Open tool
All 91 tools

How the Lab works

Built like a workbench, not a web service: the page is the whole machine.

  1. Paste your material

    A public key, a JWT, a certificate, a stubborn signature — whatever refuses to verify. No sign-up, no upload button.

  2. Analyzed in your browser

    Curves, formats and encodings are auto-detected and checked right in the tab, with WebCrypto and audited open-source libraries. Your keys and signatures never touch the network.

  3. An answer, with the why

    Not just valid or invalid — the tools test the usual mismatch causes and explain the actual mechanism, in plain language.

From code and from AI agents

The engines behind the tools also answer your scripts, pipelines and assistants.

New research · 500 domains measured

The State of Signatures on the Web

We scanned the busiest sites on the internet with the same engine that powers our domain grader. RSA still outweighs ECDSA 62/38, a quarter of them still answer a TLS 1.0 handshake, and barely one percent would survive the 47-day certificate limit arriving in 2029. Charts, methodology and the raw data are all public.

Read the report

Beyond the Lab

Two bigger checks for the things you run in production:

NIST IR 8547

ECDSA has a retirement date.

NIST's draft transition plan would disallow today's elliptic-curve and RSA signatures after 2035, in favor of post-quantum algorithms. Meanwhile, TLS certificate lifetimes are shrinking from 200 days (2026) to 47 days (2029). Knowing exactly where and how your systems sign things stops being optional well before either date.

Countdown to the end of 2035

00days
00hours
00min
00sec

…until NIST IR 8547 (initial public draft) would have classical signature algorithms — ECDSA, EdDSA and RSA, at every key size — disallowed for federal use. That is the date P-256 and RSA-3072 are measured against.

One earlier step, ~— years out: 112-bit parameter sets — RSA-2048 and P-224 — are deprecated after 2030, meaning still usable but carrying acknowledged risk. Planned, not urgent — but the inventory that makes either date manageable takes longer to build than the swap itself.

Learn

The concepts behind the tools — short, precise, and free of hand-waving.

All articles

Free course · 7 lessons

Signatures by Hand

Learn ECDSA by computing it. Add points on a tiny curve, derive a public key, produce a signature by hand — then do the real thing on P-256 and diagnose one that fails.

Start the course

What's next

The Lab is step one. We are building the platform around it:

  1. Available now

    Repository scanner

    A zero-dependency CLI that maps every place your code signs or verifies: libraries, curves, key handling, JWT configuration — with findings ranked by confidence. Text, JSON and SARIF output.

    npx ecdsa-scan . →
  2. In development

    Signing inventory

    One map from repository to key to environment: which keys exist, what they sign, which algorithms they use, and what needs to migrate before the post-quantum deadlines.

  3. Planned

    Runtime monitoring

    Read-only integrations with AWS KMS and Vault that turn raw signing events into a clear picture: which key signed what, from where, and under which policy.

Frequently asked questions

Is it really local?
Yes, for everything you paste into a tool: the tools verify, decode and convert inside your browser tab — open your browser's network inspector and watch: verifying a signature sends nothing. The exceptions are the tools that have to look up public data: Nonce Reuse Checker, JWKS & OIDC Checker, Weak Key Checker, CAA Record Generator, TLSA Record Generator, DNSSEC Inspector, Post-Quantum Browser Check, TLS Fingerprint (JA4), Bulk Domain Checker, DKIM Debugger, ARC Chain Viewer, DKIM Record Generator, EIP-712 Inspector, Ethereum Signature Verifier, SIWE Verifier, Safe Transaction Hash, Ethereum Transaction Decoder, EIP-7702 Delegation Decoder, Ethereum Nonce Reuse Checker, OIDC ID Token Validator, Web Bot Auth Checker, Sigstore Bundle Verifier, npm Provenance Checker, BIMI & VMC Decoder, Email Authentication Analyzer, Certificate Chain Builder, and AAGUID Lookup. Each says on its page exactly what it sends, and none of them ever needs a private key. Domain Signature Health and My domains send the domain name you check to our scanner.
Why trust these tools?
Mostly, you don't have to — your keys, tokens and signatures stay on the page, so the usual trust question disappears. Beyond that, the tools build on standard primitives (WebCrypto, well-known curve parameters) and are exercised against reference test vectors, including deliberately invalid ones.
What are the NIST deadlines?
NIST IR 8547 (still an initial public draft) plans to disallow classical signature algorithms — ECDSA, EdDSA and RSA — after 2035, in favor of post-quantum algorithms like ML-DSA. One step comes earlier, and only for the weakest parameter sets: those at 112-bit security strength, meaning RSA-2048 and P-224, are deprecated after 2030. P-256, P-384 and RSA-3072 have no 2030 milestone — for them the date is 2035. Separately, US Executive Order 14412 (June 2026) runs ahead of that schedule for federal agencies: their high-value and high-impact systems must use post-quantum key establishment by 31 December 2030 and post-quantum signatures by 31 December 2031, with federal contractors expected to meet PQC-incorporating FIPS by the end of 2030.
Do you store anything?
Nothing you paste into a tool is stored. We keep only what you send us on purpose: your email address when you subscribe to the newsletter or to certificate expiry alerts (double opt-in, one-click unsubscribe), and scan results of public domains, cached for an hour. Analytics counts anonymous page views and usage events such as “a share link was copied” — never what you typed, and never the #s= part of a share link.
Which curves and algorithms are supported?
The NIST curves P-256, P-384 and P-521, plus secp256k1 (Bitcoin/Ethereum), with SHA-256/384/512 hashes. On the JWT side: ES256, ES384 and ES512. Both signature encodings — ASN.1 DER and raw r‖s (IEEE P1363) — are auto-detected.
What's coming next?
The Lab stays free. Around it we are building the platform: the repository scanner is available now, a signing inventory across keys and environments is in development, and read-only runtime monitoring is planned. See the roadmap above.