2012年3月4号,GitHub 的公钥安全漏洞被一个叫 Egor Homakov 的俄国人利用了。这个漏洞允许他向 GitHub 上的 Ruby on Rails 框架的主分支上提交代码。Git 使用中的教训:签名提交确保代码完整可信

SSH key 的生成及使用

  • 生成一个 SSH key ssh-keygen -t ed25519 -C "i@tosone.cn"
  • 在 GitHub 中这个页面添加 SSH key。
1
2
3
4
Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/id_ed25519

GPG key 的生成及使用

  • 安装 gpg2 brew install gpg2
  • 生成一个 GPG key gpg --full-generate-key
  • 列出所有的 GPG key gpg --list-keys
  • 配置将要使用的 GPG key git config --global user.signingkey 0A46826A
  • 配置 GIT git config --global commit.gpgsign true
  • 在 GitHub 中这个页面添加 GPG key。