概述
1996年提出,Hash-based Message Authentication Code的缩写。
作用:认证发送方身份和确保消息没篡改。
通信双方在可信情况下同步Key(比如跑他家告诉他)。甲把Key和消息一起Hash后,把消息和Hash一起发给乙,乙得到消息后,拿之前同步的Key和消息做和甲一样的Hash,如对比成功说明消息是甲发送且没有被篡改。
Python使用实例
import hmac
ENCODING_TYPE = 'utf-8'
key = 'secret'
msg = 'haha'
h = hmac.new(key.encode(ENCODING_TYPE), msg.encode(ENCODING_TYPE), digestmod='SHA256')
r = h.hexdigest()
print(r)