——也许是中国和美国的教育方法不同,我手中的两本介绍 DES 的资料风格迥然不同。老外的书看读起来很轻松,就像是闲聊,生动活泼,时不时来个老美式的幽默。中国人写的书语句严谨,很严肃,以绝对科学的态度讲解(让我浑身不自在)。两种方法哪种更好,不用我说了吧?所以我宁可看全英文的原版。
不要以为加密、解密是只有天才才能学得会。切勿相信!只要你具备一定的数学知识,有一些编程经验就足够了(不要对我说你连1+1=?都回答不出来)!很多加密算法并不复杂,只不过运用了这种算法的数学特性来达到加密的目的。像下面介绍的 DES 加密算法,也只不过是繁了一点(是繁,不是难)。怎么样,有信心吗?…… 那就让我们开始吧!
DES加密算法是由 IBM 研究在1977年提出的。使用64位(bit)的数据进行加密和解密的,所用的密钥也是64位。并被美国国家标准局宣布为数据加密标准DES,主要用于非国家保密机关。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
===>
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
做好了吗?得出的结果是不是和下面的表格一样:
1
1
0
0
1
1
0
0
1
1
0
0
0
1
1
0
0
0
1
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
1
1
1
1
1
0
0
1
0
1
0
0
1
0
0
1
0
1
1
1
0
0
1
0
1
0
1
0
0
0
什么?你做错了!无药可救!我怀疑你小学毕业考试是不是作弊了。 没做错!嗯,真是好孩子!
第二步:迭代过程 这是很重要的一步(站稳了,不要腿软)。为了让你看得更清楚,我把它分成几个部分。最后只要把几部分的过程合起来做就行了。 ★先把 IP 处理后的结果分成两部份,如下: