LoginSignup
11
6

More than 5 years have passed since last update.

[メモ]: keybaseとgit/githubでgpg keyを共有する

Posted at

作業の備忘録です。

1. gpgとkeybaseをインストール

brew install gpg
brew cask install keybase

作成済みのkeybase accountにログインしている必要がある。 keybase status で状態を確認し、ログインしていなければ keybase login でログイン

keybaseのコマンドラインツールは機能が豊富で、チャットやグループの作成はもちろんのこと、暗号化gitやpgp準拠の署名などがわかりやすくできるので良い感じ(gpgコマンドでも同じことができるのだが、レガシー感バリバリで昔困惑した覚えがある。ようやく使いやすいものが来てくれたかという気持ち)

2. keybase.io上にGPG keyを作成

keybase pgp gen --multi

keybase accountに紐づいたkey pairの作成だけでなく、自動でローカルのgpg keyringに鍵を登録してくれるので、あとは通常のgpg × githubの登録手続きをすれば良い。

--multi は同アカウントに二つ目以降のgpg keyを追加する場合に必要。
Keybase.ioのサーバー上に秘密鍵のコピーを保持するかを聞かれるが、保持する場合は絶対にpass phraseで暗号化すること。

3. 全てのcommitに署名をするようにgitを設定

git公式を参照

gpg --list-secret-keys # 作成したkeyがgpg keyringに(mail addressに紐づいて)登録されていることを確認

keyの暗号方式(この場合はRSA4096なので4096Rと表示される)の横にIDが出るので、以下のコマンドで登録

git config --global user.signingkey 3AA5C34371567BD2 # 3AA5C34371567BD2がIDとする
git config --global commit.gpgsign true # -Sオプションをつけなくても常に署名

4. githubに登録

keybase pgp export -q <keyID> | pbcopy 

で公開鍵をコピーし
githubのkey登録ページから登録

11
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
6