iOS明文加密方式——MD5和动态密码加密

MD5加密是通过一种运算生成一个固定的字符串,算法公开但是不可逆。任意两个不同的文件生成的文佳结果不同,但是生成的字符串长度是相同的。

此外,为避免加密过的字符串被破解我们有时候需要对发送的字符串进行加盐处理即在原有字符串的基础上再拼接一串字符串,然后在进行md5加密处理。

动态密码加密的原理类似上面提到的加盐处理,即每次在发送给服务器的时候在原有明文的基础上加上时间戳或者其他字符串以达到相同的明文每次发送的出去的字符串却都不相同的目的具体代码如下:

//   取出当前时间

    NSDate *date = [NSDate date];

    

    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];


    [formatter  setDateFormat:@"yyyy-MM-dd HH:mm"];

    

    NSString *timer = [formatter stringFromDate:date];

    

    

    NSLog(@"timer = %@",timer);

    

//    第一次加密的密码拼接时间

    password = [password stringByAppendingString:timer];


最后对拼接完的密码进行md5加密,或者其他加密方式,加密完成后再发送给服务器。

你可能感兴趣的:(md5,动态密码加密,md5,加密,ios)