Encryption
IPsec 中使用的先加密後身份驗證變體
我試圖了解在 IPsec 中使用的 Encrypt-then-Authenticate (EtA) 的變體。為此,我查看了這一章。
到目前為止,我得到的是完整性和機密性計算涵蓋了 EPS 數據包的不同部分。我不明白到底做了什麼,以及這與一般的 EtA 組合物有何不同(即與一般的 EtA 組合物相比有什麼修改)。
這是標準的 Encrypt-then-Authenticate。唯一的區別是,在進行 EtA 時,實際上沒有必要對所有內容進行加密。當消息的某些部分需要完整性而不是隱私時,這種策略是有意義的。在 IPSec 中,ICV(防止重放的計數器)不需要隱私。此外,通過不對其進行加密,可以不必為了檢查數據包是否正在重放而解密(相反,檢查 MAC 就足夠了)。
重要的是要注意,可能會錯誤地使用 IPSec,並執行 MAC-then-encrypt。這是通過計算 IPSec 身份驗證標頭,然後加密來實現的。儘管得到了一些專家的推薦,但這已經被打破了!因此,如果您想要隱私和完整性,那麼這一切都應該在 ESP 內完成,如此處所述。
AtE 在 IPSec 中被破壞的事實不是理論上的。例如,參見 Degabriele 和 Paterson 的論文On the (In)Security of IPsec in MAC-then-Encrypt Configurations。