《信息安全技术》实验一 PGP的原理与使用(macOS High Sierra下实现)

实验目的

  • 理解传统加密、公钥加密、混合加密、数字签名等概念
  • 理解公钥、私钥、会话密钥、对称密钥等概念及其应用
  • 掌握电子邮件安全应用
  • 熟悉PGP工具的使用

实验内容

  • 使用PGP进行传统加密
  • 使用PGP进行生成密钥对
  • 使用PGP进行混合方式加密
  • 使用PGP进行数字签名
  • 使用PGP交换并验证公钥
  • 使用PGP分割私钥

实验原理

在一个基于公钥密码体制的安全应用系统中,假设用户A和B分别拥有自己的公钥和私钥:

  1. 在产生A和B的密钥时,如果采用RSA算法,选取的模数n至少为1024位
  2. 为了预防A抵赖,B要求A对其发送的消息进行签名。A将使用A的私钥对消息签名;B使用A的公钥对A的签名进行验签。如果要求对消息保密传输,A将使用B的公钥对消息加密,B使用B的私钥解密消息。
  3. 实际应用中为了缩短签名的长度、提高签名的速度,而且为了更安全,常对信息的消息摘要进行签名。
  4. 实际应用中,通常需要进行身份认证。基于口令的认证简单易用,但是口令明文存储与传输很不安全,对口令认证机制可以进行如下改进:
    • 利用不需使用密钥的哈希算法加密口令,使口令能够以密文形式存储与传输。

实验步骤

一、安装GPG(macOS High Sierra下)

  1. 访问GPGTools网站,点击Download GPG Suite,下载GPG Suite for OS X 2017.1:

  2. 双击打开GPG_Suite-2017.1.dmg,运行安装操作:

  3. 双击Install,出现安装界面,单击继续:

  4. 在选择安装类型(Installation Type)的时候,选择自定义安装(Customize),单击自定:
  5. 去掉"GPGMail"前面的勾,单击安装:
  6. 再输入用户密码获取权限,随后安装完成。

二、创建PGP密钥

  1. 打开GPG,菜单栏中点击"新建",弹出"Generate new key pair"窗口,输入姓名、电子邮件和密码,创建PGP密钥:
  2. 展开"高级选项(Advanced options)",配置密钥类型、密钥长度和有效期:
    • 密钥类型选择RSA和RSA(默认):
    • 密钥长度选择4096字节:
    • 有效期选择一年,点击"Generate Key"生成密钥:
  3. GPG会弹窗提示密码长度过短QAQ不过由于实验方便还是就用短一点的密码吧~点击"Continue with simple password"继续生成:

    随后GPG会生成4096个随机字节:

    密钥成功创建!此时一定要点击"Upload Public Key",将公钥上传

    密钥成功生成如下:

