淺析DES與AES、RSA三種典型加密算法的比較
DES與AES的比較
自DES 算法公諸於世以來,學術界圍繞它的安全性等方面進行了研究並展開了激烈的爭論。在技術上,對DES的批評主要集中在以下幾個方面:
1、作為分組密碼,DES 的加密單位僅有64 位二進制,這對於數據傳輸來說太小,因為每個分組僅含8 個字符,而且其中某些位還要用於奇偶校驗或其他通訊開銷。
2、DES 的密鑰的位數太短,只有56 比特,而且各次叠代中使用的密鑰是遞推產生的,這種相關必然降低密碼體制的安全性,在現有技術下用窮舉法尋找密鑰已趨於可行。
3、DES 不能對抗差分和線性密碼分析。
4、DES 用戶實際使用的密鑰長度為56bit,理論上最大加密強度為256。DES 算法要提高加密強度(例如增加密鑰長度),則系統開銷呈指數增長。除采用提高硬件功能和增加並行處理功能外,從算法本身和軟件技術方面都無法提高DES 算法的加密強度。
相對DES算法來說,AES算法無疑解決了上述問題,主要表現在以下幾個方面:
1、運算速度快,在有反饋模式、無反饋模式的軟硬件中,Rijndael都表現出非常好的性能。
2、對內存的需求非常低,適合於受限環境。
3、Rijndael 是一個分組叠代密碼, 分組長度和密鑰長度設計靈活。
4、AES標準支持可變分組長度,分組長度可設定為32 比特的任意倍數,最小值為128 比特,最大值為256 比特。
5、AES的密鑰長度比DES大, 它也可設定為32 比特的任意倍數,最小值為
6、12 比特,最大值為256 比特,所以用窮舉法是不可能破解的。
7、AES算法的設計策略是WTS。WTS 是針對差分分析和線性分析提出的,可對抗差分密碼分析和線性密碼分析。
DES與RSA的比較
RSA算法的密鑰很長,具有較好的安全性,但加密的計算量很大,加密速度較慢限制了其應用範圍。為減少計算量,在傳送信息時,常采用傳統加密方法與公開密鑰加密方法相結合的方式,即信息采用改進的DES對話密鑰加密,然後使用RSA密鑰加密對話密鑰和信息摘要。對方收到信息後,用不同的密鑰解密並可核對信息摘要。
采用DES與RSA相結合的應用,使它們的優缺點正好互補,即DES加密速度快,適合加密較長的報文,可用其加密明文;RSA加密速度慢,安全性好,應用於DES 密鑰的加密,可解決DES 密鑰分配的問題。
目前這種RSA和DES結合的方法已成為EMAIL保密通信標準。
下面是三中算法各自例子的連接:
最簡單的DES加密算法實現
AES簡單加密解密的方法實現
RSA加密的方式和解密方式
淺析DES與AES、RSA三種典型加密算法的比較