IOS MD5、SHA1加密

对一长串NSString数据进行MD5、SHA1加密,其做法相对较为简单,利用CC_MD5、CC_SHA1,导入如下库文件:

#import <CommonCrypto/CommonDigest.h>

MD5Util.h

#import <UIKit/UIKit.h>
#import <CommonCrypto/CommonDigest.h>
@class MD5Util;

/**
 * MD5 工具类
 **/
@interface MD5Util : NSObject

/**
 * MD5 加密
 **/
+(NSString *)md5:(NSString *)data;

@end

MD5Util.m

#import <Foundation/Foundation.h>
#import "MD5Util.h"

@implementation MD5Util

+ (NSString *)md5:(NSString *)data{
    const char *cStr = [data UTF8String];
    unsigned char digest[CC_MD5_DIGEST_LENGTH];
    CC_MD5(cStr, (CC_LONG)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 lowercaseString];
}

@end

SHA1Util.h

#import <UIKit/UIKit.h>
#import <CommonCrypto/CommonDigest.h>
@class SHA1Util;

/**
 * SHA1工具类
 **/
@interface SHA1Util : NSObject

/**
 * SHA1加密
 **/
+(NSString *)sha1:(NSString *)data;

@end

SHA1Util.m

#import <Foundation/Foundation.h>
#import "SHA1Util.h"

@implementation SHA1Util

+ (NSString *)sha1:(NSString *)data{
    NSData *cStr = [data dataUsingEncoding:NSUTF8StringEncoding];
    uint8_t digest[CC_SHA1_DIGEST_LENGTH];
    CC_SHA1(cStr.bytes,(unsigned int)cStr.length,digest);
    NSMutableString *result = [NSMutableString stringWithCapacity:CC_SHA1_DIGEST_LENGTH];
    
    for (int i = 0; i < CC_SHA1_DIGEST_LENGTH; i++) {
        [result appendFormat:@"%02x",digest[i]];
    }
    return [result lowercaseString];
}

@end

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值