java中的MD5工具类
Posted 阿拉的梦想
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的MD5工具类相关的知识,希望对你有一定的参考价值。
简介:MD5算法. MD5算法是典型的消息摘要算法,它是由MD4,MD3和MD2算法演变而来。. 无论是哪一种MD算法,其原理都是接受一个任意长度的消息并产生一个128位的消息摘要。. 如果把得到的消息摘要转换成十六进制字符串,则会得到一个32字节长度的字符串,我们平常见到的大部分MD数字指纹就是一个长度为32的十六进制字符串。
MD5工具类
/**
* MD5加密工具类
*
*/
public class MyMD5Util {
//盐,用于混交md5
private static final String slat = "this is my salt";
/**
* 1.java原生用法
*
* @param dataStr
* @return
*/
public static String encrypt(String dataStr) {
try {
dataStr = dataStr + slat;
MessageDigest m = MessageDigest.getInstance("MD5");
m.update(dataStr.getBytes(StandardCharsets.UTF_8));
byte[] s = m.digest();
StringBuilder result = new StringBuilder();
for (byte b : s) {
result.append(Integer.toHexString((0x000000FF & b) | 0xFFFFFF00).substring(6));
}
return result.toString();
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
/**
* 2.spring提供的工具类用法
* 生成md5
*
* @return
*/
public static String getMD5(String str) {
String base = str + slat;
String md5 = DigestUtils.md5DigestAsHex(base.getBytes());
return md5;
}
}
以上是关于java中的MD5工具类的主要内容,如果未能解决你的问题,请参考以下文章