.h文件
/** * MD5加密工具 */ #import <Foundation/Foundation.h> @interface MD5Tools : NSObject /** * MD5加密 */ +(NSString *)md5:(NSString *)value; /** * 密码MD5+手机号后4位 ,在作MD5加密 */ +(NSString *)md5Psd:(NSString *)password withPhoneNum:(NSString *)phoneNum; @end
#import "MD5Tools.h"
#import <CommonCrypto/CommonDigest.h>
@implementation MD5Tools
+(NSString *)md5:(NSString *)value
{
	const char *cStr = [value UTF8String];
    unsigned char result[16];
    CC_MD5( cStr, strlen(cStr), result ); // This is the md5 call
    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]
			];
}
+(NSString *)md5Psd:(NSString *)password withPhoneNum:(NSString *)phoneNum
{
    NSString *str = [NSString stringWithFormat:@"%@%@",[MD5Tools md5:password],[[phoneNum substringFromIndex:phoneNum.length-4]substringToIndex:4]];
    return [MD5Tools md5:str];
}
@end原文地址:http://blog.csdn.net/quanqinyang/article/details/37884433