![[Pasted image 20240425172457.png]]敌手攻击方法
- 被动攻击(窃听):获取但不改变传输信息
- 主动攻击:窃听且改变信息
- 目的为了伪造和欺骗
密码学的基本目标
- 信息的机密性保证(对抗窃听的技术):
- 加密技术
- 加密算法
- 加密技术
- 信息的真实性认证(对抗主动攻击的方法):
- 认证技术
- 认证算法和配套的协议
- 在信源增添认证码,在信宿进行认证
- 认证技术
- 承认的不可否认性问题(对抗抵赖的技术):
- 在信源增添认证码,在信宿进行认证
- 数字签名和仲裁机构
- 要求添加认证码后使所有人都能够进行认证
- 在信源增添认证码,在信宿进行认证
加密算法的基本概念
![[Pasted image 20240425174343.png]]
- 把密钥分配给双方的过程叫做密钥分配
- Kerckhoffs假设:
- 敌人知道除密钥之外的所有知识
- 加密算法
- 脱密算法
- 明文空间——明文的取值范围
- 密文空间——
- 密钥空间——参数的取值范围
- 敌人知道除密钥之外的所有知识
攻击方法的分类
- 唯密文攻击
- 唯明文攻击
- 选择明文(密文)攻击
- 在已知明文的基础上,选择明文(密文)会得到相对应的密文(明文)
破译方法
- 对密钥的穷举攻击
- 在可能密钥小于2的64次方的密码算法不能对抗穷举算法
- 64个二进制的数所能表示的总是
- 为2的128次方的可能密钥的算法能对抗穷举攻击![[Pasted image 20240425175247.png]]
- 在可能密钥小于2的64次方的密码算法不能对抗穷举算法
密码算法的三个编码技术
- 信息加密的一般流程![[Pasted image 20240425175512.png]]
- 代替密码
- 移位密码
- 加减密码——一种特殊的代替密码
- 将明文逐字符或连字符相加相减
单表代替:(m+a)mod26
多表代替:(m+k)mod26
- 将明文逐字符或连字符相加相减
一次一密
![[Pasted image 20240425175954.png]]
- 拉丁方变换
- 拉丁方表的各列各行互不相同![[Pasted image 20240425180052.png]]
- 密钥相同,不同的明文加密为不同的密文
- 明文相同,不同的密钥加密为不同的密文
- 缺点:
- 密钥序列不能周期重复
- 必须与明文序列等长
- 脱密前分配完毕
- 大量通信不实用
- 解决:
- 用伪随机
- 序列密码![[Pasted image 20240425180419.png]]
- 仿射密码
- ![[Pasted image 20240425180631.png]]
- 已知明文条件,能解方程组,求出A