IOS 中的MD5使用

这里简单的介绍一下,在iOS开发中,对字符串进行MD5加密的做法。

- (NSString *)stringToMD5:(NSString *)str {

// 1.首先将字符串转换成UTF-8编码, 因为MD5加密是基于C语言的,所以要先把字符串转化成C语言的字符串

const char *fooData = [str UTF8String];

// 2.然后创建一个字符串数组,接收MD5的值

unsigned char result[CC_MD5_DIGEST_LENGTH];

// 3.计算MD5的值, 这是官方封装好的加密方法:把我们输入的字符串转换成16进制的32位数,然后存储到result中

CC_MD5(fooData, (CC_LONG)strlen(fooData), result);

/*

第一个参数:要加密的字符串

第二个参数: 获取要加密字符串的长度

第三个参数: 接收结果的数组

*/

// 4.创建一个字符串保存加密结果

NSMutableString *saveResult = [NSMutableString string];

// 5.从result 数组中获取加密结果并放到 saveResult中

for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {

[saveResult appendFormat:@"%02x", result[i]];

}

// x表示十六进制,%02X  意思是不足两位将用0补齐,如果多余两位则不影响

return saveResult;

/*

这里返回的是32位的加密字符串,有时我们需要的是16位的加密字符串,其实仔细观察即可发现,16位的加密字符串就是这个字符串中见的部分。我们只需要截取字符串即可([saveResult substringWithRange:NSMakeRange(7, 16)])

*/

}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容