AES Encryption Explained: How It Works and Why It Matters
Jun 23, 2026
Generate RSA, ED25519, and ECDSA SSH key pairs with optional passphrase protection.
SSH (Secure Shell) is a cryptographic network protocol for secure communication over an unsecured network. SSH key pairs are used for passwordless authentication to servers, Git repositories, and other remote services.
An SSH key pair consists of a public key that you place on the server (in ~/.ssh/authorized_keys) and a private key that you keep secret on your local machine. The server uses the public key to verify your identity when you connect.
Modern, fast, and highly secure. ED25519 keys are ~50% faster than RSA and provide excellent security with a compact key size. They are supported by OpenSSH 6.5+ and most modern systems.
The most widely supported key type. Works with virtually all SSH servers. Use 4096 bits for stronger security or 2048 bits for compatibility with older systems.
Based on elliptic curve cryptography. Available in 256-bit (P-256), 384-bit (P-384), and 521-bit (P-521) variants. P-256 offers security comparable to RSA 3072 with a much smaller key size.
~/.ssh/id_ed25519 (or similar) and run chmod 600 ~/.ssh/id_ed25519.~/.ssh/authorized_keys file.ssh user@server — no password needed!No. Your SSH key is generated in a temporary directory, displayed to you once, and then immediately deleted. The key is not stored, logged, or retained in any way.
Yes, it is strongly recommended. A passphrase encrypts your private key on disk. Without one, anyone who gains access to your private key file can use it immediately. With a passphrase, they would also need to know your passphrase.
Yes. Simply go to Settings > SSH Keys in your GitHub or GitLab account and paste the public key. ED25519 and RSA keys are both supported.
The public key can be freely shared and placed on servers. The private key must be kept secret and never shared with anyone. Anyone with your private key can impersonate you.
Blog
Jun 23, 2026
Jun 23, 2026
Jun 23, 2026
Jun 23, 2026
Jun 23, 2026
Jun 23, 2026