我們已經(jīng)看到了現(xiàn)代對稱加密算法如何將明文數(shù)據(jù)塊轉(zhuǎn)換為密文的一般概念。當然,我們要加密的明文很少小于這些算法處理的 64 位或 128 位塊。這些算法如何將大于塊大小的輸入處理成密文的不同可能方法稱為操作模式。 設計人員選擇的操作模式具有嚴重的安全隱患。我們將從最“明顯”的方法開始:簡單地將各個密文塊連接在一起。
電子密碼本 (ECB) 模式
到目前為止,加密長度超過加密算法塊大小的明文的最自然方法是逐塊加密明文,并連接生成的密文塊:
不幸的是,這基本上總是一個不安全的設計選擇。
要了解原因,請檢查右側(cè)的圖像。左側(cè)是明文圖像,右側(cè)是使用 ECB 模式加密的圖像。顯然,即使圖像已被加密,也會顯示有關明文的相當多的信息。這是因為 ECB 模式將相同的明文塊加密為相同的密文塊。
計數(shù)器 (CTR) 模式
計數(shù)器操作模式與 ECB 模式非常相似,保留了其所有不錯的屬性(例如,您可以并行化加密和解密),但提供更好的安全屬性。
有趣的是,明文根本沒有輸入到分組密碼中!相反,計數(shù)器值將輸入到塊密碼,并隨著每次連續(xù)調(diào)用而遞增。明文本身通過獨占-OR與分組密碼的輸出相結(jié)合,以產(chǎn)生最終的密文塊。
回到圖像示例,我們可以看到,使用計數(shù)器模式加密明文不再產(chǎn)生明顯泄漏信息的密文。
還有許多其他操作模式,每種模式都有適合不同用例的優(yōu)點和缺點。永遠記住,選擇操作模式是一個具有重要安全影響的關鍵決定。
非對稱加密算法
在我們之前的例子中,Alice 和 Bob 都共享同一個密鑰——他們在系統(tǒng)中的信息是對稱的。相比之下,非對稱加密算法使用兩個數(shù)學上相關的密鑰:只有所有者知道的私鑰,以及所有者向所有人透露的相應公鑰。要加密純文本消息,請使用其公鑰。只有所有者才能解密密文,因為只有他們擁有與其公鑰相對應的私鑰。
與依賴于非線性替換盒的對稱加密算法不同,RSA 和橢圓曲線加密 (ECC) 等非對稱加密算法的安全性依賴于數(shù)論假設。非對稱加密算法往往比對稱加密算法的計算成本高得多,這使得它們不適合加密大量數(shù)據(jù)。然而,非對稱算法簡化了密鑰分發(fā)問題,因為在第一次與新人通信時,共享公鑰比共享敏感的私鑰容易得多。
為了結(jié)合兩者的優(yōu)勢,采取了混合方法。為了讓 Bob 與 Alice 通信,他使用她的公鑰進行非對稱加密算法,以加密對稱加密算法的共享密鑰,并將其發(fā)送給她。盡管非對稱加密算法的計算成本更高,但只需調(diào)用一次即可加密短值:共享密鑰。在通信之前安全地共享對稱密鑰是不切實際的(想象一下必須安全地將密鑰傳輸?shù)侥L問的每個網(wǎng)站!),因此調(diào)用非對稱加密算法可以解決密鑰分發(fā)問題。Alice 收到加密消息后,她使用非對稱加密算法的相應私鑰來解密共享密鑰。現(xiàn)在 Alice 和 Bob 都有相同的共享密鑰,他們可以切換到更快的對稱加密算法。這使他們能夠快速加密和交換大量數(shù)據(jù),因為對稱加密算法比非對稱加密算法快大約兩個數(shù)量級。
所需資源
由于對稱和非對稱加密算法依賴于不同類型的難題來提供安全性,因此它們?nèi)菀资艿结槍ζ涞讓訑?shù)學框架的不同攻擊。因此,它們需要不同的密鑰長度來提供相同的等效安全級別。此表總結(jié)了各種構(gòu)造所需的密鑰位數(shù),以提供等效的暴力安全強度。請注意,DES 無法提供最低 128 位暴力破解安全性,因此不應使用它。
結(jié)論
與歷史加密算法不同,現(xiàn)代加密算法是圍繞經(jīng)過充分研究的難題構(gòu)建的,這些問題只有在了解私鑰的情況下才容易反轉(zhuǎn)。重要的是,算法的設計始終是公開的,只有私鑰是保密的。盡管 DES 在推出時被認為是安全的,但它的 56 位密鑰在今天是不安全的,應該避免使用 AES 及其最小的 128 位密鑰長度。將密文塊鏈接在一起的對稱加密算法的操作模式在構(gòu)造的安全性中起著至關重要的作用,絕不應使用簡單的電子密碼本 (ECB) 模式。非對稱加密算法通過消除事先私下共享密鑰的需要來幫助簡化密鑰分發(fā)問題:任何人都可以使用個人的公鑰加密消息,因為只有個人才能使用只有他們自己知道的相應私鑰解密消息。盡管非對稱加密算法的計算成本更高,但它們可以短暫地用于安全地交換共享密鑰,以換取更快的對稱加密算法。最后,由于對稱和非對稱加密算法的安全性基礎存在不同的數(shù)學問題,為了提供等效的安全性,它們必須使用不同的密鑰長度。
審核編輯:郭婷
-
半導體
+關注
關注
335文章
28865瀏覽量
237083 -
計數(shù)器
+關注
關注
32文章
2291瀏覽量
96355
發(fā)布評論請先 登錄
SPIM 以 ICP 或 ISP 的加密操作說明
STM32操作加密芯片源代碼 精選資料推薦
啟動Debug加密后可否更新Adkp的值?應該如何操作?
用ICP Tool設置脫機燒寫的設定,使能對脫機模式數(shù)據(jù)加密和配置位的安全加密有什么差別?
透明加密軟件的特點及原理
什么是加密貨幣經(jīng)濟服務模式
DES加密原理和作用是什么
Akira解密工具的加密模式

評論