在加密内容基础上,增加盐(随机字符串),可以防止md4和sha算法可以通过撞库的方式破解.
既md5(message + salt)
,这就是hmac(Keyed-Hashing for Message Authentication)算法的原理.
import hmac
message = '王'.encode()
key = b'secret'
h = hmac.new(key, message, digestmod='MD5') # 可以选择sha算法
h.hexdigest() # 64c342c611dc056dc4204408d4d0efc0 # 如果消息很长,可以多次调用h.update(msg)
参考:
https://www.liaoxuefeng.com/wiki/1016959663602400/1183198304823296