三、设置PGP快捷键

  1. 点击"

    《信息安全技术》实验一 PGP的原理与使用的更多相关文章

    1. 2017-2018-1 信息安全技术 实验二 20155201——Windows口令破解

      2017-2018-1 信息安全技术 实验二 20155201--Windows口令破解 一.实验原理 口令破解方法 口令破解主要有两种方法:字典破解和暴力破解. 字典破解是指通过破解者对管理员的了解 ...

    2. 20155327 信息安全技术 实验二 Windows口令破解

      课程:信息安全概论 班级:1553 姓名:了李百乾 学号:20155327 成绩: 指导教师: 李冬冬 实验日期及时间: 2017年10月11日 15:30-18:00 必修/选修:必修 实验序号:0 ...

    3. 20155325 信息安全技术 实验二 Windows口令破解

      内容一览 实验结果 遇到的问题 思考题 详细步骤与解析(为了使存做笔记资料而做) 实验结果 字典破解 暴力破解 -不同密码强度的破解时间比较 用户名 密码 破解方式 破解时间 TEST (年月日) 字 ...

    4. 信息安全技术PGP实验 20155205 20155218

      信息安全技术PGP实验 一.实验过程 PGP的安装与设置(Mac版) 访问GPGTools网站,下载GPG Suite for OS X,下载完毕,双击dmg文件,运行安装操作. 创建PGP密钥(一定 ...

    5. 20155202 20155222 信息安全技术概论实验一 PGP的使用

      20155202 信息安全技术概论实验一 PGP的使用 实验原理 一.PGP简介 在现代社会里,电子邮件和网络上的文件传输已经成为生活的一部分.邮件的安全问题也就突出了,大家都知道在互联网上传输的数据 ...

    6. 2017-2018-1 20155219《信息安全技术》实验二——Windows口令破解

      2017-2018-1 20155320<信息安全技术>实验二--Windows口令破解 实验目的 了解Windows口令破解原理 对信息安全有直观感性认识 能够运用工具实现口令破解 实验 ...

    7. 2017-2018-1 20155312《信息安全技术》实验二——Windows口令破解实验报告

      2017-2018-1 20155312<信息安全技术>实验二--Windows口令破解实验报告 实验目的 了解Windows口令破解原理 对信息安全有直观感性认识 能够运用工具实现口令破 ...

    8. 20155205 信息安全技术第二次实验 Windows口令破解

      20155205 信息安全技术第二次实验 Windows口令破解 实验原理 一.口令破解方法 口令破解主要有两种方法:字典破解和暴力破解. 字典破解是指通过破解者对管理员的了解,猜测其可能使用某些信息 ...

    9. 2017-2018-1 201552326《信息安全技术》实验二——Windows口令破解

      2017-2018-1 201552326<信息安全技术>实验二--Windows口令破解 姓名:刘美岑 学号:20155326 班级:1553班 日期:10.24 一.实验环境 操作系统 ...

    随机推荐

    1. HDU 1695 GCD 欧拉函数+容斥定理 || 莫比乌斯反演

      GCD Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

    2. Builder 设计模式的学习

      Buileder(生成器)—对象创建型模式 一 意图 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 二 适用性 在以下情况使用Build模式: 1 当创建复杂对象的算法应 ...

    3. 视区相关单位vw, vh..简介以及可实际应用场景——张鑫旭

      一.N多的唠哩唠叨 CSS3中一些新的单位早在去年春暖花开的时候就介绍了,参见:CSS长度值及时间.频率.角度单位.显然,其中就提到了本文要感叹的单位vw, vh,见下图: 不过“我看见你”和“我触碰 ...

    4. Android自定义View探索—生命周期

      Activity代码: public class FiveActivity extends AppCompatActivity { private MyView myView; @Override p ...

    5. python 字符串的方法和注释

      capitalize() 把字符串的第一个字符改为大写 casefold() 把整个字符串的所有字符改为小写 center(width) 将字符串居中,并使用空格填充至长度 width 的新字符串 c ...

    6. gitlab在centos7和ubuntu16 上的安装

      虽然之前也了解了一些开源的git代码服务器,后来也认同了gitlab的优越性,也认识到了gitlab的普及性,自己也是在网上查了一些资料,很多资料都是分应用安装,例如安装redis nginx rub ...

    7. leetCode 题解之字符串中第一个不重复出现的字符

      1.题目描述 Given a string, find the first non-repeating character in it and return it's index. If it doe ...

    8. simple Terracotta session 同步

      部署前提: 配置好java环境和已有tomcat实例. 地址1:http://vdisk.weibo.com/s/dzUJr1vLcAWHl 地址2:http://code.taobao.org/p/ ...

    9. 从.net角度分析 异步和多线程

      线程 进程 CPU目前都是多核心的,相当于一个大脑几块可以同时工作. 超线程CPU是指在一块CPU中,用虚拟方法将一个物理核心模拟成多个核心(如:一个单物理核心,模拟成二个核心,即所谓的二线程.)只有 ...

    10. Django之自定义权限

      官方解释 Custom permissions¶ To create custom permissions for a given model object, use the permissions  ...