分類
CISSP

AES(高級加密標準)

https://ithelp.ithome.com.tw/upload/images/20210723/20132160tqxQvsYwr2.jpg
-密碼學
這兩種DES(數據加密標準)AES(高級加密標準)是美國的加密標準。傳統 DES 使用 IBM 開發的 Lucifer,而當前標準 AES 通過開放選擇指定 Rijndael。通常將 DES 和 AES 稱為密碼本身。例如,AES 和 Rijndael 的不同之處在於,“Rijndael 本身指定的塊和密鑰大小可以是 32 位的任意倍數,最小為 128 位,最大為 256 位。” 但是,AES 指定了 128 位的“固定塊大小”,但密鑰大小有 128、192 或 256 位三種選擇。(維基百科

DES 和 AES 是分組密碼。塊是一組位。塊是塊密碼的基本處理單元。DES 將數據分成 64 位塊,而 AES 以 128 位塊處理數據。但是,密鑰可能不等於數據塊。DES 密鑰大小名義上是 64 位(8 字節),但一個字節的每一位都是所謂的用於錯誤控制的奇偶校驗位。因此,有效密鑰長度為 56 位(64-8=56)。DES 塊大小比其後繼 AES 小得多,AES 使用 128 位塊。

因為分組密碼使用固定大小的塊,明文不能總是分成整個塊或塊大小的倍數。“ Padding ”是將數據加入明文中以便將其劃分為完整塊的過程。位置(開始、中間或結束)、單位(位或字節)和模式(全為零或全為 1)是填充問題。ANSI X9.23、PKCS#5、PKCS#7、ISO/IEC 7816-4 等是處理填充數據模式的標準。
ECB 模式中的 AES 可能不涉及初始化向量 (IV)。分組密碼可以在各種操作模式下工作。最著名的電子代碼簿 (ECB) 不涉及啟動向量,但可能會生成重複的模式。

DES 於 1970 年代初由 IBM 開發,基於 Horst Feistel 的早期設計。它於 1976 年被批准為美國加密標準。三重 DES (3DES/TDES) 是 DES 在 1990 年代被破壞後的一種解決方法。3DES 使用相同的 DES 算法三次以增加工作因子。3DES 需要三個密鑰(每個 DES 操作一個);但是,第一次使用的密鑰可以在第三次處理時使用。名義上,3DES 使用三個密鑰,但實際上它可以使用兩個密鑰(第一次和第三次使用相同的密鑰)。DES3-EEE 意味著使用三個不同的密鑰應用 DES 加密三次。

參考
分組密碼
高級加密標準
數據加密標準
三重DES
奇偶校驗位(維基百科)
填充(密碼學)
初始化向量
java中AES-256加密需要多大的初始化向量?
RSA 中的典型塊大小是多少?

資料來源: Wentz Wu QOTD-20210629

PS:此文章經過作者同意刊登 並且授權可以翻譯成中文

作者: stevencho

從事資訊工作二十多年,對資安極具熱情,在 Network Security, Endpoint Security, 及 Mobile Security 等資安領域有超過十年以 上的經驗。曾任職精誠資訊資安產品代理部門技術經理,負責 資安產品之技術支援與大型企業導入專案。此外,他也取得了 ISO 27001 主導稽核員證書及 Check Point 的 CCSA 與 CCSE 等防 火牆產品等專業證照。此外,平常除了喜歡透過ITHelp平台及個人部落格分享文章,亦常擔任社群活動主辦者及志工,連結資安同好聯誼及共好學習,並協助對於CISSP有興趣的同學與同好準備認證考試。