1. 程式人生 > >AES,SHA1,DES,RSA,MD5區別

AES,SHA1,DES,RSA,MD5區別

AES:更快,相容裝置,安全級別高;

SHA1:公鑰後處理回傳

DES:本地資料,安全級別低

RSA:非對稱加密,有公鑰和私鑰

MD5:防篡改

相關:

公開金鑰加密英語public-key cryptography,又譯為公開金鑰加密),也稱為非對稱加密(asymmetric cryptography),一種密碼學演算法型別,在這種密碼學方法中,需要一對金鑰,一個是私人金鑰,另一個則是公開金鑰。這兩個金鑰是數學相關,用某使用者金鑰加密後所得的資訊,只能用該使用者的解密金鑰才能解密。如果知道了其中一個,並不能計算出另外一個。因此如果公開了一對金鑰中的一個,並不會危害到另外一個的祕密性質。稱公開的金鑰為公鑰;不公開的金鑰為私鑰。


DES現在已經不是一種安全的加密方法,主要因為它使用的56位金鑰過短。1999年1月,distributed.net電子前哨基金會合作,在22小時15分鐘內即公開破解了一個DES金鑰。也有一些分析報告提出了該演算法的理論上的弱點,雖然在實際中難以應用。為了提供實用所需的安全性,可以使用DES的派生演算法3DES來進行加密,雖然3DES也存在理論上的攻擊方法。在2001年,DES作為一個標準已經被高階加密標準(AES)所取代。另外,DES已經不再作為國家標準科技協會(前國家標準局)的一個標準。

高階加密標準英語Advanced Encryption Standard縮寫AES),在

密碼學中又稱Rijndael加密法,是美國聯邦政府採用的一種區塊加密標準。這個標準用來替代原先的DES,已經被多方分析且廣為全世界所使用。經過五年的甄選流程,高階加密標準由美國國家標準與技術研究院(NIST)於2001年11月26日釋出於FIPS PUB 197,並在2002年5月26日成為有效的標準。2006年,高階加密標準已然成為對稱金鑰加密中最流行的演算法之一。

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)轉換成報文摘要(不同的明文對應不同的報文摘要),報文摘要加密後與明文一起傳送給接受方,接受方將接受的明文產生新的報文摘要與傳送方的發來報文摘要解密比較,比較結果一致表示明文未被改動,如果不一致表示明文已被篡改。