📜  DES 完整表格(1)

📅  最后修改于: 2023-12-03 15:30:26.392000             🧑  作者: Mango

DES 完整表格介绍

什么是 DES

DES(Data Encryption Standard)是一种对称密钥加密算法,被广泛应用在保护机密数据的传输和存储过程中。

DES 算法流程

DES 加密过程可以简单概括为以下几个步骤:

  1. 密钥的生成:从输入的 64 位密钥中生成 16 个 48 位子密钥,用于后续加密过程中。

  2. 初始置换(IP):将 64 位明文按照一个固定的顺序进行置换,得到置换后的 64 位明文。

  3. 16 轮迭代:以初始置换后的明文和子密钥为输入,进行 16 轮迭代计算,每轮计算由四个阶段组成,即扩展置换、密钥与数据的异或运算、S 盒替换和P 盒置换,最后得到 64 位密文。

  4. 逆初始置换(IP^-1):将 64 位密文按照一个固定的逆序进行置换,得到置换后的 64 位密文。逆初始置换正好是初始置换的逆运算。

DES 表格
IP 置换矩阵

| 58 | 50 | 42 | 34 | 26 | 18 | 10 | 2 | |----|----|----|----|----|----|----|----| | 60 | 52 | 44 | 36 | 28 | 20 | 12 | 4 | | 62 | 54 | 46 | 38 | 30 | 22 | 14 | 6 | | 64 | 56 | 48 | 40 | 32 | 24 | 16 | 8 | | 57 | 49 | 41 | 33 | 25 | 17 | 9 | 1 | | 59 | 51 | 43 | 35 | 27 | 19 | 11 | 3 | | 61 | 53 | 45 | 37 | 29 | 21 | 13 | 5 | | 63 | 55 | 47 | 39 | 31 | 23 | 15 | 7 |

E 扩展置换矩阵

| 32 | 1 | 2 | 3 | 4 | 5 | |----|----|----|----|----|----| | 4 | 5 | 6 | 7 | 8 | 9 | | 8 | 9 | 10 | 11 | 12 | 13 | | 12 | 13 | 14 | 15 | 16 | 17 | | 16 | 17 | 18 | 19 | 20 | 21 | | 20 | 21 | 22 | 23 | 24 | 25 | | 24 | 25 | 26 | 27 | 28 | 29 | | 28 | 29 | 30 | 31 | 32 | 1 | | 2 | 3 | 4 | 5 | 6 | 7 |

S 盒

DES算法一共有8个S盒,每个S盒均由4个输入位和4个输出位组成。下面为第一个S盒的示例:

| In | Out | |----|-----| | 00 | 01 | | 01 | 10 | | 10 | 00 | | 11 | 11 |

P 盒置换矩阵

| 16 | 7 | 20 | 21 | 29 | 12 | 28 | 17 | |----|----|------|-----|----|----|----|----| | 1 | 15 | 23 | 26 | 5 | 18 | 31 | 10 | | 2 | 8 | 24 | 14 | 32 | 27 | 3 | 9 | | 19 | 13 | 30 | 6 | 22 | 11 | 4 | 25 | | 14 | 17 | 9 | 2 | 30 | 23 | 15 | 4 | | 2 | 27 | 7 | 25 | 19 | 1 | 32 | 12 | | 8 | 18 | 26 | 22 | 11 | 21 | 6 | 29 | | 1 | 20 | 10 | 4 | 16 | 7 | 28 | 31 | | 25 | 0 | 13 | 19 | 3 | 28 | 24 | 14 |

结论

通过以上表格及讲解,程序员可以更好地理解DES算法。同时,也可以应用到实际开发中,实现数据的保密传输。