Skip to content
Free, no sign-up, in your browser

SSH Key Generator: Create an Ed25519 or RSA SSH key online

Create an SSH key online with the free SSH Key Generator: an Ed25519 or RSA key pair, directly in your browser with no sign-up, optionally with a passphrase. You get the Public Key as a single line such as ssh-ed25519 AAAAC3Nz… admin@mein-laptop for authorized_keys, the Private Key in OpenSSH format, and the SHA256 fingerprint. The Private Key never leaves this page.

Built by Florian Galz

Key ready? Add it to a ZAP-Hosting VPS when you order.

Key type

Appears at the end of the public key so you can identify it on the server later.

Encrypts the private key like ssh-keygen (bcrypt, 16 rounds, AES-256). Without a passphrase, anyone with the file can use it to log in.

The key is generated only in your browser (Web Crypto API). No requests, no storage: the private key never leaves this page.

Choose a type, comment and passphrase, then click “Generate key pair”. The public key, private key and fingerprint will appear here.

Example result

What a key from the SSH Key Generator looks like

You choose the key type, comment, and optional passphrase; the tool provides a public key, private key, and fingerprint. Below is a real Ed25519 public key as an example. Your key is new with every click, so it will look different.

Example · Fixed example key; every new key is different

Input

Key type
Ed25519
Comment
admin@mein-laptop
Passphrase
optional
A passphrase encrypts only the private key; the public key stays the same.

Output

Public key (id_ed25519.pub)
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOqb9NdaBdneuqRd7QOYM6KYP5ZQlUq07JqHDlI7RY1I admin@mein-laptop
This single line goes into ~/.ssh/authorized_keys on the server.
Fingerprint (SHA256)
SHA256:f3J1EiY0bTdQMCH1DWyTodDOtoGE0abQW7po14q8jlE
ssh-keygen -l and ssh-add -l show the same value once the key is loaded.
Server command
mkdir -p ~/.ssh && chmod 700 ~/.ssh && echo 'ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOqb9NdaBdneuqRd7QOYM6KYP5ZQlUq07JqHDlI7RY1I admin@mein-laptop' >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys
Appends the public key to authorized_keys and sets the correct permissions.

Anatomy of a public key

PartMeaning
ssh-ed25519Key type: ssh-ed25519 for Ed25519, ssh-rsa for RSA.
AAAAC3NzaC1lZDI1…The actual public key in Base64. Always 68 characters for Ed25519; over 700 for RSA 4096.
admin@mein-laptopComment: choose any text to help identify the key. It doesn't affect login.

Why this tool

Create SSH keys online without them leaving your browser

What this SSH Key Generator does and what it takes care of.

Browser only

Generated on your device using the Web Crypto API. No requests, no storage: your private key never leaves this page.

Ed25519 and RSA

Ed25519 as the modern standard; RSA with 4096 or 3072 bits for older systems.

Optional passphrase

Encrypts the private key like ssh-keygen (bcrypt with 16 rounds, AES-256-CTR).

Genuine OpenSSH format

Private key as -----BEGIN OPENSSH PRIVATE KEY-----, public key as a single line for authorized_keys, just as ssh-keygen writes them.

Fingerprint for verification

Shows the SHA256 fingerprint, the same value returned by ssh-keygen -l.

Commands for adding the key

Ready-to-use commands for ssh-copy-id, authorized_keys, and logging in, with the correct filenames and permissions.

How it works

How the SSH Key Generator works

Go from a new key pair to passwordless login in four steps.

Step 1

Choose key type

Choose Ed25519 (recommended) or RSA. For RSA, set the key length to 4096 or 3072 bits.

Step 2

Create SSH key

Optionally enter a comment such as max@laptop and a passphrase, then repeat the passphrase to confirm it. Click “Generate key pair” to create a Public Key, Private Key, and SHA256 fingerprint in your browser.

Step 3

Save files

Copy or download the Private Key and Public Key (e.g. id_ed25519 and id_ed25519.pub) and put both in your .ssh folder. On Linux and macOS, set the Private Key's permissions with chmod 600.

Step 4

Add public key

Copy the public key to ~/.ssh/authorized_keys on the server using ssh-copy-id or the command shown. You can then log in with ssh -i without a password.

Basics

What is an SSH key and how does it work?

