GPG署名付きCommitをしたかったのでメモ
GPGってなに?
Gnu Privacy Guard
の略称で、通信やストレージを暗号化と復号化するためのツール
暗号化だけでなく署名や認証をしてインターネット上の通信の機密や信用を管理するためにも利用される
0.GPGをinstallする
次のコマンドでGPGとpinentryをinstallする
pinentryはパスワードを設定した時に使用するので必要ならinstallする
$ brew install gpg pinentry-mac
0-1.pinentryの設定を追記
pinentryを使えるようにするため、GPGの設定を修正する
$ echo "pinentry-program /usr/local/bin/pinentry-mac" > ~/.gnupg/gpg-agent.conf $ gpgconf --kill gpg-agent
1.GPGの鍵を作る
次のcommandで鍵を作る
$ gpg --full-generate-key
暗号方式や鍵の長さが指定は任意でどうぞ
2.GPGのGPG IDを確認
次にGPG ID
を確認する
次のcommandで、private keyのリストを表示する
$ gpg --list-secret-keys --keyid-format LONG
ssb rsa4096/<GPG ID> YYYY-MM-DD [E]
のようなものが表示される
3.GPGのPublic keyの取得
次に、GitHubで使用するPublic keyを取得する
次のcommandで、GPG ID
を引数に入れるとPublic keyが出力される
この出力結果を、GitHubに登録する
$ gpg --armor --export {GPG ID}
3..gitconfig
に設定する
CommitするときにGPGの署名をつけるために次のcommandで.gitconfig設定する
$ git config --global commit.gpgsign true $ git config --global user.signingkey {GPG ID}
これで完了