Hmac

HMAC-MD5 或截斷的 HMAC-SHA512

  • August 24, 2022

我正在創建一個需要對 QR 碼的有效負載進行消息身份驗證的應用程序。由於糾錯 (H) QR 碼的最大長度(368 位)和有效載荷的原始大小(128 位),我必須限制 MAC 的大小。

這給我留下了幾個選擇。我基本上可以使用任何 HMAC 變體,並剪切輸出以適合 QR 碼有效負載(我用 HMAC-SHA512 嘗試過),或者我可以使用 HMAC-MD5 的潛在弱實現,它非常適合。

我的問題是:哪個提議的解決方案更安全?

來自RFC 6151

新的協議設計不應使用 HMAC-MD5。

雖然 HMAC-MD5 目前沒有損壞,但這並不意味著您應該使用它。現在是 2022 年,還有很多更好的選擇。

我想你在這裡問的任何人都會推薦截斷的 HMAC-SHA-256、截斷的 HMAC-SHA-512 或鍵控的 BLAKE2/BLAKE3,它們不需要被截斷。這些提供了更高的安全邊際,沒有人會質疑你的協議。

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