- 方案一:直接 MD5 (不够安全)
pwd = pwd.md5String;
- 方案二: MD5 + key(key可以从服务器获得,仍然不够安全)
pwd = [pwd stringByAppendingString:key].md5String;
- 方案三: 多次MD5
NSString *password = [str md5String];
password = [password md5String];
- 方案四 - 先MD5,后有规律的乱序
/**
* 先加密, 后乱序
*/
- (NSString *)digest4:(NSString *)str{
NSString * password = [str md5String];
// 注册: 123 ---- 2CB962AC59075B964B07152D234B7020
// 登录: 123 --- 202CB962AC59075B964B07152D234B70
NSString *header = [password substringToIndex:2];
NSString *footer = [password substringFromIndex:2];
password = [footer stringByAppendingString:header];
return password;
}
终端命令:
# 得到文件的MD5值
$ md5 文件名
# 得到字符串的MD5值
md5 -s "string"