![gpg キーのパスフレーズを変更する際の問題](https://rvso.com/image/89115/gpg%20%E3%82%AD%E3%83%BC%E3%81%AE%E3%83%91%E3%82%B9%E3%83%95%E3%83%AC%E3%83%BC%E3%82%BA%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B%E9%9A%9B%E3%81%AE%E5%95%8F%E9%A1%8C.png)
gpg キーを、それを作成したマシンから別のサーバーにエクスポートしました。
新しいサーバーで、インポートしたキーを使用して受信したいくつかのファイルを復号化しようとしましたが、次のエラーが発生しました。
gpg: encrypted with 1024-bit RSA key, ID 0A83CFB1, created 2014-09-09
"App Eng <[email protected]>"
gpg: public key decryption failed: Bad passphrase
gpg: decryption failed: No secret key
使用したパスフレーズが正しいことは確かです。次に、キーを編集してパスフレーズを変更してみました。
gpg --list-keys
/home/dx/.gnupg/pubring.gpg
-------------------------------
pub 2048R/DB437C11 2016-04-29 [expires: 2018-04-29]
uid [ unknown] App Eng (ibm keys) <[email protected]>
sub 2048R/0AC6B02C 2016-04-29 [expires: 2018-04-29]
pub 1024R/AADE6532 2014-09-09
uid [ unknown] App Eng <[email protected]>
sub 1024R/0A83CFB1 2014-09-09
gpg --edit-key AADE6532
gpg (GnuPG) 2.0.28; Copyright (C) 2015 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Secret key is available.
pub 1024R/AADE6532 created: 2014-09-09 expires: never usage: SC
trust: unknown validity: unknown
sub 1024R/0A83CFB1 created: 2014-09-09 expires: never usage: E
[ unknown] (1). App Eng <[email protected]>
gpg> passwd
Key is protected.
You need a passphrase to unlock the secret key for
user: "App Eng <[email protected]>"
1024-bit RSA key, ID AADE6532, created 2014-09-09
gpg: cancelled by user
Can't edit this key: Operation cancelled
これを見ると、キーのインポートに何らかの問題があるのではないかと思います。キーをインストールしてもファイルを復号化できない理由を理解できる方はいらっしゃいますか? よろしくお願いします!
答え1
このリンクに答えがあります: https://lists.gnupg.org/pipermail/gnupg-users/2013-April/046559.html
このホストでアプリケーションを実行する特別なユーザーには、sudo を実行したときに適切な TTY 権限がありません。そのため、gpg は TTY GUI を表示できず、実際の理由を表示せずに失敗します。これを実行するには、navsrv sudo セッションを終了し、次の呼び出しを行う必要がありました。chmod o+rw `tty` && sudo -i -u navsrv gpg --edit-key 8267977F
次に、navsrv ログイン パスワードを入力しました。次に、gpg コマンド プロンプトで「passwd」と入力すると、パスフレーズ入力 GUI が表示されました。