Closed9
GitHub上でコミットにVerifiedと表示されるように署名を勝手にしてもらう
ローカルでコミットするときに自動で署名もしつつ、それがGitHub上で検証されるようにする
この記事のとおりに、コミットに署名できるようにする
brew install gpg
鍵生成
$ gpg --full-generate-key 1.2m 2023/10/12 PM 07:20:53
gpg (GnuPG) 2.4.3; Copyright (C) 2023 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
gpg: ディレクトリ'/Users/tawachan/.gnupg'が作成されました
ご希望の鍵の種類を選択してください:
(1) RSA と RSA
(2) DSA と Elgamal
(3) DSA (署名のみ)
(4) RSA (署名のみ)
(9) ECC (署名と暗号化) *デフォルト
(10) ECC (署名のみ)
(14) カードに存在する鍵
あなたの選択は? 1
RSA 鍵は 1024 から 4096 ビットの長さで可能です。
鍵長は? (3072) 4096
要求された鍵長は4096ビット
鍵の有効期限を指定してください。
0 = 鍵は無期限
<n> = 鍵は n 日間で期限切れ
<n>w = 鍵は n 週間で期限切れ
<n>m = 鍵は n か月間で期限切れ
<n>y = 鍵は n 年間で期限切れ
鍵の有効期間は? (0)0
鍵は無期限です
これで正しいですか? (y/N) y
GnuPGはあなたの鍵を識別するためにユーザIDを構成する必要があります。
本名: ***
電子メール・アドレス: ***@gmail.com
コメント:
次のユーザIDを選択しました:
"*** <***@gmail.com>"
名前(N)、コメント(C)、電子メール(E)の変更、またはOK(O)か終了(Q)? O
たくさんのランダム・バイトの生成が必要です。キーボードを打つ、マウスを動か
す、ディスクにアクセスするなどの他の操作を素数生成の間に行うことで、乱数生
成器に十分なエントロピーを供給する機会を与えることができます。
たくさんのランダム・バイトの生成が必要です。キーボードを打つ、マウスを動か
す、ディスクにアクセスするなどの他の操作を素数生成の間に行うことで、乱数生
成器に十分なエントロピーを供給する機会を与えることができます。
gpg: /Users/tawachan/.gnupg/trustdb.gpg: 信用データベースができました
gpg: ディレクトリ'/Users/tawachan/.gnupg/openpgp-revocs.d'が作成されました
gpg: 失効証明書を '/Users/tawachan/.gnupg/openpgp-revocs.d/6FCEB8317037B413C12E762C088E4C4555EAE6BB.rev' に保管しました。
公開鍵と秘密鍵を作成し、署名しました。
pub rsa4096 2023-10-12 [SC]
***
uid *** <***@gmail.com>
sub rsa4096 2023-10-12 [E]
パスフレーズはどっかにメモ
公開鍵をGitHubに登録
ローカルのgitに署名の設定
git config --global user.signingkey *****(さっきのID)
常に署名するように設定
git config --global commit.gpgsign true
pinentry-macでパスフレーズの入力を省略
brew install pinentry-mac
which pinentry-mac 5.9s 2023/10/12 PM 10:23:02
# -> /opt/homebrew/bin/pinentry-mac
echo "pinentry-program /opt/homebrew/bin/pinentry-mac" > ~/.gnupg/gpg-agent.conf
※上のpathはm1/m2。intel macでの説明で/usr/local/bin/pinetry-mac
となっているのがあってハマっている記事はどこかで見た。
エージェント再起動で設定反映
gpgconf --kill gpg-agent
コミットしたら初回にパスフレーズを聞かれる
コミットしたら晴れてverifiedになった
まとめた
このスクラップは2023/10/12にクローズされました