An SSH key is a pair consisting of a Public Key and a Private Key. Instead of entering a password, your computer proves during login that it holds the matching Private Key.

Public Key: goes on the server

The Public Key is a single line that you add to ~/.ssh/authorized_keys on the server. It isn't secret: knowing it doesn't let someone log in.

Private Key: stays with you

The Private Key stays on your computer, ideally in ~/.ssh/ and encrypted with a passphrase. Anyone who gets the unprotected file can log in wherever the matching Public Key is installed.

Prefer to create it in the terminal?

These ssh-keygen commands create the key pair locally on your computer, in the same OpenSSH format produced by the SSH Key Generator:

ssh-keygen -t ed25519 -C max@laptopssh-keygen -t rsa -b 4096 -C max@laptop

Explore more

Related tools for servers and developers

FAQ

Frequently asked questions about the SSH Key Generator

Quick answers about key types, passphrases, security, and adding a key to your server.

Three things: the public key as a single line (e.g. ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOqb9NdaBdneuqRd7QOYM6KYP5ZQlUq07JqHDlI7RY1I admin@mein-laptop), the private key in OpenSSH format (-----BEGIN OPENSSH PRIVATE KEY-----), and the fingerprint, e.g. SHA256:f3J1EiY0bTdQMCH1DWyTodDOtoGE0abQW7po14q8jlE. You can copy both keys or download them as id_ed25519 and id_ed25519.pub.

The key pair is generated entirely in your browser using the Web Crypto API. There is no server request, storage, or logging; the Private Key never leaves this page. If you close the tab without saving the key, it's gone. If you'd rather generate the key entirely locally, use ssh-keygen -t ed25519 in the terminal.

Ed25519 is recommended: its keys are short, quick to generate, and supported by OpenSSH since version 6.5 (2014). Use 4096-bit RSA only if an older system, router, or service doesn't support Ed25519 yet. 3072 bits is the minimum we offer for new RSA keys; there is no 2048-bit option. If your browser cannot generate Ed25519 keys yet, the tool shows a notice and a button to switch to RSA.

It's optional but recommended. With a passphrase, the tool encrypts the private key just like ssh-keygen (bcrypt with 16 rounds, AES-256-CTR). Anyone who finds the file can't log in without the passphrase. Use ssh-agent so you don't have to enter it for every connection. You can change it later with ssh-keygen -p -f ~/.ssh/id_ed25519.

The easiest way is ssh-copy-id -i ~/.ssh/id_ed25519.pub root@<server-ip>. Alternatively, run the command shown by the tool on the server: it creates ~/.ssh, appends the line to ~/.ssh/authorized_keys, and sets permissions to 700 and 600 respectively. You can then log in without a password using ssh -i ~/.ssh/id_ed25519 root@<server-ip>.

Yes. The Public Key is a standard OpenSSH line (ssh-ed25519 or ssh-rsa, key, comment), just as ssh-keygen writes it to the .pub file. Add this line to your account's SSH key settings. The Private Key stays on your computer.

Store them in ~/.ssh/ on Linux and macOS, or in C:\Users\<Name>\.ssh\ on Windows. On Linux and macOS, the Private Key needs permissions of 600 (chmod 600 ~/.ssh/id_ed25519), or SSH will reject it. Windows 10 and 11 include OpenSSH, so the files work directly with ssh in the terminal. For PuTTY, import the Private Key into PuTTYgen (Conversions > Import key) and save it as a .ppk file; the tool itself only outputs OpenSSH format. Never share the Private Key; only the .pub file goes on the server.

The fingerprint is a short SHA-256 checksum of the public key, e.g. SHA256:f3J1EiY0bTdQMCH1DWyTodDOtoGE0abQW7po14q8jlE. It lets you identify a key without comparing the entire line. ssh-keygen -l -f ~/.ssh/id_ed25519.pub shows the same value.

Any more questions?

Contact Support
Got a key but no server?

Looking for a VPS with full SSH access?

A ZAP-Hosting VPS gives you root access via SSH, your own firewall, and key-based login from day one.

4.4/5 Trustpilot32,000+ Active serversSince 2010

No setup. No risk. Online in seconds.

Flexible TermCancel anytimeOnline in 60 seconds

Looking for more tools? View all developer tools