Debian 8では、私は(おそらくgpg 1または2.0を使用して)キーsecring.gpgをキーサーバーに公開しました。このキーはまだ ~/.gnupg/ ディレクトリにあります。しかし、今gpg 2.1では、次のようになります。
gpg --list-secret-keys
出力がなく、署名しようとしています。
gpg -s tmp.txt
失敗と
gpg: no default secret key: secret key not available
gpg: signing failed: secret key not available
私はDebian 8から9にアップグレードするのを台無しにしましたか?アップグレードする前にキーをエクスポートする必要がありますか? 「古い」キーを「新しい」GPGにインポートする方法は?
2018-03-01 アップデート:
問題は簡単です。どういうわけか時々私のsecring.gpgはサイズ0に減少します! :-/ インポートしようとしたときに、Stephen Kittのソリューションを通して発見しました。
gpg --import-secret-keys secring.gpg
私のファイルに有効なデータが含まれていないというメッセージを受け取りました。
ベストアンサー1
GnuPG 2.1はこれ以上使用しません~/.gnupg/secring.gpg
。代わりに、プロキシの助けを借りて〜/.gnupg/private-keys-v1.d`にある別のファイルを使用してください。ある時点では自動移行が必要ですが、多くの場合、一部の情報が失われます(GnuPG 1を使用して秘密鍵を追加する場合を含む)。後ろに2.1 移行).
この問題を解決するには、キーリングをインポートする必要があります。
gpg --import ~/.gnupg/secring.gpg
以下でより有用な情報を見つけることができます。この便利なGnuPG 2.1移行ガイドとリリースノート。
(秘密鍵リングをパブリックサーバーにエクスポートしないでください。GnuPG自体がこれを防止しようとするので、秘密鍵のバックアップは外部情報ソースに依存できないことにも言及する価値があると思います。)