1.DES算法
DES(Data Encryption Standard),是IBM在上世纪70年代开发的单密钥对称加解密算法。该算法用56位密钥+8位奇偶校验位=64位的密钥对以64位为单位的数据块进行16轮加解密处理。DES的安全性不依懒于算法的保密,安全性仅以加密密钥的保密为基础。
1.1子密钥生成过程
用户输入的密钥被转化成64比特的二进制,然后按照密钥置换函数PC-1(8X7)压缩置换成56位,输出前28位为C0输出后28位为D0。然后将C0和D0进行16轮的循环左移及压缩置换PC-2(8X6),生成16个48位的字密钥。
Ø PC-1(8X7)压缩置换
假设密钥K(64位)=133457799BBCDFF1,红色部分为奇偶校验位。
K(64位)=00010011 00110100 01010111 01111001
10011011 10111100 11011111 11110001
表1密钥置换函数PC-1(8X7)
| PC-1 |
57 |
49 |
41 |
33 |
25 |
17 |
9 |
| 1 |
58 |
50 |
42 |
34 |
26 |
18 |
|
| 10 |
2 |
59 |
51 |
43 |
35 |
27 |
|
| 19 |
11 |
3 |
60 |
52 |
44 |
36 |
|
| 63 |
55 |
47 |
39 |
31 |
23 |
15 |
|
| 7 |
62 |
54 |
46 |
38 |
30 |
22 |
|
| 14 |
6 |
61 |
53 |
45 |
37 |
29 |
|
| 21 |
13 |
5 |
28 |
20 |
12 |
4 |
对K使用PC-1(8X7)压缩置换,去掉8个校验位,从而得到K'。
K'(56位)=1111000 0110011 0010101 0101111
&n

本文详细介绍了DES(Data Encryption Standard)算法的工作原理,包括子密钥生成过程、加密过程和解密过程。DES算法使用56位密钥对64位数据块进行16轮加解密,其安全性基于密钥的保密。在子密钥生成中,经过PC-1和PC-2置换以及循环左移生成16个48位字密钥。加密过程涉及IP初始置换、E盒、S盒、P盒等操作,解密过程则按相反顺序进行。

5759

被折叠的 条评论
为什么被折叠?



