如何使用GPG(GnuPG)进行加密
GnuPG(GNU Privacy Guard,简称:GPG)为一款免费开源的使用非对称密钥加密(asymmetric cryptography)之软件,最初由Werner Koch开发,该软件使用非对称密钥(亦称公开密钥加密)提高加密速度,使用公钥便于交换。 GnuPG是自由软件基金会的GNU计划的一部份,与2000年开始接受德国政府资助。以GNU通用公共许可证第三版授权,下面为在Windows操作系统(Windows 7或Windows XP)下使用方法。
加密过程
- 01
加密过程需要双方均安装GnuPG,大致过程为A在本地生成公钥和私钥,将公钥上传到公钥服务器或者直接发送给B,B接受到公钥后对文件进行加密(加密后B无法解密)并将加密文件发送给A,A使用私钥解密,从而避免直接传送密码。
下载及安装
- 01
1.首先到官方网站下载安装源程序。
- 02
2.拖动网站右侧的滑动条,点击“Gpg4win”开始下载。
- 03
3.下载完毕后点击安装源程序进行安装,弹出“用户帐户控制”对话框,点击“是(Y)”继续。
- 04
4.点击“Next>”继续。
- 05
5.弹出许可协议,点击“Next>”继续。
- 06
6.弹出组件选择窗口,一般选择“Kleopatra”和“GpgEX”即可,选择完毕后点击“Next>”继续。
- 07
7.选择安装路径,不建议安装到系统盘,点击“Next>”继续。
- 08
8.选择是否在桌面建立快捷方式,选择完毕后点击“Next>”继续。
- 09
9.选择开始菜单文件夹,点击“Next>”继续。
- 10
10.开始安装GPG。
- 11
11.安装完毕,点击“Finish”即可。
密钥对生成
- 01
12.在开始菜单里点击“Kleopatra”(亦可直接点击桌面快捷方式)运行软件。
- 02
13.软件开始初始化。
- 03
14.软件主界面如下。
- 04
15.点击“File”并选择“New Certificate...”。
- 05
16.在下图中点击第一项(Create a personal OpenPGP key pair)。
- 06
17.分别在对应栏输入相应内容(输入真实邮件地址),如需做进一步设置,则点击“Advanced Settings...”。
- 07
18.一般选择RSA,默认为2048bits,本例中设置为4096bits,安全起见在下面设置Vaild until(失效期),设置完毕后点击“OK”回到上图,点击“Next>”继续。
- 08
19.显示出所有参数设置,点击“Create Key”继续。
- 09
20.输入一个密码(建议尽量复杂),此Passphrase为在使用私钥之前输入的密码短语。
- 10
21.再次输入密码并点击“OK”。
- 11
22.密钥对创建完毕,点击“Make a Backup Of Your Key Pair...”进行备份。
- 12
23.在下图中蓝色框内输入路径并点击“OK”进行保存(本例中保存为ytyzx2014.gpg)。
- 13
24.提示已经成功导出。
- 14
25.回到主界面在“My Certificates”可看到已生成密钥对。
- 15
26.选中密钥并点击鼠标右键,选择“Export Certificates...”。
- 16
27.选择路径将密钥文件保存到本地(扩展名为asc)。
- 17
28.用记事本或者NotePad++打开此文件,此即为公钥。
- 18
29.亦可将公钥上传到公共或私有服务器上,选中公钥并点击鼠标右键,选择“Export Certificates to Server...”。
- 19
30.提示没有配置目录服务,将默认使用“keys.gnugp.net”服务器,点击“Continue”继续。
- 20
31.提示已经上传成功。
加密文件
- 01
32.告知对方您公钥的名称及存储公钥服务器,对方打开Kleopatra,点击“Lookup Certificates on Server”。
- 02
33.如出现下图提示则表明未配置目录服务。
- 03
34.在主界面依次点击“Settings-->Configure Kleopatra”。
- 04
35.在下图中点击“New”。
- 05
36.默认将增加“keys.gnupg.net”服务器,点击“OK”返回主界面。
- 06
37.重新点击“Lookup Certificates on Server”,输入公钥名称(本例中为ytyzx)并点击“Search”。
- 07
38.选择正确的公钥并点击“Import”。
- 08
39.提示已经导入成功。
- 09
40.在主界面选择“File”并点击“Sign/Encrypt Files...”(亦可直接拖动需要加密之文件到“My Certificates”栏)。
- 10
41.选择您需要加密的文件并点击“打开(O)”。
- 11
42.如需加密完毕后直接删除原文件则选择“Remove unencrypted original file when done”,点击“Next>”继续。
- 12
43.选择已生成之密钥并点击“Add”按钮后将密钥添加,然后点击“Encrypt”。
- 13
44.弹出警告提示因为您不是密钥的拥有者将只能加密无法解密,直接点击“Continue”继续。
- 14
45.提示加密后原文件将被删除,点击“Continue”继续。
- 15
46.开始加密文件(本例中5G文件大约需要50分钟)。
- 16
47.加密完毕,提示原文件已被删除。
- 17
48.在原目录里可发现原文件已被删除,新增一个文件名为“原文件名.gpg”的文件(本例中为jiaoxue.db.gpg),对方将此文件发送给我们即可。
解密文件
- 01
49.收到对方发送的加密文件后,在加密文件(本例中为jiaoxue.db.gpg)点击鼠标右键,选择“Decrypt and verify”。 亦可在Kleopatra主界面依次点击“File-->Decrypt/Verify Files...”,找到对方发送的加密文件打开。
- 02
50.因没有设置签名故下图中直接点击“Decrypt/Verify”继续。
- 03
51.弹出输入密码提示,输入原来设置的密码短语(Passphrase),并点击“OK”开始解密。
- 04
52.具体解密时间因文件大小及电脑处理速度等条件各异,解密完毕后弹出解密成功对话框,点击“OK”即可。
- 05
53.在加密文件同路径下可看到解密文件(本例中为桌面)。