您的位置:首页 > 移动开发 > IOS开发

ios-day20-04(ios开发中的MD5加密和SHA1加密)

2015-04-06 14:57 281 查看
/**
*  对字符串进行32位MD5加密
*
*  @param originalStr 原字符串
*
*  @return 加密后的字符串
*/
- (NSString *)MD5:(NSString *)originalStr{

const char *cStr = [originalStr UTF8String];
unsigned char digest[CC_MD5_DIGEST_LENGTH];

CC_MD5(cStr, strlen(cStr), digest);

NSMutableString *result = [NSMutableString stringWithCapacity:CC_MD5_DIGEST_LENGTH * 2];

for(int i = 0; i < CC_MD5_DIGEST_LENGTH; i++) {
[result appendFormat:@"%02x", digest[i]];
}

return result;
}

/**
*  对字符串进行SHA1加密
*
*  @param originalStr 原字符串
*
*  @return 加密后的字符串
*/
- (NSString *)SHA1:(NSString *)originalStr{

const char *cStr = [originalStr UTF8String];
NSData *data = [NSData dataWithBytes:cStr length:originalStr.length];
uint8_t digest[CC_SHA1_DIGEST_LENGTH];

CC_SHA1(data.bytes, data.length, digest);

NSMutableString *result = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH * 2];

for(int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) {
[result appendFormat:@"%02x", digest[i]];
}

return result;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: