使用java自帶加密演算法實現文字的md5加密演算法
阿新 • • 發佈:2018-12-25
本篇使用java自帶的MessageDigest實現對文字的md5加密演算法,具體程式碼如下:
/** *@Description: 將字串轉化為MD5 */ package cn.yicha.novel.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class ParseMD5 { /** * @param str * @return * @Date: 2013-9-6 * @Author: lulei * @Description: 32位小寫MD5 */ public static String parseStrToMd5L32(String str){ String reStr = null; try { MessageDigest md5 = MessageDigest.getInstance("MD5"); byte[] bytes = md5.digest(str.getBytes()); StringBuffer stringBuffer = new StringBuffer(); for (byte b : bytes){ int bt = b&0xff; if (bt < 16){ stringBuffer.append(0); } stringBuffer.append(Integer.toHexString(bt)); } reStr = stringBuffer.toString(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); } return reStr; } /** * @param str * @return * @Date: 2013-9-6 * @Author: lulei * @Description: 32位大寫MD5 */ public static String parseStrToMd5U32(String str){ String reStr = parseStrToMd5L32(str); if (reStr != null){ reStr = reStr.toUpperCase(); } return reStr; } /** * @param str * @return * @Date: 2013-9-6 * @Author: lulei * @Description: 16位小寫MD5 */ public static String parseStrToMd5U16(String str){ String reStr = parseStrToMd5L32(str); if (reStr != null){ reStr = reStr.toUpperCase().substring(8, 24); } return reStr; } /** * @param str * @return * @Date: 2013-9-6 * @Author: lulei * @Description: 16位大寫MD5 */ public static String parseStrToMd5L16(String str){ String reStr = parseStrToMd5L32(str); if (reStr != null){ reStr = reStr.substring(8, 24); } return reStr; } }