Block-Cipher

任意長度到塊大小的倍數

  • September 21, 2017

我想在不是塊大小倍數的任意長度上應用 CTR 模式。這是否可能不應用填充。

如果我們應用填充 - 解密算法如何知道這個填充!?

在 CTR 模式下,Enc 完成為

在此處輸入圖像描述

CT = Enc(k,PT) = Enc(k,ctr) xor PT

解密類似於加密,除了你 XOR Cipertext(CT) 而不是 Plaintext(PT)。

在此處輸入圖像描述

PT = Dec(k,CT) = Enc(k,ctr) xor CT

所以明文不需要是塊長度的倍數,也不需要填充,因為 PT 或 CT 永遠不會成為塊密碼的輸入。它的計數器被加密以生成隨機流,然後與明文或密文進行異或。您可以使用所需長度的生成比特流並丟棄剩餘的。

CTR MODE的更多細節和圖片來源

引用自:https://crypto.stackexchange.com/questions/51675