什么叫hmac
它的全称叫做Hash-based Message Authentication Code: 哈希消息认证码,从名字中就可以看出来这个hmac基于哈希函数的,并且还得提供一个秘钥key,它的作用就是用来保证消息的完整性,不可篡改。基本思想就是,将消息用一个哈希函数加上一个秘钥key生成一个摘要,列如目前很流行的JWT就是基于hmac实现的。
由上可知hmac需要提供三个参数,一个密钥key, 一个消息字符串,一个哈希函数。
js源码qcc为
new d.HMAC.init(t,i).finalize(e)
下断点
跟进init(),判断i为密钥key,那消息字符串为e,
跟进finalize(),可以看到使用了sha512进行运算。
使用python实现
import hmac
hmac.new(bytes(key, encoding= utf-8 ), bytes(msg, encoding= utf-8 ), hashlib.sha512).hexdigest()
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...
