当作为登录会话的一部分运行时,gpg-agent
我运行的每个程序都可以访问我(可能)解锁的 PGP 密钥。这可能有点偏执,但我想确认每个密钥的使用情况,所以我希望有一个选项,gpg-agent
当密码或卡密码已经缓存时,它会在允许访问密钥之前弹出一个确认对话框。
对于由 ssh-keys 管理的gpg-agent
此类选项,根据手册页,但不适用于 PGP。
我错过了什么?
答案1
没有只显示消息的选项。最后,您必须从两个选项中进行选择:
完全禁用缓存,以确保密码根本不被存储:
--max-cache-ttl n Set the maximum time a cache entry is valid to n seconds. After this time a cache entry will be expired even if it has been accessed recently or has been set using gpg-preset-passphrase. The default is 2 hours (7200 seconds).
我不确定 的值是否会
0
完全禁用缓存或将最大时间设置为无限 —— 您很容易就能找到答案。将其设置为1
秒应该也可以。有一个选项签名时禁用缓存(解密仍然使用它):
--ignore-cache-for-signing This option will let gpg-agent bypass the passphrase cache for all signing operation. Note that there is also a per-session option to control this behaviour but this command line option takes precedence.
其背后的想法是防止意外签署消息(可能无法撤消),而意外解密消息可能不会造成危害。
如果考虑这些选项,请考虑您想要缓解哪些攻击。如果有人能够使用您的密钥执行操作,那么他很可能能够运行任意命令,并且可能会安装木马或键盘记录器。