1. 程式人生 > >MD5 加密

MD5 加密

digest turn () ins hex 轉換 auth nco cnblogs

數據加密:

  我們在做關於私人信息時,我們總要使用到加密,特別是密碼加密。如果我們的系統被黑客攻破了,他可以看見我們的全部信息。如果我們使用加密技術,即使他攻破了也無法拿到我們的正真信息,因為我們使用了加密技術,加密後的密碼是不可逆。

  我的加密代碼如下:

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * 這是實現 MD5 數據加密的算法
 * 
 * 
@author TongZhou * */ public class EncodeByMd5 { /** * * @param str 傳入的參數 * @return 返回加密後的字符串 * @throws NoSuchAlgorithmException * @throws UnsupportedEncodingException */ public static String EncoderByMd5(String string) throws NoSuchAlgorithmException, UnsupportedEncodingException {
char hexDigits[] = { ‘0‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘, ‘6‘, ‘7‘, ‘8‘, ‘9‘, ‘A‘, ‘B‘, ‘C‘, ‘D‘, ‘E‘, ‘F‘ }; try { byte[] btInput = string.getBytes(); // 獲得MD5摘要算法的 MessageDigest 對象 MessageDigest mdInst = MessageDigest.getInstance("MD5");
// 使用指定的字節更新摘要 mdInst.update(btInput); // 獲得密文 byte[] md = mdInst.digest(); // 把密文轉換成十六進制的字符串形式 int j = md.length; char str[] = new char[j * 2]; int k = 0; for (int i = 0; i < j; i++) { byte byte0 = md[i]; str[k++] = hexDigits[byte0 >>> 4 & 0xf]; str[k++] = hexDigits[byte0 & 0xf]; } return new String(str); } catch (Exception e) { return null; } } }

MD5 加密