linux下如何用gpg加密解密文件

使用Linux gpg命令保护您的隐私。使用世界级的加密来保护你的秘密。我们将向您展示如何使用gpg处理密钥、加密文件和解密它们。...

使用Linux gpg命令保护您的隐私。使用世界级的加密来保护你的秘密。我们将向您展示如何使用gpg处理密钥、加密文件和解密它们。

gnuprivacyguard(GPG)允许您安全地加密文件,以便只有指定的收件人才能解密它们。具体来说,GPG符合OpenPGP标准。它是以一个名为Pretty Good Privacy(PGP)的程序为模型的。PGP由Phil Zimmerman于1991年编写。

GPG依赖于每人两个加密密钥的思想。每个人都有一个私钥和一个公钥。公钥可以解密使用私钥加密的内容。

要安全地发送文件,请使用私钥和收件人的公钥对其进行加密。要解密文件,他们需要他们的私钥和你的公钥。

您将从中看到必须共享公钥。您需要拥有收件人的公钥才能加密文件,而收件人需要您的公钥才能解密文件。公开你的公钥是没有危险的。事实上,正如我们将看到的那样,有一些公钥服务器正是出于这个目的。私钥必须保密。如果您的公钥在公共域中,那么您的私钥必须保密和安全。

设置GPG的步骤比使用GPG的步骤要多。谢天谢地,你通常只需要设置一次。

生成密钥

gpg命令安装在所有被检查的Linux发行版上,包括Ubuntu、Fedora和Manjaro。

你不必在电子邮件中使用GPG。您可以加密文件并使其可供下载,或将其物理传递给收件人。但是,您确实需要将电子邮件地址与生成的密钥相关联,因此请选择要使用的电子邮件地址。

这是生成密钥的命令。--full generate key选项在终端窗口内的交互式会话中生成密钥。还将提示您输入密码短语。一定要记住密码短语是什么。三个或四个简单的单词加上标点符号是一个好的、健壮的密码和口令模型。

gpg --full-generate-key

linux下如何用gpg加密解密文件

系统将要求您从菜单中选择加密类型。除非有充分的理由不这样做,否则请键入1并按Enter键。

必须为加密密钥选择位长度。按Enter键接受默认值。

linux下如何用gpg加密解密文件

您需要指定密钥应该持续多长时间。如果您正在测试系统,请输入一个短的持续时间,例如5天。如果要保留此键,请输入一个较长的持续时间,如1y,持续一年。钥匙将持续12个月,因此需要在一年后更新。用Y确认您的选择。

您必须输入您的姓名和电子邮件地址。如果愿意,可以添加评论。

linux下如何用gpg加密解密文件

系统将提示您输入密码短语。无论何时使用钥匙,您都需要密码短语,因此请确保您知道它是什么。

linux下如何用gpg加密解密文件

输入密码短语后,单击“确定”按钮。在使用gpg时,您将看到此窗口,因此请确保记住您的密码短语。

将生成密钥,并返回到命令提示符。

linux下如何用gpg加密解密文件

生成吊销证书

如果其他人知道您的私钥,则需要将旧密钥与您的标识解除关联,以便生成新密钥。为此,您需要吊销证书。我们现在就把它放在安全的地方。

--output选项后面必须跟有要创建的证书的文件名。--gen revoke选项使gpg生成吊销证书。您必须提供生成密钥时使用的电子邮件地址。

gpg --output ~/revocation.crt --gen-revoke [email protected]

linux下如何用gpg加密解密文件

系统将要求您确认是否要生成证书。按Y键并按Enter键。系统将询问您生成证书的原因。由于我们提前做了这件事,我们还不能确定。按1作为合理的猜测,然后按回车键。

如果需要,可以输入描述。按两次Enter键结束描述。

系统将要求您确认设置,按Y键并按Enter键。

linux下如何用gpg加密解密文件

将生成证书。您将看到一条消息,强调需要确保此证书的安全。

上面提到一个叫马洛里的人。密码学的讨论一直使用鲍勃和爱丽丝作为两个人的沟通。还有其他的配角。伊芙是个窃听者,马洛里是个恶意攻击者。我们需要知道的是我们必须保证证书的安全。

至少,让我们从证书中删除除我们之外的所有权限。

chmod 600 ~/revocation.crt

linux下如何用gpg加密解密文件

让我们检查一下ls,看看现在的权限是什么:

ls -l

linux下如何用gpg加密解密文件

太完美了。除了文件所有者,没有人能对证书做任何事。

导入其他人的公钥

要加密另一个人可以解密的消息,我们必须有他们的公钥。

如果文件中提供了它们的密钥,可以使用以下命令导入。在本例中,密钥文件称为“mary”-极客钥匙.”

gpg --import mary-geek.key

linux下如何用gpg加密解密文件

