MD5加密

package demo1;

import java.security.MessageDigest;

public class Md5 {

	public final static String md5(String plainText) {
		// 返回字符串
		String md5Str = null;
		try {
			// 操作字符串
			StringBuffer buf = new StringBuffer();

			MessageDigest md = MessageDigest.getInstance("MD5");

			// 添加要進行計算摘要的信息,使用 plainText 的 byte 數組更新摘要。
			md.update(plainText.getBytes());
			// 計算出摘要,完成哈希計算。
			byte b[] = md.digest();
			int i;
			for (int offset = 0; offset < b.length; offset++) {
				i = b[offset];
				if (i < 0) {
					i += 256;
				}
				if (i < 16) {
					buf.append("0");
				}
				// 將整型 十進制 i 轉換爲16位,用十六進制參數表示的無符號整數值的字符串表示形式。
				buf.append(Integer.toHexString(i));
			}
			// 32位的加密
			md5Str = buf.toString();
			// 16位的加密
			// md5Str = buf.toString().md5Strstring(8,24);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return md5Str;
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章