MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。
原生方式
import java.security.MessageDigest;
/**
* MD5加密工具类
*
*/
public class MD5Util {
/**
* 生成md5
* String dataStr //被加密字符串
* String slat //盐,用于混交md5
*
*/
public static String encrypt(String dataStr,String slat) {
try {
dataStr = dataStr + slat;
MessageDigest m = MessageDigest.getInstance("MD5");
m.update(dataStr.getBytes("UTF8"));
byte s[] = m.digest();
String result = "";
for (int i = 0; i < s.length; i++) {
result += Integer.toHexString((0x000000FF & s[i]) | 0xFFFFFF00).substring(6);
}
return result;
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
}
spring工具类方式
import org.springframework.util.DigestUtils;
/**
* MD5加密工具类
*
*/
public class MD5Util {
/**
* 生成md5
* String dataStr //被加密字符串
* String slat //盐,用于混交md5
*
*/
public static String encrypt(String str,String slat) {
String base = str + slat;
String md5 = DigestUtils.md5DigestAsHex(base.getBytes());
return md5;
}
}