- 加密首先引入头文件
import<CommonCrypto/CommonCrypto.h>
- 使用MD5对 NSString 进行加密
1: 准备好一个字符串 NSString *string = @"王郭得亚梁";
2: MD5加密是基于C语言的,所以要把这个字符串转化成C的字符串 const char *footData = [string UTF8String];
3: 创建一个字符串数组,结收MD5的值
unsigned char result[CC_MD5_DIGEST_LENGTH];
4: 计算MD5的值
// 参数一 : 表示要加密的字符串
// 参数二 : 获取要加密字符串的长度
// 参数三 : 接收结果的数组
CC_MD5(footData, (CC_LONG)strlen(footData), result);
5: 保存结果的字符串
NSMutableString *resultString = [NSMutableString string];
6. 获取结果
for (int i = 0; i< CC_MD5_DIGEST_LENGTH; i++)
{
[resultString appendFormat:@"%02X",result[i]];
}
NSLog(@"result == %@", resultString);
拓展 --- > 封装 MD5方法 ---
1.创建一个延展 — NSString + MD5.h
2.在.m中,引入头文件 #import<CommonCrypto/CommonCrypto.h>
3.封装的方法是
- (NSString *)getMD5String{ const char *data = [self UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(data, (CC_LONG)strlen(data), result);
NSMutableString *resultString = [NSMutableString string];
for (int i = 0; i< CC_MD5_DIGEST_LENGTH; i++) {
[resultString appendFormat:@"%02X",result[i]];
} return resultString;
}
4.在.m中,调用上面封装的方法
NSString *string = @"张";
NSString *newString = [string getMD5String];
NSLog(@"newString == %@", newString);