中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java語言描述MD5加密工具類實例代碼

發布時間:2020-09-12 21:41:14 來源:腳本之家 閱讀:120 作者:jopen 欄目:編程語言

編程中經常有用到MD5加密的情況,Java語言并沒有像PHP一樣提供原生的MD5加密字符串的函數,需要MD5加密的時候,往往需要自己寫。

代碼如下:

import java.security.MessageDigest;
public class MD5 {
	//公鹽
	private static final String PUBLIC_SALT = "demo" ;
	//十六進制下數字到字符的映射數組 
	private final static String[] hexDigits = {"0", "1", "2", "3", "4", 
	  "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f"};
	/**
  * 用戶密碼加密,鹽值為 :私鹽+公鹽
  * @param password 密碼
  * @param salt 私鹽
  * @return MD5加密字符串
  */
	public static String encryptPassword(String password,String salt){
		return encodeByMD5(PUBLIC_SALT+password+salt);
	}
	/**
  * md5加密算法
  * @param originString
  * @return 
  */
	private static String encodeByMD5(String originString){
		if (originString != null){
			try{
				//創建具有指定算法名稱的信息摘要 
				MessageDigest md = MessageDigest.getInstance("MD5");
				//使用指定的字節數組對摘要進行最后更新,然后完成摘要計算 
				byte[] results = md.digest(originString.getBytes());
				//將得到的字節數組變成字符串返回 
				String resultString = byteArrayToHexString(results);
				return resultString.toUpperCase();
			}
			catch(Exception ex){
				ex.printStackTrace();
			}
		}
		return null;
	}
	/** 
  * 轉換字節數組為十六進制字符串 
  * @param  字節數組 
  * @return 十六進制字符串 
  */
	private static String byteArrayToHexString(byte[] b){
		StringBuffer resultSb = new StringBuffer();
		for (int i = 0; i < b.length; i++){
			resultSb.append(byteToHexString(b[i]));
		}
		return resultSb.toString();
	}
	/** 將一個字節轉化成十六進制形式的字符串  */
	private static String byteToHexString(byte b){
		int n = b;
		if (n < 0) 
		   n = 256 + n;
		int d1 = n / 16;
		int d2 = n % 16;
		return hexDigits[d1] + hexDigits[d2];
	}
}

總結

以上就是本文關于Java語言描述MD5加密工具類實例代碼的全部內容,希望對大家有所幫助。感興趣的朋友可以繼續參閱本站其他Java相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

萨嘎县| 囊谦县| 简阳市| 定边县| 株洲市| 莆田市| 尖扎县| 安丘市| 嘉禾县| 梁河县| 同江市| 桑植县| 惠来县| 大理市| 丘北县| 内丘县| 邯郸市| 余姚市| 本溪市| 嘉荫县| 长治市| 张北县| 福贡县| 靖西县| 莱州市| 安庆市| 伽师县| 敦煌市| 马尔康县| 乡城县| 安化县| 闸北区| 铁岭县| 临潭县| 全椒县| 塘沽区| 枣阳市| 教育| 瑞金市| 伽师县| 额尔古纳市|