概述

1996年提出,Hash-based Message Authentication Code的缩写。
作用:认证发送方身份和确保消息没篡改。
通信双方在可信情况下同步Key(比如跑他家告诉他)。甲把Key和消息一起Hash后,把消息和Hash一起发给乙,乙得到消息后,拿之前同步的Key和消息做和甲一样的Hash,如对比成功说明消息是甲发送且没有被篡改。

Python使用实例

  1. import hmac
  2. ENCODING_TYPE = 'utf-8'
  3. key = 'secret'
  4. msg = 'haha'
  5. h = hmac.new(key.encode(ENCODING_TYPE), msg.encode(ENCODING_TYPE), digestmod='SHA256')
  6. r = h.hexdigest()
  7. print(r)