Java数字摘要工具类
public static class DigestUtils {
/**
* 把二进制数据转化为十六进制字符串
* @param text
* @return
*/
public static String bin2hex(byte[] data) {
return String.format("%0" + (data.length * 2) + "X",
new BigInteger(1, data));
}
/**
* 把字符串转化为SHA256数字摘要的二进制数据
* @param text
* @return
*/
public static byte[] getSHA256Digest(String text) {
MessageDigest digest = null;
try {
digest = MessageDigest.getInstance("SHA-256");
} catch (NoSuchAlgorithmException e1) {
e1.printStackTrace();
}
digest.reset();
return digest.digest(text.getBytes());
}
/**
* 把字符串转化为SHA256数字摘要字符串
* @param text
* @return
*/
public static String toSHA256(String text) {
return (bin2hex(getSHA256Digest(text)));
}
}