pinentry-mac 完全禁用 GPG 密码提示

pinentry-mac 完全禁用 GPG 密码提示

这很奇怪。我使用passpinentry-mac来解锁我的密码。我的gpg-agent.conf用途pinentry-macpinentry-program

我不确定我最近是否更新了某些依赖项,但现在突然可以解密密码了无需输入密码我觉得这是一个严重的问题。这不是问题,因为pass如果我尝试gpg直接在终端会话中解密加密文件,结果是一样的。

如果我禁用它pinentry-mac,它就会开始工作,每次都会要求我输入密码。知道是什么原因吗?我尝试过重新启动/终止gpg-agent并注销我的用户帐户(甚至重新启动机器),但结果是一样的。

答案1

我曾在 GPG 邮件列表上询问过发生了什么,并得到了有趣的回复:

pinentry-mac 最近已升级到基于 pinentry 上游但包含一些特定 macOS 补丁的不同版本。您看到的此行为可能与“保存在钥匙串中”选项默认设置为“开启”有关。

尝试打开 macOS 钥匙串访问,搜索“GnuPG”,如果找到则删除该条目(如有必要,请先创建备份)。

之后,在终端中运行以下命令:

$ defaults write org.gpgtools.pinentry-mac UseKeychain -bool NO
$ killall pinentry-mac gpg-agent

现在尝试签署/解密某些内容,系统会要求您输入密码。

pinentry-mac基本上,我通过更新homebrew并没有意识到这是一个新的默认行为,也没有注意到将密码保存到系统钥匙串的复选框默认是打开的。

我已经在邮件列表中提出了这个问题,因为我认为这是危险的默认设置。以下是回复:

我已经向 homebrew 的工作人员提出了这个问题。在他们看来,我也认为这不是一个好的选择,尤其是因为更新之前的默认行为有所不同。

因此他们或许会修复它,也或许不会。

相关内容