簡單地使用可調整分組密碼的調整的操作模式
我們只需更改每個塊的調整而不需要復雜的連結模式的模式的名稱是什麼?這種模式安全嗎?
對於像 Threefish 這樣的原生可調整分組密碼,還有其他推薦的模式嗎?
我們只需更改每個塊的調整而不需要復雜的連結模式的模式的名稱是什麼?這種模式安全嗎?
是的,如果你做得對,它是 IND $ -CPA 安全的,但不是IND-CCA(因此不是 AE 安全的)。特別是,您需要在調整中使用類似 CTR 的計數器(即塊計數器 + nonce / IV),然後每個消息塊將通過唯一的隨機排列加密,該排列僅在一個輸入上進行評估,因此其輸出無法區分來自隨機字元串(因此 IND $ -CPA 安全)。
你可以看到這不是 CCA 安全的,因為對手可以要求加密 $ 0^{2n} $ 和 $ 1^{2n} $ 在質詢查詢中,然後對其解密查詢僅修改質詢密文的第二個塊。那將在解密時產生一個隨機的“消息”,但第一個塊仍然包含 $ 0^n $ 或者 $ 1^n $ .
這實際上幾乎就是 OCB3 進行消息加密的方式(儘管它首先從正常分組密碼構造了一個 TBC)。
對於像 Threefish 這樣的原生可調整分組密碼,還有其他推薦的模式嗎?
還有基於此的 CTRT 和 SIV 方案(此處為論文),它使用隨機數作為塊輸入,計數器作為調整輸入來生成密鑰流。這實際上非常適合從接受全塊消息輸入的 TBC 中獲取可變輸出長度的 PRF(IND $ -CPA 安全性也是 ~ $ \frac{q^2}{2^{t+n}} $ 而不是正常的點擊率~ $ \frac{q^2}{2^n} $ 對於塊大小 $ n $ 和調整大小 $ t $ ).
還有經過身份驗證的加密方案McOE(基於 TBC),它具有很好的特性,即使對於 nonce 重用的對手,它也只會洩露相同 nonce 消息的公共前綴的長度 - 同時是一種可以流式傳輸的線上加密方案與類似 SIV 的方案不同,消息並在恆定記憶體中執行。
符號和概念: $ 0^n,1^n $ 是所有的 n 位字元串 $ 0 $ 位或全部 $ 1 $ 位。AE-security 在此答案
中稱為 CCA3 ,直覺地說,這意味著您無法將加密預言機的輸出與隨機字元串區分開來,並且您無法得出一個密文,即您沒有從加密預言機中逐字獲取的密文將在沒有解密的情況下進行錯誤。 IND $ -CPA 不要與 IND-CPA 混淆,它是一個更強大的概念,它要求加密與相同長度的隨機字元串無法區分(因此它是沒有解密預言機的 AE 安全性)。