- 分组密码是一种加密解密算法,将输入明文分组当作一个整体处理,输出一个等长的密文分组
- 分组密码一般采用Feistel结构,有许多相同的轮函数组成,每一轮里对数据的一半进行代换,然后置换数据的两个部分,拓展初始的密钥使得每一轮使用不同的子密钥
- DES是应用最广泛的分组密码
乘积密码:由香农引进,基于替代和置换两个基本操作
香农认为,应对基于统计分析的密码破译,必须对明文采用扩散和混淆两种处理
扩散使得明文结构消失,混淆使得明文和密文关系更加复杂
一、分组密码
- 分组加密器的本质是一个巨大的替换机
- 64位的分组就有2^64种输入
- 采用乘积加密的思想,即轮流使用代替和置换
- 大多数基于Feistel密码结构
1.Feistel密码结构的设计动机
分组密码对n比特的明文进行分组操作,产生一个n比特的密文分组,共有2^n个不同的明文分组,每一种都必须产生一个不同的密文分组,这种变换称为可逆的或者非奇异的
可逆的是一对一前后可以互相推,多用于加密解密等场所
不可逆的是多对一,只能单向进行,常用于生成摘要,确保传输完整性
正是由于生成摘要有多对一的特性,容易导致篡改,因此又引入数字签名确