任何知道密码的人都能解密用 GnuPG 和对称标志加密的文件吗?

任何知道密码的人都能解密用 GnuPG 和对称标志加密的文件吗?

假设我有笔记本电脑 A。假设在笔记本电脑 A 上,我使用以下命令加密文件:

gpg --symmetric my_file.txt

然后说我将那个加密文件安装在 USB 记忆棒上。

现在假设过了六个月,在此期间笔记本电脑 A 坏了,被笔记本电脑 B 取代。我是否能够使用密码(或许使用)解密笔记本电脑 B 上的文件gpg --decrypt

gpg --encrypt如果我改用诸如或之类的命令,情况会改变吗gpg --encrypt --symmetric

答案1

密码就足够了。

在里面 Andrey Tyukin 的回答 我找到了这个例子:

#!/bin/bash

echo "Some important content" > a.txt [ -f a.txt.gpg ] && rm a.txt.gpg
[ -f b.txt ] && rm b.txt

echo "secret" | gpg --batch --passphrase-fd 0 --output a.txt.gpg
--symmetric a.txt echo "secret" | gpg --batch --passphrase-fd 0 --output b.txt --decrypt a.txt.gpg

echo "------------------------- a.txt" cat a.txt

echo "------------------------- b.txt" cat b.txt

diff a.txt b.txt && echo "Files have the same content" ```

您可以使用“--encrypt”标志加密消息,该标志使用收件人的公钥加密消息,从而提供额外的安全性。

加密和解密文档

要加密文档,请使用选项 --encrypt。您必须拥有预期收件人的公钥。软件需要将文档的名称作为输入进行加密,如果省略,则将其作为标准输入。加密结果将放置在标准输出上或使用选项 --output 指定的位置。除了加密文档外,还会压缩文档以提高安全性。

alice% gpg --output doc.gpg --encrypt --recipient [email protected] doc

--recipient 选项对每个收件人使用一次,并带有一个额外的参数,指定文档应加密的公钥。只有拥有与收件人公钥互补的私钥的人才能解密加密的文档。特别是,除非您在收件人列表中包含自己的公钥,否则您无法解密由您加密的文档。

要解密消息,请使用选项 --decrypt。您需要消息加密的私钥。与加密过程类似,输入要解密的文档,输出解密结果。

因此,要解密加密文件,需要收件人公钥之一的私钥。如果没有这样的密钥,您将无法解密,除非您将自己的公钥包含在收件人列表中。

答案2

如果我使用如下命令,情况会改变吗
gpg --encrypt --symmetric

结合这两个选项可以创建“可以通过密钥解密的消息或者密码”——只需要一个。

使用仅--symmetric使用密码,并且只需要相同的解密的密码。

--encrypt使用一个公钥,并且只需要该密钥对的密钥即可解密。

相关内容