md5.c 424 B

123456789101112131415161718192021222324
  1. #include <openssl/md5.h>
  2. void chkmd5(const char *data, char *md5){
  3. MD5_CTX ctx;
  4. unsigned char tmp,md[16];
  5. int i;
  6. MD5_Init(&ctx);
  7. MD5_Update(&ctx,data,strlen(data));
  8. MD5_Final(md,&ctx);
  9. for(i=0;i<16;i++){
  10. tmp = (md[i]>>4)&0x0f;
  11. if(tmp<10)
  12. md5[i*2+0] = tmp+0x30;
  13. else
  14. md5[i*2+0] = tmp+0x37;
  15. tmp = md[i]&0x0f;
  16. if(tmp<10)
  17. md5[i*2+1] = tmp+0x30;
  18. else
  19. md5[i*2+1] = tmp+0x37;
  20. }
  21. md5[32] = 0x00;
  22. }