Algorithm-Design
HMAC-SHA1(key, msg) 與 SHA1(key + msg) 的區別
HMAC-SHA1(key, msg)
使用vsSHA1(key + msg)
作為驗證某個消息的真實性/完整性的方法有什麼實際區別嗎?請注意,加號表示此上下文中的字元串連接我是否失去了一些深奧的細節,這些細節
HMAC-SHA1
提供了對密碼分析的數學免疫?或者這兩種方法基本上做同樣的事情?我查看了這兩種算法的基本描述。儘管
HMAC-SHA1
似乎用填充和其他東西做了一些花哨的事情,但我不明白任何重要性。對我來說,除了表面細節之外,兩者都HMAC-SHA1(key, msg)
具有SHA1(key + msg)
基本相同的強度/抵抗力我怎麼錯了,我錯過了什麼?
馬上,SHA1(key + msg) 很容易受到長度擴展攻擊。也就是說,如果我知道 SHA1(key + msg),我可以使用它來計算 SHA1(key + msg + 我想在此處添加的任何內容),而無需知道密鑰。