91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

完整代碼,點擊sln可以打開工程,并在VS2010上調試成功,對初學者來說簡單易懂,還可以作為工具類計算MD5,很實用的小應用。

資源截圖

代碼片段和文件信息

#include?“md5.h“
#include?“stdio.h“

#include?“memory.h“



#define?S11?7
#define?S12?12
#define?S13?17
#define?S14?22
#define?S21?5
#define?S22?9
#define?S23?14
#define?S24?20
#define?S31?4
#define?S32?11
#define?S33?16
#define?S34?23
#define?S41?6
#define?S42?10
#define?S43?15
#define?S44?21

static?void?MD5Transform?(UINT32?a[4]?unsigned?char?b[64]);
static?void?Encode?(unsigned?char?*?UINT32?*?unsigned?int);
static?void?Decode?(UINT32?*?unsigned?char?*?unsigned?int);

static?unsigned?char?PADDING[64]?=?{
0x80?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0
0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0
0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0?0
};

#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?ROTATE_LEFT(x?n)?(((x)?<>?(32-(n))))

#define?FF(a?b?c?d?x?s?ac)?{?\
(a)?+=?F?((b)?(c)?(d))?+?(x)?+?(UINT32)(ac);?\
(a)?=?ROTATE_LEFT?((a)?(s));?\
(a)?+=?(b);?\
}
#define?GG(a?b?c?d?x?s?ac)?{?\
(a)?+=?G?((b)?(c)?(d))?+?(x)?+?(UINT32)(ac);?\
(a)?=?ROTATE_LEFT?((a)?(s));?\
(a)?+=?(b);?\
}
#define?HH(a?b?c?d?x?s?ac)?{?\
(a)?+=?H?((b)?(c)?(d))?+?(x)?+?(UINT32)(ac);?\
(a)?=?ROTATE_LEFT?((a)?(s));?\
(a)?+=?(b);?\
}
#define?II(a?b?c?d?x?s?ac)?{?\
(a)?+=?I?((b)?(c)?(d))?+?(x)?+?(UINT32)(ac);?\
(a)?=?ROTATE_LEFT?((a)?(s));?\
(a)?+=?(b);?\
}


void?MD5Init?(MD5_CTX?*context)
{
context->count[0]?=?context->count[1]?=?0;

context->state[0]?=?0x67452301;
context->state[1]?=?0xefcdab89;
context->state[2]?=?0x98badcfe;
context->state[3]?=?0x10325476;
}


void?MD5Update?(MD5_CTX?*context?unsigned?char?*input?unsigned?int?inputLen)
{
unsigned?int?i?index?partLen;

index?=?(unsigned?int)((context->count[0]?>>?3)?&?0x3F);

if?((context->count[0]?+=?((UINT32)inputLen?< context->count[1]++;
context->count[1]?+=?((UINT32)inputLen?>>?29);

partLen?=?64?-?index;


if?(inputLen?>=?partLen)?{
memcpy((unsigned?char?*)&context->buffer[index]?(unsigned?char?*)input?partLen);
MD5Transform?(context->state?context->buffer);

for?(i?=?partLen;?i?+?63? MD5Transform?(context->state?&input[i]);

index?=?0;
}
else
i?=?0;

memcpy((unsigned?char?*)&context->buffer[index]?(unsigned?char?*)&input[i]
inputLen-i);
}

void?MD5Final?(unsigned?char?digest[16]?MD5_CTX?*?context)
{
unsigned?char?bits[8];
unsigned?int?index?padLen;

Encode?(bits?context->count?8);

index?=?(unsigned?int)((context->count[0]?>>?3)?&?0x3f);
padLen?=?(index? MD5Update?(context?PADDING?padLen);

MD5Update?(context?bits?8);

Encode?(digest?context->state?16);

memset?((unsigned?char?*)context?0?si

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????1441792??2012-07-20?14:10??實例MD5\ipch\實例md5-80ec19a7\實例md5-7305133b.ipch

?????文件????????838??2012-07-20?14:10??實例MD5\實例MD5\Debug\cl.command.1.tlog

?????文件???????1924??2012-07-20?14:10??實例MD5\實例MD5\Debug\CL.read.1.tlog

?????文件????????620??2012-07-20?14:10??實例MD5\實例MD5\Debug\CL.write.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link-cvtres.read.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link-cvtres.write.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.5104-cvtres.read.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.5104-cvtres.write.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.5104.read.1.tlog

?????文件??????????2??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.5104.write.1.tlog

?????文件???????1942??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.command.1.tlog

?????文件???????3476??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.read.1.tlog

?????文件???????1316??2012-07-20?14:10??實例MD5\實例MD5\Debug\link.write.1.tlog

?????文件??????17268??2012-07-20?14:10??實例MD5\實例MD5\Debug\md5.obj

?????文件????????472??2012-07-20?14:10??實例MD5\實例MD5\Debug\mt.command.1.tlog

?????文件????????570??2012-07-20?14:10??實例MD5\實例MD5\Debug\mt.read.1.tlog

?????文件????????502??2012-07-20?14:10??實例MD5\實例MD5\Debug\mt.write.1.tlog

?????文件????????704??2012-07-20?14:10??實例MD5\實例MD5\Debug\rc.command.1.tlog

?????文件????????474??2012-07-20?14:10??實例MD5\實例MD5\Debug\rc.read.1.tlog

?????文件????????482??2012-07-20?14:10??實例MD5\實例MD5\Debug\rc.write.1.tlog

?????文件??????44032??2012-07-20?14:10??實例MD5\實例MD5\Debug\vc100.idb

?????文件??????61440??2012-07-20?14:10??實例MD5\實例MD5\Debug\vc100.pdb

?????文件????????406??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5.exe.embed.manifest

?????文件????????472??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5.exe.embed.manifest.res

?????文件????????381??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5.exe.intermediate.manifest

?????文件????????114??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5.lastbuildstate

?????文件???????4044??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5.log

?????文件????????200??2012-07-20?14:10??實例MD5\實例MD5\Debug\實例MD5_manifest.rc

?????文件???????7946??2012-07-20?14:10??實例MD5\實例MD5\md5.cpp

?????文件????????496??2012-07-20?14:10??實例MD5\實例MD5\md5.h

............此處省略15個文件信息

評論

共有 條評論