如何從記憶體中刪除 GPG 私鑰?

如何從記憶體中刪除 GPG 私鑰?

當我執行以下操作:

gpg --decrypt somefile.pgp

我看到出現一個圖形對話框,詢問我的 GPG 私鑰的密碼。

之後,後續運行不需要密碼,因為它們似乎使用來自記憶體中 GPG 代理的 GPG 金鑰。

如何清除該 GPG 代理程式的所有金鑰?我不喜歡它們無用地留在記憶中。

答案1

man gpg-agent給你:

   --default-cache-ttl n
          Set the time a cache entry is valid to n seconds.  The default is 600 seconds.

要么修改啟動 gpg-agent 的方式並添加此參數並縮短生存時間,要么根本不啟動 gpg-agent。

編輯

您需要弄清楚到底是哪個程式要求您提供密碼。到目前為止,很明顯它不是 gpg-agent 也不是 seahorse。

開著窗戶跑wmctrl -lp | grep "The Window Title, Case Sensitive"。您應該看到如下行:

0x03e0000c  0 2580   <your_host_name>  The Window Title

第三個數字是進程 ID。運行cat /proc/2580/cmdline(用實際進程 ID 取代 2580),您將看到要求您輸入密碼的程式檔案以及所有參數。然後你可以查一下那個,看看你能做些什麼。卸載它當然是一個選擇。

相關內容