gpg2とgitの署名

gpg2とgitの署名

gpg2に問題があり、gitでコミットに署名するのに問題があります。再起動する前に、昨日すべてがうまくいったことを最初に申し上げたいと思いますapt-get update && apt-get upgrade

コミットに署名しようとすると、次のエラーメッセージが表示されます。

gpg: skipped "3C27FEA3B5758D9E": No secret key
gpg: signing failed: No secret key
error: gpg failed to sign the data
fatal: failed to write commit object

実際、変更を隠そうとすると私も気付くようです。

pgrepを実行すると、gpg-agentが実行されていることがわかり、終了して再起動しました。

私のファイルにもこの内容があります.bashrc

export GPG_TTY=$(tty)

出力gpg2 --list-keys /home/mdhas/.gnupg/pubring.gpg

------------------------------
pub   rsa2048/FBJJJJ1C 2017-10-11 [SC]
uid         [ultimate] Mark Dhas <[email protected]>
sub   rsa2048/3FDJJJJJ 2017-10-11 [E]

pub   rsa2048/BFJJJJJ7 2017-11-17 [SC]
uid         [ultimate] Mark Dhas <[email protected]>
sub   rsa2048/DEDDJJJJ 2017-11-17 [E]

pub   rsa4096/7137JJJJ 2017-10-11 [SC] [expires: 2021-10-11]
uid         [ unknown] co.co <[email protected]>
sub   rsa4096/A9BJJJJJ 2017-10-11 [E] [expires: 2021-10-11]

pub   rsa4096/B57JJJJJ 2018-10-31 [SC] [expires: 2021-10-31]
uid         [ unknown] Mark Dhas (New Key-Created on 2018-10-31) <[email protected]>
sub   rsa4096/36FJJJJJ 2018-10-31 [E] [expires: 2021-10-31]

JJJJJは無視してください。セキュリティのために試されたマイナーな編集です。

$ gpg2 --list-secret-keys
/home/mdhas/.gnupg/pubring.gpg
------------------------------
sec   rsa2048/FBJJJJ1C 2017-10-11 [SC]
uid         [ultimate] Mark Dhas <[email protected]>
ssb   rsa2048/3FDJJJJJ 2017-10-11 [E]

これは私の子構成の一部です。

user.name=Mark Dhas
[email protected]
user.signingkey=3C2JJJJJJJJJJJJJ
core.editor=vim
gpg.program=/usr/bin/gpg2

この問題を解決する方法についてのアイデアがあれば良いでしょう。

ベストアンサー1

GPGキーのプライベート部分はありません。 GPGキーは、公開鍵(他のコンピュータがあなたの署名情報を確認するために使用できる情報)と秘密鍵(署名を生成または送信したメッセージを復号するために必要な部分)で構成されます。これがGitがエラーを引き起こす理由です。コミットに署名するための秘密鍵を取得できません。唯一のオプションは、フルキー(秘密キーを含む)のバックアップを検索するか、新しいキーを作成することです。

おすすめ記事