Authentication

如果 MAC 和加密不是最安全的方法,為什麼 SIV 會成為一件事?

  • January 30, 2018

我要問的問題正是我在標題中提出的問題。

瀏覽這三篇論文應該會給你一個想法(我大致按照我建議你查看它們的順序列出):

長話短說,關於加密和身份驗證的通用組合的結果對您如何定義“加密”概念非常敏感。在經典的教科書定義中,加密方案是根據機率算法定義的。正如 Rogaway 論文所說:

自從 Goldwasser 和 Micali 的里程碑式論文

$$ 7 $$,加密方案的形式化通常使加密算法具有機率性或狀態性。在本文中,我們研究了對稱加密的另一種形式化:加密算法被設計為確定性函式,但其中一個論點是使用者提供的初始化向量 (IV)。實際上,使用者而不是加密算法負責翻轉硬幣或維護狀態。

Bellare 和 Namprempre 的著名結果是 encrypt-then-MAC 是唯一的安全組合,它使用經典的機率框架進行加密。但是,如果您從 Rogaway 的基於 IV 或 nonce 的定義開始,就像 2014 Namprempre等人的論文所做的那樣,您會得到更細微的結果。 MAC-and-encrypt 的一些不是所有版本(包括 SIV)被證明是安全的,而 encrypt-then-MAC 的**所有版本都是安全的。正如論文所說:

有人可能會將我們的結果解釋為傳統觀點——加密然後 MAC 是唯一安全的 GC 方法——是錯誤的,這是早期工作的產物,承認了草率的方案並且只考慮了 pE+MAC → pAE 轉換。另一種解釋是,傳統觀點本質上是正確的,即 Encrypt-then-MAC 是唯一安全的 GC 方法,因為它適用於多個定義設置,而對於其他 GC 方案,這個故事變得微妙。

本文中的任何內容都不應被理解為暗示 BN 有任何問題。如果那篇論文被誤解了,那並不是因為缺乏明確性。我們的定義和結果是互補的。

SIV 與之前的模式相比的主要優勢是它更好地抵抗 nonce 重用1。雖然使用相同的隨機數,但它變得確定性(允許攻擊者查看兩條消息是否相等),但在其他方面保持其安全性——包括在許多其他系統中完全失去的身份驗證安全性。例如,AES-GCM 身份驗證允許在一次 nonce 重複使用後進行偽造。

SIV 不是 encrypt-then-MAC,而是更接近於 encrypt-and-MAC。但是,加密和 MAC 的潛在問題不適用於 SIV,因為它使用 PRF(而不是較弱的 MAC)和具有一些進一步限制的加密系統。

1 SIV 也可以在沒有隨機數的情況下使用,但是您只能獲得確定性加密。

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