大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
廖某在文章中解释得很含糊,我只知道hmac是通过password+key进行生成,这与前面一节将的加Salt的方法差不多。
专业领域包括成都网站制作、网站建设、成都做商城网站、微信营销、系统平台开发, 与其他网站设计及系统开发公司不同,成都创新互联公司的整合解决方案结合了帮做网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,为客户提供全网互联网整合方案。
以下链接的博主解释的很清晰。
https://blog.csdn.net/hwaphon/article/details/52175431
HMAC 算法主要应用于身份验证,用法如下: 1.客户端发出登录请求 2.服务器返回一个随机值,在会话记录中保存这个随机值 3.客户端将该随机值作为密钥,用户密码进行 hmac 运算,递交给服务器 4.服务器读取数据库中的用户密码,利用密钥做和客户端一样的 hmac运算,然后与用户发送的结果比较,如果一致,则用户身份合法。
加Salt是固定的,用户名也是固定的,被知道了一样破解。但是,HMAC是的key是每次随机的,这样比加Salt的方法更加安全可靠。
import hmac message = b'Hello, world!' key = b'secret' h = hmac.new(key, message, digestmod='MD5') # 如果消息很长,可以多次调用h.update(msg) print (h.hexdigest())
运行结果:
fa4ee7d173f2d97ee79022d1a7355bcf