- 密碼學教程
- 密碼學 - 首頁
- 密碼學 - 起源
- 密碼學 - 歷史
- 密碼學 - 原理
- 密碼學 - 應用
- 密碼學 - 優點與缺點
- 密碼學 - 現代
- 密碼學 - 傳統密碼
- 密碼學 - 加密需求
- 密碼學 - 雙重強度加密
- 密碼系統
- 密碼系統
- 密碼系統 - 組成部分
- 密碼系統攻擊
- 密碼系統 - 彩虹表攻擊
- 密碼系統 - 字典攻擊
- 密碼系統 - 暴力破解攻擊
- 密碼系統 - 密碼分析技術
- 密碼學型別
- 密碼系統 - 型別
- 公鑰加密
- 現代對稱金鑰加密
- 密碼學雜湊函式
- 金鑰管理
- 密碼系統 - 金鑰生成
- 密碼系統 - 金鑰儲存
- 密碼系統 - 金鑰分發
- 密碼系統 - 金鑰撤銷
- 分組密碼
- 密碼系統 - 流密碼
- 密碼學 - 分組密碼
- 密碼學 - Feistel 分組密碼
- 分組密碼操作模式
- 分組密碼操作模式
- 電子密碼本 (ECB) 模式
- 密碼分組連結 (CBC) 模式
- 密碼反饋 (CFB) 模式
- 輸出反饋 (OFB) 模式
- 計數器 (CTR) 模式
- 經典密碼
- 密碼學 - 反向密碼
- 密碼學 - 凱撒密碼
- 密碼學 - ROT13 演算法
- 密碼學 - 換位密碼
- 密碼學 - 加密換位密碼
- 密碼學 - 解密換位密碼
- 密碼學 - 乘法密碼
- 密碼學 - 仿射密碼
- 密碼學 - 簡單替換密碼
- 密碼學 - 簡單替換密碼加密
- 密碼學 - 簡單替換密碼解密
- 密碼學 - 維吉尼亞密碼
- 密碼學 - 維吉尼亞密碼實現
- 現代密碼
- Base64 編碼與解碼
- 密碼學 - XOR 加密
- 替換技術
- 密碼學 - 單字母替換密碼
- 密碼學 - 單字母替換密碼破解
- 密碼學 - 多字母替換密碼
- 密碼學 - Playfair 密碼
- 密碼學 - 希爾密碼
- 多字母替換密碼
- 密碼學 - 一次性密碼本
- 一次性密碼本實現
- 密碼學 - 換位技術
- 密碼學 - 柵欄密碼
- 密碼學 - 列置換
- 密碼學 - 隱寫術
- 對稱演算法
- 密碼學 - 資料加密
- 密碼學 - 加密演算法
- 密碼學 - 資料加密標準
- 密碼學 - 三重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 密碼
- 密碼學 - 對稱與非對稱
- 密碼學有用資源
- 密碼學 - 快速指南
- 密碼學 - 討論
密碼學 - 流密碼與分組密碼
流密碼和分組密碼是對稱金鑰密碼的變體,主要用於加密。它是將(明文轉換為密文)更直接的服務必須在大多數情況下使用。
理解本章將使您瞭解流密碼的構成以及它們與分組密碼的不同之處。
什麼是流密碼?
流密碼是一種加密方法,它將偽隨機密碼數字流與明文數字組合。此偽隨機加密數字流一次應用於每個二進位制數字的一個位元。這種加密方法為每個金鑰使用無限量的偽隨機密碼數字。
- 流密碼使用基於金鑰的演算法一次對任意數量的明文進行加密,每次一個位元。
- 對於這種型別的加密安全,偽隨機密碼數字應該是不可預測的,並且金鑰永遠不應該重複使用。
- 偽隨機密碼數字是使用數字移位暫存器和幾個隨機種子值建立的。
- 流密碼也稱為狀態密碼。“狀態密碼”這個名稱源於每個數字的加密都取決於密碼的當前狀態這一事實。
- RC4 流密碼廣泛用於軟體中。
使用經過適當設計的偽隨機數生成器,流密碼可以與金鑰長度相同的分組密碼一樣安全。流密碼的主要優點是它使用的程式碼更少,並且比分組密碼快。
什麼是分組密碼?
分組密碼是一種對稱加密方法,它使用共享的秘密金鑰加密固定大小的資料塊。在加密過程中使用明文,生成的加密文字稱為密文。相同的金鑰用於加密明文和密文。
分組密碼處理固定大小的資料塊。訊息的大小通常大於塊大小。因此,長訊息被分成多個連續的訊息塊,每個塊由密碼單獨處理。
分組密碼使用共享的秘密金鑰一次加密和解密其輸入一個塊,而不是一次一個位元。由於塊的大小是固定的,因此不需要填充。此演算法是對稱的。加密使用公共金鑰將文字輸入轉換為密文(加密文字)。在解密期間,它使用相同的金鑰將密文傳輸回原始明文。輸入和輸出的長度相同。
- 分組密碼演算法 (AES) 通常以資料加密標準 (DES)、三重 DES 和高階加密標準等名稱而聞名。
- 流密碼是分組密碼的反向工作,使用共享金鑰逐位處理其輸入。
- 非對稱或公鑰密碼學是分組密碼的替代方案。這種方法使用公鑰加密明文,並使用私鑰解密密文。
分組密碼有不同的操作模式 -
- 電子密碼本 (ECB) 模式
- 密碼分組連結 (CBC) 模式
- 密碼反饋 (CFB) 模式
- 輸出反饋 (OFB) 模式
- 計數器 (CTR) 模式
這些模式是通用分組密碼的操作規則。值得注意的是,各種模式創造了不同的特性,從而提高了分組密碼的整體安全性。
分組密碼和流密碼的區別
下表顯示了分組密碼和流密碼的主要區別 -
| 金鑰 | 分組密碼 | 流密碼 |
|---|---|---|
| 定義 | 分組密碼是一種加密型別,其中明文的轉換是透過一次獲取其塊來執行的。 | 流密碼是一種加密型別,其中明文的轉換是透過一次獲取明文的一個位元組來執行的。 |
| 位元轉換 | 由於分組密碼一次轉換塊,因此它轉換的位元數比流密碼多,流密碼可以轉換 64 位或更多。 | 然而,在流密碼的情況下,一次只能轉換 8 位。 |
| 原理 | 分組密碼使用“混淆”和“擴散”原理來執行加密所需的轉換。 | 流密碼僅使用混淆原理進行轉換。 |
| 演算法 | 對於明文加密,分組密碼使用電子密碼本 (ECB) 和密碼分組連結 (CBC) 演算法。 | 流密碼使用 CFB(密碼反饋)和 OFB(輸出反饋)演算法。 |
| 解密 | 由於在分組密碼的情況下,更多的位元組合被加密,因此與流密碼相比,反向加密或解密相對複雜。 | 流密碼使用 XOR 進行加密,可以輕鬆地將其反轉回明文。 |
| 實現 | Feistel 密碼是最常見的分組密碼實現。 | 流密碼的主要實現是 Vernam 密碼。 |
總結
分組密碼用於加密和解密資料,它使用一個金鑰以預定義的固定大小進行操作,這與逐位操作的流密碼不同。在混淆和擴散方面,分組密碼使用ECB和CBC等技術。另一方面,流密碼對較少的位元進行操作,並且它們僅依賴於混淆;它們通常使用異或運算進行加密。
廣告