對稱算法的四種加密模式

對稱算法使用一個密鑰。給定一個明文和一個密鑰,加密產生密文,其長度和明文大致相同。解密時,使用讀密鑰與加密密鑰相同。

對稱算法主要有四種加密模式:

(1) 電子密碼本模式 Electronic Code Book(ECB)

這種模式是最早採用和最簡單的模式,它將加密的數據分成若干組,每組的大小跟加密密鑰長度相同,然後每組都用相同的密鑰進行加密。

其缺點是:電子編碼薄模式用一個密鑰加密消息的所有塊,如果原消息中重複明文塊,則加密消息中的相應密文塊也會重複,因此,電子編碼薄模式適於加密小消息。

(2)加密塊鏈模式 Cipher Block Chaining(CBC)

CBC模式的加密首先也是將明文分成固定長度的塊,然後將前面一個加密塊輸出的密文與下一個要加密的明文塊進行異或操作,將計算結果再用密鑰進行加密得到密文。第一明文塊加密的時候,因爲前面沒有加密的密文,所以需要一個初始化向量。跟ECB方式不一樣,通過連接關係,使得密文跟明文不再是一一對應的關係,破解起來更困難,而且克服了只要簡單調換密文塊可能達到目的的攻擊。

(3)加密反饋模式 Cipher Feedback Mode(CFB)

面向字符的應用程序的加密要使用流加密法,可以使用加密反饋模式。在此模式下,數據用更小的單元加密,如可以是8位,這個長度小於定義的塊長(通常是64位)。其加密步驟是:

a) 使用64位的初始化向量。初始化向量放在移位寄存器中,在第一步加密,產生相應的64位初始化密文;
b) 始化向量最左邊的8位與明文前8位進行異或運算,產生密文第一部分(假設爲c),然後將c傳輸到接收方;

c) 向量的位(即初始化向量所在的移位寄存器內容)左移8位,使移位寄存器最右邊的8位爲不可預測的數據,在其中填入c的內容;
d) 第1-3步,直到加密所有的明文單元。

解密過程相反

4)輸出反饋模式 Output Feedback Mode(OFB)

輸出反饋模式與CFB相似,惟一差別是,CFB中密文填入加密過程下一階段,而在OFB中,初始化向量加密過程的輸入填入加密過程下一階段。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章