使用 pinentry 和 keepass2 進行 gpg 郵件加密

使用 pinentry 和 keepass2 進行 gpg 郵件加密

Debian Jessie、XFCE 4.10、KeePass2、IceDove(附 Enigmail)..

我正在使用 KeePass2 為我的 gpg 私鑰產生密碼來解密/加密郵件。 Icedove 是我使用 enigmail 的客戶。

一旦我想要解密/加密郵件pinentry(pinentry-gtk2)就會彈出,我無法貼上到密碼欄位中,也無法移動它 - 因此我想讓 KeePass2 自動輸入我的長屁股密碼給我。哪一個不是使用鍵盤快捷鍵(適用於其他任何操作),但在 KeePass2 條目中右鍵單擊“執行自動鍵入'。

這慢慢讓我發瘋。我甚至刪除了 pinentry-gtk2,這使得icedove完全無法解密/加密。

任何使自動輸入功能或貼上在 pinentry 視窗中工作的建議。或替代pinentry?

答案1

事實上,接受的答案使用與問題中描述的相同的過程,這表明沒有辦法使 KeePass 自動類型(甚至簡單的複製貼上)與 pinentry 一起使用。然而,這是錯誤的!

正如其他人所述,pinentry程式gpg-agent(例如pinentry-gtk-2)全域鎖定(“抓取”)鍵盤。但是,gpg-agent可以使用選項配置為停用此行為--no-grab- 請參閱GPG文檔。 (筆記:該選項在文件中有安全警告。但是,如果您無論如何都使用 KeePass,我懷疑使用 pinentry--no-grab不會為您提供任何額外的安全性。

為了用作--no-grab預設值gpg-agent,請建立/編輯檔案~/.gnupg/gpg-agent.conf(即主目錄中的目錄gpg-agent.conf中的檔案)並新增行.gnupg

no-grab

對它(gpg-agent.conf文件中的信息)。因此,從此時開始,每次gpg-agent啟動時,它將使用該--no-grab選項,並且pinentry-gtk-2表現得像普通視窗一樣(因此您可以使用鍵盤快捷鍵執行自動輸入、貼上到文字欄位等)。

答案2

在 Keepass2 中,“新增條目”,並將“標題”設為“GPG”。從「條目」標籤移至「自動類型」標籤。選擇“覆蓋預設序列”並設定為“{PASSWORD}”。

在發送電子郵件之前,請使用 Keepass2 密碼開啟 Keepass2。使用 Enigmail 要求 IceDove“發送”,並且應該出現 pinentry(鎖定鍵盤、防止“Ctrl+V”(或您通常用於執行自動輸入的任何其他鍵盤快捷鍵)、防止切換視窗“Alt+Tab”等) 。

使用滑鼠反白顯示 Keepass2 中的「GPG」條目,然後按一下 Keepass2 中的「執行自動輸入」圖示(「尋找」圖示左側、「說明」功能表下方)。由於鍵盤「焦點」最後位於 pinentry 文字輸入框上,Keepass2 現在將開始為您輸入長密碼。

使用滑鼠在 pinentry 上按一下「確定」。完畢!

有關“自動類型”的更多詳細資訊(http://keepass.info/help/base/autotype.html)。

答案3

    Debian 7.7(喘息)
    通量盒1.3.2-4
    KeePass2 2.28
    單聲道2.10.8.1-8
    xdotool 2.20110530.1
    gnupg2 2.0.19-2+deb7u2

根據我的經驗,KeePass2 版本 2.28 是 Debian 上第一個自動輸入終端機或非 GUI 程式的版本。我可以從 KeePass 2.28 自動輸入 ssh 或 pinentry-curses。當我測試它時,自動類型無法與 pinentry-gtk-2 一起使用。我不使用icedove,所以無法測試。

相關內容