DES加密

DES加密算法 

——也许是中国和美国的教育方法不同,我手中的两本介绍 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 处理后的结果分成两部份,如下:

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

↓                              ↓

 ╱                             F
↓                              ↓

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

17

57

25

  第四步:结束
  
  感觉如何?是不是充满信心,准备一展身手!我们只剩下F处理这一段没讲了,我想在你学会了上面的过程以后,余下的对你更没有难度了(你真是天才!!)。

对不起,我的手好痛,今天就到此为止。我要休息!
(职业病,长时间用鼠标打键盘右手会痛)

 


抗攻击风险量化分析数据资料

1. 要严格管理、保存好自已的PIN IC卡。如PIN的物理保护失败,或私钥丢失与用户的口令被窃同时发生时,用户应及时挂失。

2. 密钥的更换周期

——现代密码学的特征是算法可以公开。保密的关键是如何保护好自己的密钥,而破密的关键则是如何能破解得到密钥。
——系统的安全主管者,要根据本系统实际所使用的密钥长度与其所保护的信息的敏感程度、重要程度以及系统实际所处安全环境的恶劣程度,参照本附件的分析数据在留有足够的安全系数的条件下来确定其密钥和证书更换周期的长短。同时,将已废弃的密钥和证书放入黑库归档,以备可能后用。
——密钥更换周期的正确安全策略是系统能够安全运行的保障,是系统的安全管理者最重要、最核心的日常工作任务。

3. 关于RSA算法的保密强度安全评估

