加密算法之DES算法技术
- 不要以为加密、解密是只有天才才能学得会。切勿相信!只要你具备一定的数学知识,有一些编程经验就足够了(不要对我说你连1+1=?都回答不出来)!
不要以为加密、解密是只有天才才能学得会。切勿相信!只要你具备一定的数学知识,有一些编程经验就足够了(不要对我说你连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 处理后的结果分成两部份,如下:
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
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
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ?
看明白了没有?先把右面的部分原封不动地照抄到左边。然后把左边的部分经过F处理后搬到右面。然后再重复做第二步,共做16遍(真麻烦)。先别急,F处理等会儿再讲
第三步: IP-1 处理
如果这一步你再做错的话,自已拿块豆腐撞死算了!不过是 IP 的逆代换罢了。 40 8 48 16 56 24 64 32
39 7 47 15 55 23 63 31
38 6 46 14 54 22 62 30
37 5 45 13 53 21 61 29
36 4 44 12 52 20 60 28
35 3 43 11 51 19 59 27
34 2 42 10 50 18 58 26
33 1 41 9 49 <, P>17 57 25
第四步:结束
感觉如何?是不是充满信心,准备一展身手!我们只剩下F处理这一段没讲了,我想在你学会了上面的过程以后,余下的对你更没有难度了(你真是天才!!)。
对不起,我的手好痛,今天就到此为止。我要休息!
(职业病,长时间用鼠标打键盘右手会痛)
-
TAGS:
- 作者:管理员 时间:2009-6-21 来源:网络 人气: