Python常用模块 之 hashlib模块——简单实现实现登录注册

Python常用模块 之 hashlib模块——简单实现实现登录注册(唯一要求:使用hashlib中的md5进行加密!)importhashlibimportredefdenglu():user1=input(‘请输入你的账号:’)pwd=input(‘请输入你的密码:’)count=0withopen(‘json1.txt’,’r’)asf:foriinf:user,passwd=i.split(‘|’)resu

大家好,又见面了,我是你们的朋友全栈君。

(唯一要求:使用hashlib中的md5进行加密!)

 import hashlib
import re

def denglu():
    user1 = input('请输入你的账号:')
    pwd  = input('请输入你的密码:')
    count = 0
    with open('json1.txt','r') as f:
        for i in f:
            user,passwd = i.split('|')   
            result_pwd = re.findall(r'\S+',passwd)[0]   
            
            # 加盐操作
            pwd_a = '加密加密' + pwd + '#¥@¥@#@@#'
            res = hashlib.md5(pwd_a.encode())
            res_pwd = res.hexdigest()
            
            if user1 ==user and res_pwd == result_pwd:
                print('输入正确')
                count +=1

        if count ==0:
            print('输入错误')

def zhuce():
    usr = input('请输入你要注册的名字:')
    pwd = input('请输入你要注册的密码:')
    pwd_n = '加密加密' + pwd + '#¥@¥@#@@#'
    res_pwd = hashlib.md5(pwd_n.encode())
    pwd = res_pwd.hexdigest()
    with open('json1.txt','a+') as f:
        f.write(usr+'|'+pwd + '\n')

while True:
    try:
        a = int(input('请输入你要执行的操作:1.注册,2登录,3.退出\n:'))
    except ValueError as f:
        print('问题是:%s'%f)
        break
    if a == 1:
        zhuce()
    elif a == 2:
        denglu()
    elif a == 3:
        break
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/130624.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 根据sessionid获取session对象_sessionattributes注解

    根据sessionid获取session对象_sessionattributes注解session.setAttribute(“sessionName”,Object);用来设置session值的,sessionName是名称,object是你要保存的对象。session.getAttribute(“sessionName”);用来得到对应名称的session值,即得到object对象,注意需要进行类型转换!

    2022年10月7日
    4
  • 可以下载离线地图的软件_bt软件下载器

    可以下载离线地图的软件_bt软件下载器百度网盘:https://pan.baidu.com/s/1Nj6NcU1F2Y1f0kP9KgUlxg提取码:bxgh打开百度网盘并解压以后,你得到的东西是这些:第一先点击:MapTileDownloader_Ultimate_1.9.5.ext然后剩下几步都是默认安装就行;注意最后一步:先不要勾选接下来打开你安装的文件(从解压的文件里面把…

    2022年9月20日
    2
  • jenkins自动触发构建_秒级定时触发器

    jenkins自动触发构建_秒级定时触发器前言跑自动化用例每次用手工点击jenkins出发自动化用例太麻烦了,我们希望能每天固定时间跑,这样就不用管了,坐等收测试报告结果就行。jenkins的定时任务是用的crontab语法定时构建语法

    2022年7月29日
    9
  • rj45 千兆接口定义_网线的RJ45接口的针脚定义「建议收藏」

    我们生活中常用的网线接头类型分为两类:用于连接到网络中的终端设备的DTE类型,如连接到PC机的网卡的网线属于DTE型。还有用于网络设备间连接的DCE类型,如路由器连接到交换机的线或交换机连接到交换机的线均属于DCE型。DTE我们称做“数据终端设备”,这里的终端是一个广义的概念,PC也可以是终端(一般广域网常用DTE设备有路由器、终端主机)。DCE我们称做“数据通信设备”,如MODEM,连接DTE设…

    2022年4月10日
    562
  • 解决微信小程序errcode:40029[通俗易懂]

    解决微信小程序errcode:40029[通俗易懂]第一次接触微信小程序,喜提errcode:40029errmsg:”invalidcode,hints:[req_id:6HfBbZyFe-8y]场景:写完接口之后前端联调一直500,最后发现是获取的时候微信报错了。解决办法:导入项目的时候appid要填入你请求session_key的appid,如图所示(我这个开发者工具是旧版的)还有一种解决方法是其他文章找…

    2022年5月24日
    356
  • 简单的Samba文件共享服务搭建「建议收藏」

    简单的Samba文件共享服务搭建「建议收藏」我们知道windows间是通过CIFS(CommonInternetFileSystem),即网上邻居实现文件共享,unixlike间通过NFS(NetworkFileSystem)通过实现文件共享。那么我们如何实现unix和windows之间的文件共享呢?我们可以通过sshclient,和VNC远程登录和管理Linux主机,这两种都支持ftp协议。我们通过FTP协议进行文件更新时,可能

    2022年9月14日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号