1. 程式人生 > >淺析DES與AES、RSA三種典型加密算法的比較

淺析DES與AES、RSA三種典型加密算法的比較

問題 通訊 無法 尋找 rsa算法 結合 rsa加密 軟件技術 -c

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三種典型加密算法的比較