将导入密钥,并显示与该密钥关联的名称和电子邮件地址。显然,这应该和你收到的人相符。

linux下如何用gpg加密解密文件

您需要密钥的人也可能已将其密钥上载到公钥服务器。这些服务器存储来自世界各地的人们的公钥。密钥服务器周期性地相互同步,以便密钥普遍可用。

MIT公钥服务器是一个流行的密钥服务器,并且是定期同步的,因此在那里搜索应该是成功的。如果有人最近才上传了一个密钥,可能需要几天才能出现。

--keyserver选项后面必须跟有要搜索的密钥服务器的名称。--search keys选项后面必须跟有您要搜索的人的姓名或他们的电子邮件地址。我们将使用电子邮件地址:

gpg --keyserver pgp.mit.edu --search-keys [email protected]

linux下如何用gpg加密解密文件

为您列出匹配项并编号。要导入一个,请键入数字并按Enter键。在本例中,只有一个匹配项,因此键入1并按Enter键。

linux下如何用gpg加密解密文件

密钥被导入,我们将看到与该密钥相关联的名称和电子邮件地址。

验证和签名密钥

如果您所认识的人交给您一个公钥文件,您可以放心地说它属于那个人。如果您是从公钥服务器上下载的,您可能会觉得需要验证该密钥是否属于该密钥的使用者。

--fingerprint选项使gpg创建一个由十组四个十六进制字符组成的短序列。你可以让对方把钥匙的指纹发给你。

然后可以使用--fingerprint选项生成十六进制字符的相同指纹序列,并对它们进行比较。如果他们匹配,你就知道钥匙属于那个人。

gpg --fingerprint [email protected]

linux下如何用gpg加密解密文件

生成指纹。

linux下如何用gpg加密解密文件

当您确信该密钥是真实的,并且属于应该与之相关联的人时,您可以在他们的密钥上签名。

如果您不这样做,您仍然可以使用它来加密和解密来自或发往此人的消息。但是gpg每次都会询问您是否要继续,因为密钥没有签名。我们将使用恰当命名的--sign key选项并提供此人的电子邮件地址,以便gpg知道要签名的密钥。

gpg --sign-key [email protected]

linux下如何用gpg加密解密文件

您将看到有关密钥和人员的信息,并将被要求验证您是否确实要对密钥签名。按Y键并按Enter键对键进行签名。

linux下如何用gpg加密解密文件

如何共享公钥

要将密钥作为文件共享,我们需要将其从gpg本地密钥存储导出。为此,我们将使用--export选项,该选项后面必须跟有用于生成密钥的电子邮件地址。--output选项后面必须跟有要将密钥导出到的文件的名称。--armor选项告诉gpg生成ASCII armor输出,而不是二进制文件。

gpg --output ~/dave-geek.key --armor --export [email protected]

linux下如何用gpg加密解密文件

我们可以用更少的钱查看密钥文件。

less dave-geek.key

linux下如何用gpg加密解密文件

钥匙显出了它所有的荣耀:

linux下如何用gpg加密解密文件

也可以在公钥服务器上共享公钥。--send keys选项将密钥发送到keyserver。--keyserver选项后面必须跟有公钥服务器的网址。要标识要发送的密钥,必须在命令行上提供密钥的指纹。注意四个字符集之间没有空格。

(您可以使用--fingerprint选项查看密钥的指纹。)

gpg --send-keys --keyserver pgp.mit.edu 31A4E3BE6C022830A804DA0EE9E4D6D0F64EEED4

linux下如何用gpg加密解密文件

你会得到钥匙已经发送的确认。

linux下如何用gpg加密解密文件

加密文件

我们终于可以加密一个文件并发送给玛丽了。文件名为乌鸦.txt.

--encrypt选项告诉gpg对文件进行加密,--sign选项告诉gpg用您的详细信息对文件进行签名。--armor选项告诉gpg创建一个ASCII文件。-r(recipient)选项后面必须跟有要向其发送文件的人的电子邮件地址。

gpg --encrypt --sign --armor -r [email protected]

linux下如何用gpg加密解密文件

创建文件时使用与原始文件相同的名称,但在文件名后附加“.asc”。让我们看看里面。

less Raven.txt.asc

linux下如何用gpg加密解密文件

该文件完全无法辨认,只能由拥有您的公钥和Mary的私钥的人解密。只有玛丽才能同时拥有这两样东西。

linux下如何用gpg加密解密文件

我们现在可以把这个文件寄给玛丽,确信没有人能解密它。

解密文件

玛丽已经回信了。它在一个叫做编码.asc. 我们可以使用--decrypt选项很容易地解密它。我们将把输出重定向到另一个名为普通.txt.

注意,我们不必告诉gpg文件来自谁。它可以从文件的加密内容中得到答案。

