网络安全—PGP8.1软件应用

文章目录

  • 安装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!文本的可信度由于签名的存在大大提高了。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/593724.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java中关键词strictfp有什么作用?

在Java中,关键词strictfp用于声明一个方法、类或接口是严格遵守浮点数计算规范的。 具体作用包括: 保证浮点数计算的结果在不同平台上是一致的,避免由于浮点数计算的不精确性导致的结果不确定性。 指定了严格的浮点数计算规则,禁…

【解决】Unity 设置跨设备分辨率表现

开发平台:Unity 2018版本以上 开发语言:CSharp 编程平台:Visual Studio 2022   问题描述 使用 UnityEngine.dll 中关于设置分辨率的方法时,无法满足应用以设定分辨率进行屏幕显示问题。因而造成画面不同程度的拉伸情况。而这种情…

机器学习-基于Word2vec搜狐新闻文本分类实验

机器学习-基于Word2vec搜狐新闻文本分类实验 实验介绍 Word2vec是一群用来产生词向量的相关模型,由Google公司在2013年开放。Word2vec可以根据给定的语料库,通过优化后的训练模型快速有效地将一个词语表达成向量形式,为自然语言处理领域的应…

C# StringBuilder对比string的优点和15大案例

文章目录 StringBuilder和String 对比1. **循环内字符串连接**2. **构建大型日志消息**3. **格式化长字符串**4. **SQL 查询构造**5. **从文件读取并合并行**6. **拼接数组元素**7. **格式化电子邮件模板**8. **处理用户输入流**9. **JSON 或 XML 格式的序列化与构建**10. **动…

leetcode算法题之递归--二叉树中的深搜总结

递归的本质是找重复的子问题 文章目录 1.计算布尔二叉树的值2.从根节点到叶节点数字之和3.二叉树剪枝4.验证二叉搜索树5.二叉搜索树中第K小的元素6.二叉树的所有路径 1.计算布尔二叉树的值 计算布尔二叉树的值 class Solution { public:bool evaluateTree(TreeNode* root) …

Spring Cloud + Vue前后端分离-第9章 大文件断点续与极速秒传

源代码在GitHub - 629y/course: Spring Cloud Vue前后端分离-在线课程 ​​​​​​Spring Cloud Vue前后端分离-第9章 大文件断点续与极速秒传 作为一个视频网站,一个文件小则几十M,大则上G,上传一个大文件受网络影响很大,文…

【网络技术】【Kali Linux】Wireshark嗅探(四)域名系统(DNS)

一、实验目的 本次实验使用wireshark流量分析工具进行网络嗅探,旨在了解域名系统(DNS)的工作原理。 二、域名系统概述 简单来说,域名系统(Domain Name System, DNS)将域名(可以理解为“网址”…

Prometheus-AlertManager 邮件告警

环境,软件准备 本次演示环境,我是在虚拟机上安装 Linux 系统来执行操作,以下是安装的软件及版本: System: CentOS Linux release 7.6Docker: 24.0.5Prometheus: v2.37.6Consul: 1.6.1 docker 安装prometheus,alertmanage,说明一下这里直接将…

智慧农田使用的自动虫情测报灯的作用

TH-CQ3S随着科技的不断进步,智慧农业正在全球范围内兴起。作为智慧农业的重要组成部分,智慧农田已经成为提高农业生产效率、保障农产品质量安全的重要手段。而在智慧农田中,自动虫情测报灯的作用不可忽视。 自动虫情测报灯,顾名思…

C++大作业——学生选课系统优化版

C大作业——学生选课系统优化版 前言1.学生类和课程类的实现2.输入输出流重载的实现3.增删改查的实现4.多级菜单的实现5.选课和退选的实现5.完整代码 前言 本文是对本人之前写过的一个学生选课系统的优化,整体上的逻辑是和我上一篇博客一样的(链接在此&a…

Linux学习(9)——RAID与服务器的常见故障

目录 一、服务器常见故障 1、系统不停重启进入不了系统 2、卡在开机界面右下角有fA B2 H8 3、系统安装不上 4、如何进入服务器的bios 5、一般进入阵列卡的快捷键 6.网络不通 7.硬盘不识别 二、RAID相关知识 1、RAID的概念 2、RAID功能实现 3、RAID实现的方式 三、常…

【算法系列 | 11】深入解析查找算法之—插值查找

序言 心若有阳光,你便会看见这个世界有那么多美好值得期待和向往。 决定开一个算法专栏,希望能帮助大家很好的了解算法。主要深入解析每个算法,从概念到示例。 我们一起努力,成为更好的自己! 今天第11讲,讲…

RK3568 学习笔记 : 开机上电与串口波特率

前言 开发板:【正点原子】ATK-DLRK3568 开发板,包装什么的看上去有点高大上,也有点贵。。 开发板资料的 Linux-SDK 编译通过了,想尝试第一次上电开机,不过,开始出了一点状况,串口信息是乱码&am…

Python贪吃蛇小游戏(PyGame)

文章目录 写在前面PyGame入门贪吃蛇注意事项写在后面 写在前面 本期内容:基于pygame的贪吃蛇小游戏 实验环境 python3.11及以上pycharmpygame 安装pygame的命令: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pygamePyGame入门 pygam…

国家信息安全水平等级考试NISP二级题目卷③(包含答案)

国家信息安全水平等级考试NISP二级题目卷(三) 国家信息安全水平等级考试NISP二级题目卷(三)需要报考咨询可以私信博主! 前言: 国家信息安全水平考试(NISP)二级,被称为校园版”CISP”,由中国信息…

算法导论复习——CHP25 多源最短路

问题描述 给定一个带权重的有向图G(V,E),其权重函数为ω:E→R。 在图中,对所有的结点对 u,v∈V,找出从结点u到结点v的最短路径。 该问题的解以表格(二维数组)的形式给出:第u行第v列给出从结点u到结…

在Linux中以后台静默运行Java应用程序

在Linux系统上运行Java应用程序时,有时我们希望将其设置为后台运行,而关闭终端窗口时不会影响进程的执行。在本文中,我们将介绍几种实现这一目标的方法。 1. 使用nohup命令 nohup是一个用于在后台运行进程的命令,而且关闭终端窗…

C语言实例_math.h库函数功能及其用法详解

一、前言 数学在计算机编程中扮演着至关重要的角色,C语言的math.h头文件提供了一系列的函数和工具,用于数学计算和常用数学函数的实现。这些函数包括数值运算、三角函数、指数对数函数等,为开发人员提供了强大的数学处理能力。本文将对math.…

SAM-Track online / offline配置

segment anything model(SAM)是Meta于2023年4月5日发布的分割基础模型。SAM 允许分割任何对象而无需微调。 可以在这里尝试SAM模型的效果。 分割效果这么好,都忍不住想用SAM来做场景的语义分割,realtime与否先放在一边&#xff0c…

SpringBoot—支付—支付宝

一、流程 二、沙箱操作 1.用支付宝账号登录【开放控制平台】创建应用获取 appid 2.选择沙箱模拟环境 3.沙箱应用-》获取appid(一个appid绑定一个收款支付宝账户) 4.利用开发助手工具生成RSA2密钥 公钥:传给支付宝平台 私钥:配置代码中,…