Authenticated-Encryption
我們可以使用 Feistel Networks 建構經過身份驗證的加密嗎?
Feistel Networks 的大多數加密模式,尤其是那些用於建構固定長度分組密碼的加密模式只是提供機密性。
我們可以使用 Feistel Networks 建構經過身份驗證的加密嗎?
使用 Feistel 網路建構認證加密的簡單方法是建構基於 Feistel 的分組密碼,然後使用將分組密碼轉換為認證加密方案的多種操作模式之一(例如CCM、OCB、GCM)。
對於操作模式主題的一個很好的調查,我會推薦Rogaway 的這篇論文。它不涵蓋最新的設計(例如在DIAC'13中討論的那些),但以合理的細節涵蓋了更廣為接受的方法。
是的,你當然可以。如果你想要一個可變長度的認證加密模式,那麼只需在OCB 模式下使用任何 Feistel 密碼。如果固定長度很好,那麼下面的想法應該有效。建構基於 Feistel 的寬排列(固定密鑰分組密碼) $ G $ 並加密
$$ C = G(P||N||K)\oplus K, $$ 在哪裡 $ N $ 是隨機數, $ P $ 是明文, $ C $ 是密文, $ K $ 是關鍵。