12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package com.jiayue.client.util;
- import java.security.MessageDigest;
- /**
- * MD5 工具类-建议添油加醋的对入参 str 改造一下
- *
- * @author Administrator
- */
- public class MD5Util {
- //工具类不允许被实例化
- private MD5Util() throws Exception {
- throw new Exception("异常");
- }
- public static String encode(String str) {
- MessageDigest md5;
- try {
- md5 = MessageDigest.getInstance("MD5");
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- char[] charArray = str.toCharArray();
- byte[] byteArray = new byte[charArray.length];
- for (int i = 0; i < charArray.length; i++) {
- byteArray[i] = (byte) charArray[i];
- }
- byte[] md5Bytes = md5.digest(byteArray);
- StringBuilder hexValue = new StringBuilder();
- for (byte md5Byte : md5Bytes) {
- int val = ((int) md5Byte) & 0xff;
- if (val < 16) {
- hexValue.append("0");
- }
- hexValue.append(Integer.toHexString(val));
- }
- return hexValue.toString();
- }
- /**
- * 字符串的MD5
- *
- * @param plainText 内容
- * @param encryption 加密
- * @return 加密结果
- */
- public static String encode(String plainText, String encryption) {
- try {
- MessageDigest md = MessageDigest.getInstance(encryption);
- md.update(plainText.getBytes());
- byte[] b = md.digest();
- int i;
- StringBuilder buf = new StringBuilder();
- for (byte value : b) {
- i = value;
- if (i < 0)
- i += 256;
- if (i < 16)
- buf.append("0");
- buf.append(Integer.toHexString(i));
- }
- return buf.toString();
- } catch (Exception e) {
- e.printStackTrace();
- }
- return "";
- }
- }
|