web-dev-qa-db-ja.com

PGPキーの取り消しを取り消す

GPGで遊んでいる間(そして、他の誰も使用できないように失効証明書を安全に保存する方法を見つけようとしているときに)、誤ってPGPキーを失効させました。

失効はローカルのみでした。 notはキーサーバーに送信されなかったので、取り消しを取り消す方法があると確信していました...しかし、何も見つかりませんでした。キーを削除して再インポートしても役に立ちませんでした。それはまだ取り消されたものとして表示されました。結局、キーリング全体を削除し、すべてを再インポートしましたが、うまくいきました。しかし、もっと良い方法があるはずです...

そう; GPGのPGPキーをどのように取り消し解除しますか?

また、失効はどこに保存されますか?また、キーリングからキーを削除したときに、失効が削除されなかったのはなぜですか?

違いが出る場合は、OS XでGPGを GPGTools パッケージで使用しています。

21
Caesar

キーサーバーにある場合(および失効がキーサーバーに送信されていない場合)、キーを削除して再インポートすることはis可能(かつ比較的簡単)コース)。

これは私が機能することがわかったものです(THEKEYIDはキーの短いIDです):

  1. 次のように公開鍵を削除します(--expertオプションを使用すると、秘密鍵を保持したまま公開鍵を削除できます):
    gpg --expert --delete-key THEKEYID

  2. を押して確認します。
    y

  3. キーサーバーから公開鍵を再度取得します。
    gpg --keyserver subkeys.pgp.net --recv-keys THEKEYID

できた!

おそらくこれは、3番目のコマンドの代わりにgpg --import public.keyを使用して、公開鍵のローカル(失効前)バックアップから実行することもできます。

GPGキーチェーンアクセスGUIからキー全体(公開および秘密)を削除し、バックアップから復元するだけでは機能しませんでした。理由はわかりません。

22
Caesar