MD5

MD5信息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。

原生方式

import java.security.MessageDigest;

/**
 * MD5加密工具类
 *
 */
public class MD5Util {
	/**
	 * 生成md5
	 * String dataStr //被加密字符串
	 * String slat //盐,用于混交md5
	 * 
	 */
	public static String encrypt(String dataStr,String slat) {
		try {
			dataStr = dataStr + slat;
			MessageDigest m = MessageDigest.getInstance("MD5");
			m.update(dataStr.getBytes("UTF8"));
			byte s[] = m.digest();
			String result = "";
			for (int i = 0; i < s.length; i++) {
				result += Integer.toHexString((0x000000FF & s[i]) | 0xFFFFFF00).substring(6);
			}
			return result;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "";
	}

}

spring工具类方式

import org.springframework.util.DigestUtils;

/**
 * MD5加密工具类
 *
 */
public class MD5Util {
	/**
	 * 生成md5
	 * String dataStr //被加密字符串
	 * String slat //盐,用于混交md5
	 * 
	 */
	public static String encrypt(String str,String slat) {
		String base = str + slat;
		String md5 = DigestUtils.md5DigestAsHex(base.getBytes());
		return md5;
	}

}