欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C++计算文件MD5值.docx

    • 资源ID:14143662       资源大小:23.14KB        全文页数:27页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C++计算文件MD5值.docx

    1、C+计算文件MD5值MD5ChecksumDefines.h1. /Magicinitializationconstants2. #defineMD5_INIT_STATE_00x674523013. #defineMD5_INIT_STATE_10xefcdab894. #defineMD5_INIT_STATE_20x98badcfe5. #defineMD5_INIT_STATE_30x103254766. 7. /ConstantsforTransformroutine.8. #defineMD5_S1179. #defineMD5_S121210. #defineMD5_S13171

    2、1. #defineMD5_S142212. #defineMD5_S21513. #defineMD5_S22914. #defineMD5_S231415. #defineMD5_S242016. #defineMD5_S31417. #defineMD5_S321118. #defineMD5_S331619. #defineMD5_S342320. #defineMD5_S41621. #defineMD5_S421022. #defineMD5_S431523. #defineMD5_S442124. 25. /TransformationConstants-Round126. #d

    3、efineMD5_T010xd76aa478/TransformationConstant127. #defineMD5_T020xe8c7b756/TransformationConstant228. #defineMD5_T030x242070db/TransformationConstant329. #defineMD5_T040xc1bdceee/TransformationConstant430. #defineMD5_T050xf57c0faf/TransformationConstant531. #defineMD5_T060x4787c62a/TransformationCon

    4、stant632. #defineMD5_T070xa8304613/TransformationConstant733. #defineMD5_T080xfd469501/TransformationConstant834. #defineMD5_T090x698098d8/TransformationConstant935. #defineMD5_T100x8b44f7af/TransformationConstant1036. #defineMD5_T110xffff5bb1/TransformationConstant1137. #defineMD5_T120x895cd7be/Tra

    5、nsformationConstant1238. #defineMD5_T130x6b901122/TransformationConstant1339. #defineMD5_T140xfd987193/TransformationConstant1440. #defineMD5_T150xa679438e/TransformationConstant1541. #defineMD5_T160x49b40821/TransformationConstant1642. 43. /TransformationConstants-Round244. #defineMD5_T170xf61e2562

    6、/TransformationConstant1745. #defineMD5_T180xc040b340/TransformationConstant1846. #defineMD5_T190x265e5a51/TransformationConstant1947. #defineMD5_T200xe9b6c7aa/TransformationConstant2048. #defineMD5_T210xd62f105d/TransformationConstant2149. #defineMD5_T220x02441453/TransformationConstant2250. #defin

    7、eMD5_T230xd8a1e681/TransformationConstant2351. #defineMD5_T240xe7d3fbc8/TransformationConstant2452. #defineMD5_T250x21e1cde6/TransformationConstant2553. #defineMD5_T260xc33707d6/TransformationConstant2654. #defineMD5_T270xf4d50d87/TransformationConstant2755. #defineMD5_T280x455a14ed/TransformationCo

    8、nstant2856. #defineMD5_T290xa9e3e905/TransformationConstant2957. #defineMD5_T300xfcefa3f8/TransformationConstant3058. #defineMD5_T310x676f02d9/TransformationConstant3159. #defineMD5_T320x8d2a4c8a/TransformationConstant3260. 61. /TransformationConstants-Round362. #defineMD5_T330xfffa3942/Transformati

    9、onConstant3363. #defineMD5_T340x8771f681/TransformationConstant3464. #defineMD5_T350x6d9d6122/TransformationConstant3565. #defineMD5_T360xfde5380c/TransformationConstant3666. #defineMD5_T370xa4beea44/TransformationConstant3767. #defineMD5_T380x4bdecfa9/TransformationConstant3868. #defineMD5_T390xf6b

    10、b4b60/TransformationConstant3969. #defineMD5_T400xbebfbc70/TransformationConstant4070. #defineMD5_T410x289b7ec6/TransformationConstant4171. #defineMD5_T420xeaa127fa/TransformationConstant4272. #defineMD5_T430xd4ef3085/TransformationConstant4373. #defineMD5_T440x04881d05/TransformationConstant4474. #

    11、defineMD5_T450xd9d4d039/TransformationConstant4575. #defineMD5_T460xe6db99e5/TransformationConstant4676. #defineMD5_T470x1fa27cf8/TransformationConstant4777. #defineMD5_T480xc4ac5665/TransformationConstant4878. 79. /TransformationConstants-Round480. #defineMD5_T490xf4292244/TransformationConstant498

    12、1. #defineMD5_T500x432aff97/TransformationConstant5082. #defineMD5_T510xab9423a7/TransformationConstant5183. #defineMD5_T520xfc93a039/TransformationConstant5284. #defineMD5_T530x655b59c3/TransformationConstant5385. #defineMD5_T540x8f0ccc92/TransformationConstant5486. #defineMD5_T550xffeff47d/Transfo

    13、rmationConstant5587. #defineMD5_T560x85845dd1/TransformationConstant5688. #defineMD5_T570x6fa87e4f/TransformationConstant5789. #defineMD5_T580xfe2ce6e0/TransformationConstant5890. #defineMD5_T590xa3014314/TransformationConstant5991. #defineMD5_T600x4e0811a1/TransformationConstant6092. #defineMD5_T61

    14、0xf7537e82/TransformationConstant6193. #defineMD5_T620xbd3af235/TransformationConstant6294. #defineMD5_T630x2ad7d2bb/TransformationConstant6395. #defineMD5_T640xeb86d391/TransformationConstant6496. 97. 98. /Nulldata(exceptforfirstBYTE)usedtofinalisethechecksumcalculation99. staticunsignedcharPADDING

    15、64=100. 0x80,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,101. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,102. 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0103. ;CMD5Checksum.hcppview plaincopy1. #if!defined(AFX_MD5CHECKSUM_H_2BC7928E_4C15_11D3_B2EE_A4A60E20D2C3_INCLUDED_)2. #defineAFX_MD5CHECKSUM_H_2BC7928

    16、E_4C15_11D3_B2EE_A4A60E20D2C3_INCLUDED_3. 4. #if_MSC_VER10005. #pragmaonce6. #endif/_MSC_VER10007. /*8. 9. 10. */11. classCMD5Checksum12. 13. public:14. staticCStringGetMD5OfString(CStringstrString);15. /interfacefunctionsfortheRSAMD5calculation16. staticCStringGetMD5(constCString&strFilePath);17. 1

    17、8. protected:19. /constructor/destructor20. CMD5Checksum();21. virtualCMD5Checksum();22. 23. /RSAMD5implementation24. voidTransform(BYTEBlock64);25. voidUpdate(BYTE*Input,ULONGnInputLen);26. CStringFinal();27. inlineDWORDRotateLeft(DWORDx,intn);28. inlinevoidFF(DWORD&A,DWORDB,DWORDC,DWORDD,DWORDX,DW

    18、ORDS,DWORDT);29. inlinevoidGG(DWORD&A,DWORDB,DWORDC,DWORDD,DWORDX,DWORDS,DWORDT);30. inlinevoidHH(DWORD&A,DWORDB,DWORDC,DWORDD,DWORDX,DWORDS,DWORDT);31. inlinevoidII(DWORD&A,DWORDB,DWORDC,DWORDD,DWORDX,DWORDS,DWORDT);32. 33. /utilityfunctions34. inlinevoidDWordToByte(BYTE*Output,DWORD*Input,UINTnLen

    19、gth);35. inlinevoidByteToDWord(DWORD*Output,BYTE*Input,UINTnLength);36. 37. private:38. BYTEm_lpszBuffer64;/inputbuffer39. ULONGm_nCount2;/numberofbits,modulo264(lsbfirst)40. ULONGm_lMD54;/MD5checksum41. ;42. 43. #endif/!defined(AFX_MD5CHECKSUM_H_2BC7928E_4C15_11D3_B2EE_A4A60E20D2C3_INCLUDED_)MD5Che

    20、cksum.cppcppview plaincopy1. #includestdafx.h2. #includeMD5Checksum.h3. #includeMD5ChecksumDefines.h4. 5. #ifdef_DEBUG6. #undefTHIS_FILE7. staticcharTHIS_FILE=_FILE_;8. #definenewDEBUG_NEW9. #endif10. 11. 12. /*13. 14. */15. CStringCMD5Checksum:GetMD5(constCString&strFilePath)16. 17. try18. 19. CFil

    21、efile;20. if(file.Open(strFilePath,CFile:modeRead)=0)21. return_T();22. 23. CMD5ChecksumMD5Checksum;/checksumobject24. intnLength=0;/numberofbytesreadfromthefile25. constintnBufferSize=1024;/checksumthefileinblocksof1024bytes26. BYTEBuffernBufferSize;/bufferfordatareadfromthefile27. 28. /checksumthe

    22、fileinblocksof1024bytes29. while(nLength=file.Read(Buffer,nBufferSize)0)30. 31. MD5Checksum.Update(Buffer,nLength);32. 33. 34. file.Close();35. 36. /finalisethechecksumandreturnit37. returnMD5Checksum.Final();38. 39. 40. /reportanyfileexceptionsindebugmodeonly41. catch(CFileException*e)42. 43. TRACE

    23、0(CMD5Checksum:GetMD5:CFileExceptioncaught);44. throwe;45. 46. 47. 48. /*49. FUNCTION:CMD5Checksum:RotateLeft50. DETAILS:private51. DESCRIPTION:Rotatesthebitsina32bitDWORDleftbyaspecifiedamount52. RETURNS:TherotatedDWORD53. ARGUMENTS:DWORDx:thevaluetoberotated54. intn:thenumberofbitstorotateby55. */

    24、56. DWORDCMD5Checksum:RotateLeft(DWORDx,intn)57. 58. /checkthatDWORDis4byteslong-trueinVisualC+6and32bitWindows59. ASSERT(sizeof(x)=4);60. 61. /rotateandreturnx62. return(x(32-n);63. 64. 65. 66. /*67. FUNCTION:CMD5Checksum:FF68. DETAILS:protected69. DESCRIPTION:ImplementationofbasicMD5transformationalgorithm70. RETURNS:none71. ARGUMENTS:DWORD&A,B,C,D:Current(partia


    注意事项

    本文(C++计算文件MD5值.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开