基于md5的文件完整性校验

基于md5的文件完整性校验

ID:32636455

大小:155.66 KB

页数:19页

时间:2019-02-14

基于md5的文件完整性校验_第1页
基于md5的文件完整性校验_第2页
基于md5的文件完整性校验_第3页
基于md5的文件完整性校验_第4页
基于md5的文件完整性校验_第5页
资源描述:

《基于md5的文件完整性校验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验四、基于MD5的文件完整性校验程序设计与实现1>实验目的♦验证MD5的工作原理。♦编写并调试基于MD5的文件完整性校验程序。2、实验设备与环境』连网PC机(至少一台)。4-计算机硬件要求:IntelPentium5处理器、256MB以上内存,Ethernet网卡,网线若干。丄计算机软件要求:WindowsXP/win7操作系统,TCP/IP协议,Visualstudio系统。3、实验要求丄能够以浏览的方式打开指定的文件丄能够计算指定文件的MD5丄能够将文件的MD5结果转换为大写丄文件内容改变后能够判别文件已被篡改4.实验步骤步骤仁使用VC++的应用程序生成向导(MFC

2、AppWizard[exe])创建一个基于对话框的工程,该工程的名称为201200824302MD5新建文件工程工作区其它文档项目名称201200824302MD5feBic):;D:伏三上闻络安全程序设讯20QATLCOMAppWizard刁ClusterResourceTypeWizard超CustomAppWizard^DatabaseProject彎DevStudioAdd-inWizardExtendedStoredProcWizard也ISAPIExtensionWizard^MakefilejgMFCActiveXControlwizard逼MFCAppWi

3、zard(dll)58MFCAppWizardjexe)科UtilityProjectT1Win32Application"1Win32ConsoleApplicationMWin32DynamioLinkLibrary薊Win32StaticLibraryQ创建新的工作空间回「楼加到当前工作空间回厂从属于回:

4、201200824302MD5平台(EJ:Win32确定取消步骤2:主界面的设计:同时在类向导里面添加需要的变量:IVirL.CldSSVVIZdrUMessageMapsMemberVariablesAutomationActiveXEventsClassInf

5、oProject:Classname:

6、201200824302MD5二

7、

8、CMy201200824302MD5DlgD:...201200824302MD5Dlg.h,DA-.A201200824302MD5Dlg.cppControlIDs:TypeMemberAddClass..・▼IDCABOUTBUTTONIDC_CAPITAL_BUTTONIDC_COMPARE_BUTTONIDC_COPY_BU?TONidcZfile.editiDCZOPENZBUTrONIDC_卩ROGflFSSIlUCANUtLIDOKDescription:步!CStringmm

9、d5valueCProgressCtrlmprogress3:添加每一个按钮的响应事件AddVariable...DeleteVariableUpdateColumnsBindAll添加的两个变量3.1宏定义的添加:#include#inelude#inelude#inelude#inelude"windows.h”defineF(x,y,z)(((x)&(y))

10、((~x)&(z)))#defineG(x,y,z)(((x)&(z))

11、((y)&(~z)))efineH(x,y,z)((x)A(y

12、)A⑵)^definel(x,y,z)((y)A((x)

13、(~z)))#defineRL(x,y)(((x)«(y))

14、((x)»(32-(y))))//x向左循环移y位#definePP(x)(x«24)

15、((x«8)&0xff0000)

16、((x»8)&0xff00)

17、(x»24)#defineFF(a,b,c,d,x,s,ac)a=b+(RL((a+F(b,c,d)+x+ac),s))#defineGG(a,b,c,d,x,s,ac)a=b+(RL((a+G(b,c,d)+x+ac),s))#defineHH(a,b,c,d,x,s,ac)a=b+(RL((a+H(b

18、/c,d)+x+ac),s))#defineUfa,b,c,d,x,s,ac)a=b+(RL((a+l(b,c,d)+x+ac),s))3.2函数在声明:voidmd5();3.3函数的实现:voidCMy201200824305_MD5Dlg::md5(){a=A,b=B,c=C,d=D;/**//*Round1*/FF(a,b,c,d,x[0],7,0xd76aa478);/**//*1*/FF(d,a,b,c,x[l]f12,0xe8c7b756);/**//*2*/FF(c,d,a,b,x[2],17,0x242070

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。