MD5数据加密小记

特点

  • 不可逆
  • 同样的数据加密结果相同
  • 加点“盐”

代码实现

static NSString *token=@"&&hjsdfklsa1234";//加"令牌"令牌内容可自由发挥


----------


-(NSString *)MyMD5
{
    NSString *str=[NSString stringWithFormat:@"%@%@",self,token];//
    return [str MD5];
}
- (NSString *)MD5
{
    const char *cStr = [self 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;
}

调用

@property (nonatomic, strong) NSString *loginPwd;//声明加密口令


----------


- (NSString *)loginPwd //属性的get方法
{
    return [self.userPwd.text MyMD5];//对用户的密码进行加密
}
//对加密的密码调用使用self.loginPwd

小结

MD5加密同样的数据加密结果相同,数据加密的不安全,即可以在此网址http://cmd5.com/ 使用加密的字符串解密出原始数据,所以需要添加令牌保证密码安全

猜你喜欢

转载自blog.csdn.net/xiaobenyaoyangguang/article/details/52496216