SSH Key Generator - RSA & Ed25519 Keys in Your Browser

Generate RSA and Ed25519 SSH key pairs instantly in your browser - a browser-based ssh-keygen alternative with no sign-up, no tracking, and no server contact. 100% client-side.

Recommended - faster, smaller, and considered more secure than RSA.

Related Developer Tools

Last updated: May 24 2026

Written and reviewed by QuickTooly Team

SSH Key Generator Guide

Why This SSH Key Generator Is Safe to Use

  • 100% client-side: Key generation runs entirely in your browser using cryptographically secure algorithms - no server contact.
  • Ed25519 & RSA support: Generate modern Ed25519 keys or traditional RSA-2048/4096 keys for maximum compatibility.
  • Ready-to-use format: Output matches the exact format expected by OpenSSH, GitHub, GitLab, and Linux servers.
  • Instant download: Save your public and private keys as standard files (id_ed25519, id_ed25519.pub) ready to deploy.
  • No registration: No email, no account, no tracking - just open the page and generate.
  • Free forever: Unlimited key generation with no usage caps or watermarks.

What is an SSH Key?

An SSH key is a cryptographic key pair used to authenticate to remote systems without a password.

It consists of a matched pair: a private key you keep secret on your machine and a public key you install on any server you want to access. When you connect, the server challenges your client to prove it holds the private key - no password is ever transmitted.

SSH keys are used everywhere in modern development: authenticating to GitHub and GitLab, logging into Linux servers, deploying via CI/CD pipelines, and connecting to cloud infrastructure on AWS, GCP, and Azure. They are more secure than passwords because they cannot be guessed, phished, or brute-forced.

Ed25519 vs RSA

Both key types are secure, but they differ in design and performance:

Ed25519RSA-4096RSA-2048
Public key size68 chars~3.3 KB~1.7 KB
Generation speedInstantSlow (seconds)Fast
Security level128-bit equiv.140-bit equiv.112-bit equiv.
CompatibilityOpenSSH 6.5+ (2014)UniversalUniversal
Use whenNew keys (recommended)Legacy / compliance requiredLegacy systems

How to Use Your Generated SSH Keys

Once you have downloaded your key pair, follow these steps to use them:

  1. 1. Save the private key to ~/.ssh/id_ed25519 (or ~/.ssh/id_rsa for RSA) and set permissions:
    chmod 600 ~/.ssh/id_ed25519
  2. 2. Add the public key to the remote server's ~/.ssh/authorized_keys:
    cat id_ed25519.pub >> ~/.ssh/authorized_keys
  3. 3. For GitHub/GitLab, paste the public key contents into Settings → SSH Keys.
  4. 4. Connect to your server:
    ssh -i ~/.ssh/id_ed25519 user@your-server.com

SSH Key Generator for GitHub, GitLab & AWS

This tool outputs keys in standard OpenSSH format, compatible with all major platforms:

  • GitHub: Settings → SSH and GPG keys → New SSH key - paste your public key and save. Test with ssh -T git@github.com.
  • GitLab: Preferences → SSH Keys - paste your public key, set an optional expiry date, and click Add key.
  • AWS EC2: Import your public key as a Key Pair in the EC2 console, or append it to ~/.ssh/authorized_keys on an existing instance.
  • Bitbucket: Personal settings → SSH keys → Add key - paste your public key.

SSH Key Security Best Practices

To keep your SSH keys secure: never share or upload your private key anywhere, store it with chmod 600 permissions, use a passphrase for extra protection on personal machines, rotate keys periodically for critical servers, and use separate key pairs for different services rather than reusing one key everywhere. For team environments, consider certificate-based SSH authentication for centralized key management.

How This Tool Generates SSH Keys (Technical Details)

Key generation runs entirely inside your browser tab using two audited open-source libraries - node-forge for RSA and tweetnacl for Ed25519. Entropy for both algorithms comes from the browser's crypto.getRandomValues() API - cryptographically secure randomness that never involves our servers. You can confirm this by opening DevTools → Network during generation: zero outbound requests are made. No registration, no data collection, no limits.

Frequently Asked Questions

Is it safe to generate SSH keys in a browser?

Yes - when generation is 100% client-side. QuickTooly's SSH key generator runs entirely in your browser using the Web Crypto API and audited JavaScript libraries. Your private key is never transmitted over the network. You can verify this by opening DevTools → Network and observing zero outbound requests during generation.

Which key type should I choose?

Ed25519 for almost everything - it's faster, smaller, and has stronger security properties than RSA. Use RSA-4096 only when connecting to older SSH servers (OpenSSH < 6.5) or when a compliance policy specifically requires RSA.

What is the comment field for?

The comment is appended to the end of the public key line and is purely informational - it doesn't affect the key's cryptographic properties. Conventionally it's set to user@hostname to help you identify which key belongs to which machine when reviewing authorized_keys files.

Can I add a passphrase to my private key?

This tool generates unencrypted private keys for simplicity. To add a passphrase after downloading, run: ssh-keygen -p -f ~/.ssh/id_ed25519. This encrypts the key file so that even if someone obtains it, they still need the passphrase to use it.

How do I add my SSH public key to GitHub?

Copy the entire public key text, go to GitHub → Settings → SSH and GPG keys → New SSH key, paste it in, and save. Then test with ssh -T git@github.com.

What file permissions should my SSH keys have?

The private key must be readable only by its owner: chmod 600 ~/.ssh/id_ed25519. The ~/.ssh directory itself should be chmod 700. SSH will refuse to use a private key with overly permissive permissions as a security safeguard.