——RSA算法的保密强度,随其密钥的长度增加而增强。但是,密钥越长,其加解密所耗的时间也越长。因此,要根据所保护信息的敏感程度与攻击者破解所要花的代价值不值得和系统所要求的反应时间来综合考虑决定。尤其对于商业信息领域更是如此。
——以下我们列出美国麻省理工学院RSA129(N=10129素因子分解攻击研究小组Hal Abelson, Jeff Schiller, Brian lamacchia和Derek Atkins. 根据他们对PGP RSA(MPQS)算法攻击研究的结果如下;(注:1995,Simson Garfinkel 《Pretty Good Privasy》极好的保密系统一书)。
——RSA-129 (429-bit key) 4600 MIPS-YEARS
——即相当于要4600台VAX11/780联合运行一年的时间或一台Pentium运行46年时间才能将一个N*10129的大数分解找到其P.Q.
——RSA 512-bit key 42x104 MIPS-YEARS
——RSA 700-bit key 42x108 MIPS-YEARS
——RSA 1024-bit key 2.8x1015 MIPS-YEARS
——RSA 384-bit key 470 MIPS-YEARS
——公开密钥算法是在1976年由当时在美国斯坦福大学的迪菲(Diffie)和赫尔曼(Hellman)两人首先发明的(论文“New Direction in Cryptography”) 。但目前最流行的RSA是由分别取自三名发明此算法的数学家(Ronald Rivest, Adi Shamir 和Len Adleman)的名字的第一个字母来构成的。
——RSA算法研制的最初理念与目标是旨在解决DES算法秘密密钥的利用公开信道传输分发的难题。而实际结果不但很好地解决了这个难题;还可利用RSA来完成对电文的数字签名以抗对电文的否认与抵赖;同时还可以利用数字签名较容易地发现攻击者对电文的非法篡改,以保护数据信息的完整性。

4. 攻破RSA密钥的时间:
——密钥长度:100 200 300 500 750 1000
——时间: 30秒 3天 9年 1兆年 2x109年 6x1015
——当密钥长度大于512位时,以个人有限的人生攻破密钥是无法实现的。

5. 据美国(华尔街报)1999年3月8日报导,由Verisign公司(一个信息保密安全公司)经理 Anil Pereira分析指出,欲破解一个秘密密钥长度为128位的DES加密要比破解一个秘密密钥长度为40位的DES加密要困难300X1042倍(300 Septillion倍)。也就是说如以300MC奔腾CPU的PC机破解40位DES加密要花3个小时计,那么用同样的PC机来破解一个128位DES加密就要花去900 X1042小时。这在一个人的有生之年是不可能做到的。目前尚无报导是否有数百人同时用数百台大型计算机利用互联网分布处理来破128位DES加密的事情。但可以肯定这种做法所花代价对于普通的商密来讲,肯定是不值的。

6. 另外,基于1997年的技术统计分析的攻击结果,JALAL FEGHHI等人98年9月给出DES加密抗攻击的情况如下表所述:(摘自由Talal Feghhi, Jalil Feghhi, Peter Willians 《Digital Certificates》一书中的第51页,该书于1998/9由加拿大出版)

 

个人攻击

小组攻击

院、校网络攻击

大公司

军事情报机构

40(bits)

数周

数日

数小时

数毫秒

数微秒

56

数百年

数十年

数年

数小时

数秒钟

64

数千年

数百年

数十年

数日

数分钟

80

不可能

不可能

不可能

数百年

数百年

128

不可能

不可能

不可能

不可能

数千年


上表中攻击者配有如下计算机资源的攻击能力

攻击者类型

所配有的计算机资源

每秒处理的密钥数

个人攻击

1台高性能桌式计算机及其软件

217-224

小组攻击

16台高性能桌式计算机及其软件

221-224

院、校网络攻击

256台高性能桌式计算机及其软件

225-228

大公司

配有价值1百万美元的硬件

243

军事情报机构

配有价值1百万美元的硬件及先进的攻击技术

255

注:99年的技术比97年预计将提高200倍左右。

——基于现代密码学及其密码体制(有别于传统的算法或密码本),保密的关键是如何保护好密钥;而破密的关键则是如何得到密钥。因为,一个好的现代密码算法,在密钥足够长的情况下,即使是发明该算法的人,如他得不到密钥。他本人要破解用他自己发明的算法来加了密的电文也是极其困难甚至是不可能的。而在电子商务中还有一个较易计算的所谓值不值得的问题。

注: 公开指数(加密指数)e
e=(65537)10=216+1=(10000000000000001)2

20=1
21=2
210=1024                     ≌1×103
211=2048                     ≌2×103
212=4096                     ≌4×103
213=8192                     ≌8×103
214=16384                 ≌1.6×104
215=32768                 ≌3.2×104
216=65536                 ≌6.6×104

232=216. 216 ≌6.62×108 ≌4.4×109
264=232. 232 ≌4.42×1018 ≌1.9×1019
2128=264. 264 ≌1.92×1019×1019 ≌3.6×1038
2192=2128. 264 ≌3.6×1038×1.9×1019≌6.8×1057
2256=2128. 2128≌3.62 × 1076 ≌1.3×1077

2384= 2192×2192≌6.8×6.8×10114≌4.6×10115
2512=2256. 2256≌1.3×1.3×10154 ≌1.7×10154
2640=2512. 2128≌3.6×1.7×1038+154≌6.1×10192
2768=2640. 2128≌6.1×3.6×10192+38≌2.2×10231
2896=2768. 2128≌2.2×3.6×10231+38≌8.0×10269

21024=2512. 2512 ≌1.7×1.7×10154+154≌2.9×10308
21536=21024. 2512 ≌2.9×1.7×10308+154 ≌4.9×10462
22048=21024. 21024≌2.92×10308+308 ≌8.4×10616

美国征集、评选下一世纪密码算法标准AES简况

——1997年4月15日,美国国家标准和技术研究所(NIST)发起征集AES(Advanced Encryption Standard)密码算法的活动。
1997年9 月12月在联邦登记处(FR)公开发布了征集AES候选算法的通告。并提出了对AES的基本技术要求,即候选算法要比三重DES快,与三重DES一样安全,分组长度为128比特,密钥长度为128、192和256比特。
——1998年8月,NIST召开了第一次AES候选会议,宣布对15个候选算法的若干讨论结果。作为第一轮评测于1999年4月15日结束。
第二轮评测将从15个候选算法中选出5个,最后再在这5个优选算法中评选出一个算法作为正式的AES标准,计划在2001年正式出台。
——15个候选算法情况是:其中5个来自美国(HPC、MARS、RC6、SAFERT和TWOFISH);2个来自加拿大(CAST-256和REAL);澳大利亚(LOK197)、比利时(RIJNDAEL)、哥斯达黎加(FROG)、法国(DFC);德国(MAGENTA)、日本(EZ)、韩国(CRYPTON)和挪威(SERPENT)各一个。

关于AES更详细情况请参阅:

——卿斯汉《网络安全的核心-密码算法和安全协议》和范元书等《AES算法的综合分析》,见1999年10月苏州会议论文集《中国计算机学会信息保密专业委员会论文集第九卷》。

——附一:http://www.sina.com.cn 1999/11/26 11:28 ZDNet China
近日欧共体将推出其最低限度的数字签名标准,此标准的推出将有利于推动欧洲基于因特网的电子贸易。(路透社)

——附二:白宫批准出口密钥长度超过128位的加密软件
——【ChinaByte 综合消息】美国政府日前批准美国网络联盟(Network Associates)公司可以出口其符合PGP标准的加密软件,网络联盟公司兴奋地称政府此举具有"划时代"的重大意义。
——PGP是"Pretty Good Privacy"的缩写,是由Philip Zimmermann开发的一种使用 RSA算法的公用码加密程序。网络联盟公司表示,根据美政府发放的出口许可证,今后它将可以不受限制地向世界上绝大多数国家出口密钥长度超过128字节的加密软件。但该公司没有进一步说明许可证的其它细节或附加条件,而仅仅说明,白宫然没有解除对古巴和伊拉克等国家的出口限制。
——克林顿政府上个月公布了一份对美国现有的加密软件出口法进行修订的征求意见稿。这份法律草案大幅度放松了对美国企业出口加密软件产品的限制,但是其中部分条款受到了美国国会的批评。网络联盟公司官员表示,虽然目前这项法律还没有获得最后的通过,但是白宫向它发放出口许可证为美国企业"指明了方向"。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值