SSH Key Generator
Generate Ed25519 or RSA SSH key pairs entirely in your browser — no backend, no uploads.
Ed25519 is faster and shorter; RSA is widely compatible with older servers.
Appears at the end of the public key — typically your email or user@hostname.
What is SSH?
SSH (Secure Shell) is the standard protocol for logging into remote servers and pushing code to Git providers. Key pairs replace passwords with strong public-key cryptography.
Public vs Private
Your public key is uploaded to servers or GitHub and identifies you. Your private key stays only on your machine and proves you're you. Anyone with your private key can impersonate you.
How to use it
On GitHub: Settings → SSH and GPG keys → New SSH key and paste your public key. On a server: append the public key to ~/.ssh/authorized_keys. Keep the private key in ~/.ssh/ with permissions 600.
How to use
- 1
Choose a key type — Ed25519 is recommended; RSA is best for legacy compatibility.
- 2
Add an optional comment (typically your email or user@hostname) to label the key.
- 3
Click Generate Key Pair — everything happens locally in your browser, then copy or download both keys.
Free SSH Key Generator — Create Ed25519 & RSA Keys in Your Browser
Generate secure SSH key pairs (Ed25519 or RSA 2048/3072/4096) entirely in your browser. Standard OpenSSH format, ready for GitHub, GitLab and any Linux server.
Our free SSH Key Generator creates a fresh key pair in standard OpenSSH format directly inside your browser, using the Web Crypto API for Ed25519 and the well-known node-forge library for RSA. Nothing is ever uploaded — the public and private keys are computed on your device and never touch our servers.
Ed25519 is the modern default: small, fast and secure with a 256-bit key that's the cryptographic equivalent of RSA 3072+. Use RSA 2048, 3072 or 4096 if you need to connect to older systems that don't yet support Ed25519. The output is fully compatible with OpenSSH, GitHub, GitLab, Bitbucket, AWS, and any standard Linux/macOS server.
Once generated, copy the public key into your server's authorized_keys file or paste it into your GitHub SSH settings. Save the private key to ~/.ssh/, set its permissions with chmod 600, and never share it — anyone with your private key can authenticate as you.
Frequently Asked Questions
Is this SSH key generator safe to use?
Yes. Key generation runs entirely in your browser using the Web Crypto API (Ed25519) and node-forge (RSA). Your private key is never transmitted, logged, or stored on our servers.
Should I choose Ed25519 or RSA?
Ed25519 is recommended for almost every modern use case — it's faster, shorter and very secure. Choose RSA 3072 or 4096 only if you need to connect to legacy servers that don't support Ed25519.
How do I add the key to GitHub?
Copy the public key, then go to GitHub → Settings → SSH and GPG keys → New SSH key, paste it in and save. You can then push and pull via SSH using git@github.com URLs.
What format are the keys in?
Both keys use the standard OpenSSH format. The public key is a single ssh-ed25519 or ssh-rsa line; the private key is wrapped in -----BEGIN OPENSSH PRIVATE KEY----- and works with ssh, scp, git and OpenSSH-compatible clients.
You might also like
Other tools you might find useful.