iOS中使用MD5加密字符串

时间:2022-04-03 14:22:28

1,新建NSString的分类,记得添加加密所需的头文件#import <CommonCrypto/CommonDigest.h> , NSString+MD5.h:

?
1
2
3
4
5
6
#import <Foundation/Foundation.h>
#import <CommonCrypto/CommonDigest.h>
 
@interface NSString (MD5)
+ (NSString *)md5To32bit:(NSString *)str;
@end

2,编写加密方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#import "NSString+MD5.h"
 
@implementation NSString (MD5)
 
+ (NSString *)md5To32bit:(NSString *)str {
  
  const char *cStr = [str 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;
}

3,在需要加密的字串符当前控制器中导入头文件,并引用该方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#import "ViewController.h"
#import "NSString+MD5.h"
 
@interface ViewController ()
 
@end
 
@implementation ViewController
 
- (void)viewDidLoad {
  [super viewDidLoad];
 
  NSString *name = @"Kuture";
  
  //加密字符串
  NSString *encypt = [NSString md5To32bit:name];
  NSLog(@"\n name: %@\n encypt: %@",name,encypt);
  
}
 
@end

运行结果为:

iOS中使用MD5加密字符串

以上就是本文的全部内容了,希望大家能够喜欢。