我运行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