#include void chkmd5(const char *data, char *md5){ MD5_CTX ctx; unsigned char tmp,md[16]; int i; MD5_Init(&ctx); MD5_Update(&ctx,data,strlen(data)); MD5_Final(md,&ctx); for(i=0;i<16;i++){ tmp = (md[i]>>4)&0x0f; if(tmp<10) md5[i*2+0] = tmp+0x30; else md5[i*2+0] = tmp+0x37; tmp = md[i]&0x0f; if(tmp<10) md5[i*2+1] = tmp+0x30; else md5[i*2+1] = tmp+0x37; } md5[32] = 0x00; }