Skip to content
shellhacks.dev

Self-Signed Certificate Generator

Generate a self-signed TLS certificate and private key with SANs, ECDSA P-256 or RSA 2048 and a validity of your choice, without sending the key anywhere.

Free · No sign-up · Your inputs stay in your browser

Input

Generate a self-signed certificate

Output

Nothing generated yet

The key pair is generated and the certificate signed by Web Crypto in this browser; the private key never leaves the page. It carries the subject alternative names, a TLS server usage and a subject key identifier, which is what current browsers and curl require of a certificate. Browsers still warn until it is trusted: for local development, mkcert installs a local CA so they stop. Inspect the result with openssl x509 -in cert.pem -noout -text.

Runs in this browser. Nothing you paste is sent to a server.

What modern clients require

Browsers and curl ignore the common name and read the subject alternative name extension, so a certificate without SANs fails even for the name in its CN. A server certificate also needs the serverAuth extended key usage. The structure follows RFC 5280; check the result with openssl x509 -in cert.pem -noout -text.

When to self-sign

Internal services, test environments and local development, where you control the clients and can add the certificate to their trust store. For local browser work, mkcert creates a local CA and installs it so browsers stop warning. For anything public, use Let's Encrypt.

Share

Frequently asked questions

Why does Chrome reject my self-signed certificate even after I trust it?
Usually a missing subject alternative name, a validity longer than Chrome allows for some trust stores, or a missing serverAuth usage. Certificates generated here include SANs and serverAuth.
Can I make my own certificate authority?
Yes: tick the CA option to generate a CA certificate, then sign server certificates with it using openssl x509 -req -CA. mkcert automates exactly that.
Is what I paste sent anywhere?
No. The tool runs entirely in your browser with JavaScript. Nothing you type or paste is sent to our server or stored.

Go deeper

Suggested reading

Keep planning

Similar tools