iOS base64 MD5

本文探讨了网络APP中如何保护用户隐私数据的安全性,介绍了Base64编码用于数据传输的基本原理及应用,并讨论了MD5加密算法及其加盐处理的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网络APP 只要涉及用户隐私的数据,均不能以明文传输。

一 base64 编码

将任意的二进制数据转为编码为 65个字符的组成。

0-9 a-z A-Z + / = 一共 65 个 字符

例如:
1 mac 自带 base64命令

可以将base64 编码的文件可以转换

–》将桌面上1.png 图片经过base64编码生成一个abc.text,

base64 1.png -o abc.text

–》 同理 通过命令行将text 转换为png图片 -D 表示进行解码的意思,不加-D,图片则不能打开。

base64 abc.text -o re.png -D

#pragma mark -  base64 编码方式
/**
 传入一个子串,返回base64 编码
 加密都是对二进制进行加密
 @param string <#string description#>
 */
- (NSString *)base64Encode:(NSString *)string
{
    // 1 将子串转为 二进制数据
    NSData *data = [string dataUsingEncoding:NSUTF8StringEncoding];
    // 2 返回编码的子串
    return  [data base64EncodedStringWithOptions:0];
}


#pragma mark -  base64 解码方式
- (NSString *)base64Decode:(NSString *)string
{
    // 1 将字符串转换为data
    NSData *data = [[NSData alloc]initWithBase64EncodedString:string options:0];
    // 2 返回解码后的字符串
    return  [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
}

二 MD5

关于MD5 加密,是不能反编译的,但是可以破解的。

MD5 的进一步安全一点的措施,就是进行加盐,将盐写在APP 内部,就会相对安全一点,

但是如果盐被拿到,同样会不安全的。

#import "NSString+Hash.h"

即可使用



 #pragma mark - 进行加盐处理 该字符串足够长 足够复制

static NSString *salt = @"dasdasdasdhabdabsdjknadnaslmlmsdmdklamskdmkwkakdmdamd";



- (void)login{

    // 1 密码账号

    NSString *userID = @"yskysk";

    NSString *pwd = @"123456";

    // MARK: md5 加盐

    // 2 进行MD5 加盐

    // 盐是固定的,是写死在程序内的,一旦盐泄露,同样会造成不安全

    NSString *password = [pwd stringByAppendingString:salt].md5String;

    NSLog(@"加盐后的密码:%@",password);

    

    

    if ([self isSuccess:userID withPwd:password]) {

        // 登陆成功

        

        NSLog(@"登陆成功");

    }else{

        // 登录失败

        NSLog(@"登陆失败");

    }

    

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值