# DES# 了解本身原理

[视频链接](https://www.bilibili.com/video/BV1KQ4y127AT/?share_source=copy_web&vd_source=78ff93eda8679ae25b2b6bb2f15edbac)

注意:

1. 加密和解密算法一样
2. | 代表异或运算
3. $$R_1=L_0 | F(R_0,K1)$$
4. $$R_{16}=L_{15} | F(R_{15},K{16})$$
5. $$R_n=L_{n-1} | F(R_{n-1},K_n)$$


​      

```mermaid


graph TB

A[明文]
B[密文]
C(IP)
D(逆IP)
E(L0)
F(R0)
G(L1=R0)
H(R1)
J(一共经过16轮加密运算)
K(R16)
L(L16=R15)
A--->C
C--->E
C--->F
F--->G
E--->H
H--->J
G--->J
J--->K
J--->L
K--->D
L--->D
D--->B


```

### F()函数

1. E扩展(32-->48位)

   将32位分成八份,每份的前面增加的一位是前面原数据的最后一位,每份的后面增加的一位是前面原数据的第一位

   ![image-20230904215506133](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904215506133.png)

2. 和 $$ K_n$$ 进行异或运算

3. S盒压缩(48-->32位)

   将32位分成八份,每份6位,将其转化为行数和列数,而后在s盒中找出数据,最后将其转化为二进制数据

   ![image-20230904220011182](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904220011182.png)

   ![image-20230904220127223](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904220127223.png)

4. P盒代换

   将其16位的数放到第1位上

   ![image-20230904220349122](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904220349122.png)

### 由$K$生成$$k_1-k_16$$

```mermaid

graph TB
A[密钥64bit]
B(除去8,16,.....,64这8个校验位,64->56,其实这一步不用独立出来,在pc1zh)
C(Ci 28bit)
D(Di 28bit)
E(循环左移T i+1个bit )
e(循环左移T i+1个bit)
F(PC1代换,56位)
G(PC2代换,48位)
A-->B-->F-->C
F-->D-->E-->G

C-->e-->G
G-->Ki

```

![image-20230904223525085](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904223323159.png)

![image-20230904223901127](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904223901127.png)

![image-20230904223931023](https://gitee.com/Mrtao233/for-blog/raw/master/DES00/image-20230904223635063.png)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值