13 hashlib案例1
- 此模块用于实现加密,例如:md5加密
import hashlib
def run():
data = '中国联通'
obj = hashlib.md5()
obj.update(data.encode('utf-8'))
ret = obj.hexdigest()
print(ret)
- 为什么要加密
#避免密码被破解
wupeiqi,123
alex,123
eric,123
wupeiqi,202cb962ac59075b964b07152d234b70
wupeiqi,202cb962ac59075b964b07152d234b70
wupeiqi,202cb962ac59075b964b07152d234b70
md5的密文是无法反解
- 网上说md5可以破解,是因为撞库
撞库,就是将常见的密码计算出他得md5值,保存起来,然后去库里面查找是否有相同的密码
123 202cb962ac59075b964b07152d234b70
123 202cb962ac59075b964b07152d234b70
- 加密+加盐(加密密码时,加入一些更加随机字符串)
import hashlib
data = '123'
# 'aaa@@' 表示加盐进行计算,也可以设置成全局变量
obj = hashlib.md5('aaa@@'.encode('utf-8'))
obj.update(data.encode('utf-8'))
ret = obj.hexdigest()
print(ret)