import hashlib #提供摘要算法的模块
md5 = hashlib.md5(bytes('salt',encoding('utf-8'))) #加盐
#动态加盐,获取用户名的一部分,来进行加盐
md5.update(b'user123') #必须是bytes类型
print(md5.hexdigest())
# >>>6ad14ba9986e3615423dfca256d04e3f
md5.update(b'6ad14ba9986e3615423dfca256d04e3f')
print(md5.hexdigest())
#算法的摘要功能始终不变
#对于相同用的字符串使用同一个算法进行摘要,得到的值是不变
#使用不同算法对相同的字符串进行摘要,得到的的值应该不同。
#不管使用什么算法,使用hashlib的方式始终不变。
#摘要算法
#密码的密文存储
#文件的一致性检验
#在下载的时候 检查我们下载的文件和远程服务器的文件是否一致
#两台机器上的两个文件 你想检查这两个文件是否相等
#用户的登陆
import hashlib
user_1 = input('username:')
psw = input('password')
with open ('userinfo')as f :
for line in f :
user,password = line.split('|')
md5 = hashlib.md5()
md5 = hashlib.update(psw,encoding='utf-8')
md5_psw = md5.hexdigest()
if user_1 == user & md5_psw == password:
print('login success')
##---userinfo---
##alex|6ad14ba9986e3615423dfca256d04e3f