当前位置: 首页 > news >正文

软考教材重点内容 信息安全工程师 第 3 章 密码学基本理论

(本章相对老版本极大的简化,所有与算法相关的计算全部删除,因此考试需要了解各个常
用算法的基本参数以及考试中可能存在的古典密码算法的计算,典型的例子是 2021 和 2022
年分别考了 DES 算法中的 S 盒计算,RSA 中的已知 P,Q,E 求 D 等基本计算,建议大家掌握
古典密码学中的置换计算和典型的代换密码的原理)

密码安全性分析中新增
(5)密文验证攻击(ciphertext verification attack)。
密码分析者对于任何选定的密文,能够得到该密文“是否合法”的判断。
其他四种方式,老版本中讲到的密码分析攻击类型同样需要知道。
(1)唯密文攻击(ciphertext-only attack)。密码分析者只拥有一个或多个用同一个密钥加密的密文,没有其他可利用的信息。
(2)己知明文攻击(known-plaintext attack) 密码分析者仅知道当前密钥下的一些明文及所对应的密文。
(3)选择明文攻击(chosen-plaintext attack)密码分析者能够得到当前密钥下自己选定 的明文所对应的密
文。
(4)选择密文攻击(chosen-ciphertegt attack)。除了挑战密文外,密码分析者能够得到任何选定的密文所对
应的明文。
新增概念:混合密码体制 (除了公钥和私钥(对称密码)外,这个概念我们之前没有明确,但是一直都是这么使用的)
混合密码体制利用公钥密码体制分配私钥密码体制的密钥,消息的收发双方共用这个密钥,然后按照私钥密码体制的方式,进行加密和解密运算。

新增:3.3.2 IDEA
IDEA (International Data Encryption Algorithm)是国际数据加密算法的简记,是一个分组加密处理算
法,其明文和密文分组都是 64 比特,密钥长度为 128 比特。该算法已在 PGP 中得到应用。IDEA 算法能够
接受 64 比特分组加密处理,同一算法既可用于加密又可用于解密,该算法的设计思想是“混合使用来自不同代数群中的运算”。
特别注意:其他常用密码算法如 DES,3DES 的基本参数按照原来的内容掌握,各种算法的
框架,过程问题不再需要了解,但是 RSA 的相关计算必须掌握。


3.3.5 国产密码算法(记住下表中参数)

其他内容,依据原版教材内容(这里注意记住国密算法的基本分类和算法特性中的参数)


3.6 安全协议
Diffie-Hellman 密钥交换协议 (了解过程即可,对计算不做要求)
第一步,Alice 和 Bob 确定一个适当的素数 P 和整数 a,并使得 a 是 p 的原根,其中 a 和 P 可以公开。
第二步,Alice 秘密选取一个整数 aA,计算 YA 二 aaA mod p,并把 YA 发送给 Bob .
第三步,Bob 秘密选取一个整数 aB,计算 YB=aaB mod p,并把 YB 发送给 Alice .
YA 和 YB 就是所说的 Diffie-Hellman 公开值。
第四步,Alice 和 Bob 双方分别计算出共享密钥 K,即:
Alice 通过计算 K=(YB) aA mod p 生成密钥 K;
Bob 通过计算 K=(Ya ) aB mod p 生成密钥 K.
所以 Alice 和 Bob 生成的密钥 K 是相同的,这样一来就实现了密钥的交换。
3.6.2 SSH
SSH 是 Secure Shell 的缩写,即“安全外壳”,它是基于公钥的安全应用协议,由 SSH 传输层协议、SSH
用户认证协议和 SSH 连接协议三个子协议组成,各协议分工合作,实现加密、认证、完整性检查等多种安全服务。SSH 的服务进程端口通常为 22.


3.7.2 路由器安全应用参考

为了防止路由欺诈,路由器之间对路由更新包都进行完整性检查,以保证路由完整性。目前,路由器常用 MD5-HMAC 来实现。如果路由信息在传输过程中被篡改了,接收路由器通过重新计算收到路由信息的Hash 值,然后与发送路由器的路由信息的 Hash 值进行比较,如果两个 Hash 值不相同,则接收路由器拒绝路由更新包.

3.7.4 电子邮件安全应用参考
PGP 中密钥管理算法选用 RSA、数据加密算法 IDEA、完整性检测和数字签名算法,采用了 MD5 和 RSA以及随机数生成器,PGP 将这些密码技术有机集成在一起,利用对称和非对称加密算法的各自优点。

http://www.lryc.cn/news/486278.html

相关文章:

  • 微信小程序 https://thirdwx.qlogo.cn 不在以下 downloadFile 合法域名列表中
  • Linux性能优化之火焰图的起源
  • 《Markdown语法入门》
  • Controller Baseband commands速览
  • Redisson 3.39.0 发布
  • 高阶C语言补充:柔性数组
  • S32K324信息安全-使用IC5000/IC5700进行debug口解锁
  • 简单实现QT对象的[json]序列化与反序列化
  • Unity肢体控制(关节控制)
  • Node.js | Yarn下载安装与环境配置
  • WPF如何全局应用黑白主题效果
  • [Qt] Qt删除文本文件中的某一行
  • 【HarmonyOS学习日志(9)】一次开发,多端部署之界面级一多开发
  • 基于Java+SSM+JSP+MYSQL实现的宠物领养收养管理系统功能设计与实现六
  • Java项目实战II基于微信小程序的课堂助手(开发文档+数据库+源码)
  • 解析 Android WebChromeClient:提升 WebView 用户体验的关键组件
  • 【LeetCode热题100】字符串
  • OceanBase 闪回查询
  • C++析构函数详解
  • 【网络安全 | 漏洞挖掘】未授权获取AI聊天内容
  • 时间序列分析——移动平均法、指数平滑法、逐步回归法、趋势外推法等(基于Python实现)
  • opencv(c++)----图像的读取以及显示
  • PyTorch——从入门到精通:PyTorch基础知识(张量)【PyTorch系统学习】
  • (笔记)ubuntu20安装jdk7,多版本管理
  • Python系列教程
  • 如何恢復電腦IP地址的手動設置?
  • Linux 下敏感文件路径总结
  • gitlab 服务器集群配置及 存储扩展配置
  • 3D Gaussian Splatting 代码层理解之Part2
  • .length和.length()有什么区别?什么情况下使用哪个?