MD5及生日攻击的分析

更新时间:2023-09-17 15:37:02 阅读量: 幼儿教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本科生毕业设计(论文)

目录

摘要 ABSTRACT

第1章 绪论 ................................................................................................................... 1 1.1 课题研究的时代背景 ........................................................................................... 1 1.1.1 国际密码学发展概况 ................................................................................... 1 1.1.2 国内信息安全情况 ....................................................................................... 2 1.2 密码学的发展历史 ................................................................................................ 3 1.2.1 密码学发展概况 ........................................................................................... 3 1.2.2 密码学在现代社会中的应用........................................................................ 4 1.3 相关的技术与产品 ................................................................................................ 4 1.3.1数字签名技术 ................................................................................................. 4 1.3.2 加密和解密技术 ............................................................................................. 6 1.4 本课题的主要研究内容及设想 ............................................................................. 6 第2章 JAVA编程语言 ................................................................................................... 7 2.1 JAVA语言的特点 .................................................................................................... 7 2.2 JAVA与C/C++的区别 ........................................................................................... 9 2.2.1 程序设计不同............................................................................................... 9 2.2.2 数据类型不同............................................................................................. 10 2.2.3 内存管理不同............................................................................................. 10 2.2.4 Java中不支持指针 ..................................................................................... 10 2.3 JAVA平台 ............................................................................................................ 11 2.4 本章小结 ............................................................................................................ 11 第3章 散列函数 ........................................................................................................... 12 3.1散列函数的定义 ................................................................................................... 12 3.2 散列函数的一般结构 ......................................................................................... 13 3.3 迭代型散列函数的结构 ....................................................................................... 14

I

本科生毕业设计(论文)

3.4 MD5算法与散列函数的关系 ............................................................................... 15 3.5 本章小结 .............................................................................................................. 16 第4章 MD5算法描述及其生日攻击原理 ................................................................. 17 4.1 MD5算法综述 ................................................................................................... 17 4.2 MD5具体运算过程的描述 ................................................................................ 18 4.2.1 MD5逻辑 ................................................................................................... 19 4.2.2 MD5 压缩函数 ......................................................................................... 22 4.2.3 MD5的强度 ............................................................................................... 25 4.3 生日攻击 ............................................................................................................ 25 4.3.1 生日攻击由来 ........................................................................................... 25 4.3.2 生日攻击的原理 ........................................................................................... 26 4.3.3 生日攻击的方法 ........................................................................................... 27 第5章 MD5算法的编程分析 ...................................................................................... 29 5.1 基本的MD5算法的程序结构 ........................................................................... 29 5.2 MD5算法程序流程图 ........................................................................................ 31 第6章 MD5算法程序用JAVA语言的具体实现 ........................................................ 34 6.1 MD5算法程序方法简介 ...................................................................................... 35 6.1.1 md5Init方法介绍 ....................................................................................... 35 6.1.2 md5Update方法介绍 .................................................................................... 36 6.1.3 md5Final方法介绍 ....................................................................................... 38 6.1.4 公共方法介绍 ............................................................................................... 39 6.2 MD5算法程序清单 ............................................................................................ 42 第7章 对MD5散列算法的生日攻击 ........................................................................ 50 7.1 对散列函数攻击的设计 ....................................................................................... 50 7.2 对散列函数攻击的JAVA编程 ........................................................................... 51 7.3生日攻击MD5及JAVA源程序 ........................................................................... 52 7.3.1 生日攻击MD5的JAVA源程序清单 ......................................................... 53 结 论 ............................................................................................................................ 56

II

本科生毕业设计(论文)

参考文献 ........................................................................................................................ 57 致谢 ................................................................................................................................ 59 附录1 开题报告 .......................................................................................................... 60 附录2 文献综述 .......................................................................................................... 62 附录3 外文翻译 ........................................................................... 错误!未定义书签。 附录4 外文原文 ........................................................................... 错误!未定义书签。

III

本科生毕业设计(论文)

第1章 绪论

1.1 课题研究的时代背景

信息作为一种重要的资源,在社会生产、生活中的作用日益显示。电脑网络的建立和延伸,打破了传统的行业、地域和发展空间的概念,把地球上的人们罩在一张密密麻麻的信息大网中。然而,当你尽情享受信息社会带来的好处的时候,也需要防备它会带来的负面影响。事物都具有两重性,信息技术的发展也一样。由于信息网络国际化、社会化、开放化、个人化的特点,使它在提供人们“技术共享”、“信息共享”的同时,也带来了不安全的阴影。信息社会并不安宁,网上信息的被泄露、篡改和假冒,黑客入侵,计算机犯罪,计算机病毒传播等,对网络信息形成重大威胁。信息社会,面临着政治、经济、外交、科技、教育和意识形态等方面的总体网络斗争。如果信息安全不解决,信息社会就不能健康有序地发展,电子商务,政府上网,网络银行等等,都将无法开展起来。

本论文将要研究的MD5消息摘要算法于上世纪90年代初提出,它的作用是让大容量信息在用数字签名软件签署私人密匙前被\压缩\成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数),产生一个128位的信息摘要。实践证明,它是很安全的一种加密算法,被应用于许多实际系统中。

1.1.1 国际密码学发展概况

因为信息是一种重要的战略资源,国际上围绕信息的获取、使用和控制的斗争愈演愈烈。美国正在利用其信息技术优势,极力推行信息霸权主义。一方面,向其他国家大肆倾销其信息产品,夺取别国财富;另一方面,在其出口的信息系统中植入“陷阱”和“后门”,以控制、破坏和截取别国的信息,揭露出来的奔腾Ⅲ中的序列号就是一例。同时,美国正在积极准备信息战。美国著名的未来学家阿尔温·托夫勒声称:“电脑网络的建立与普及将彻底改变人类生存及生活的模式,而控制与掌握网络的人就是人类未来命运的主宰。谁掌握了信息,控制了

1

本文来源:https://www.bwwdw.com/article/d5wh.html

Top