秘密鍵をインポートするときにgpg2がパスフレーズを要求する


14

私のgpg秘密鍵リングをgpg1(1.4.21)からgpg2(2.1.15)に転送しようとしています

gpg2 --import ~/.gnupg/secring.gpg

gpg2は、キーリング内のすべての秘密鍵のパスフレーズを要求しています。

この段階でパスフレーズが必要なのはなぜですか(キーを使用するときにのみパスフレーズを指定する必要があります)。これを防ぐにはどうすればよいですか、つまりパスフレーズを指定せずにキーリングをインポートしますか?

システムはArch Linux、カーネル4.7.6です。ありがとう。

回答:


17

この問題はGnuPGバグトラッカーで説明されています。今日はそれを見たことがありませんでした。

解決策は次のとおりです。

gpg2 --batch --import ~/.gnupg/secring.gpg

5
ありがとう!私はシェルリダイレクトを使用してヘッドレスサーバーでこれを正確に実行していました。たとえばgpg2 --import < my-keys、不明な理由により、パスフレーズプロンプトはまったく表示されず、不可解なだけが表示されましたgpg: error building skey array: Inappropriate ioctl for device。うまくいけば、そのメッセージをグーグルで移動すると、これからここに人々が送られます。
jlh 2017

ヘッドレスを実行しているときの少し異なる不可解なエラーメッセージはでしたerror sending to agent: Operation cancelled。を使用することをお勧めするこのエラーメッセージを引用する他の回答がありますが--batch、この回答は、この回避策が必要である理由の根本的な原因にリンクすることでさらに一歩進んだ唯一の方法です。
Rusty Shackleford

取得誰のためにInappropriate ioctl for deviceエラーが発生し、試すexport GPG_TTY=$(tty)ごとgithub.com/keybase/keybase-issues/issues/2798バッチインポートを行う、その後
ダグ・エアーズ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.