我似乎无法让 gnupg 解密用我的密钥加密的文件。我尝试将我的密钥从旧笔记本电脑迁移到新笔记本电脑,但我不断收到相同的错误:
gpg: decryption failed: No secret key
我尝试从旧笔记本电脑中导出我的公共密钥、秘密密钥和子密钥,如下所示:
gpg --export MYKEYID > pub.key
gpg --export-secret-keys MYKEYID > sec.key
gpg --export-secret-subkeys MYKEYID > sub.key
然后我将它们复制到我的新笔记本电脑上,并按如下方式导入它们:
gpg --import pub.key
gpg --import sec.key
gpg --import sub.key
然后我编辑了密钥以赋予它最终的信任:
gpg --edit-key MYKEYID
gpg> trust
...
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
但无论如何,它都无法解密:
gpg --decrypt -v encryptedfile.gpg
gpg: public key is E78E22A13ED8B15D
gpg: encrypted with ELG key, ID E78E22A13ED8B15D
gpg: decryption failed: No secret key
旧笔记本电脑上的版本:
gpg --version
gpg (GnuPG) 2.1.21
libgcrypt 1.7.6
新笔记本电脑版本:
gpg --version
gpg (GnuPG/MacGPG2) 2.2.3
libgcrypt 1.8.1