iOS MD5 base 64 加密
2016-07-29 10:31
477 查看
MD5 对NSString 加密
// MD5 加密是一种不可逆的加密算法<可以加密不可以解密> ; 任意长度的字符经过 MD5加密之后长度一致; 相同的字符串任何时候经过MD5加密之后生成的字符串是一样的; 原有字符串发生一点点的改变,经过 MD5 加密之后,大不一样<说明 MD5 加密难有规律可循>以下是封装好的类
#import <CommonCrypto/CommonCrypto.h> // md5对字符串进行加密 + (NSString *) md5WithString:(NSString *)sourceString{ // 转化类型 NSString -> C 字符数组 const char *str = sourceString.UTF8String; // C字符数组 unsigned char result [CC_MD5_DIGEST_LENGTH]; // 进行加密 CC_MD5(str, (CC_LONG)strlen(str), result); // 转化类型 C -> NSString NSMutableString *resultString = [[NSMutableString alloc] initWithCapacity:CC_MD5_DIGEST_LENGTH]; for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) { NSString *item = [NSString stringWithFormat:@"%02X", result[i]]; [resultString appendString:item]; } return resultString; }
MD5 对NSData 加密
// md5对NSData类型进行进行加密 + (NSString *)md5WithSourceData:(NSData *)sourceData{ // 声明并初始化 md5 变量 CC_MD5_CTX md5; CC_MD5_Init(&md5); // 准备加密 CC_MD5_Update(&md5, sourceData.bytes, (CC_LONG)sourceData.length); // 创建 char 数组接收加密之后的数组 unsigned char result [CC_MD5_DIGEST_LENGTH]; CC_MD5_Final(result, &md5); // char数组 --> NSString 的接收NSString类型对象 NSMutableString *resultString = [[NSMutableString alloc] initWithCapacity:CC_MD5_DIGEST_LENGTH]; // char数组 -> NSString for (int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) { NSString *item = [NSString stringWithFormat:@"%02X", result[i]]; [resultString appendString:item]; } return resultString; }
Base 64 加密
// base64加密 + (NSString *)base64EncodingWithSourceData:(NSData *)data{ NSString *resultString = [data base64EncodedStringWithOptions:NSDataBase64Encoding64CharacterLineLength]; return resultString; }
Base 64 解密
// base64 解密 + (NSData *)base64DecodingWithString:(NSString *)string{ NSData *data = [[NSData alloc] initWithBase64EncodedString:string options:NSDataBase64DecodingIgnoreUnknownCharacters]; return data; }
以上只是我个人摘抄笔记,如有侵权请告知,谢谢!
相关文章推荐
- 密码加密之MD5+Base64
- base 64 在ios 中的运用
- MD5 BASE 64
- iOS开发之常用加密方法(aes、md5、base64)
- iOS常用加密方法(aes、md5、base64)
- iOS常用加密方法(aes、md5、base64)
- Url加密转Base64
- iOS常用加密方法(aes、md5、base64)
- iOS中的MD5(base64)加密
- iOS开发(93)之常用加密方法(aes、md5、base64)
- iOS常用加密方法(aes、md5、base64)
- 加密解密url QueryString 发生 Invalid length for a Base-64 char array异常解决方法
- iOS常用加密方法(aes、md5、base64)
- iOS常用加密方法(aes、md5、base64)
- iOS使用MD5 - 字符串加密至MD5&获取文件MD5
- sqlserver BASE 64加密
- 关于MD5和SHA、base加密的ruby代码(适合1.9.2)
- iOS使用MD5 - 字符串加密至MD5&获取文件MD5
- IOS开发之----常用加密方法(AES、MD5、Base64)
- IOS开发之----常用加密方法(AES、MD5、Base64)