import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
/**
* @author joymufeng
*/
public class Md5 {
private static MessageDigest digester;
static {
try {
digester = MessageDigest.getInstance("MD5");
}catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
}
/**
* 將任意的字符串進行md5加密,并返回加密后的十六進制字符串。
* 需要注意紊搪,MessageDigest是非線程安全的,所以需要使用synchronized同步寺庄。
* @param str 待加密字符串
* @return 返回md5加密后的十六進制字符串
*/
public static String encrypt(String str) {
if (digester == null || str == null || str.length() == 0) {
return null;
}
synchronized (digester){
try {
digester.update(str.getBytes("UTF-8"));
String s1 = new BigInteger(1, digester.digest()).toString(16);
//補齊BigInteger省略的前置0
return new String(new char[32 - s1.length()]).replace("\0", "0") + s1;
} catch (Exception e) {
//一般不會有異常拋出, 該死的Java受檢異常力崇,導致丑陋的代碼
}
}
return null;
}
}
Java生成十六進制的MD5加密字符串
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來宪彩,“玉大人休讳,你說我怎么就攤上這事∧蚩祝” “怎么了俊柔?”我有些...
- 正文 為了忘掉前任留晚,我火速辦了婚禮,結果婚禮上告嘲,老公的妹妹穿的比我還像新娘错维。我一直安慰自己奖地,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布赋焕。 她就那樣靜靜地躺著参歹,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宏邮。 梳的紋絲不亂的頭發(fā)上泽示,一...
- 文/蒼蘭香墨 我猛地睜開眼郎汪,長吁一口氣:“原來是場噩夢啊……” “哼赤赊!你這毒婦竟也來了?” 一聲冷哼從身側響起煞赢,我...
- 正文 年R本政府宣布,位于F島的核電站牧挣,受9級特大地震影響刘急,放射性物質發(fā)生泄漏。R本人自食惡果不足惜浸踩,卻給世界環(huán)境...
- 文/蒙蒙 一叔汁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦据块、人聲如沸码邻。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽像屋。三九已至,卻和暖如春边篮,著一層夾襖步出監(jiān)牢的瞬間己莺,已是汗流浹背。 一陣腳步聲響...
推薦閱讀更多精彩內容
- 直接上代碼 -(NSString*)twoConvertSixteen:(NSString*)string{ NS...
- 解決問題@"FE010000000429C6"轉換為<FE010000 000429C6> ; 先初始化一個可變D...
- 爸暖璧,人家都說男人四十“一枝花”案怯,今天你都四十四歲了,是不是兩枝花了澎办?可我怎么沒看出來呢嘲碱,你看起來一點都不鮮艷,頭發(fā)...