新しい GPG キーを生成する
既存の GPG キーがない場合は、新しい GPG キーを生成してコミットおよびタグの署名に使用できます。
サポートされている GPG キーのアルゴリズム
GitHub Enterprise は、複数の GPG キーのアルゴリズムをサポートしています。サポートされていないアルゴリズムで生成されたキーを追加しようとすると、エラーが生じることがあります。
- RSA
- ElGamal
- DSA
- ECDH
- ECDSA
- EdDSA
GPG キーの生成
メモ: 新しい GPG キーを生成する前にメールアドレスを検証しておいてください。 メールアドレスを検証していないと、GPG を使用してコミットやタグに署名できません。
-
オペレーティングシステムに GPG コマンドラインツールをダウンロードしてインストールします。 通常はオペレーティングシステム向けの最新バージョンをインストールすることをおすすめします。
-
ターミナルターミナルGit Bashターミナル を開いてください。
-
GPG キーペアを生成します。 GPG には複数のバージョンがあるため、関連する man ページを参考にして適切なキーの生成コマンドを見つける必要があります。 GPG キーは、キーサイズが
4096
ビットの RSA を使用している必要があります。-
バージョン 2.1.17 以降の場合は、以下のテキストを貼り付けて GPG キーペアを生成します。
$ gpg --full-generate-key
-
バージョン 2.1.17 およびそれ以降でない場合は、
gpg --full-generate-key
コマンドが使えません。 以下のテキストを貼り付けてステップ 6 に進んでください。$ gpg --default-new-key-algo rsa4096 --gen-key
-
-
プロンプトで、必要なキーの種類を指定するか、
Enter
キーを押してデフォルトのRSA and RSA
を受け入れます。 -
希望のキーサイズを入力します。 最大キーサイズの
4096
をおすすめします。 -
キーの有効期間を入力します。
Enter
キーを押して、無期限を示すデフォルトの選択を指定します。 -
選択内容が正しいことを確認します。
-
ユーザ ID 情報を入力します。
メモ: メールアドレスの入力を求められた場合は、GitHub アカウント用の検証済みメールアドレスを入力してください。
- 安全なパスフレーズを入力します。
- 公開鍵と秘密鍵をどちらも持っているGPGキーのリストを表示するには、
gpg --list-secret-keys --keyid-format LONG
コマンドを使ってください。 コミットやタグに署名するには秘密鍵が必要です。
$ gpg --list-secret-keys --keyid-format LONG
ノート:LinuxのGPG環境の中には、既存のキーのリストを表示させるためにgpg2 --list-keys --keyid-format LONG
としなければならないものもあります。 この場合、git config --global gpg.program gpg2
と実行してGitがgpg2
を使うように設定する必要もあります。
$ gpg --list-secret-keys --keyid-format LONG
/Users/hubot/.gnupg/secring.gpg
------------------------------------
sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10]
uid Hubot
ssb 4096R/42B317FD4BA89E7A 2016-03-10
-
以下のテキストを貼り付けます。GPG キー ID は実際に使用するものを入力してください。 この例では、GPG キー ID は
3AA5C34371567BD2
です。$ gpg --armor --export 3AA5C34371567BD2# ASCII armor 形式で GPG キーを出力する
-----BEGIN PGP PUBLIC KEY BLOCK-----
で始まり、-----END PGP PUBLIC KEY BLOCK-----
で終わる GPG キーをコピーします。- GPG キーを GitHub アカウントに追加します。