AES:更快,兼容設備,安全級別高;php
SHA1:公鑰後處理回傳算法
DES:本地數據,安全級別低windows
RSA:非對稱加密,有公鑰和私鑰安全
MD5:防篡改網絡
相關:函數
公開密鑰加密(英語:public-key cryptography,又譯爲公開密鑰加密),也稱爲非對稱加密(asymmetric cryptography),一種密碼學算法類型,在這種密碼學方法中,須要一對密鑰,一個是私人密鑰,另外一個則是公開密鑰。這兩個密鑰是數學相關,用某用戶密鑰加密後所得的信息,只能用該用戶的解密密鑰才能解密。若是知道了其中一個,並不能計算出另一個。所以若是公開了一對密鑰中的一個,並不會危害到另一個的祕密性質。稱公開的密鑰爲公鑰;不公開的密鑰爲私鑰。
加密
DES如今已經不是一種安全的加密方法,主要由於它使用的56位密鑰太短。1999年1月,distributed.net與電子前哨基金會合做,在22小時15分鐘內即公開破解了一個DES密鑰。也有一些分析報告提出了該算法的理論上的弱點,雖然在實際中難以應用。爲了提供實用所需的安全性,可使用DES的派生算法3DES來進行加密,雖然3DES也存在理論上的攻擊方法。在2001年,DES做爲一個標準已經被高級加密標準(AES)所取代。另外,DES已經再也不做爲國家標準科技協會(前國家標準局)的一個標準。spa
高級加密標準(英語:Advanced Encryption Standard,縮寫:AES),在密碼學中又稱Rijndael加密法,是美國聯邦政府採用的一種區塊加密標準。這個標準用來替代原先的DES,已經被多方分析且廣爲全世界所使用。通過五年的甄選流程,高級加密標準由美國國家標準與技術研究院(NIST)於2001年11月26日發佈於FIPS PUB 197,並在2002年5月26日成爲有效的標準。2006年,高級加密標準已然成爲對稱密鑰加密中最流行的算法之一。
.net
MD5和SHA1是2種加密算法,用於計算出一段不可逆向計算的數值,以此來驗證該文件是否被修改的. 它能夠幫你驗證從網上下載下來的windows7安裝程序是否與發佈人發佈的東西徹底一致,也就是幫助你驗證這個程序有沒有通過他人(非發佈人)的修改。
aes/des加密速度快,適合大量數據,des容易破解,通常用3重des,後來又出現了更快更安全的aes rsa是公鑰加密,速度慢,只能處理少許數據,優勢是公鑰即便在不安全的網絡上公開,也能保證安全 常見狀況是雙方用rsa協商出一個密鑰後經過aes/3des給數據加密
SHA-1
在1993年,安全散列算法(SHA)由美國國家標準和技術協會(NIST)提出,並做爲聯邦信息處理標準(FIPS PUB 180)公佈;1995年又發佈了一個修訂版FIPS PUB 180-1,一般稱之爲SHA-1。SHA-1是基於MD4算法的,而且它的設計在很大程度上是模仿MD4的。如今已成爲公認的最安全的散列算法之一,並被普遍使用。
原理
SHA-1是一種數據加密算法,該算法的思想是接收一段明文,而後以一種不可逆的方式將它轉換成一段(一般更小)密文,也能夠簡單的理解爲取一串輸入碼(稱爲預映射或信息),並把它們轉化爲長度較短、位數固定的輸出序列即散列值(也稱爲信息摘要或信息認證代碼)的過程。
單向散列函數的安全性在於其產生散列值的操做過程具備較強的單向性。若是在輸入序列中嵌入密碼,那麼任何人在不知道密碼的狀況下都不能產生正確的散列值,從而保證了其安全性。SHA將輸入流按照每塊512位(64個字節)進行分塊,併產生20個字節的被稱爲信息認證代碼或信息摘要的輸出。
該算法輸入報文的最大長度不超過264位,產生的輸出是一個160位的報文摘要。輸入是按512 位的分組進行處理的。SHA-1是不可逆的、防衝突,並具備良好的雪崩效應。
經過散列算法可實現數字簽名實現,數字簽名的原理是將要傳送的明文經過一種函數運算(Hash)轉換成報文摘要(不一樣的明文對應不一樣的報文摘要),報文摘要加密後與明文一塊兒傳送給接受方,接受方將接受的明文產生新的報文摘要與發送方的發來報文摘要解密比較,比較結果一致表示明文未被改動,若是不一致表示明文已被篡改。設計