0%

计算机安全导论

课本:《网络安全基础》

对称加密原理

对称加密模型

  • 对称加密:单钥
  • 加密算法和解密算法同密钥
  • 数学表示:C=E(K,M),M=D(K,C)
    C密文,M明文,K私钥,E加密算法,D解密算法
  • 安全要求:
    • 强安全的加密算法+只有发送方和接收方才知道的私钥
    • 加密算法是公开的
    • 存在一个安全通道分发私钥

密码体制分类

明文转换密文的操作类型

  • 替换密码
  • 换位密码
  • 乘积密码(多级替换+换位)

使用的密钥数

  • 对称、单钥、秘密密钥或者传统加密
  • 不对称、双钥或者公钥加密

明文处理方式

  • 分组密码
  • 流密码:连续处理

密码分析

密码分析攻击

唯密文攻击

  • 加密算法
  • 要解密的密文

已知明文攻击

  • 加密算法
  • 要解密的密文
  • 用密钥生成明文-密文对

选择明文攻击

  • 加密算法
  • 要解密的密文
  • 破译者选定明文消息,以及使用密钥产生的对应密文

选择密文攻击

  • 加密算法
  • 要解密的密文
  • 破译者选定密文,以及使用密钥产生的对应解密明文

选择文本攻击

  • 加密算法
  • 要解密的密文
  • 破译者选定明文消息,以及使用密钥产生的对应密文
  • 破译者选定密文,以及使用密钥产生的对应解密明文

穷举搜索攻击

简单尝试每一个密钥

密码安全

无条件安全

  • 无论花多少时间,无论有多少已知信息,都不能唯一确定密文所对应的明文
  • 一次一密可以保证无条件安全。

计算安全

  • 破译密文的代价超出被加密信息的价值
  • 破译密文的时间超出信息的有效生命期

古典密码

替换密码

将明文每一个元素(比特或字母)映射到另外一个元素

凯撒密码

加密算法:c = E(3, m) = m+3 (mod 26)
解密算法:m = D(3, c) = c - 3 (mod 26)

移位密码

加密算法:c = E(k, m) = m+k (mod 26)
解密算法:m = D(k, c) = c - k (mod 26)

维吉尼亚密码

多表替换

轮转机

复杂多变的多表替换密码系统

l3个圆筒的轮转机系统有26^3^=17576个不同的替换字母表。

换位密码

栅栏密码

对角线顺序写入明文,行顺序读出作为密文

行变化密码

把消息一行一行写成矩形块,按列读出,但是把列次序打乱,列的读取次序就是密钥

分组密码

分组密码

将被加密明文划分成一个一个的分组,输入n比特明文分组,输出n比特密文分组。若映射可逆,具有2^n^!种替换可能性。

分组密码安全分析

若n较小时:为古典替换密码,易受频度分析法攻击

若n较大时:映射本身构成密钥,密钥长度定义为n×2^n^比特。

实际应用中不大可能传输或保存如此多的密钥。

Feistel密码结构

要素:分组大小,密钥大小,迭代次数,子密钥产生算法,轮函数,快速软件加密/解密,容易分析

数据加密标准(DES)

明文分组长度为 64-bit ,密钥长度为56-bit,在基于Feistel网络的基础上,采用16轮迭代,从原始56-bit密钥产生16组子密钥,每一轮迭代使用一个子密钥。

image-20220930134855001

三重DES

AES

image-20220930135620503