在Linux终端中加密后清除GPG缓存/密码

时间:2017-08-03 08:27:10

标签: linux bash security terminal gnupg

我对Linux终端中的GPG加密过程非常恼火,我使用以下命令从终端使用GPG加密文件:

gpg --output file_out --symmetric --cipher-algo AES256 file_in

此处建议使用此命令,因为GPG是一个可靠的加密包。

问题是输入密码并加密文件后,密码不会被删除。因此,任何有权访问PC的人都可以解密此文件,只有在我重新启动计算机后才能删除它。

所以如果我在之后输入解密命令: gpg --output file_in --decrypt file_out

它将提供此消息

gpg: AES256 encrypted data
gpg: encrypted with 1 passphrase

它会自动解密。因此,密码存储在某个地方,并且在我重新启动计算机之前它不会被删除。

加密完成后有没有办法清除/擦除密码?

2 个答案:

答案 0 :(得分:0)

密码短语由gpg-agent保存。像gpg这样的GPG工具会自动启动它。

使用gpgconf --kill gpg-agent停止代理。

答案 1 :(得分:0)

仅重新加载gpg-agent(而不是杀死它)将清除其密码短语缓存。存在重新加载gpg-agent的不同方法:

  • echo RELOADAGENT | gpg-connect-agent
  • gpgconf --reload gpg-agent
  • pkill -SIGHUP gpg-agent