githubのAPI接続,なりすまし対策などで必要なgpgキー。
linux環境ならデフォルトでgpgが使えるため、簡単ですが、windowsでキーを作る方法の詳細な記事が無かったので記すことにしました。
ステップを追っていただければキー生成からgithubでの登録、Verifiedバッチが表示されるまでを一通りできるようになります。最後まで読んでいただけると幸いです。また、キー作成にあたり一般に推奨されるオプションについても紹介しています。
手順
- gnugpgをインストール
- PowerShellからgpgキーを作成
- githubに登録
- Gitへの設定

1. gnuPGをインストール
ダウンロード
windowsでgpgキーを作る方法は様々ありますが、gnuPGをインストールするのが一番簡単かつスタンダードです。
Gnugpg
https://www.gnupg.org/download/
www.gnupg.orgダウンロードページを開くと、いろいろ出てきますが、windowsへのインストーラは、以下の画像の様な場所にあるので探してダウンロードしてください。

Windowsのdownload(simple installer for the current GnuPG)をクリックしてダウンロードできます。一番上にあるGpg4winでもよいですが、こちらだとフルパッケージなのでドネイト(寄付)を要求されます。
インストーラを起動してインストール
基本的にデフォルト設定のまま「NEXT」で進めてインストールを完了してください。
インストール後、PowerShellまたはコマンドプロンプトを開き、以下のコマンドでバージョンが表示されれば成功です。
gpg --version2. GPGキーの作成
インストールが完了したら、実際にキーを作成します。ここではセキュリティ強度を高めるために、推奨されるオプションを選択していきます。
キー作成コピペ
gpg --full-generate-key対話形式で設定が進みます。以下のように選択することをおすすめします。
- 鍵の種類:
(1) RSA and RSA (default)を選択(1を入力してEnter) - 鍵長: デフォルトは3072ですが、より強固な
4096を推奨します。 - 有効期限: 個人利用であれば
0(無期限) でも構いませんが、プロジェクトの規定があればそれに従います。 - ユーザー情報: GitHubに登録している名前とメールアドレスを入力します。
- 注意: メールアドレスはGitHubのアカウントのメールアドレスと一致させる必要があります。
- パスフレーズ: キーを使用する際のパスワードを設定します。忘れないように管理してください。
実際の操作例
1.鍵の種類

下記の種類の選択です。数字を打ち込んでEnterで選択できます。
githubのgpgキーとして設定するなら、(1) RSA and RSA (default)が推奨なので、1と入力しEnter
2.鍵長

何も打たずにEnterすると 3072になります。これでもいいですが、セキュリティを上げたいときは最大長の4096とするとよいです。
3.有効期限

何も打たずにEnterすると 0 (鍵は無期限)になります。
個人開発などであれば、0でよいです。企業内等でセキュリティルールがあればそれに従ってください。
入力すると y/N (yes/no)入力を求められるので、よければ yと打ってください。
4.ユーザ情報

本名とありますが、GITHUBのアカウント名で指定するのが一般的です。
電子メールは必ずgithubアカウントと同じものを入力してください。ここが違うとgithubでのverifidがうまくいきません。
入力確認後、間違いがなければ、“O“と打ち込むことでキー生成できます。
※キー生成を開始すると、パスワード入力を要求するポップアップが出ます。
パスワード決めて、入力してください。(忘れないようにすること!)日本語の文字コードがうまく表示されないことがあり、文字化けして以下の様な感じに表示される場合もありますが、そのままパスワード入力して大丈夫です。
文字化けしたpopup
5.生成した鍵(GPGキー)の確認
パスワード設定までできれば、鍵が生成できているはずなので、以下のコードで生成した鍵を確認します。
gpg --list-secret-keys --keyid-format LONG実行すると以下の様な表示が出るはずです。
sec rsa4096/3AA5C34371567BD2 2023-12-09 [SC]
<フィンガープリント>
uid [ultimate] ユーザー名 <メールアドレス>
ssb rsa4096/42B3...この時、”sec rsa4096/3AA5C34371567BD2″の”3AA5C34371567BD2“がGPGキーIDになるのでコピーしておきます。(公開鍵の指定に使います。)
3. 公開鍵のエクスポートとGitHubへの登録
公開鍵をコピーする
GitHubに登録するのは「公開鍵」です。先ほどのキーIDを使って、公開鍵を表示させます。
# 先ほどのキーIDを使用してください
gpg --armor --export <GPGキーID>
# 例:gpg --armor --export 3AA5C34371567BD2これを実行すると、以下の様な表示がされるはずなので、—– BEGIN PGP から最後の KEY BLOCK —-まで全文をコピーします。これをgithubに登録します。
-----BEGIN PGP PUBLIC KEY BLOCK-----
qwert123456-sa9g820d ....(公開鍵)
-----END PGP PUBLIC KEY BLOCK-----GitHub側の設定
- GitHubの右上のアイコンから Settings を開きます。
- 左メニューの SSH and GPG keys をクリックします

- New GPG key ボタンを押します。
- Titleには「myhome-windows-key」や「<name>-gpgkey」など分かりやすい名前をつけ、Key欄に先ほどコピーした内容を貼り付けます。
- Add GPG key をクリックして完了です。
4. ローカルGitへの設定(重要)
実は、GitHubに登録しただけでは署名は行われません。「このPCのGitは、このキーを使って署名する」という設定をローカルに行う必要があります。
gitのコンフィグに先ほどのGPGキーIDを設定します。
グローバル環境に設定する場合は以下の様にします。きーID は変更してください。
# 1. 使用するキーIDを指定
git config --global user.signingkey <GPGキーID># 2. 全てのコミットで自動的に署名を行う設定
git config --global commit.gpgsign true個別リポジトリで設定するときは、ローカルリポジトリのフォルダ内にて、 –globalを外して、代わりに–localを指定すれば設定できます。
5. 動作確認
適当なリポジトリで変更を加え、コミットしてみましょう。 コミット時にパスフレーズの入力を求められるポップアップ(Pinentry)が出れば成功です。
GitHub上でそのコミットを確認し、緑色の Verified バッジが表示されていれば設定完了です!

コミットの表示例
まとめ
WindowsでのGPGキー設定は、ツールのインストールからGitの設定までステップが多いですが、一度設定してしまえばセキュリティと信頼性を大きく向上させることができます。
ぜひ設定してみてください。
2025年度版github環境構築の手引き
5 記事
【2025年版】GitHub環境構築ログ
ここまで読んでいただきありがとうございます。
では、次の記事で。 lumenHero
