普通的 md5 算法
from hashlib import md5
s = "123456"
mds = md5(s.encode("utf-8"))
print(mds.hexdigest())
普通的 md5 容易被 撞库
:意思就是说,有一个很大的数据库,里面存储大量(字符串,md5)的 kv 对,这样只要一条 SQL 就可以找到当前需要还原的 md5。
那么如何保证自己的 md5 不会被撞库呢,就是给 md5 进行加盐操作。
加盐的 md5 算法
s = "123456"
salt = "f;slaf;aifas;fowfuwa9eiw9fo;jsfjsdlhf;aijf;oaj;jlf;ajl;fjl;ijgiougoi;ergioh94028509250928520ijf;jgf;oirrg;"
s += salt
mds = md5(s.encode("utf-8"))
print(mds.hexdigest())
验签,验证 md5 是否一致
key = "c24f591fd794e9dc3049e3db25969b49"
s = "123456"
salt = "f;slaf;aifas;fowfuwa9eiw9fo;jsfjsdlhf;aijf;oaj;jlf;ajl;fjl;ijgiougoi;ergioh94028509250928520ijf;jgf;oirrg;"
s += salt
mds = md5(s.encode("utf-8"))
if mds.hexdigest() == key:
print("True")
else:
print("False")
评论