对称密钥算法
1 概述
分组密码:向量x到向量y上的一个映射
乘积密码:t个函数(密码)F1,…,Ft的复合,其中每个Fi是一个换位或代替。代替和简单线性变换来实现混合变换,如转轮机。
移位变换:构造一个移位矩阵, 约定一个密钥
2 数据加密标准算法DES
算法概述:
Li=Ri-1
Ri=Li-1⊕f(Ri-1, Ki)
F函数:
- E变换
初始变换IP:在第一圈之前(对明文移位)(先写偶数列再写奇数列)
密钥变换:
PC-1:64位密钥去掉8的倍数位
循环左移:56位分成各28位的两部分,分别循环左移1或2位
PC-2:从56位中选出48位,为本圈子密钥
扩展变换E:将右半部分从32位扩展到48位 - 按位异或
- S盒代替
对48位中间结果做代替操作。
8个小S盒,每个有6位输入和4位输出
设输入为b1b2b3b4b5