我们在iOS中,一般要将登陆的密码之类的信息加密,而iOS中最常用的加密方式就是MD5。对于MD5中的加密原理,我在这里就不在多说了,因为我也记不住,用到时自己来“巡山”。下面我给出在iOS中,MD5加密的源代码,供各位使用。
-(NSString *)MD5password:(NSString *)password
{
// 将字符串UTF-8转码
const char *ptr = [password UTF8String];
// 创建一个一定长度的字节数组
unsigned char md5Buffer[CC_MD5_DIGEST_LENGTH];
// 通过MD5加密,生成一个16位的MD5哈希值,并存储在字节数组中
CC_MD5(ptr, strlen(ptr), md5Buffer);
// 将字节数组中的值转换为16进制字符串
NSMutableString *output = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];
for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++)
[output appendFormat:@"%02x",md5Buffer[i]];
return output;
}