Authenticated-Encryption

短 OTP 消息的強大身份驗證和完整性

  • July 2, 2019

使用任何現代密碼技術的奇蹟,如何打包一條推文大小的明文,用適當的一次性密碼加密,以確保其完整性並對其進行身份驗證?對於這最後兩項服務,我們的目標是至少達到 128 位的保證級別。我們還希望在同一保護級別上使用標籤指示消息順序。

以下是一些方法:

1.) 一種方法是使用 Carter-Wegman MAC。

2.) 另一種方法是將 NaCl / Libsodium 與ChaCha20 流密碼和 Poly1305 身份驗證器一起使用。

3.) 使用 HMAC,例如 HMAC-SHA-256。

還有其他可靠的方法嗎?

非常感謝。

如果您想與 OTP 使用保持一致,那麼您應該使用一次性 MAC。目前看來,最簡單的方法是簡單地使用 Poly1305,但請記住,您絕不能重用 Poly1305 的密鑰,就像您不能在 OTP 中重用密鑰一樣。(特別是,不要使用 ChaCha20-Poly1305 使用的密鑰生成常式從隨機數/密鑰對派生 Poly1305 密鑰)。

使用 HMAC 沒有多大意義:如果您使用的是 OTP,那可能是因為您不信任任何特定的分組密碼,因此您不應該信任任何特定的雜湊或 MAC 算法。

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