未经博主允许,禁止转发,以下代码仅供参考
//以下方法为简版:可以被破解md5在线解密破解
- (NSString*) md5Str{
constchar*myPassword = [selfUTF8String];
// 0 - 255--无符号16位
unsigned char md5c[16];
//参数一:密码,参数二:求参数一得到长度 参数三:返回一个16位的数组
CC_MD5(myPassword, (CC_LONG)strlen(myPassword), md5c);
//任何一个0-255之间的数最多用2位16进制
// 1111 1111ff101
NSMutableString*md5Str = [NSMutableStringstring];
for(inti =0; i <16; i++){
[md5StrappendFormat:@"%02x",md5c[i] ];
}
returnmd5Str;
}
//密码加强版,让解密人怀疑人生,简单的加条异或对比就行,相同为0,不同为1
- (NSString*) md5StrXor{
constchar*myPassword = [selfUTF8String];
// 0 - 255
unsignedcharmd5c[16];
CC_MD5(myPassword, (CC_LONG)strlen(myPassword), md5c);
//任何一个0-255之间的数最多用2位16进制
// 1111 1111ff101
NSMutableString*md5Str = [NSMutableStringstring];
[md5StrappendFormat:@"%02x",md5c[0]];
for(inti =1; i <16; i++){
[md5StrappendFormat:@"%02x",md5c[i] ^ md5c[0]];
}
returnmd5Str;
}