Điểm:1

Tại sao HMAC sử dụng hàm băm hai lần?

lá cờ cn

Theo đặc điểm kỹ thuật HMAC trong RFC2104, một HMAC được tính theo cách sau:

HMAC(K, văn bản) = H(K XOR opad, H(K XOR ipad, văn bản))

ở đâu h là hàm băm cơ bản, , là phép nối và K có chiều dài của một khối.

Bây giờ tôi tự hỏi, lợi ích của việc áp dụng hàm băm hai lần ở đây là gì, nghĩa là tại sao nó không được định nghĩa như sau:

HMAC'(K, văn bản) = H(K XOR ipad, văn bản)

Có cuộc tấn công nào có thể chống lại HMAC', nhưng không chống lại HMAC không?

kelalaka avatar
lá cờ in
Điều này có trả lời câu hỏi của bạn không? [Tại sao $H(k\mathbin\Vert x)$ không phải là cấu trúc MAC an toàn?](https://crypto.stackexchange.com/questions/1070/why-is-hk-mathbin-vert-x-not- a-secure-mac-xây dựng).Lưu ý rằng ipad hoàn toàn không cung cấp bất kỳ độ cứng nào trong sơ đồ của bạn.
DannyNiu avatar
lá cờ vu
Tôi đồng ý với bản sao được liên kết. Trong khi câu hỏi hỏi những điều khác nhau, câu trả lời và lý do được áp dụng trong cả hai trường hợp.
kelalaka avatar
lá cờ in
Và một vấn đề khác có liên quan cao [Tại sao HMAC sử dụng hai khóa khác nhau?](https://crypto.stackexchange.com/q/15734/18298)

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.