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