密碼學 - 計數器模式 (CTR)



計數器模式 (CTR) 與 OFB 模式類似,區別在於 CTR 模式使用計數器作為反饋。這種方法具有與 OFB 模式相同的優點(破壞模式並避免錯誤傳播),但它也允許並行加密,因為反饋可以像遞增數字一樣簡單。一個簡單的例子是,第一個塊與數字 1 進行異或運算,第二個塊與數字 2 進行異或運算,依此類推。這種方法允許同時完成任意數量的輪次。

可以將其視為沒有反饋的 CFB 模式的基於計數器的版本。在此模式下,傳送方和接收方都必須訪問一個可靠的計數器,該計數器每次傳輸密文塊時都會生成一個新的共享值。這個共享計數器並不總是秘密值;但是,雙方必須保持計數器的同步。

Counter (CTR) Mode

操作

下圖顯示了 CTR 模式下的加密和解密。操作步驟如下:

  • 將頂部暫存器載入為初始計數器值,該值對傳送方和接收方都相同。它與 CFB(和 CBC)模式中的 IV 具有相同的用途。

  • 使用金鑰加密計數器的數值並將結果儲存在底部暫存器中。

  • 取第一個明文塊 (P1) 並將其與底部暫存器的數值進行異或運算。其結果為 C1。將 C1 傳送給接收方,然後更新計數器。計數器的更新取代了 CFB 模式中的密文反饋。

  • 以此方式繼續,直到加密最後一個明文塊。

  • 解密是一個相反的過程。密文塊與計數器值的加密資料進行異或運算。每個密文塊計數器在解密後都會更新,與加密時完全相同。

CTR 模式的分析

它沒有訊息依賴性,因此密文塊不依賴於之前的明文塊。

與 CFB 模式一樣,CTR 模式不包括分組密碼解碼。這是因為 CTR 模式使用分組密碼生成金鑰流,然後用 XOR 函式進行加密。換句話說,CTR 模式將分組密碼轉換為流密碼。

CTR 模式的主要缺點是它需要在傳送方和接收方都使用同步計數器。同步丟失會導致無法正確恢復明文。

但是,CTR 模式幾乎提供與 CFB 模式相同的優點。此外,不會傳播傳輸錯誤。

CTR 模式的公式

CTR 與 OFB 類似,因為它將一系列填充向量與明文和密文塊進行異或運算。主要區別在於這些填充向量的建立方式。

在 CTR 模式中,我們從隨機種子 s 開始,然後使用以下公式計算填充向量:

Vi = EK(s+i-1)

其中 EK 是金鑰為 K 的分組加密技術,Vi 是填充向量,i 是向量相對於 1 的偏移量。

構建向量後,可以使用以下公式執行與 OFB 模式類似的加密:

Ci = Vi ⊕ Bi

解密的方式類似:

Bi = Vi ⊕ Ci

與 CFB 和 OFB 模式一樣,CTR 使用相同的加密演算法進行加密和解密。

CTR 模式的位寬

計數器 (CTR) 模式是一種典型使用分組密碼演算法的分組密碼工作模式。在這個版本中,我們提供高階加密標準 (AES) 處理;AES 的金鑰長度為 128/192/256 位。另一個限制是我們的工作模式以固定大小的單元(每個塊 128 位)進行操作,但現實世界中的文字長度不一。因此,提供給此原語的最終文字塊必須填充到 128 位,然後才能進行加密或解密。

下表顯示了 CTR 模式提供的介面的位寬:

CTR Mode bit-width

CTR 模式的優點

以下是計數器 (CTR) 模式的一些優點:

  • 硬體效率 - 與三種連結模式不同,CTR 模式允許對許多明文或密文塊並行執行加密(或解密)。對於連結模式,演算法必須完成一個塊的計算才能繼續進行下一個塊。這將演算法的最大吞吐量限制為單次執行分組加密或解密所需時間的倒數。在 CTR 模式下,吞吐量僅受獲得的並行化程度的限制。

  • 軟體效率 − 此外,雖然 CTR 模式支援並行執行,但具有並行處理能力的處理器(例如積極流水線、每個時鐘週期多個指令排程、大量暫存器和 SIMD 指令)可以得到充分利用。

  • 預處理 − 無論給出明文還是密文,底層加密技術都會執行。因此,在保證有足夠的記憶體和安全性的前提下,可以利用預處理來準備加密盒的輸出,這些輸出會饋送到 XOR 函式。當給出明文或密文輸入時,唯一執行的操作是一系列 XOR 運算。這種方法顯著提高了吞吐量。

  • 隨機訪問 − 可以使用隨機訪問處理明文或密文的第 i 個塊。在鏈式模式下,必須先計算前 i-1 個塊才能計算塊 Ci。有些應用程式會保留密文,只需要解密一個塊;在這些應用程式中,隨機訪問功能非常有用。

  • 簡潔性 − CTR 模式比 ECB 和 CBC 模式更簡單,因為它只需要實現加密演算法,而不需要實現解密演算法。當解密演算法與加密演算法差異很大時(例如 AES),這一點尤其重要。此外,也不需要建立解密金鑰排程。

CTR 模式的缺點

CTR 模式的主要缺點是接收端和傳送端必須維護一個同步計數器。丟失此計數器可能會導致明文恢復錯誤。

廣告
© . All rights reserved.