RSA & SSH Key Generator
Create RSA, ECDSA or Ed25519 key pairs as PEM and OpenSSH keys.
A Key Pair That Never Leaves Your Device
Public-key cryptography needs a pair: a private key you keep and a public key you give out — to a server for SSH login, to GitHub for signing in over SSH, to a service that verifies your signatures. Generating one normally means a command line. This tool does it in your browser, using the browser’s own cryptography and secure random source.
You get the public key as PEM, the OpenSSH line that goes into authorized_keys or a GitHub account, and the private key as unencrypted PKCS #8 PEM, which OpenSSL, OpenSSH and every major programming language read. The SHA256 fingerprint matches what ssh-keygen shows.
Key features
- RSA 2048, 3072 and 4096 — with the standard 65537 public exponent.
- ECDSA P-256 and P-384, and Ed25519 — the modern, compact choices.
- Three formats — PEM public key, PKCS #8 private key and OpenSSH public key.
- SHA256 fingerprint — identical to ssh-keygen -l.
- Generated locally — the private key exists only in this tab until you save it.
This tool runs entirely inside your browser using native Web APIs. Your files and text are never uploaded to a server, never logged and never shared with third parties.
How to use: RSA & SSH Key Generator
- Pick a key type
Ed25519 for modern SSH; RSA 4096 where compatibility matters. - Add a comment
Usually your name or machine; it is appended to the SSH key. - Generate
RSA 4096 can take a few seconds; elliptic-curve keys are instant. - Save both halves
Keep the private key secret; share only the public key.
Technical specifications
| Processing location | Entirely in your browser — no server round trip |
|---|---|
| Data uploaded | None. Files and text never leave your device |
| Price | Free — no account, no trial, no usage cap |
| Category | Security |
| Works offline | Yes, once the page has loaded |
| Browser support | Chrome 90+, Edge 90+, Firefox 90+, Safari 15+ |
| Interface languages | English, 中文, हिन्दी, Español, العربية |
Frequently asked questions
Which key type should I choose?
For SSH, Ed25519 is the modern default: small, fast and strong. RSA 4096 works with older systems that do not support Ed25519. ECDSA P-256 is common in TLS and cloud platforms.
How do I use the key for SSH?
Save the private key as, for example, ~/.ssh/id_ed25519 with permissions 600, and add the OpenSSH public key line to ~/.ssh/authorized_keys on the server or to your GitHub or GitLab account settings.
Is the private key encrypted?
No, it is saved as plain PKCS #8. Add a passphrase afterwards with ssh-keygen -p -f yourkey, or with OpenSSL, if the file will live somewhere others could reach it.
Is it safe to generate keys in a browser?
The keys come from the WebCrypto API, the same code browsers use to secure HTTPS connections, with the operating system’s secure random generator. Nothing is uploaded. As with any private key, generate it on a device you trust.
Why can my browser not make Ed25519 keys?
Ed25519 was added to WebCrypto only recently. Current Chrome, Edge, Firefox and Safari support it; older versions will show a message, and ECDSA P-256 is a good alternative.