/** * 获得MD5加密密码的方法 */ public static String getMD5ofStr(String origString) { String origMD5; try { MessageDigest md5 = MessageDigest.getInstance("MD5"); byte[] result = md5.digest(origString.getBytes()); origMD5 = byteArray2HexStr(result); return origMD5.toLowerCase(); } catch (Exception e) { e.printStackTrace(); } return null; }
/** * 处理字节数组得到MD5密码的方法 */ private static String byteArray2HexStr(byte[] bs) { StringBuilder sb = new StringBuilder(); for (byte b : bs) { sb.append(byte2HexStr(b)); } return sb.toString(); }
/** * 字节标准移位转十六进制方法 */ private static String byte2HexStr(byte b) { String hexStr; int n = b; if (n < 0) { // 若需要自定义加密,请修改这个移位算法即可 n = b & 0x7F + 128; } hexStr = Integer.toHexString(n / 16) + Integer.toHexString(n % 16); return hexStr.toUpperCase(); }