iOS之MD5加密、加盐

源码 2024-9-6 17:07:19 32 0 来自 中国
MD5加密:HASH算法一种、 是天生32位的数字字母肴杂码。
特点:
1、恣意数据得出的MD5值长度都是32
2、对原数据举行任何改动,所得到的MD5值都有很大区别
应用:
紧张运用在数字署名、口令加密等方面
MD5改进(加盐等):
如今的MD5已不再是绝对安全,对此,可以对MD5稍作改进,以增加解密的难度
加盐(Salt):在明文的固定位置插入随机串,然后再举行MD5
写一个NSString分类,NSString+wxMD5
#import "NSString+wxMD5.h"#import <CommonCrypto/CommonDigest.h>@implementation NSString (wxMD5)+ (NSString *)getmd5StrNSString *)str{    //传入参数,转化成char    const char *cStr = [str UTF8String];    //开发一个16字节的空间    unsigned char result[16];    /*     extern unsigned char * CC_MD5(const void *data, CC_LONG len, unsigned char *md)官方封装好的加密方法     把str字符串转换成了32位的16进制数列(这个过程不可逆转) 存储到了md这个空间中     */    CC_MD5(cStr, (unsigned)strlen(cStr), result);    return [NSString stringWithFormat"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X",             result[0], result[1], result[2], result[3],             result[4], result[5], result[6], result[7],             result[8], result[9], result[10], result[11],             result[12], result[13], result[14], result[15]             ];}@endmd5解密网站:https://www.cmd5.com
使用示例
    NSString *str = @"123Man456";    NSString *md5str = [NSString getmd5Str:str];    NSLog(@"%@",md5str);    //加盐后    NSString *salt = @"asdkqwkfqlwflqfwlMAk";    NSString *newStr = [str stringByAppendingString:salt];    NSString *newMd5str = [NSString getmd5Str: newStr];    NSLog(@"%@",newMd5str);
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-10-18 18:24, Processed in 0.180260 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表