NO.1 MD5html
MD5加密是最經常使用的加密方法之一,是從一段字符串中經過相應特徵生成一段32位的數字字母混合碼。MD5主要特色是不可逆,相同數據的MD5值確定同樣,不一樣數據的MD5值不同(也不是絕對的,但基本是不能同樣的)。算法
MD5算法還具備如下性質: 一、壓縮性:任意長度的數據,算出的MD5值長度都是固定的。 二、容易計算:從原數據計算出MD5值很容易。 三、抗修改性:對原數據進行任何改動,哪怕只修改1個字節,所獲得的MD5值都有很大區別。 四、弱抗碰撞:已知原數據和其MD5值,想找到一個具備相同MD5值的數據(即僞造數據)是很是困難的。 五、強抗碰撞:想找到兩個不一樣的數據,使它們具備相同的MD5值,是很是困難的。 數據庫
MD5雖說是不可逆的 可是因爲有網站http://www.cmd5.com的存在,專門用來查詢MD5碼 因此有的簡單的MD5碼是能夠在這裏搜到源碼的。 爲了讓MD5碼更加安全涌現了不少其餘方法如加鹽。 鹽要足夠長足夠亂 獲得的MD5碼就很難查到。安全
NO.2 HMAC服務器
此加密方法須要先生成密鑰,而後再對密碼進行MD5和HMAC加密,數據庫中須要存放當時使用的密鑰和密碼加密後的密文 在用戶登錄時 再次對填入的密碼用密鑰進行加密 而且還要加上當前時間(精確到分鐘) 再次HMAC加密,服務器裏也會拿出之前存放的密文加上時間再次加密。因此就算黑客在中途截取了密碼的密文 也在能在1分鐘只能破譯纔能有效,大大增強了安全性。服務器爲了考慮到網絡的延遲通常會多算一種答案,如23分過來的密碼 他會把23分和22分的都算一下和用戶匹配只要對上一個就容許登錄。網絡
NO.3 BASE64(嚴格來講不是加密算法,是一種編碼格式)網站
採用Base64編碼具備不可讀性,即所編碼的數據不會被人用肉眼所直接看到。編碼
NO.4 對稱加密算法加密
優勢:算法公開、計算量小、加密速度快、加密效率高、可逆spa
缺點:雙方使用相同鑰匙,安全性得不到保證 現狀:對稱加密的速度比公鑰加密快不少,在不少場合都須要對稱加密, 相較於DES和3DES算法而言,AES算法有着更高的速度和資源使用效率,安全級別也較之更高了,被稱爲下一代加密標準。
NO.5 非對稱加密算法
RSA非對稱加密算法非對稱加密算法須要兩個密鑰:公開密鑰(publickey)和私有密鑰(privatekey) 公開密鑰與私有密鑰是一對,若是用公開密鑰對數據進行加密,只有用對應的私有密鑰才能解密;若是用私有密鑰對數據進行加密,那麼只有用對應的公開密鑰才能解密。
特色: 非對稱密碼體制的特色:算法強度複雜、安全性依賴於算法與密鑰可是因爲其算法複雜,而使得加密解密速度沒有對稱加密解密的速度快。對稱密碼體制中只有一種密鑰,而且是非公開的,若是要解密就得讓對方知道密鑰。因此保證其安全性就是保證密鑰的安全,而非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就能夠不須要像對稱密碼那樣傳輸對方的密鑰了。