gpg 解密文件无需输入密码

gpg 解密文件无需输入密码

我运行gpg -c file。它要求输入密码(两次)并创建一个加密文件。到目前为止一切顺利。

当我运行gpg file.gpg解密文件时,它会解密而不要求输入密码!不用说,这种“加密”完全没用。

gpg 加密,在 gnome 以及命令行中,工作了一段时间都很好,但在某一刻就中断了,我不知道我做了什么或发生了什么。

如何修复它?

答案1

该短语由 GPG 代理缓存。

要清除缓存,只需运行

gpg-connect-agent reloadagent /bye

加密并非毫无意义,因为缓存将在注销时被清除,并且显然不会随文件一起传输。Gpg 主要用于保护传输中的数据,而不是保护已加密数据的登录用户。

答案2

GPG 代理缓存密钥,请参阅 gpg(1) 手册页:

--symmetric
 -c
        Encrypt with a symmetric cipher using a passphrase. [..]  gpg
        caches the passphrase used for symmetric encryption so that a decrypt
        operation may not require that the user needs to enter the passphrase.
        The option --no-symkey-cache can be used to disable this feature.

因此,要禁用单次调用的缓存,请使用以下命令:

gpg -c --no-symkey-cache your-file.txt

要使此设置持久,请在中添加选项(不带--~/.gnupg/gpg.conf

no-symkey-cache

相关内容