亲测可以。
1.用jdk1.6版本对接jdk1.8版本的md5加密算法
public static String getMD5_8(String str) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] bytesOfMessage = str.getBytes("UTF-8"); //
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] theDigest = md5.digest(bytesOfMessage);
return new BigInteger(1, theDigest).toString(16);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
2.适用于jdk1.6的java的MD5加密算法
public static String getMD5_6(String str) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] bytesOfMessage = str.getBytes("GBK"); //
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] theDigest = md5.digest(bytesOfMessage);
return new BigInteger(1, theDigest).toString(16);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
3.适用于jdk1.8的加密算法
3.1原生java代码
public static String getMD5_8(String str) {
try {
MessageDigest md = MessageDigest.getInstance("MD5");
byte[] bytesOfMessage = str.getBytes("UTF-8"); //
MessageDigest md5 = MessageDigest.getInstance("MD5");
byte[] theDigest = md5.digest(bytesOfMessage);
return new BigInteger(1, theDigest).toString(16);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
3.2利用hutool包下的api
import cn.hutool.crypto.digest.DigestUtil;
DigestUtil.md5Hex(str);