Java中MD5加密、解密工具类

package org.hzp.util;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.Arrays;

public class MyMD5Util {
	
	 private static final String HEX_NUMS_STR="0123456789ABCDEF";
	 private static final Integer SALT_LENGTH = 12;
	  
	 /** 
	 * 将16进制字符串转换成字节数组 
	 * @param hex 
	 * @return 
	 */
	 public static byte[] hexStringToByte(String hex) {
		 int len = (hex.length() / 2);
		 byte[] result = new byte[len];
		 char[] hexChars = hex.toCharArray();
		 for (int i = 0; i < len; i++) {
		 int pos = i * 2;
		 result[i] = (byte) (HEX_NUMS_STR.indexOf(hexChars[pos]) << 4
		 | HEX_NUMS_STR.indexOf(hexChars[pos + 1]));
		 }
		 return result;
	 }
package org.hzp.util; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.util.Arrays; public class MyMD5Util { private static final String HEX_NUMS_STR="0123456789ABCDEF"; private static final Integer SALT_LENGTH = 12; /** * 将16进制字符串转换成字节数组 * @param hex * @return */ public static byte[] hexStringToByte(String hex) { int len = (hex.length() / 2); byte[] result = new byte[len]; char[] hexChars = hex.toCharArray(); for (int i = 0; i < len; i++) { int pos = i * 2; result[i] = (byte) (HEX_NUMS_STR.indexOf(hexChars[pos]) << 4 | HEX_NUMS_STR.indexOf(hexChars[pos + 1])); } return result; }
package org.hzp.util; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.util.Arrays; public class MyMD5Util { private static final String HEX_NUMS_STR="0123456789ABCDEF"; private static final Integer SALT_LENGTH = 12; /** * 将16进制字符串转换成字节数组 * @param hex * @return */ public static byte[] hexStringToByte(String hex) { int len = (hex.length() / 2); byte[] result = new byte[len]; char[] hexChars = hex.toCharArray(); for (int i = 0; i < len; i++) { int pos = i * 2; result[i] = (byte) (HEX_NUMS_STR.indexOf(hexChars[pos]) << 4 | HEX_NUMS_STR.indexOf(hexChars[pos + 1])); } return result; }
经验分享 程序员 微信小程序 职场和发展