#import <CommonCrypto/CommonDigest.h>


+(NSString*)md5:(NSString *)str

{

const char *cStr = [str UTF8String];

unsigned char result[CC_MD5_DIGEST_LENGTH];

CC_MD5(cStr, (CC_LONG)strlen(cStr), result);

NSMutableString *hash = [NSMutableString string];

for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)

[hash appendFormat:@"%02X", result[i]];

return [hash lowercaseString];

}