第2章 密码体制与技术

对称密码

对称密码体制根据对明文的加密方式的不同而分为分组密码和序列密码。

分组密码:先按一定长度(如64比特、128比特 等)对明文进行分组,以组为单位加/解密;

序列密码:不进行分组,而是按位加密

对称密码体制的优点:

算法简单、速度快、适合加密大量数据

序列密码

序列密码的保密性完全取决于密钥的随机性

一般采用伪随机序列来代替随机序列作为 密钥序列,也就是序列存在着一定的循环 周期。这样序列周期的长短就成为保密性的关键。如果周期足够长,就会有比较好 的保密性。

分组密码

分组密码体制的设计准则

混乱原则

指明文与密钥以及密文之间的统计关系尽可能复杂化 ,使破译者无法推导出相互间的依赖关系,从而加强隐蔽性。

扩散原则

扩散原则是让明文中的每一位(包括密钥中的每一位)直接和间接影响输出密文中的许多位,或者让密文中的每一位受制于输入明文以及密钥中的若干位,以便达到隐蔽明文的统计特性。

分组密码常用操作:

  • 异或
  • 移位
  • 置乱
  • 替换

图像置乱---猫脸映射

DES加密算法——Feistel结构

密钥和分组长度:

64位,但每个第8为都用作奇偶校验,所以对于使用者而言,密钥长度是56位。

分组长度64位

基本操作:

采用Feistel技术,16个循环,异或、移位、置乱 、替代四种基本运算

DES密钥空间多大?

2^56

3DES加密算法

三重DES加密:加密---解密---加密


非对称密码

非对称密码又称为公钥密码和双钥密码

公钥密码的理论基础:单向陷门函数

公钥密码是非对称的,它使用两个独立的密钥,即公钥和私钥,任何一个都可以用来加密,另一个用来解密

常用的公钥密码算法

RSA

DSA

Diffie-Hellman

数字签名

公钥与私钥是一对镜像 用其中一个加密, 用另一个解密

解决方案: 用发送者的私钥加密信息, 然后用公钥解密

如果能够解开,说明发送者加密并发送了本信息

除非发送者的私钥不再保密

数字签名原理——公钥鉴别

公钥鉴别的问题:签名太长

解决方法:数字摘要(message digest)

最常用的散列函数

RSA公司的 MD4 和 MD5 (128 位即16 字节 )

NIST 的安全散列算法 SHA(160 位即20字节 )

网络安全课程笔记(二)相关推荐

  1. 千锋教育网络安全课程笔记

    网络安全课程笔记 1.虚拟环境部署 1.1 虚拟机的运行架构 寄居架构(适合用于学习) (这里的硬件就是我们的笔记本电脑) 虚拟机跟真实机是互相独立的,一些危险的程序放到虚拟机里面运行是不会影响到真实 ...

  2. 《数字电子技术课程设计》课程笔记(二)————multisim仿真模拟

    仿真源文件:链接:百度网盘 请输入提取码 提取码:1234 一.前言 对于一个完整的设计过程而言,仿真是一个必不可少的过程,因为仿真给了你一个重要的数据参考,信心来源,在之后的硬件设计过程中,心中的引 ...

  3. 网络安全课程笔记(1)

    第一章 网络安全概述 网络安全重大事件 D-link路由器后门事件 棱镜门 OpenSSL漏洞--心脏出血 协程泄密门--个人信息泄露 比特币第一疑案,门头沟被盗事件 网络安全属性 三个基本属性CIA ...

  4. 《模拟电子技术基础》课程笔记(二)——课程概要

    1.课程内容: 利用半导体器件和外围器件构成的对模拟信号实施处理的电路. 包括信号的滤波.放大.产生.变换. 2.课程特点 (1)工程性强 ①在分析模拟电路时常常需要从工程角度分析问题和解决问题. ② ...

  5. MATLAB课程笔记(二)——MATLAB基础知识

    MATLAB系统环境 MATLAB操作界面的组成 采用与office 2010相同风格的操作界面. >>:命令提示符表示MATLAB处于准备状态. ...:续行符 MATLAB的搜索路径 ...

  6. 经验似然课程笔记二: 参数似然

    1.2参数似然 参数似然方法假设总体分布F具有某种参数分布形式(比如正态分布完全由其均值和方差决定),即除了含有有限个参数未知以外,F完全已知,然后利用似然函数进行推断. 具体来讲,假设 X 1 , ...

  7. Py函数直接传入root是啥意思_阿里云python课程笔记(四):函数amp;类和对象

    接阿里云python课程笔记(三):数据结构 我们讨论一下python中的深拷贝和浅拷贝 dic1 = {'user': 'lsgogroup', 'num': [1, 2, 3]}# 引用对象dic ...

  8. 《网络安全工程师笔记》 第十二章:域

    注:本笔记来自温晓飞老师的网络安全课程 第十二章:域 第一章:虚拟化架构与系统部署 第二章:IP地址详解 第三章:进制转换 第四章:DOS基本命令与批处理 第五章:用户与组管理 第六章:服务器远程管理 ...

  9. 哈佛大学单细胞课程|笔记汇总 (二)

    生物信息学习的正确姿势 NGS系列文章包括NGS基础.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞测序分析  ...

最新文章

  1. window 桌面开发_C#桌面开发的未来WebWindow
  2. 在NVIDIA Jetson Xavier NX上安装llvmlite报错:No such file or directory: ‘llvm-config‘: ‘llvm-config‘
  3. 【Java 并发编程】线程锁机制 ( 悲观锁 | 乐观锁 | CAS 三大问题 | ABA 问题 | 循环时间长问题 | 多个共享变量原子性问题 )
  4. Selenium脚本编写技巧和窍门
  5. java种子填充_种子填充实例运行出问题
  6. 北大青鸟java+web_java web ui开发
  7. gvim的常用编辑快捷键
  8. c语言经典程序100例50行以上,C语言非常简单的字符统计程序50行
  9. 给WPS添加快捷键 智能粘贴 粘贴纯文本
  10. 使用Python进行局域网传输文件两种方法
  11. 如何批量等比例缩放图片尺寸?
  12. Unity实战篇 |制作一个跟随鼠标转向的 简易箭头指示标,包括 UI指向 和 3D指向标
  13. 2020 GKCTF
  14. Excel翻译单元格内容
  15. 利用python和Sen2cor对Sentinel2进行批量大气校正
  16. 前端代码为什么会有低代码及无代码
  17. 2的10次方-1的python表达式_第二章PythonⅠ的基本语法,python,I
  18. 删除桌面上的两个IE图标
  19. Qt在线帮助文档网址以及安装包下载地址
  20. 【做人:一,性格和习惯的重要性[转载]】

热门文章

  1. java集合数据复制到另外一个集合
  2. C++ 冒险游戏 小镇5.4.0
  3. mysql性能调优 高可用_MySQL性能调优与架构设计——第 17 章 高可用设计之思路及方案...
  4. 设置DirectShow开发的编译环境
  5. Spark之购物篮分析
  6. MATLAB永磁同步电机电角度,永磁同步电机控制方法以及五种常见问题的大咖讨论全过程整理...
  7. Android电视切换回放,Android Studio V3.12环境下TV开发教程(五)建立电视回放应用...
  8. iMazing传输 iPhone 备忘录和通话记录功能
  9. PageAdmin环境配置要求
  10. ETC到底要不要装?大力普及的背后到底有哪些不为人知的秘密?