为什么 HMAC 可以对消息进行身份验证,而未加密的 SHA-256 摘要单独却不能?
HMAC 会加入共享密钥,因此没有该密钥的攻击者无法为修改后的消息生成预期的验证码
即使消息发生更改,SHA-256 也总是生成相同的摘要
HMAC 会加密消息,因此只有接收者才能读取消息
HMAC 是安全的,因为接收者会对哈希算法保密