具體公式為:
CBC工作模式
加密:輸入是當前明文分組和前一次密文分組的異或。
解密:每一個密文分組被解密後,再與前一個密文分組異或得明文。
具體公式為:
CFB工作模式
· 加密演算法的輸入是64位元移位暫存器,其初值為某個初始向量IV。
· 加密演算法輸出的最左(最高有效位)j位元與明文的第一個單元P1進行異或,產生出密文的第1個單元C1,並傳送該單元。
· 然後將移位暫存器的內容左移j位並將C1送入移位暫存器最右邊(最低有效位)j位。
· 這一過程繼續到明文的所有單元都被加密為止。
OFB工作模式
OFB模式的結構類似於CFB
不同之處:
· OFB模式是將加密演算法的輸出反饋到移位暫存器
· CFB模式中是將密文單元反饋到移位暫存器
CTR工作模式
加密:輸入是當前明文分組和計數器密文分組的異或。
解密:每一個密文分組被解密後,再與計數器密文分組異或得明文。
具體公式為:
工作模式比較
· ECB模式,簡單、高速,但最弱、易受重發攻擊,一般不推薦。
· CBC模式適用於檔案加密,比ECB模式慢,安全性加強。當有少量錯誤時,不會造成同步錯誤。
· OFB模式和CFB模式較CBC模式慢許多。每次迭代只有少數位元完成加密。若可以容忍少量錯誤擴充套件,則可換來恢復同步能力,此時用CFB或OFB模式。在字元為單元的流密碼中多選CFB模式。
· CTR模式用於高速同步系統,不容忍差錯傳播。
直接設計雜湊函式
Merkle在1989年提出迭代型雜湊函式的一般結構;(另外一個工作是默克爾雜湊樹),Ron Rivest在1990年利用這種結構提出MD4。(另外一個工作是RSA演算法),這種結構在幾乎所有的雜湊函式中使用,具體做法為:
雜湊函式的構造就講到這裡啦,以上三種方式都可以構造雜湊函式。下節課我們將學習常用雜湊函式,敬請期待!