Aes
將 AES-CTR 的初始計數器值與密文一起儲存是否安全?
初始計數器值實際上可以被認為是一種 IV,我認為它可以安全地與密文一起傳輸,但我真的想確定這確實是安全的。
要擴展 Thomas 的答案,您必須以某種方式傳輸 CTR 隨機數,原因很簡單,您應該需要它來解密數據。具體來說,對於您計算的給定數據塊:
$$ p = N \oplus c(i) $$ 在哪裡 $ i $ 是您使用的塊數, $ c $ 是計數函式,它可能非常簡單, $ N $ 是你的隨機數和 $ \oplus $ 是一些組合操作。你的 nonce 使這個序列 $ p $ 獨特。如果不知道,您將不知道如何開始生成將被加密以生成密鑰流的明文。
現在,您可以清楚地分發它的原因是每個 $ p $ 將使用對稱算法加密 $ S $ 使用密鑰 $ k $ . $ k $ 保密,無法生成密鑰流 $ s = S(p, k) $ . 分組密碼的全部要點 $ S $ 是你不能在沒有密鑰的情況下從密文到明文,因為它是對稱的,也應該反過來應用。
此時,能夠生成 $ p $ 應該不是問題,因為從那裡你不應該能夠生成 $ s $ .