• 大小: 33KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-19
  • 语言: C/C++
  • 标签: MFC  文件MD5码  

资源简介

一直找不到MD5在MFC上的源代码,从网上下载了一个C语言写的,加工了一下,改造成MFC的了,新手可以下载看看,主要的代码都在mfc_md5Dlg.cpp里,编译时,要打开 工程→设置→C/C++→分类:预编译的头文件→不使用预补偿页眉

资源截图

代码片段和文件信息

// #include


#define F(x y z) (((x) & (y)) | ((~x) & (z)))
#define G(x y z) (((x) & (z)) | ((y) & (~z)))
#define H(x y z) ((x) ^ (y) ^ (z))
#define I(x y z) ((y) ^ ((x) | (~z)))

#define RL(x y) (((x) << (y)) | ((x) >> (32 - (y))))  //x向左循环移y位

#define PP(x) (x<<24)|((x<<8)&0xff0000)|((x>>8)&0xff00)|(x>>24)  //将x高低位互换例如PP(aabbccdd)=ddccbbaa

#define FF(a b c d x s ac) a = b + (RL((a + F(bcd) + x + ac)s))
#define GG(a b c d x s ac) a = b + (RL((a + G(bcd) + x + ac)s))
#define HH(a b c d x s ac) a = b + (RL((a + H(bcd) + x + ac)s))
#define II(a b c d x s ac) a = b + (RL((a + I(bcd) + x + ac)s))

unsigned ABCDabcdilenflen[2]x[16];  

void md5(){                 //MD5核心算法供64轮

  a=Ab=Bc=Cd=D;
  /**//* Round 1 */
  FF (a b c d x[ 0]  7 0xd76aa478); /**//* 1 */
  FF (d a b c x[ 1] 12 0xe8c7b756); /**//* 2 */
  FF (c d a b x[ 2] 17 0x242070db); /**//* 3 */
  FF (b c d a x[ 3] 22 0xc1bdceee); /**//* 4 */
  FF (a b c d x[ 4]  7 0xf57c0faf); /**//* 5 */
  FF (d a b c x[ 5] 12 0x4787c62a); /**//* 6 */
  FF (c d a b x[ 6] 17 0xa8304613); /**//* 7 */
  FF (b c d a x[ 7] 22 0xfd469501); /**//* 8 */
  FF (a b c d x[ 8]  7 0x698098d8); /**//* 9 */
  FF (d a b c x[ 9] 12 0x8b44f7af); /**//* 10 */
  FF (c d a b x[10] 17 0xffff5bb1); /**//* 11 */
  FF (b c d a x[11] 22 0x895cd7be); /**//* 12 */
  FF (a b c d x[12]  7 0x6b901122); /**//* 13 */
  FF (d a b c x[13] 12 0xfd987193); /**//* 14 */
  FF (c d a b x[14] 17 0xa679438e); /**//* 15 */
  FF (b c d a x[15] 22 0x49b40821); /**//* 16 */

 /**//* Round 2 */
  GG (a b c d x[ 1]  5 0xf61e2562); /**//* 17 */
  GG (d a b c x[ 6]  9 0xc040b340); /**//* 18 */
  GG (c d a b x[11] 14 0x265e5a51); /**//* 19 */
  GG (b c d a x[ 0] 20 0xe9b6c7aa); /**//* 20 */
  GG (a b c d x[ 5]  5 0xd62f105d); /**//* 21 */
  GG (d a b c x[10]  9 0x02441453); /**//* 22 */
  GG (c d a b x[15] 14 0xd8a1e681); /**//* 23 */
  GG (b c d a x[ 4] 20 0xe7d3fbc8); /**//* 24 */
  GG (a b c d x[ 9]  5 0x21e1cde6); /**//* 25 */
  GG (d a b c x[14]  9 0xc33707d6); /**//* 26 */
  GG (c d a b x[ 3] 14 0xf4d50d87); /**//* 27 */
  GG (b c d a x[ 8] 20 0x455a14ed); /**//* 28 */
  GG (a b c d x[13]  5 0xa9e3e905); /**//* 29 */
  GG (d a b c x[ 2]  9 0xfcefa3f8); /**//* 30 */
  GG (c d a b x[ 7] 14 0x676f02d9); /**//* 31 */
  GG (b c d a x[12] 20 0x8d2a4c8a); /**//* 32 */

  /**//* Round 3 */
  HH (a b c d x[ 5]  4 0xfffa3942); /**//* 33 */
  HH (d a b c x[ 8] 11 0x8771f681); /**//* 34 */
  HH (c d a b x[11] 16 0x6d9d6122); /**//* 35 */
  HH (b c d a x[14] 23 0xfde5380c); /**//* 36 */
  HH (a b c d x[ 1]  4 0xa4beea44); /**//* 37 */
  HH (d a b c x[ 4] 11 0x4bdecfa9); /**//* 38 */
  HH (c d a b x[ 7]

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-10-23 15:44  mfc_md5\
     目录           0  2012-10-23 15:42  mfc_md5\Debug\
     文件        4526  2012-10-22 16:45  mfc_md5\md5.cpp
     文件          20  2012-10-22 16:38  mfc_md5\md5.h
     文件       35540  2012-10-22 17:26  mfc_md5\mfc_md5.aps
     文件        1182  2012-10-23 15:43  mfc_md5\mfc_md5.clw
     文件        2077  2012-10-22 15:26  mfc_md5\mfc_md5.cpp
     文件        4195  2012-10-22 17:32  mfc_md5\mfc_md5.dsp
     文件         520  2012-10-22 15:26  mfc_md5\mfc_md5.dsw
     文件        1335  2012-10-22 15:26  mfc_md5\mfc_md5.h
     文件       50176  2012-10-23 15:44  mfc_md5\mfc_md5.ncb
     文件       49664  2012-10-23 15:44  mfc_md5\mfc_md5.opt
     文件        1287  2012-10-22 17:30  mfc_md5\mfc_md5.plg
     文件        5396  2012-10-22 17:26  mfc_md5\mfc_md5.rc
     文件       10499  2012-10-22 17:30  mfc_md5\mfc_md5Dlg.cpp
     文件        1382  2012-10-22 16:09  mfc_md5\mfc_md5Dlg.h
     文件        3597  2012-10-22 15:26  mfc_md5\ReadMe.txt
     目录           0  2012-10-22 15:26  mfc_md5\res\
     文件         777  2012-10-22 17:15  mfc_md5\resource.h
     文件        1078  2012-10-22 15:26  mfc_md5\res\mfc_md5.ico
     文件         399  2012-10-22 15:26  mfc_md5\res\mfc_md5.rc2
     文件         209  2012-10-22 15:26  mfc_md5\StdAfx.cpp
     文件        1054  2012-10-22 15:26  mfc_md5\StdAfx.h

评论

共有 条评论