GPG应用:加密、解密、签名

时间:2024-04-03 18:15:25

1. 简介

GPG是软件GnuPG的缩写,使用了PGP(Pretty Good Privacy)来实现加密。这篇文章主要关注email的加密、解密、签名的命令,没有pgp原理的讲解,会根据我搜索资料时的情况添加一些通常没有回答的小白会有的问题的解答。

2. 软件下载

Linux:通常已安装GPG

Win:Gpg4win    (http://www.gpg4win.org)

Max:GPGTools  (http://gpgtools.org/)

三者的gpg命令相同,可以参考gpg handbook:https://www.gnupg.org/gph/en/manual.html#AEN65

3. 操作过程

由于是对email进行加解密,所以尽可能将所有可以转换的文件转换成ascii码进行操作,否则密文可能会在邮件中产生问题。

在ascii码的条件下,**、密文都可以存为txt文件并用gpg进行载入、解密等操作

以win平台为例,安装好gpg后,在命令行中输入gpg --version测试并查看版本号

GPG应用:加密、解密、签名

3.1创建**

用gpg --full-generate-key来创建自己的**,该命令比gpg --gen-key多出了添加comment和设置过期时间的功能,注意如果使用Kelopatra默认的创建**是gpg --gen-key,推荐使用第一个命令

3.2 载入**

gpg --import <**文件>

3.3 认证签名

gpg --verify <文件名>

3.4 加密和签名

gpg --encrypt --sign --armor -r <接收者邮箱> <文件名>

这一行就可以包括加密和签名两个操作,-r后面是recipient的邮箱

如果有多个recipents则可用 -r <邮箱1> -r<邮箱2>

--encrypt和--sign可以删去来实现只签名或只加密的功能

--armor负责将字符转换为ascii码

3.5 解密

对于加密但未签过名(encrypted and unsigned)的密文和j加密且签名(encrypted and signed)的密文,都可以用

gpg --decrypt <文件名> 来解密,签过名的文件在--decrypt后会显示加密和签名的信息

4. Kleopatra的使用

在安装Gpg4win时可以同时安装Kelopatra软件。这个软件有图形界面和剪贴板、右键快捷键功能等

剪贴板功能:

可以将ascii码的密文选中并复制,右键软件图标,选择剪贴板,有快捷的签名、加解密、校验功能,点击后输出会存在剪贴板里,只需复制就可以获得输出

GPG应用:加密、解密、签名