Linux下使用GPG 加密和解密文件

GnuPG(英文:GNU Privacy Guard,简称:GPG)是加的免费工具,大多用于加密信息的传递。除了仅用密码加密外,gpg最大的不同是提供了“公钥/私钥”对。利用“公钥”别人加密信息不再需要告知密码,发送加密信息。

安装 GPG

GPG 的使用非常广泛。你在几乎每个发行版的仓库中都能找到它。如果你还没有安装它,那现在就来安装一下吧。

Debian/Ubuntu

$ sudo apt install gnupg

Fedora

# dnf install gnupg2

Arch

# pacman -S gnupg

Gentoo

# emerge --ask app-crypt/gnupg

创建密钥

你需要一个密钥对来加解密文件。如果你为 SSH 已经生成过了密钥对,那么你可以直接使用它。如果没有,GPG 包含工具来生成密钥对。

$ gpg --full-generate-key

GPG 有一个命令行程序可以帮你一步一步的生成密钥。它还有一个简单得多的工具,但是这个工具不能让你设置密钥类型,密钥的长度以及过期时间,因此不推荐使用这个工具。

GPG 首先会询问你密钥的类型。没什么特别的话选择默认值就好。

下一步需要设置密钥长度。4096 是一个不错的选择。

之后,可以设置过期的日期。 如果希望密钥永不过期则设置为 0。

然后,输入你的名称。

最后,输入电子邮件地址。

如果你需要的话,还能添加一个注释。

所有这些都完成后,GPG 会让你校验一下这些信息。

GPG 还会问你是否需要为密钥设置密码。这一步是可选的, 但是会增加保护的程度。若需要设置密码,则 GPG 会收集你的操作信息来增加密钥的健壮性。 所有这些都完成后, GPG 会显示密钥相关的信息。

加密的基本方法

现在你拥有了自己的密钥,加密文件非常简单。 使用下面的命令在 /tmp 目录中创建一个空白文本文件。

$ touch /tmp/test.txt

然后用 GPG 来加密它。这里 -e 标志告诉 GPG 你想要加密文件, -r 标志指定接收者。

$ gpg -e -r "Your Name" /tmp/test.txt

GPG 需要知道这个文件的接收者和发送者。由于这个文件给是你的,因此无需指定发送者,而接收者就是你自己。

解密的基本方法

你收到加密文件后,就需要对它进行解密。 你无需指定解密用的密钥。 这个信息被编码在文件中。 GPG 会尝试用其中的密钥进行解密。

$ gpg -d /tmp/test.txt.gpg

发送文件

假设你需要发送文件给别人。你需要有接收者的公钥。 具体怎么获得密钥由你自己决定。 你可以让他们直接把公钥发送给你, 也可以通过密钥服务器来获取。

收到对方公钥后,导入公钥到 GPG 中。

$ gpg --import yourfriends.key

这些公钥与你自己创建的密钥一样,自带了名称和电子邮件地址的信息。 记住,为了让别人能解密你的文件,别人也需要你的公钥。 因此导出公钥并将之发送出去。

gpg --export -a "Your Name" > your.key

现在可以开始加密要发送的文件了。它跟之前的步骤差不多, 只是需要指定你自己为发送人。

$ gpg -e -u "Your Name" -r "Their Name" /tmp/test.txt

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/8988.html

(0)
晴川运维晴川运维
上一篇 2025年6月13日
下一篇 2025年6月13日

相关推荐

  • 【Debian GNU/Linux 安装手册】7.3. 登录

    7.3. 登录 一旦系统引导后,就会看到登录提示符。使用您在安装过程中选择的用户名和密码来登录。现在系统就能使用了。 如果您是新用户,开始使用时会想要浏览已经安装到系统上…

    Debian 2025年6月4日
  • 【Debian管理员手册】第 3 章 分析当前设置与迁移

    3.1. 在异构环境中共存 3.1.1. 和Windows机器整合 3.1.2. 和OS X机器整合 3.1.3. 与其他 Linux/Unix 设备集成 3.2. 如何迁移 3.…

    Debian 2025年6月8日
  • 【Debian GNU/Linux 安装手册】D.1. Linux 里的设备

    D.1. linux 里的设备 Linux 的许多特殊文件可以在 /dev 目录下找到。这些文件称为设备文件,其行为与普通文件不同。大多数设备文件的类型是块设备和字符设备…

    Debian 2025年6月4日
  • 终端共享神器tmate具体使用方法

    tmate工具是tmux的一个分支,使用相同的配置信息来配置,是一个终端多路复用器,同时具有即时分享终端的能力,允许在单个屏幕中创建并且操控多个终端,而且还可以与别人进行分享,下面…

    Debian 2025年6月9日
  • Linux删除分区的正确方法

    管理分区是一件严肃的事情,尤其是当你不得不删除它们时。我发现自己经常这样做,特别是在使用 U 盘作为实时磁盘和 Linux 安装程序之后,因为它们创建了几个我以后不需要的分区。在本…

    Debian 2025年6月8日
  • 【Debian管理员手册】第 7 章 问题的解决与相关信息的检索

    7.1. 文档资源 7.1.1. 手册页面 7.1.2. info文档 7.1.3. 特定的文档 7.1.4. 网站 7.1.5. 入门指导类文档(HOWTO文档) 7.2. 通常…

    Debian 2025年6月4日
  • Linux下安装并使用apt-clone

    当我们在基于 Ubuntu/Debian 的系统上使用apt-clone ,包安装会变得更加容易。 如果你需要在少量系统上安装相同的软件包时,apt-clone 会适合你。 什么是…

    Debian 2025年6月9日
  • 【Debian管理员手册】第 13 章 工作站

    13.1. 配置 X11 服务 13.2. 定制图形界面 13.2.1. 选择显示管理器 13.2.2. 选择窗口管理器 13.2.3. 菜单管理 13.3. 图形桌面 13.3.…

    Debian 2025年6月8日
  • apt-get的清理操作

    apt-get,是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。 在基于 Debian 的系统上运行 a…

    Debian 2025年6月8日
  • Linux下常用的网络工具

    如果要在你的系统上监控网络,那么使用命令行工具是非常实用的,并且对于 Linux 用户来说,有着许许多多现成的工具可以使用,本篇文章重点为大家详细讲解一下Linux下常用的网络监控…

    Debian 2025年6月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注