01對稱加密算法
對稱密碼體制,又稱為單密鑰密碼機制,其基本特征為加密密鑰和解密密鑰相同,模型如下:
這種方式,攻擊者可以通過不安全的公開通信通道獲取密文,但無法接觸到明文或者密鑰;如果該攻擊者知道加密算法和解密算法,且只對當(dāng)前獲取的密文感興趣,可以產(chǎn)生一個明文的估計值來恢復(fù)明文;如果對未來消息感興趣,可以來產(chǎn)生一個密鑰來恢復(fù)密鑰。
對稱加密算法是基于分組密碼機制產(chǎn)生,將一組明文劃分為m長度的n組明文,分別使用密鑰K=(k0,....,kx)進行加密或者解密,m長度通常為64、128、256、512。
02AES加密算法工作模式
分組密碼算法是提供數(shù)據(jù)安全的一個基本固件,典型的如DES(Data Encryption Standard)以64位為一組,AES(Advanced Encryption Standard)以128位(舉例)為一個分組;但實際上保密傳輸?shù)南⒉灰欢▌偤檬且粋€分組,根據(jù)國標(biāo)GB/T 17964-2008《信息安全技術(shù) 分組密碼算法的工作模式》,為了各種應(yīng)用能使用這些基本固件,因此有7種常用的工作模式;下面來解釋一下:
2.1 ECB(Electronic Code Book Mode)
ECB,叫做電子密碼本模式,例如AES128-ECB這種模式下,明文以128bit為一組,每次被處理128bit,每個明文都用同一個密鑰加密;
解密過程使用同樣的密鑰進行解密。
這種模式操作簡單,不同分組可以并行處理;但是明文中重復(fù)的內(nèi)容同樣也會在密文中體現(xiàn)出來,因此對于長報文可能不是很安全。
2.2 CBC(Cipher Block Chaining Mode)
CBC,密碼分組鏈模式;加密函數(shù)的輸入是當(dāng)前明文分組和前一個密文分組的異或,對每個分組處理時也使用相同的密鑰,如下
這種模式下,一個消息中的兩個相同明文組會被加密成不同的密文,這樣就避免了ECB出現(xiàn)的重復(fù)密文的問題。在最初加密時,需要使用初始向量(Initial Vector),這個IV需要發(fā)送方和接收方都知道,不用加密,但必須保證該IV的完整性。
該種模式不能并行處理,因為當(dāng)前明文需要和上一組密文進行異或處理。
2.3 CTR(ConterMode)
計數(shù)器模式使用與明文分組長度相同的計數(shù)器長度,計數(shù)器從某一初值開始,按某種算法遞增,計數(shù)器值經(jīng)過加密算法得到的結(jié)果再和明文進行異或,這樣就可以得到當(dāng)前明文組的密文。
可以看到,計數(shù)器模式下的加密和解密相對獨立,且已知加密函數(shù),和計數(shù)器值,就可以通過異或的方式得到明文,不需要解密函數(shù)。實現(xiàn)起來簡單易懂。
2.4 OFB(Output Feedback Mode)
輸出反饋模式,該模式和CBC有點相像,但是區(qū)別在于OFB是將IV去進行加密后得到一個輸出OBi 與明文塊進行異或,同時OBi作為下一個加密對象的IV。如下圖:
2.5 CFB(Chiper Feedback Mode)
密碼反饋模式,與輸出反饋模式結(jié)構(gòu)類似。但是這種模式的密文是按bit來處理的,如下:
在該模式下,首先IV作為第一個block進行加密,生成第一個輸出block;該block的s bit高位與明文的s bit高位作異或得到密文塊,b(block size)-s不參與加密;b-s低位的數(shù)據(jù) | 該密文塊作為下一個block的輸入。
2.6 XTS(XEXTweakableBlockCipherwithCiphertextStealing)
XTS引入了tweak key和AES key互相配合,每個明文塊用同樣的AES key但tweak key不相同。比如設(shè)置與區(qū)塊的index成對應(yīng)關(guān)系,這樣各個塊的加解密就相互獨立了,如下:
相當(dāng)于就在ECB上形式上增加了一層加擾系數(shù)。
2.7 GCM(Galois/Counter Mode)
它在 CTR 加密的基礎(chǔ)上增加 GMAC 的特性,解決了 CTR 不能對加密消息進行完整性校驗的問題。
03總結(jié)
上面描述了對稱加密算法的工作模式,那么我們在設(shè)計時主要考慮以下幾個方面:
(1)抵抗攻擊的能力、密文的隨機性、安全防護等級
(2)調(diào)用分組加密的次數(shù)、并行處理能力、初始化向量時間等
(3)明文分組數(shù)量可配、消息長度等要求
審核編輯:湯梓紅
-
算法
+關(guān)注
關(guān)注
23文章
4673瀏覽量
94189 -
計數(shù)器
+關(guān)注
關(guān)注
32文章
2279瀏覽量
95751 -
AES
+關(guān)注
關(guān)注
0文章
105瀏覽量
33416 -
加密算法
+關(guān)注
關(guān)注
0文章
216瀏覽量
25712
原文標(biāo)題:汽車信息安全--對稱加密算法工作模式簡析
文章出處:【微信號:談思實驗室,微信公眾號:談思實驗室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
軟件加密算法都有哪些,這些算法在哪些方面得到了應(yīng)用
采用對稱加密算法的機制 GB1584.2-1997
關(guān)于應(yīng)用到游戲中的加密算法的用途及缺陷
常見公鑰加密算法有哪些
java實現(xiàn)非對稱加密算法的過程

Go常用的加密算法詳細(xì)解讀
嵌入式的RSA非對稱加密算法

評論