我正在尝试从服务器解密文件,我在那里拥有该服务器所需的公钥。密钥环有密码保护,因此当我尝试解密文件时,它会要求我输入密码。
当我们尝试解密文件时,是否可以通过传递密码来绕过该密码。
我正在使用gpg-agent
密码短语缓存600秒的默认时间,由于某种原因我无法设置max-cache-ttl
(它不适用于我,我不会&#39} ;知道y)并且仅适用于该会话。
现在我要缓存我使用gpg-preset-passphrase
的密码。我在.gnupg / gpg-agent.conf中将其设置为gpg-preset-passphrase --preset hex
。我不知道我在这里缺少什么。
有人可以告诉我这个
中缺少的东西由于
答案 0 :(得分:3)
我无法绕过密码或pinentry屏幕,但我使用gpg-agent
等default-cache-ttl
选项来设置缓存时间。因此,从第二次尝试开始,pinentry将检索缓存的密码,并将重置defaul-cache-ttl
上的计时器。
还有一个名为max-cache-ttl
的选项,即使在成功检索缓存密码并重置default-cache-ttl之后,此选项也不会更改其计时器并在设置超时后使缓存的密码短语失效。
例如:如果我将它们都设置为10小时(即36000秒),如果我在5小时后调用解密,则默认将重置其计时器,现在我们有10个小时。但最大值将在最初的10小时后到期,因此在10小时后删除缓存的密码。
我发现的另一个问题是gpg-agent的会话问题。即,如果我打开一个新会话并尝试解密,则不会发生gpg-agent无法用于此会话的错误。我编写了一些shell脚本并将其放在bashrc上,以便在新会话启动时立即启动