文章目录
- 安装PGP8
- 了解
- 工作原理
- PGP使用
- 准备工作
- 加密与解密
- 加密者视角(发送方)
- 接收者视角(接收方)
- 签名
- 签名方(发送方)
- 验证签名方(接收方)
- 补充
- 加密签名一段文字
- 签名后的格式
- 验证解密一段文字
安装PGP8
百度网盘链接下载——PGP8.1
提取码:2391
- 双击exe文件开始安装
问你是否是新用户还是已经有了密钥,这里就默认
选择安装路径,按照你自己需求来就行,哪里都可以。
这里我选择默认,你看哪个有需要也可以勾选其他的,不影响后续操作。
这里可以默认不用管,点击下一步
安装成功,最好是重启一下电脑,他会提示你勾选重启。
了解
安装完成后会有:
PGPmail
第一个按钮:打开PGPkeys
第二个按钮:加密
第三个按钮:签名
第四个按钮:加密 and 签名
第五个按钮:解密 / 签名(意思是你解密或者签名都可以点这个按钮)
第六个按钮:wipe抹去,选择一个文件彻底从磁盘抹去(无法恢复)
第七个按钮:选择清除你磁盘里面空余的空间,也就是空余的帮你清除掉然后无法恢复
(防止被黑客恢复文件)
PGPkeys打开后是这样的:
- 后缀名
.pkr:是公钥环
.skr:是私钥环
环的意思是你可以导入很多钥匙,比如公钥环就是你可以将其他人的公钥导进来在这个公钥环中,同理私钥也是,不过私钥一般都是自己创建的。
注意:你每次新创建环的时候,当你退出叉掉PGPkeys会提示你保存公钥和私钥环,因为这两个是一起的,当你可以手动保存这对钥匙环。
工作原理
PS:都是我网络安全老师的PPT截图下来,老师开的实验课程的图文PPT还是做得蛮不错的。
PGP使用
准备工作
首先是需要新建一个钥匙环,包含公钥环私钥环,这就是为什么保存的时候会让你连续保存两个文件,因为私钥环和公钥环在你创建的时候就必须要有且分开管理的。
(私钥环这个是你自己私有的,不要让人知道,也就是说我们将别人导入的公钥导入到这个环的时候,自动保存到公钥环中)
我们其实不用管,因为PGP你导进一个公钥还是私钥他分得清,你只管import即可,保存的时候会帮你分类保存管理。
新建后点击Expert(专家)
输入你自己的名字和email(这里不是真实的应用场景就随便取名了)
然后下一步继续,填写你的口令(注意口令不是私钥,口令是用来保护私钥的密码,在PGP中你解密或者签名的时候不用口令是用不了真正的私钥去进行解密或者签名的。)
同时你点击取消往右上角边的Hide Typing那就会显示你自己输入的口令,不勾选就看不见爱你你自己输入的口令。
继续下一步就完成了属于自己的钥匙对的生成了
将自己的公钥导出发送给希望一起交流沟通的人
保存好后会生成一个asc文件,即我们的公钥文件(对应你导出的那一个公钥),然后就把这个文件发给你好友,一起使用PGP加密交流(如果不嫌麻烦的话),我把自己的公钥保存在了桌面
然后导入别人的公钥,这一步很关键,没有别人的公钥只能自己玩,需要被人公钥就代表你可以发送数据给这个公钥的人。我这里开了两台虚拟机,然后另一台也安装了PGP,然后将他导出的公钥放在了我这里,双击他就有import界面弹出来
点击import后就会出现在你的PGPkeys界面列表里面,现在就代表你可以发送消息给这个公钥的人了,然后别人将你的公钥导入他自己那里的话他也可以给你发数据你进行解密接受。(这里对方不一定将你的公钥导进去,因为我这里演示的是你发给对方)
加密与解密
加密者视角(发送方)
这时候开一个文件,随便什么文件都行,这里我就开一个txt文本文件里面写着:hello world!
我们前面已经打开了PGPmail了,所以在上面点击第二个加密按钮
然后选择你要加密的文件,我这里就桌面上面的文件打开,就会出现下图
这里一定要理解一个点,
上面的框里面存着你导入别人的公钥,也就是公钥列表,你以后导入的公钥都会显示在这里
下面的框是放着你要加密的文件的接收者列表,列表默认只有你自己是接收者,当然你也可以将自己移除
现在开始将上面你要发送的人的名字拖到下面来(也就是将对方的公钥拖到下面的接收方的表),这里是可以拖动的,点住名字直接拖拽下来。
你也可以双击名字,上面列表双击某个公钥,该公钥就会跳到下面的框框中,同理下面的框框双击就会跳到上面的框框中。
下图中我将对方的公钥拖到接收者列表中,这样对方就可以解密,我这里没有把自己移出接收者列表,那就表示待会生成的加密文件我自己也可以解密。
点击OK后,完成使用对方的公钥加密就会生成下面的后缀名为.pgp的文件
这个文件就只有你刚刚使用的公钥加密的那个人可以解密(当你自己也可以解密,因为你把自己也放在了接收者列表里面)
接收者视角(接收方)
注意:我这里是将对方的公钥导进来了,但是你可以不这么做,因为对方使用你的公钥加密而已,并没有使用它的私钥,所以你可以仅仅使用自己的私钥就可以解密,这里如果涉及到签名就必须要求双方都导入对方的公钥。
下图接收者已经将对方加密给我的文件收到了
接收者点击PGPmail中的第五个按钮,然后就会弹出来让接收者输入接收者自己的私钥。同理这里的往右上方的Hide Typing是否勾选也是一个是否显示你输入的私钥选项。
输入正确的私钥后,接收者桌面就会自动生成一个文件,这里面就是我加密的文件,这时候就可以打开查看了
查看后确实是正确的!
签名
这里基于上面加密的pgp文件进行签名,当然可以先对原文进行签名。
OK,下面是对前面的加密后的文件进行签名。
签名方(发送方)
在PGPmail中点击第三个按钮
选择之间加密后的pgp文件
输入自己的私钥(发送方私钥)
自动生成了一个后缀名为.sig的文件,这时候这个文件需要和刚刚被签名的文件放一起发送过去,也就是说,刚刚的pgp文件和现在生成的.sig文件一起发给接收方。
验证签名方(接收方)
现在接收方拿到了加密后的文件和签名的文件
注意:我们的签名文件是对加密后的 文件进行签名的,所以验证只是能够验证出来加密后的文件也就是现在接收到的加密文件,对谁签名就能验证谁,可以简单理解为这个意思。
还有一个很重要的点就是我们接收方一定要导入了发送方,也就是签名的那个人的公钥才可以进行验证。,我这里已经导入了。
现在你可以双击点开后缀名为sig的文件,也可以通过PGPmail的第五个按钮进行选择sig文件验证签名文件。我这里就选择点开第五个按钮
选择要验证的签名文件
选择完成后,如果成功验证就会直接跳出下面的框框,这里需要注意的是,不要看到灰色就觉得没通过,这是正常的,这是因为你导入的时候没有设置可信度,也就是说可信度为0,这个软件好像设置不了,就不管了 ,灰色也是代表验证通过的。
这样就跟代表我们的加密文件是可以相信是对方发过来的,没有被篡改过。
补充
对于文字的直接加密是通过粘贴板来实现
加密签名一段文字
首先将文字复制(或者Ctrl+C)
然后点击加密按钮,右下角有一个粘贴复制板选项
同样的来到这个界面,记得将接受者拖动到下面的列表中,下图还未进行拖动
完成后点击OK
这时候不要慌,加密后的数据其实是在你的粘贴板里面,这时候你粘贴下去就行,粘贴完成后就出现一坨东西,这一坨数据就是刚刚那段文件的加密文件
这时候解密方使用相同的办法先复制好,再按解密按钮。我这里想加一个签名,所以我尝试加一个签名进行。
我先复制这一段密文,然后点击签名按钮,选择复制粘贴板选项
输入口令,完成签名,签名后的数据依旧是复制起来了
直接粘贴出来,右边就是签名好的数据
签名后的格式
我们可以看到,签名后的数据是前面部分是加密的数据,后面才是我们的签名,也就是说我们只需要将这一段完整的数据发过去就行, 因为PGP已经帮我们拼接好了,整个数据就是:数据+签名,当然还有其他细节数据,我们不深究,主要是通过这个了解到了PGP的发送格式,只需要发送签完名后的数据就行,之前的可以不发送,因为后面验证完成后的数据会默认给你复制好,然后你再点一次解密就完成了解密。
验证解密一段文字
首先我们收到对方发过来的加密+签名的数据后,复制下来,点击解密/验证按钮,这个他PGP会自动匹配你是验证还是解密
首先发送方最后的步骤是签名,所以你点击解密/验证按钮后他自动匹配到了你是签名所以直接帮你验证,这个就不用输入私钥,直接弹出来一个框,里面的就是验证签名成功,然后输出的密文格式。
这时候你需要复制里面的内容,全选复制或者他提供了 一个按钮给你copy
然后继续点击解密/验证按钮,这时候他就会检测到你现在是要进行解密了,总之记得复制下来他他弹出来那份数据。
(自动匹配或许就是PGP为什么加密后的数据和签名后的数据都有格式不同的原因了,我猜的)
输入口令
就可以看到解密成功了,解密成功出来这份hello world!文本的可信度由于签名的存在大大提高了。