md5c.c
md5.h
上面两个文件,是网上开源的两个文件,应用最多的,在里面加了个字符串的摘要算法
void MDString (char *str,char digest[33])
{
MD5_CTX context;
char tmpdigest[16];
int i = 0;
unsigned int len = strlen (str);
MD5Init (&context);
MD5Update (&context, (unsigned char*)str, len);
MD5Final (tmpdigest, &context);
/*make a string version of the numeric digest value*/
for (i= 0 ; i <16 ; i++ )
{
sprintf(&(digest[2*i]),"%02x",(unsigned char)tmpdigest[i]);
}
digest[32]='\0';
}
digest是最终结果的输出,要保证有32B的空间,因为md5的输出是32为字符。
最后注意,MD5Final的结果tmpdigest,需要转换才能正常显示。
写了实例程序,VC6下,因为开源的文件时用标准C写的,所以可以应用到任意语言任意语言,大家可以下载,0积分,但希望大家踊跃反馈
另,在VC6中,默认使用MBCS编码,即多字节字符。
CString 转 char ,我用的是