← Back to Mission Control

Secure Communications

6 min read

SSH Keys

Mission Phase 15 • Difficulty: Intermediate

Encrypted Transmissions

SSH keys provide secure, password-free authentication between your spacecraft and mission control. They use public-key cryptography—industry standard security.

Why SSH Keys?

Checking for Existing Keys

ls -la ~/.ssh

Look for files like id_rsa.pub or id_ed25519.pub. If they exist, you already have keys!

Generating New SSH Key

ssh-keygen -t ed25519 -C "your.email@example.com"

Press Enter to accept default file location. Enter a passphrase (recommended but optional).

This creates two files:

Starting SSH Agent

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

Adding Key to GitHub

  1. Copy your public key:
cat ~/.ssh/id_ed25519.pub
  1. Go to GitHub → Settings → SSH and GPG keys
  2. Click "New SSH key"
  3. Paste your public key
  4. Give it a title (e.g., "Personal Laptop")
  5. Click "Add SSH key"

Testing Connection

ssh -T git@github.com

You should see: "Hi username! You've successfully authenticated..."

HTTPS vs SSH

Two ways to connect to GitHub:

SSH is more convenient for frequent pushing/pulling.

Security Note

Never share your private key (id_ed25519). Only share the public key (id_ed25519.pub). The private key is like your password—keep it secret!

Next: Transmitting to Space

Your secure communications channel is established. Now let's push your code to GitHub!