MD5加密

为了不让别人看直接看到保存的密码等信息,通常密码先采用MD5加密后再保存。MD5加密不可逆的,网上破解MD5方法原理是,拿MD5加密后的数据去他们亿万级的数据库去匹配。要防止别人破解可以用加密后数据再MD5加密几次,像银行保存的密码信息至少加密十次以上。

转载请注明出处:http://shenshanlaoyuan.com/2016/06/10/Utils/MD5加密/

访问原文「MD5加密」获取最佳阅读体验并参与讨论

下图是某破解网站能破解的数据,也只能破解三次加密,而且还是收费,所以担心破解可以多加密几次。

MD5加密工具类:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class Md5Utils {
public static String md5(String str){
StringBuilder mess = new StringBuilder();
try {
//获取MD5加密器
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] bytes = str.getBytes();
byte[] digest = md.digest(bytes);
for (byte b : digest){
//把每个字节转成16进制数
int d = b & 0xff;// 0x000000ff
String hexString = Integer.toHexString(d);
if (hexString.length() == 1) {//字节的高4位为0
hexString = "0" + hexString;
}
mess.append(hexString);//把每个字节对应的2位十六进制数当成字符串拼接一起
}
} catch (NoSuchAlgorithmException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return mess + "";
}
}

深山老猿 wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!
如对你有帮助,请我喝杯咖啡吧!
显示 Gitment 评论