DES笔记整理

以下内容为信息安全开发过程中,DES对称加密算法的笔记。

对称加密算法汇总介绍:对称加密算法和模式

1. 简介

DES(Data Encryption Standard)是对称加密算法,也就是说它使用同一个密钥来加密和解密数据。
DES还是一种分组加密(又叫块加密)算法,该算法每次处理固定长度的数据段,称之为分组。DES分组的大小是64位,如果加密的数据长度不是64位的倍数,可以按照某种具体的规则来填充位。
在这里插入图片描述
PS:除分组加密算法以外,还有一种流密码加密算法,后者是逐字节进行依次加密。
加解密过程如下:
在这里插入图片描述
输入64bit数据分为两个32bit的L0与R0,其中R0数据直接给到L1,R1的数据则先通过轮函数(E扩展、异或、S盒、P置换)操作后,在与R0值进行异或得出,每个过程具体操作如下:
在这里插入图片描述

2. 初始/最终置换

按照一定规律,将原来的64bit二进制位重新排序。
初始置换与最终置换表如下:
在这里插入图片描述
Eg:
在这里插入图片描述

3. E扩展

将32位输入扩展为48位输出,该置换的主要目的是在加密数据的过程中制造一些雪崩效应,使用数据块中的1位将在下一步操作中影响更多位,从而产生扩散效果。
扩展方法如下:

  • 输入32bit输入拆分为8组4bit的数据
  • 在每组数据前后添加1bit,变为8组6bit数据,前添加的1bit为上一组输入的最后一个,后添加的1bit为下一组的第一个(第一组合最后一组单独处理)

在这里插入图片描述

4. 异或

将E扩展的48bit数据与秘钥的48bit数据按位异或处理。

5. S盒压缩处理

将经过扩展的48位明文和48位密钥进行异或运算后,再使用8个S盒压缩到32 位数据,具体过程如下:
将48位输入等分为8块,每块6位输入压缩为4位输出。
在这里插入图片描述
映射关系如下:
在这里插入图片描述
即11 1111映射为1101B(13D)
S盒映射表如下:
在这里插入图片描述

6. P置换

与S盒操作一样,P盒置换表如下:
在这里插入图片描述
经过上述E扩展、异或、S盒、P置换后,在与上一个Ln数据异或,完成DES第一轮的运算,循环16次后,完成DES加密。

7. 其他

7.1 DES秘钥生成

输入秘钥为64bit,除去8位校验位(每个字节最后一个bit),剩下56位(k0)参与运算。
将输入56bit秘钥先经过PC1置换,在分为两组Ci\Di(每组28bit),对Ci\Di数据进行
运算框图如下:
在这里插入图片描述
其中PC1(秘钥转换)\PC2(置换选择)置换表如下:
在这里插入图片描述
其中移位次数表如下:
在这里插入图片描述

8. 参考资料

  • https://www.bilibili.com/video/BV1KQ4y127AT/
  • https://blog.csdn.net/bemodesty/article/details/114999946
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值