Encryption
使用 OFB 代替 ECB 可以避免哪些攻擊?
對於文件加密程序,有人告訴我使用輸出回饋模式 (OFB) 而不是 ECB(電子密碼本)模式。
通過這種選擇,我可以避免哪些攻擊?
OFB 是一種確保消息機密性的操作模式 a) 比加密算法的塊大小更長,並且 b) 可以重新廣播。這些模式的動機是為了避免使用普通 ECB 模式帶來的弱點。
準確地說,ECB模式的典型攻擊包括分析密文和尋找重複塊。重複密文塊意味著重複的明文塊,知道重複的明文可以幫助攻擊者分析擷取的密文。(這意味著 ECB 在語義上並不安全。)在某些情況下,這足以讓攻擊者了解所有或幾乎所有明文。OFB 模式通過使用隨機加密來防止這種情況發生,以確保消息中重複的明文不會導致重複的密文。
OFB對密文錯誤的抵抗力在於,如果密文有錯誤修改的比特,則僅修改與密文直接對應的明文比特。
因為它的 OFB 模式像流密碼一樣工作,所以它具有一個典型的弱點,即允許攻擊者輕鬆修改已知的明文。(即,如果 OFB 模式產生一個密鑰流 $ K $ ,然後是密文 $ C $ 定義為 $ C_i := P_i \oplus K_i $ , 因此,如果 $ P_i $ 攻擊者知道,那麼攻擊者也知道 $ K_i $ , 所以他們可以創建一個新的密文 $ C’_i := P’_i \oplus K_i $ 在哪裡 $ P’_i := P_i \oplus X $ 和 $ X $ 是為生成所需的修改明文而選擇的值 $ P’_i $ .) 但是由於消息機密性(OFB 的目標)不包括消息完整性,這不一定是大問題。