123456789101112131415161718192021222324 |
- #include <openssl/md5.h>
- 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;
- }
|