在iOS开发中,我们经常会用到网络请求,在网络请求的过程中,我们经常需要想服务器发送参数,其中就包括帐号密码一类,在发送这些参数的时候,直接发送明文是不安全的,因此我们需要对明文进行加密。今天介绍第一种加密方法:base64加密
base64加密可以对任意文件进行加密,但是这种加密过程是可逆的,可以被反解密。base64加密的原理是将8个bit为一个字节的数据转换成6个bit为一个单位来处理,这样就导致数据增大了(8-6)/6 = 1/3.
NSString *str = @"I love china";
NSData *data = [str dataUsingEncoding:NSUTF8StringEncoding];
NSData *base64Data = [data base64EncodedDataWithOptions:0];
NSString *base64Str = [data base64EncodedStringWithOptions:0];
对文件的加密解密过程如下:
NSString *path = @"文件路径";
NSData *data = [NSData dataWithContentsOfFile:path];
NSData *base64Data = [data base64EncodedDataWithOptions:0];
[base64Data writeToFile:@"要写入的文件路径" atomically:YES];
解密
NSData *endata = [[NSData alloc]initWithBase64EncodedData:base64Data options:0];
[endata writeToFile:@"解密出来的文件存放的位置" atomically:YES];
最后将解密出来的data转换成你需要的类型就可以了