为NSString创建一个分类
NSString + md5
.h文件
#import <Foundation/Foundation.h>
@interface NSString (md5)
/**
* 将字符串使用MD5加密
*
* @return 加密后的字符串
*/
-(NSString *)md5String;
@end
.m文件
#import "NSString+md5.h"
// 需要导包
#import <CommonCrypto/CommonDigest.h>
@implementation NSString (md5)
-(NSString *)md5String
{
const char *cStr = self.UTF8String;
unsigned char digest[CC_MD5_DIGEST_LENGTH];
CC_MD5(cStr, (int)self.length, digest);
NSMutableString *result = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
{
[result appendFormat:@"%02x", digest[i]];
}
return result;
}
@end
使用方法, 在main里面
#import <Foundation/Foundation.h>
#import "NSString+md5.h"
int main(int argc, const char * argv[]) {
@autoreleasepool {
NSString *password = @"123456";
NSString *pwdWithMD5 = [password md5String];
NSLog(@"%@", pwdWithMD5);
}
return 0;
}