- 密碼學教程
- 密碼學 - 首頁
- 密碼學 - 起源
- 密碼學 - 歷史
- 密碼學 - 原理
- 密碼學 - 應用
- 密碼學 - 優點與缺點
- 密碼學 - 現代
- 密碼學 - 傳統密碼
- 密碼學 - 加密的需求
- 密碼學 - 雙重強度加密
- 密碼系統
- 密碼系統
- 密碼系統 - 元件
- 密碼系統攻擊
- 密碼系統 - 彩虹表攻擊
- 密碼系統 - 字典攻擊
- 密碼系統 - 暴力破解攻擊
- 密碼系統 - 密碼分析技術
- 密碼學型別
- 密碼系統 - 型別
- 公鑰加密
- 現代對稱金鑰加密
- 密碼學雜湊函式
- 金鑰管理
- 密碼系統 - 金鑰生成
- 密碼系統 - 金鑰儲存
- 密碼系統 - 金鑰分發
- 密碼系統 - 金鑰吊銷
- 分組密碼
- 密碼系統 - 流密碼
- 密碼學 - 分組密碼
- 密碼學 - Feistel 分組密碼
- 分組密碼操作模式
- 分組密碼操作模式
- 電子密碼本 (ECB) 模式
- 密碼分組連結 (CBC) 模式
- 密碼反饋 (CFB) 模式
- 輸出反饋 (OFB) 模式
- 計數器 (CTR) 模式
- 經典密碼
- 密碼學 - 逆向密碼
- 密碼學 - 凱撒密碼
- 密碼學 - ROT13 演算法
- 密碼學 - 轉置密碼
- 密碼學 - 加密轉置密碼
- 密碼學 - 解密轉置密碼
- 密碼學 - 乘法密碼
- 密碼學 - 仿射密碼
- 密碼學 - 簡單替換密碼
- 密碼學 - 簡單替換密碼的加密
- 密碼學 - 簡單替換密碼的解密
- 密碼學 - 維吉尼亞密碼
- 密碼學 - 維吉尼亞密碼的實現
- 現代密碼
- Base64 編碼與解碼
- 密碼學 - XOR 加密
- 替換技術
- 密碼學 - 單表替換密碼
- 密碼學 - 單表替換密碼的破解
- 密碼學 - 多表替換密碼
- 密碼學 - Playfair 密碼
- 密碼學 - Hill 密碼
- 多表替換密碼
- 密碼學 - 一次性密碼本密碼
- 一次性密碼本密碼的實現
- 密碼學 - 轉置技術
- 密碼學 - 柵欄密碼
- 密碼學 - 列置換
- 密碼學 - 隱寫術
- 對稱演算法
- 密碼學 - 資料加密
- 密碼學 - 加密演算法
- 密碼學 - 資料加密標準
- 密碼學 - 三重 DES
- 密碼學 - 雙重 DES
- 高階加密標準
- 密碼學 - AES 結構
- 密碼學 - AES 變換函式
- 密碼學 - 位元組替換變換
- 密碼學 - 行移位變換
- 密碼學 - 列混合變換
- 密碼學 - 輪金鑰加變換
- 密碼學 - AES 金鑰擴充套件演算法
- 密碼學 - Blowfish 演算法
- 密碼學 - SHA 演算法
- 密碼學 - RC4 演算法
- 密碼學 - Camellia 加密演算法
- 密碼學 - ChaCha20 加密演算法
- 密碼學 - CAST5 加密演算法
- 密碼學 - SEED 加密演算法
- 密碼學 - SM4 加密演算法
- IDEA - 國際資料加密演算法
- 公鑰(非對稱)密碼學演算法
- 密碼學 - RSA 演算法
- 密碼學 - RSA 加密
- 密碼學 - RSA 解密
- 密碼學 - 建立 RSA 金鑰
- 密碼學 - 破解 RSA 密碼
- 密碼學 - ECDSA 演算法
- 密碼學 - DSA 演算法
- 密碼學 - Diffie-Hellman 演算法
- 密碼學中的資料完整性
- 密碼學中的資料完整性
- 訊息認證
- 密碼學數字簽名
- 公鑰基礎設施
- 雜湊
- MD5(訊息摘要演算法 5)
- SHA-1(安全雜湊演算法 1)
- SHA-256(安全雜湊演算法 256 位)
- SHA-512(安全雜湊演算法 512 位)
- SHA-3(安全雜湊演算法 3)
- 雜湊密碼
- Bcrypt 雜湊模組
- 現代密碼學
- 量子密碼學
- 後量子密碼學
- 密碼學協議
- 密碼學 - SSL/TLS 協議
- 密碼學 - SSH 協議
- 密碼學 - IPsec 協議
- 密碼學 - PGP 協議
- 影像和檔案加密
- 密碼學 - 影像
- 密碼學 - 檔案
- 隱寫術 - 影像
- 檔案加密和解密
- 密碼學 - 檔案加密
- 密碼學 - 檔案解密
- 物聯網中的密碼學
- 物聯網安全挑戰、威脅和攻擊
- 物聯網安全的加密技術
- 物聯網裝置的通訊協議
- 常用的密碼學技術
- 自定義構建密碼學演算法(混合密碼學)
- 雲密碼學
- 量子密碼學
- 密碼學中的影像隱寫術
- DNA 密碼學
- 密碼學中的一次性密碼 (OTP) 演算法
- 區別
- 密碼學 - MD5 與 SHA1
- 密碼學 - RSA 與 DSA
- 密碼學 - RSA 與 Diffie-Hellman
- 密碼學與密碼學
- 密碼學 - 密碼學與密碼分析
- 密碼學 - 經典與量子
- 密碼學與隱寫術
- 密碼學與加密
- 密碼學與網路安全
- 密碼學 - 流密碼與分組密碼
- 密碼學 - AES 與 DES 密碼
- 密碼學 - 對稱與非對稱
- 密碼學有用資源
- 密碼學 - 快速指南
- 密碼學 - 討論
密碼學 - 輸出反饋 (OFB) 模式
輸出反饋 (OFB) 模式類似於密碼反饋模式,但它提供加密輸出而不是 XOR 輸出。此輸出反饋選項傳送所有塊位,而不僅僅是其中的一部分。分組密碼的輸出反饋模式極易受到位元傳輸錯誤的影響。這減少了密碼對明文的依賴性。
它涉及將來自底層分組密碼的連續輸出塊插入其中。在 CFB 模式中,反饋塊將一系列位元傳送到加密演算法,然後加密演算法生成金鑰流。
OFB 模式需要 IV 作為第一個隨機 n 位輸入塊。初始化向量不需要保密。OFB 模式的操作如下圖所示:
操作
OFB 和 CFB 之間最根本的區別在於,OFB 模式使用 XOR 將明文和密文塊與初始化向量的較大副本組合。
此操作可以視為一次性密碼本,擴充套件向量作為填充向量。以下公式顯示瞭如何建立一系列填充向量:
Vi = EK(Vi-1)
其中 EK 表示使用金鑰 K 的分組加密技術,Vi 和 Vi-1 是相鄰向量。
請注意,以上計算假設 V0 為初始化向量。
建立一系列填充向量後,可以使用以下公式在 OFB 模式下執行加密:
Ci = Vi ⊕ Bi
解密以類似的方式工作:
Bi = Vi ⊕ Ci
請注意,與 CFB 模式一樣,OFB 對加密和解密都使用相同的加密演算法。
OFB 模式的分析
OFB 模式提供高安全性、成功的並行處理和對塊丟失的容忍度。為了避免任何安全問題,必須注意確保初始化向量是隨機且唯一的。此外,錯誤傳播的缺乏可能需要採取更多預防措施來保護傳輸問題發生時的資料完整性。
OFB 模式的位寬
下表顯示了 OFB 模式提供的介面的位寬:
| 明文 | 密文 | 密碼金鑰 | IV | |
|---|---|---|---|---|
| OFB-DES | 64 | 64 | 64 | 64 |
| OFB-AES128 | 128 | 128 | 128 | 128 |
| OFB-AES192 | 128 | 128 | 192 | 128 |
| OFB-AES256 | 128 | 128 | 256 | 128 |
CFB 模式的優點
建立填充向量(也稱為金鑰流)後,OFB(輸出反饋)模式能夠同時進行塊加密和解密。這可以在處理速度很重要的場景中提高效能,因為可以同時處理多個塊。
由於每個塊都獨立於其他塊進行加密,因此 OFB 模式可以承受傳輸過程中加密塊的丟失。這意味著如果一個塊丟失或損壞,後續塊的解密將不受影響,從而實現更好的錯誤恢復。
OFB 模式的缺點
在 OFB 模式下重複加密初始化向量 (IV) 會生成相同的狀態,這可能會暴露出安全漏洞。如果 IV 不是真正隨機的或以可預測的方式更改,則加密過程可能會重複使用相同的金鑰流,從而使攻擊者獲得有關明文的資訊。
與其他模式(如 CBC(密碼分組連結))不同,OFB 模式不會傳播錯誤。雖然在某些情況下這可能是有益的,因為它可以防止錯誤影響後續塊,但它也意味著密文中存在的問題可能無法被識別或修復,這可能導致資料損壞或安全漏洞。