X.509 Certificate Generator (self-signed / CA-signed with file input)
About this tool
Generate RSA keys entirely in the browser (Web Crypto API) to issue self-signed certificates and CA-signed certificates using an existing CA private key.
- Key types: RSA 2048 / 3072 (RSASSA-PKCS1-v1_5 + SHA-256)
- Subject fields (CN, O, OU, C, ST, L) are UTF-8
- Supports SAN (DNS and IP)
- Extensions: basicConstraints / keyUsage / extendedKeyUsage / SubjectKeyIdentifier / AuthorityKeyIdentifier
- Output: certificate (DER .crt / PEM), private key (PKCS#8 PEM), combined PEM bundle
In CA-signed mode you can load .crt (DER/PEM) and .key (PKCS#8 PEM) files directly. This lets you keep an internal root certificate installed on devices while issuing server certificates without reimporting keys. All processing takes place entirely in your browser; no data is transmitted.
Profile
Subject / Issuer
Subject Alternative Name
Extensions
Inputs for CA-signed mode
Output
Serial / Fingerprint
Certificate (PEM)
Private Key (PKCS#8 PEM)
How to build a private certificate chain
- Create the root CA (Mode: Self-signed, Profile: CA).
Save the generatedroot.crt
(DER) andprivate.key
. - Issue the server certificate (Mode: CA-signed, Profile: Server).
Selectroot.crt
as the CA certificate andprivate.key
as the CA key.
Add the target DNS/IP to SAN and click Generate.
Use the resultingcert.crt
(server) andprivate.key
(server). - Import
root.crt
into client trust stores (Firefox uses its own store).
Deploy the server certificate and key, bundling the chain if needed.
Cautions
- When enabling the CA flag (basicConstraints=CA), also enable keyUsage keyCertSign.
- Keep the root CA private key offline.
- Encrypted PKCS#8 (BEGIN ENCRYPTED PRIVATE KEY) is not supported.
All processing takes place entirely in your browser; no data is transmitted.