法1;
#import "NSString+Extension.h"
#import <CommonCrypto/CommonDigest.h>
@implementation NSString (Encoding)
- (NSString*)md532BitLower
06 | const char *cStr = [self UTF8String]; |
07 | unsigned char result[16]; |
09 | NSNumber *num = [NSNumber numberWithUnsignedLong: strlen (cStr)]; |
10 | CC_MD5( cStr,[num intValue], result ); |
12 | return [[NSString stringWithFormat: |
13 | @ "%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X" , |
14 | result[0], result[1], result[2], result[3], |
15 | result[4], result[5], result[6], result[7], |
16 | result[8], result[9], result[10], result[11], |
17 | result[12], result[13], result[14], result[15] |
20 | - (NSString*)md532BitUpper |
22 | const char *cStr = [self UTF8String]; |
23 | unsigned char result[16]; |
25 | NSNumber *num = [NSNumber numberWithUnsignedLong: strlen (cStr)]; |
26 | CC_MD5( cStr,[num intValue], result ); |
28 | return [[NSString stringWithFormat: |
29 | @ "%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X" , |
30 | result[0], result[1], result[2], result[3], |
31 | result[4], result[5], result[6], result[7], |
32 | result[8], result[9], result[10], result[11], |
33 | result[12], result[13], result[14], result[15] |
法2:
- (NSString *)minmd5{
const char *cStr = [self UTF8String];
unsigned char result[16];
CC_MD5(cStr, (CC_LONG)
strlen(cStr), result);
return [NSString stringWithFormat:
@"%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
result[0], result[1], result[2], result[3],
result[4], result[5], result[6], result[7],
result[8], result[9], result[10], result[11],
result[12], result[13], result[14], result[15]];
}
x是小写,X是大写
参考链接:http://www.51itong.net/ios-md5-32-12759.html