TXT · Text & Data tools

SSH Key Pair Generator

Algorithm
Comment (Optional)
Public Key (OpenSSH)
Private Key
rsa-2048algorithmWaitingstatus

Generate SSH key pairs for authenticating with remote servers, Git repositories, or cloud infrastructure. Instead of dropping into the terminal to run ssh-keygen, you can configure the algorithm, key size, and output format using a visual interface.

The public key acts as your identity, which you share with the systems you want to access. The private key acts as your password, which you must keep secure and never share.

Choosing an algorithm

Keys can be generated using two algorithms:

  • Ed25519: The modern standard. It uses elliptic-curve cryptography to provide high security with a short key length. Use this for all new SSH keys unless the target server rejects it.
  • RSA: The legacy standard. Select 2048-bit or 4096-bit RSA keys if you are connecting to older systems that do not support Ed25519.

Authorized keys

Copy the Public key and append it to the ~/.ssh/authorized_keys file on the target server, or add it to a GitHub/GitLab profile.

Save the Private key to a local directory (for example, ~/.ssh/id_ed25519). Ensure its file permissions are locked down so only the owner can read it, or SSH clients will refuse to use it.

Frequently Asked Questions

Ed25519 is the modern standard for SSH. It uses elliptic-curve cryptography to produce shorter keys with high security. Choose RSA (2048 or 4096-bit) only if you must authenticate with older legacy systems.

The public key is formatted as a standard OpenSSH single-line string (like ssh-ed25519 or ssh-rsa). The private key is wrapped in the standard OpenSSH or PEM header block.

Ed25519 is faster, more secure against modern attacks, and generates much shorter keys. RSA is an older standard that requires much larger key sizes (like 4096 bits) to achieve similar security levels.

Privacy-Enhanced Mail (PEM) is a standard file format used across cryptography. The private key is wrapped in Base64 encoding between standard ASCII tags like -----BEGIN PRIVATE KEY-----.

On Unix-like systems, run 'chmod 600' on the private key file. If the permissions allow other users to read it, the SSH client will throw a 'bad permissions' error and refuse to connect.

This tool generates unencrypted key pairs. To encrypt the private key with a passphrase on your machine, you must use the 'ssh-keygen -p' command in your terminal after saving it.

Explore Our Tools

Browse all tools