MD5概念:
MD5是message-digest algorithm 5(信息-摘要算法)的缩写,被用户加密解密技术上,任何一个文件都会被转化成一个128bits的唯一码值(通常是16进制32位);如果文件或内容被修改,那么他的MD5编码也就改变;
MD5用途用法:
首先一点是,它是不可逆的,所以不存在解密;通常用户客户注册时将密码通过MD5加密存入数据库;每次登录时将输入的密码通过MD5转化在和数据库存的密码进行比较是否相符。
MD5 MODEL:
public String encryptToMD5(String info) {
try {
// 得到一个md5的消息摘要
MessageDigest alga = MessageDigest.getInstance("MD5");
// 添加要进行计算摘要的信息
alga.update(info.getBytes());
// 得到该摘要
digesta = alga.digest();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
// 将摘要转为字符串
String rs = byte2hex(digesta);
return rs;
}
/**
* 将二进制转化为16进制字符串
*
* @param b 二进制字节数组
* @return String
*/
public static String byte2hex(byte[] b) {
String hs = "";
String stmp = "";
for (int n = 0; n < b.length; n++) {
stmp = (java.lang.Integer.toHexString(b[n] & 0XFF));
if (stmp.length() == 1) {
hs = hs + "0" + stmp;
} else {
hs = hs + stmp;
}
}
return hs.toUpperCase();
}