Modes-of-Operation

使用 EAX 時是否可以插入密鑰派生函式?

  • July 3, 2013

我目前正在研究將EAX模式用於專用應用程序,並遵循從我之前的文章中收到的有用說明,根據我適用的輸入安全要求(用於加密和身份驗證的單獨密鑰)進行考慮:

  • 基線解決方案,其中 EAX 嚴格遵守其規範,因此具有唯一的密鑰 K
  • 或最終(僅在有意義的情況下)替代解決方案,在 EAX 之前插入一個密鑰派生函式,允許從唯一輸入密鑰 K、一個用於 OMAC 功能的 KA 密鑰和一個用於 CTR 功能的 KE 密鑰

是否可以設想這樣的替代解決方案,或者它可能違反 EAX 模式規範和相關的安全證明?

正如archie 對您之前的問題的回答中所述,EAX 論文首先定義了一種稱為 EAX2 的通用 encrypt-then-MAC 組合方法,具有用於加密和 MAC 組件的單獨密鑰,並證明了其安全性(附錄 C)。然後,它將 EAX 定義為使用 CTR 模式和 OMAC 實例化的 EAX2,並且兩個組件使用相同的密鑰,然後使用關於 OMAC 的附加結果(附錄 D)證明即使使用密鑰重用,這種組合仍然是安全的(附錄 E )。

無論如何,這一切的意思是,如果您採用 EAX 模式並對其進行修改,使 OMAC 密鑰獨立於 CTR 模式密鑰,並且不進行其他更改,那麼您得到的是 EAX2 的一個實例(CTR 模式為加密方法和 OMAC 作為 PRF)。如果你相信 EAX 是安全的證明,那麼,通過同樣的論點,你也應該相信顯示 EAX2 是安全的子證明。

也就是說,這種變化確實存在一些潛在的缺點。例如,即使 EAX2 的安全證明本質上是 EAX 安全證明的一部分,但這並不一定意味著已經證明 EAX 安全的機構也一定會接受 EAX2 的認證。此外,更實際地,驗證 EAX2 實現的正確性可能會更加困難,因為 AFAIK 沒有可用於 EAX2 的標準測試向量集。

總而言之,如果可能的話,我建議堅持使用 EAX 並使用現有的、已知良好的實現。但是,如果出於監管或其他原因,您確實需要使用具有單獨派生密鑰的通用 encrypt-them-MAC 組合,EAX2 是一種很好的實現方式。

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