码迷,mamicode.com
首页 > 其他好文 > 详细

hashlib

时间:2019-11-16 21:36:48      阅读:76      评论:0      收藏:0      [点我收藏+]

标签:对象   创建   文件   算法   长度   code   lse   rip   update   

hashlib

hashlib是一个加密模块,提供了常见的摘要算法,如MD5,SHA1

MD5算法加密检验数据完整性

所谓摘要算法,也可以称为:哈希算法,离散算法。即通过一个函数,将任意长度的数据转化为一个长度固定的数据串(通常16进制)

摘要算法:

? 摘要一样,内容就一定一样:保证唯一性

?
密文密码就是一个摘要

import hashlib

def pwd_md5(pwd):
    md5_obj = hashlib.md5()   #创建一个md5对象
    str1 = '1234'   
    md5_obj.update(str1.encode('utf-8'))    #update中一定要传入bytes类型数据
    sal = '加盐加盐'
    md5_obj.update(sal.encode('utf-8'))     #为了防止撞库,加盐

    res = md5_obj.hexdigest()       #变成16进制
    print(res)
    
#验证
with open('user.txt','r',encoding='utf-8') as f:        #打开文件
    user_str = f.read()                             #读取文件
    
file_user,file_pwd = user_str.strip(':')        #用户名,密码  切分

username = input("输入用户名:").strip
password = input("输入密码:").strip

if username == file_user and pwd_md5(password) == file_pwd: #将输入的md5加密,与文件里的相比
    print("登陆成功")
else:
    print("登陆失败")
    

file_user,file_pwd = user_str.strip(‘:‘)

hashlib

标签:对象   创建   文件   算法   长度   code   lse   rip   update   

原文地址:https://www.cnblogs.com/leiting7/p/11873860.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!