昨晚我的系统意外关闭,当我重新启动它时,它给了我超级块错误。然后我修复了一点,但是。我能够检索我用我的 pgp 公钥加密的加密文件,但我无法检索我的私钥或公钥
现在我有一个加密文件,但由于我丢失了私钥,因此无法打开。
有什么方法可以让我仅提供主密码和密码短语而不提供物理密钥或私钥来加密我的文件
当我在另一台计算机上时,我可以轻松使用相同的主密码和密码打开它。
提前致谢
答案1
有没有什么方法可以让我仅提供主密码和密码而不提供物理密钥或私钥来加密我的文件...并且当我在另一台计算机上时,我可以轻松地使用相同的主密码和密码打开它。
是的,当然。
每次您尝试加密某些输入时,GnuPG 实际上都会生成一个随机会话密钥,然后使用它来对称加密输入(使用指定的任何密码算法——默认为 CAST5)。然后使用密码短语和 gpg 公钥的任意组合对会话密钥进行加密,那些是您用来访问数据的工具。
下面是运行 gpg 来加密一些数据并使其可通过简单密码和几个公钥访问的示例:
gpg -cer barack@devnull --cipher-algo aes256 -r bob@devnull <FILE>
请注意,密码算法当然是可选的。
编辑:
根据请求,这里有一个仅使用对称密钥的简化示例。
gpg -c --cipher-algo aes256 --force-mdc <FILE>
请参阅手册页以了解 的解释,但请注意,我是故意添加它的;默认情况下,在仅执行/--force-mdc
时不会使用它。-c
--symmetric
答案2
不,您需要私钥来解密已使用公钥加密的文件。这是设计使然:以某种方式获得密码的人也需要密钥来解密您的文件。事实上,您只需要私钥即可解密文件;在您的密钥环中,私钥与您的密码一起加密存储。
因为您可以在另一台计算机上解密文件,所以请从另一台计算机上复制密钥。并确保您有足够的密钥备份!将其打印出来并将纸张存放在安全的地方:重新输入密钥确实很繁琐,但纸张很耐用,所以可能会帮到您。
所有这些都假设文件是用私钥加密的(使用gpg -e
)。 Gpg 还可以只用密码短语加密文件(使用gpg -c
)。 如果您这样做了,它与任何密钥无关,您只需输入密码短语即可。