gpg 无需密码即可解密文件

Jot*_*amB 13 encryption gnupg

我跑gpg -c file。它要求输入密码(两次)并创建一个加密文件。到现在为止还挺好。

当我运行gpg file.gpg解密文件时,它会在不要求密码的情况下解密文件!不用说,这种“加密”是完全没有价值的。

gpg 加密在 gnome 和命令行中都可以正常工作一段时间,只是在某一时刻崩溃了,我不知道我做了什么或发生了什么。

如何解决?

vid*_*rlo 18

该短语由 GPG 代理缓存。

要清除缓存只需运行

gpg-connect-agent reloadagent /bye
Run Code Online (Sandbox Code Playgroud)

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


Lek*_*eyn 6

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.
Run Code Online (Sandbox Code Playgroud)

因此,要禁用单个调用的缓存,请使用以下内容:

gpg -c --no-symkey-cache your-file.txt
Run Code Online (Sandbox Code Playgroud)

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

no-symkey-cache
Run Code Online (Sandbox Code Playgroud)

  • `--no-symkey-cache` 已添加到 [gpg 2.2.7](https://lists.gnupg.org/pipermail/gnupg-announce/2018q2/000424.html)。您需要 Ubuntu 18.10 或更高版本才能拥有该选项。 (3认同)
  • 我试过了,但它不起作用 gpg: invalid option "--no-symkey-cache" (2认同)