MD5的使用
MD5的特点(百度百科):
压缩性:任意长度的数据,算出的MD5值长度都是固定的
容易计算:从原数据计算出MD5的值很容易
抗修改性:对原数据进行任何改动,哪怕是只修改一个字节,所得到的MD5的值都有很大差距
强抗碰撞性:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的
MD5在使用的时候先要导入#import<CommonCrypto/CommonDigest.h>
//MD5转换,将字符串转化成MD5字符串 去掉特殊的标记
- (NSString *)changeToMD5String: (NSString *)str{
//转换成c语言的字符串
const char *data = [str UTF8String];
unsigned char result[CC_MD5_DIGEST_LENGTH];
CC_MD5(data,(CC_LONG)strlen(data),result);
//变成OC不可变字符串
NSMutableString *s = [NSMutableString string];
for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
[s appendFormat:@"%02X",result[i]];
}
return s;
}