没有合适的资源?快使用搜索试试~ 我知道了~
vc文件完整性校验工具的设计与实现毕业论文.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 72 浏览量
2023-08-10
09:54:41
上传
评论
收藏 256KB DOCX 举报
温馨提示
试读
29页
vc文件完整性校验工具的设计与实现毕业论文.docx
资源推荐
资源详情
资源评论
文件完整性校验工具的设计与实现
[摘 要] 21 世纪是一个信息时代。随着网络技术的飞速发展,网络环境的复杂性
使得数据在传输过程中容易出现错误,尤其是随着计算机病毒和黑客入侵等攻击的发生
越来越多,使得对文件完整性的校验成为一个必要的过程。MD5 校验器的设计就是为了
计算出文件的 MD5 值,这个值是惟一的,与原值比较即可确定文件的完整性与否。本设
计采用了面向对象的高级语言 C++编译实现,核心技术采用了 MD5 算法。论文论述了 MD5
校验器的设计、开发和测试全过程。其中包括对 MD5 校验算法的分析、设计、实现过程,
以及 MD5 校验器的功能需求分析,总体方案设计,各个功能模块的设计和实现细节。并
且还介绍了设计和实现 MD5 校验器的技术背景和原理。最终通过校验结果的正确输出验
证了本软件能够解决校验文件完整性的问题。
[关键词] MD5;算法;校验器;文件完整性
Design and Implementation of the
File Integrity Checking Tool
Abstract: The 21st century is an information age. With the rapid development of
network technology, the complexity of the network environment makes the data prone to error
during its transmission, especially when computer viruses and hacking attacks occur more and
more, thus checksum of the file integrity is becoming a necessary process. The design of
MD5 checker is to check files’ size of MD5 which is unique and can confirm files’ integrity
in contrast to the original size. The program is compiled with C++, which is a senior
object-oriented language. And the core technology uses the MD5 algorithm. The article
discussed the process of design, development and test. The analysis, design, realization of
checksum algorithm and the analysis of function requirement, the overall design, and the
various functional modules in the design and implementation details are included in the
process. And this article also described the technical background and principles of the design
and implementation of the MD5 checksum. The correct output of the calibration results
proved that this software can solve the problems file integrity.
Key words:MD5; Algorithm; Check-up device; File integrity
目 录
1 背景与意义.............................................................................................................................1
1.1 项目开发背景...............................................................................................................1
1.2 项目开发意义...............................................................................................................1
2 系统分析.................................................................................................................................1
2.1 MD5 ...............................................................................................................................2
2.1.1 算法概述.............................................................................................................2
2.1.2 算法步骤.............................................................................................................5
2.1.3 MD5 的安全性 ....................................................................................................6
2.2 开发技术的选择...........................................................................................................6
2.2.1 C 语言..................................................................................................................7
2.2.2 C++ ......................................................................................................................7
2.3 开发工具的选择...........................................................................................................8
3 系统设计.................................................................................................................................9
3.1 总体功能说明...............................................................................................................9
3.2 用户界面.......................................................................................................................9
3.3 关键算法描述.............................................................................................................10
3.4 MD5 算法流程 ............................................................................................................11
4 编码与实现...........................................................................................................................13
4.1 主要算法实现.............................................................................................................13
4.1.1 初始化函数.......................................................................................................13
4.1.2 处理函数...........................................................................................................14
4.1.3 完成函数...........................................................................................................14
4.1.4 转换函数...........................................................................................................15
4.2 路径实现.....................................................................................................................16
5 系统测试与运行...................................................................................................................19
5.1 软件测试.....................................................................................................................19
5.1.1 软件测试的重要性...........................................................................................19
5.1.2 软件测试的原则...............................................................................................20
5.1.3 测试方法...........................................................................................................20
5.2 测试目的.....................................................................................................................20
5.3 测试过程.....................................................................................................................21
5.4 软件运行情况.............................................................................................................21
结束语.......................................................................................................................................23
参考文献...................................................................................................................................24
致谢...........................................................................................................................................25
1
1 背景与意义
1.1 项目开发背景
随着生活网络化,我们俨然已经处在信息化时代潮流中。作为一名普通的计算机使
用者,生活中我们经常会因为所下载的文件不能使用而困扰,其实这些文件都已经被篡
改了,有些破坏者恶意修改网络文件,致使我们所下载的文件完整性未知的情况下打开
后可能会出现几种情况,文件如我们所需要的一样并没有被修改,但是这只是一种比较
理想化的状态,再有我想我们这些网民都会遇到过的一种情况,下载后的文件按正常途
径打不开,提示文件内容丢失或者不完整,建议修复之类的,这个时候我们基本上都已
经放弃了使用此文档。还有一种更为可耻的,他们把病毒移植到我们所需要的文件中,
我们打开后系统开始出现各种毛病,文件被感染,数据溢出,快捷方式不能使用等等。
为了解决这种现状,各种小工具如雨后春笋般被编译出来,MD5 校验器也随着这个潮流
应运而生。用另一种说法,就是为保证数据的完整性,用一种指定的算法对原始数据计
算出的一个校验值。接收方用同样的算法计算一次校验值,如果和随数据提供的校验值
一样,就说明数据是完整的
[1]
。
1.2 项目开发意义
文件校验就是为了确认你所下载的文件和官方给出的是否一样,如果校验结果不一
样,那么你所下载的文件很可能是被人篡改过的,可能在文件里加入了木马程序或其他
可能危害您使用安全的程序。这个时候我们就会想到这么一种校验工具,而一般官方会
附一个文件的 MD5 值,就是为了让我们做比较验证。MD5 在论坛上、软件发布时经常用,
是为了保证文件的正确性,防止一些人盗用程序,加些木马或者篡改版权,设计的一套
验证系统。每个文件都可以用 MD5 验证程序算出一个固定的 MD5 码来。文件作者往往会
事先计算出他的程序的 MD5 码并帖在网上
[2]
。因此,在网上看到某个文件下载旁注明了
MD5 码时,可以把它记下来,下载了这个程序后用 MD5 验证程序计算你所下载的文件的
MD5 码,和你之前记下 MD5 码比较,就知道你下的是不是原版了,如果两者相同,那么
你所下载的是原版。如果计算出来的和网上注明的不匹配,那么你下载的这个文件不完
整,或是被别人动过手脚。这个时候我们就可以果断放弃使用文件,以避免给我们带来
不必要的麻烦。
2 系统分析
其中主要包括了主要技术 MD5 的介绍,开发技术的选择以及开发工具的选择。
剩余28页未读,继续阅读
资源评论
豆包程序员
- 粉丝: 2833
- 资源: 3504
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功