一,简介
- 属于对称密码体制,加密密钥和解密密钥空间一样
- 把明文编码后的二进制序列划分成固定大小的块,分别对这些块加密
- 应用最广,影响最大的密码体制
- 提供数据机密性
- 用在伪随机数生成器,序列密码,消息认证码,哈希函数的构造
- 又叫对称密码,加解密速度快,安全性好,得到许多密码芯片支持
加解密设计原则
- 分组足够长:防止选择明文攻击
- 密钥长度足够长:防止唯密文攻击
- 密钥确定的置换算法足够复杂:除了穷举攻击没有更好的方式
- 加解密运算简单
- 无数据扩展,明文密文长度相同
分组密码的设计原则
1,扩散:打乱明文,使明文和密文之间的统计关系足够复杂,从密文不能获得任何明文的统计特征
2,混乱:打乱明文,使得从密文无法获得任何密钥的统计特征
3,乘积密码:在密钥控制下,扩散和混乱两种操作多次迭代
分组密码的迭代结构
1,Feistel网络
知道一轮的过程
加解密相似,只需要一个逆转的密钥编排算法
轮函数不必可逆
2,SP网络
代换—置换网络,由S代换(S盒)和P(P盒)置换交替多次迭代
- S盒起混乱作用,P盒起扩散作用
- S盒是唯一的非线性结构,他的密码强度决定了整个密码算法的安全
- SP网络结构具有雪崩效应:输入即使变化很小,也会引起输出巨大的变化
子密钥的生成方法
实现简单,速度满足要求
没有弱密钥或者若密钥容易确定
种子密钥的每个比特对每个子密钥比特的影响大致相同
轮函数F的设计准则
非线性:S盒
可逆性:可以解密
雪崩效应
二,DES算法
1,简介
1,第一个广泛应用在商用数据保密的算法,开创了公开密码算法先例,极大促进了密码学发展
2,1977年,NBS采纳为DES算法
3,分组长度64,密钥长度56位
2,DES基本结构
1,对称加密
2,Feistel结构
3,有效密钥长度56位
4,分组长度64位
3,加密过程
1,初始置换
- 第一轮迭代之前进行
- 吧员明文块的位进行换位,置换表固定
2,逆初始置换
- 初始置换的逆过程
初始置换和逆初始置换没有密码意义
3,F函数
- 1,扩展置换(E盒):32位输入扩展位48位输出,加速雪崩效应
- 2,密钥加:E的48位输出和48位子密钥逐位进行异或运算,输出48位数据
- 3,代换盒(S盒):DES中唯一的非线性部分,输出32位数据
- 4,置换运算(P盒):进行位置置换