對稱算法使用一個密鑰。給定一個明文和一個密鑰,加密產生密文,其長度和明文大致相同。解密時,使用讀密鑰與加密密鑰相同。
對稱加密舉例
常見的對稱加密算法有DES、3DES、AES、Blowfish、IDEA、RC5、RC6。
對稱加密優缺點
優點:與公鑰加密相比運算速度快。
缺點:不能作為身份驗證,密鑰發放困難
對稱算法主要有四種加密模式:電子密碼本模式、加密塊鏈模式、加密反饋模式、輸出反饋模式。
對稱加密的四種工作模式
1、電子密碼本模式 Electronic Code Book(ECB)
這種模式是最早采用和最簡單的模式,它將加密的數據分成若干組,每組的大小跟加密密鑰長度相同,然后每組都用相同的密鑰進行加密。
其缺點是:電子編碼薄模式用一個密鑰加密消息的所有塊,如果原消息中重復明文塊,則加密消息中的相應密文塊也會重復,因此,電子編碼薄模式適于加密小消息。
要點
數據分組,每組長度與密鑰長度相同
每組分別加密
適用加密小消息
優點
簡單;
有利于并行計算;
誤差不會被傳送;
缺點
不能隱藏明文的模式;
可能對明文進行主動攻擊;
2、加密塊鏈模式 Cipher Block Chaining(CBC)
CBC 模式的加密首先也是將明文分成固定長度的塊,然后將前面一個加密塊輸出的密文與下一個要加密的明文塊進行異或操作,將計算結果再用密鑰進行加密得到密文。第一明文塊加密的時候,因為前面沒有加密的密文,所以需要一個初始化向量。跟ECB 方式不一樣,通過連接關系,使得密文跟明文不再是一一對應的關系,破解起來更困難,而且克服了只要簡單調換密文塊可能達到目的的攻擊。
要點
數據分組,長度與密鑰相同
長度一樣的初始化向量
初始化向量與密文抑或之后,再加密,結果與下一個數據塊抑或再加密。以此類推。
特點是安全性更好
優點
不容易主動攻擊;
安全性好于ECB;
適合傳輸長度長的報文;
是SSL、IPSec的標準。
缺點
不利于并行計算;
誤差傳遞;
需要初始化向量IV
3、加密反饋模式 Cipher Feedback Mode(CFB)
面向字符的應用程序的加密要使用流加密法,可以使用加密反饋模式。在此模式下,數據用更小的單元加密,如可以是 8 位,這個長度小于定義的塊長(通常是 64 位)。
其加密步驟是:
使用 64 位的初始化向量。初始化向量放在移位寄存器中,在第一步加密,產生相應的 64 位初始化密文;
始化向量最左邊的 8 位與明文前 8 位進行異或運算,產生密文第一部分(假設為 c),然后將 c 傳輸到接收方;
向量的位(即初始化向量所在的移位寄存器內容)左移 8 位,使移位寄存器最右邊的 8 位為不可預測的數據,在其中填入 c 的內容;
第 1-3 步,直到加密所有的明文單元。解密過程相反。
要點
數據分組,數據塊更小(這里取8bit)
64位向量左移8位,再補上上輪所得的密文高8(c)位
密鑰和向量加密得k
k高8位與明文異或得到下一輪的密文
優點
隱藏了明文模式;
分組密碼轉化為流模式;
可以及時加密傳送小于分組的數據
缺點
不利于并行計算;
誤差傳送:一個明文單元損壞影響多個單元;
唯一的IV(初始化向量);
4、輸出反饋模式 Output Feedback Mode(OFB)
輸出反饋模式與 CFB 相似,惟一差別是,CFB 中密文填入加密過程下一階段,而在 OFB 中,初始化向量加密過程的輸入填入加密過程下一階段。
要點
與cfb相似,第二步有所差異。反饋傳輸的量變為k的高8位
數據分組,數據塊更小(這里取8bit)
64位向量左移8位,再補上上輪所得的k高8(c)位
密鑰和向量加密得k
k高8位與明文異或得到下一輪的密文
優點
隱藏了明文模式;
分組密碼轉化為流模式;
可以及時加密傳送小于分組的數據;
缺點
不利于并行計算;
對明文的主動攻擊是可能的;
誤差傳送:一個明文單元損壞影響多個單元;
-
加密
+關注
關注
0文章
306瀏覽量
24086 -
密鑰
+關注
關注
1文章
142瀏覽量
19926
原文標題:對稱加密的優缺點及其工作模式
文章出處:【微信號:Imgtec,微信公眾號:Imagination Tech】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
開關電源的工作模式有什么區別和優缺點?
binlog有什么意義/工作模式/優缺點
ADC的性能參數及優缺點
嵌入式系統中延時實現的方式及其優缺點
IO口的輸入有哪些分類及其優缺點呢
對稱加密是如何工作的
反激變換器DCM與CCM模式的優缺點

評論