仅记录所遇到并使用的工具方法。
1.md5加密
1 /** 2 * 对传入的字符串数据进行MD5加密 3 * @param source 字符串数据 4 * @param code 字符编码 5 * @return 加密以后的数据 6 */ 7 public static String encrypt(String source, String code) { 8 MessageDigest md = null; 9 byte[] bt = null;10 try {11 bt = source.getBytes(code);12 md = MessageDigest.getInstance("MD5");13 md.update(bt);14 return BytesHexTransform.bytesToHexString(md.digest()); 15 } catch (NoSuchAlgorithmException e) {16 logger.error("非法摘要算法", e);17 throw new RuntimeException(e); 18 }catch (UnsupportedEncodingException e1) {19 // TODO Auto-generated catch block20 e1.printStackTrace();21 }22 return null;23 }
1 /** 2 * 把字节数组转换成16进制字符串 3 * @param bArray 传入的二进制数组 4 * @return 16进制的字符串 5 */ 6 public static String bytesToHexString(byte[] bArray) { 7 StringBuffer sb = new StringBuffer(bArray.length); 8 String sTemp; 9 for (int i = 0; i < bArray.length; i++) {10 sTemp = Integer.toHexString(0xFF & bArray[i]);11 if (sTemp.length() < 2)12 sb.append(0);13 sb.append(sTemp.toUpperCase());14 }15 return sb.toString();16 }
未完待续。。。