python3 hmac模块

hmac: hex-based message authentication code 哈希消息认证码

需要注意传入的key和message都是bytes类型,str类型需要首先编码为bytes

import hmac

secret_key1 = b'This is my secret key'
message1 = b'Hello world'
hex_res1 = hmac.new(secret_key1, message1, digestmod="MD5").hexdigest()
print(hex_res1)  # b8908a20bd70f465330b434e18441d3b

secret_key2 = b'This is my secret key'
message2 = b'Hello world'
hex_res2 = hmac.new(secret_key2, message2, digestmod="MD5").hexdigest()
print(hex_res2)  # b8908a20bd70f465330b434e18441d3b

compare_res = hmac.compare_digest(hex_res1, hex_res2)  # 比较两个密文是否相同
print(compare_res)  # True

secret_key3 = b'This is my secret key'
message3 = b'Hello world!'
hex_res3 = hmac.new(secret_key3, message3, digestmod="MD5").hexdigest()
print(hex_res3)  # a314490e13ff3d1dfa9cd18db8c4c3e8

compare_res = hmac.compare_digest(hex_res1, hex_res3)  # 比较两个密文是否相同
print(compare_res)  # False

猜你喜欢

转载自www.cnblogs.com/lilyxiaoyy/p/10942922.html