gpg --decrypt coded.asc > plain.txt

linux下如何用gpg加密解密文件

让我们看看普通.txt文件:

less plain.txt

linux下如何用gpg加密解密文件

文件已为我们成功解密。

linux下如何用gpg加密解密文件

刷新您的钥匙

您可以定期要求gpg对照公钥服务器检查它拥有的密钥,并刷新任何已更改的密钥。您可以每隔几个月或从新联系人处收到密钥时执行此操作。

--refresh keys选项使gpg执行检查。--keyserver选项后面必须跟有您选择的密钥服务器。一旦在公钥服务器之间同步了密钥,选择哪一个就不重要了。

gpg --keyserver pgp.mit.edu --refresh-keys

linux下如何用gpg加密解密文件

gpg会列出它检查的密钥,并告诉您是否有任何已更改和更新的密钥。

linux下如何用gpg加密解密文件

隐私是一个热门话题

如今,隐私永远离新闻不远。无论您出于什么原因希望保持信息的安全和隐私,gpg都提供了一种简单的方法,可以对您的文件和通信应用难以置信的强大加密。

还有其他方法可以使用gpg。你可以得到一个名为Enigmail的Thunderbird插件。它直接挂接到您的gpg配置中,允许您加密来自Thunderbird内部的电子邮件。

  • 发表于 2021-04-03 09:08
  • 阅读 ( 207 )
  • 分类:互联网

你可能感兴趣的文章

如何在ubuntu中加密文件和文件夹

... 我们讨论过保护macOS上的文件和文件夹以及保护Windows上的文件夹。您还可以通过加密文件和文件夹来保护Linux上的信息。 ...

  • 发布于 2021-03-11 16:31
  • 阅读 ( 847 )

使用此powershell脚本在windows中自动执行文件加密

... 让我们看看如何用脚本自动加密Windows10中的文件。 ...

  • 发布于 2021-03-13 21:58
  • 阅读 ( 347 )

保持安全的8个最佳linux密码管理器

...在一个加密的数据库中,该数据库存在于计算机上的单个文件中。您可以使用密码、密钥文件或两者都使用来访问此数据库。 ...

  • 发布于 2021-03-20 18:41
  • 阅读 ( 370 )

5种加密日常生活的方法

...ty Good Privacy(PGP)是一个加密程序,它使用加密技术保护文件、驱动器和电子邮件。自从发布以来,它已经成为最流行的电子邮件加密方法之一。 ...

  • 发布于 2021-03-24 17:12
  • 阅读 ( 199 )

如何用古墓保护您最敏感的数据信息

加密是一种基本的安全实践。虽然您的文件系统可能启用了加密,但共享计算机或极其敏感的信息呢? ...

  • 发布于 2021-03-26 08:43
  • 阅读 ( 167 )

如何在linux上使用gnupg进行加密

...习如何通过流行的gnupg工具安全地传输用PGP加密的消息和文件。让我们马上投入,学习如何保护我们的通讯安全! ...

  • 发布于 2021-03-28 23:05
  • 阅读 ( 216 )

linux下如何用gocryptfs加密文件

你想加密重要的文件,而不是你的Linux系统的整个硬盘驱动器吗?如果是,我们推荐gocryptfs。你会得到一个目录,基本上,加密和解密你存储的所有东西。 gocryptfs提供数据泄露保护 隐私是个大新闻。几乎每个星期都会有一个组...

  • 发布于 2021-04-01 18:42
  • 阅读 ( 286 )

linux下如何用chfn和usermod修改用户数据

用户帐户不仅仅是用户名。了解如何从命令行设置和更改与Linux用户帐户关联的所有元数据。 名字里有什么? 如果您使用的是Linux或类似Unix的计算机,您将拥有一个用户帐户。指定给帐户的名称是您的用户帐户名。这是用于登...

  • 发布于 2021-04-02 21:38
  • 阅读 ( 165 )

如何在linux(或macos)上使用vim对文本文件进行密码保护

...口,这些命令在macOS上的工作方式与在Linux上的相同。 如何用密码加密文件 相关:用Vi编辑文本文件的初学者指南 如果你知道如何使用vi,基本的过程相对简单。如果你不知道,你可能会被vi的模态接口挂住。在vim中打开文本文...

  • 发布于 2021-04-08 02:37
  • 阅读 ( 208 )

linux下如何用一个命令将一个文件复制到多个目录

用Linux命令行复制文件很容易。但是,如果要将同一个文件复制到多个不同的位置,该怎么办?这也很简单,我们将向您展示如何使用一个命令来实现这一点。 通常,要复制一个文件,您将使用cp命令,链接到源文件和目标目录...

  • 发布于 2021-04-08 14:02
  • 阅读 ( 134 )
qznk9286
qznk9286

0 篇文章

相关推荐