實際開發過程中,密碼不會保存明文形式,容易被別人竊取。 MD5加密是不可逆的加密演算法,只能由明文轉換成密文。 但是有些人通過將明文對應的密文保存在資料庫中,進行查詢破解密文。為防止這種解密,根據許多對密碼進行多次加密,來保證密碼的安全。 ...
- 實際開發過程中,密碼不會保存明文形式,容易被別人竊取。
- MD5加密是不可逆的加密演算法,只能由明文轉換成密文。
- 但是有些人通過將明文對應的密文保存在資料庫中,進行查詢破解密文。為防止這種解密,根據許多對密碼進行多次加密,來保證密碼的安全。
//MD5加密不可逆 public class MD5Utils { /*對密碼進行加密 *參數:密碼 *返回:密文 */ public static String digest(String password) { try { MessageDigest digest = MessageDigest.getInstance("MD5"); byte[] bytes = digest.digest(password.getBytes()); StringBuilder sb = new StringBuilder(); for (byte b : bytes) { int c = b & 0xff; //負數轉換成正數 String result = Integer.toHexString(c); //把十進位的數轉換成十六進位的書 if(result.length()<2){ sb.append(0); //讓十六進位全部都是兩位數 } sb.append(result); } return sb.toString(); //返回加密後的密文 } catch (Exception ex) { ex.printStackTrace(); return ""; } } }