GPG:GPG 究竟使用哪个密钥进行加密和解密?

GPG:GPG 究竟使用哪个密钥进行加密和解密?

不久前我安装了 GPG 并使用它来加密文件和文本。

用于加密的命令:

gpg -c file.zip > file.zip.gpg

解密所用命令:

gpg -d file.zip.gpg > file.zip

到目前为止,我还没有注意哪个密钥,因为我直接备份了 .gnupg 文件夹。今天我想确认密钥是否存在并且存在于文件夹中。但不幸的是,在私钥文件夹中,什么也没有显示。

命令gpg -cgpg -d运行都很好。每次我都会看到一个基于 UI 的密码弹出窗口。

但当我跑步时

gpg --export-secret-keys --export-options backup --output private1.gpg
gpg: WARNING: nothing exported

OR

gpg --list-secret-keys --keyid-format LONG
it also returns empty. 

现在,我的private-keys-v1.d文件夹中什么都没有。我有文件pubring.kbx、、trustedb.gpgrandom_seed如何确保在全新安装后能够解密我的文件?

答案1

使用该-c标志加密文件意味着gpg 使用对称密钥加密

对称密钥加密使用单个密钥(对称密钥),您每次加密或解密每个文件时都会提供。因此,无需拥有公钥和私钥。因此,如果您过去从未创建过公钥/私钥对(例如签署),那么您将没有任何私钥;这就是为什么(可能)导出您的秘密(私人)密钥会返回一个空集。

请注意,对称密钥不会存储在任何地方,仅为用户体验而缓存1。因此,您实际上无法从任何地方导出它们。


1来自手册页,链接在上面:“gpg 缓存用于对称加密的密码,因此解密操作可能不需要用户输入密码

相关内容