一个加密的模块
hashlib模块 -加密模块
-
hashlib.md5
-
只能正向加密不能反向解密
-
越复杂的算法需要计算的时间、空间成本均会增加
-
最常用的就是md5算法
#导入模块 import hashlib #实例化md5加密对象 #可以多向选择sha1加密 md = hashlib.md5() #进行加密,加密对象必须是bytes类型 md.update(b'alex') m = md.hexdigest() print(m) #结果
-
可以进行密码的登陆验证
-
可以进行文件的一致性验证
- 校验远程服务器和本地下载文件的一致性
- 校验本地两个文件的一致性
- 校验两台机器上的两个文件检查两个文件是否相等
-
-
加盐
-
文件的校验不能加盐
-
相当于双重加密
import hashlib s = b'123456' #加盐,就是在创建算法类型的时候传一个bytes类型参数 md = hashlib.md5(b'ly') md.update(s) print(md.hexdigest()) #结果 此时得到的结果不是存粹的创建密码对象
-
动态加盐
-
-
分批进行摘要
import hashlib md5 = hashlib.md5() md5.update(b'al') md5.update(b'ex') print(md5.hexdigest()) #结果 这个结果和md5.update(b'alex')结果是一致的