MD5加密的數據泄露出去依然可以被破解(反查彩虹表)。
兩次MD5
用戶端:PASS = MD5(明文+固定salt)HTTP是明文傳輸的, 如果客戶端不做加密處理, 一旦被截包,密碼泄露
服務端:PASS = MD5(用戶輸入+隨機salt)防止數據庫被盜, 彩虹表 反查得到密碼
MD5:實際上是把 一個字符串算出一個16位的Byte數組。 而常見的MD5String是將Byte數組給轉換成對應的16進制表示(一個Byte(8bit)對應2個16進制數),所以String有32位。
MD5加密的數據泄露出去依然可以被破解(反查彩虹表)。
兩次MD5
用戶端:PASS = MD5(明文+固定salt)HTTP是明文傳輸的, 如果客戶端不做加密處理, 一旦被截包,密碼泄露
服務端:PASS = MD5(用戶輸入+隨機salt)防止數據庫被盜, 彩虹表 反查得到密碼
MD5:實際上是把 一個字符串算出一個16位的Byte數組。 而常見的MD5String是將Byte數組給轉換成對應的16進制表示(一個Byte(8bit)對應2個16進制數),所以String有32位。