----------- .h --------------
#import <Foundation/Foundation.h>
#import <CommonCrypto/CommonDigest.h>
@interface NSString (MD5)
-(NSString *)md5HexDigest;
@end
------------ .m ---------------
@implementation NSString (MD5)
-(NSString *)md5HexDigest{
constchar *original_str=[selfUTF8String];
unsignedchar result[CC_MD5_DIGEST_LENGTH];
CC_MD5(original_str,(CC_LONG)strlen(original_str),result);
NSMutableString *hash=[NSMutableStringstring];
for (int i=0; i<16; i++)
{
[hash appendFormat:@"%02X",result[i]];
}
return [hashlowercaseString];
}
@end