Skip to main content

Add Signing Key to GitHub

This guide walks through adding your SSH signing key to GitHub so your commits show as "Verified."

Prerequisites

1. Copy Your Public Key

# Copy to clipboard
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub | Set-Clipboard

# Or display to copy manually
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub

2. Add to GitHub

  1. Go to github.com/settings/keys
  2. Click New SSH key
  3. In the Title field, add a descriptive label (e.g., "Signing Key - Work Laptop")
  4. For Key type, select Signing Key
  5. In the Key field, paste your public key
  6. Click Add SSH key
tip

You can use the same SSH key for both authentication and signing, but you need to add it twice - once as an "Authentication Key" and once as a "Signing Key."

3. Verify It's Working

  1. Make a signed commit:
Add-Content test.txt "test"
git add test.txt
git commit -m "Test signed commit"
git push
  1. View the commit on GitHub - it should show a green Verified badge

Troubleshooting

Commits Show "Unverified"

  1. Email mismatch: The email in your Git config must match an email on your GitHub account

    git config --get user.email
  2. Key not added as signing key: Ensure you added the key with type "Signing Key" (not just "Authentication Key")

  3. Wrong key being used: Verify Git is using the correct key

    git config --get user.signingkey