Gpg
關於 pinentry 和 gpg 的使用
是否必須在 gpg2 中使用 pinentry?
為什麼 pinentry 比遺留提示更好?
是的,GnuPG 2 及更高版本必須使用
pinentry
程序。這源於當今使用的更新架構:
- GnuPG 客戶端不再處理私鑰材料或密碼片語等(盡可能——據我所知,密碼片語通過客戶端的唯一時間是您更改它時);
- 為了支持這一點,一個單獨的程序,代理,儲存私鑰;它作為使用者級守護程序執行,在客戶端需要時自動啟動;
- 作為守護程序的代理沒有“擁有”終端,也不知道如何從使用者那裡獲取輸入;
- 從使用者那裡獲得輸入被委託給
pinentry
使用者選擇的兼容程序。使用
pinentry
程序可確保您的私鑰僅限於代理(如果它當然知道的話),而無需您明確向代理提供私鑰和密碼(例如使用ssh-add
)。它還確保對您的密碼片語的請求是一致的,無論請求的來源是什麼(提供的安全量通常有待商榷)。