zoukankan      html  css  js  c++  java
  • hashlib模块与摘要算法

    摘要算法又称哈希算法、散列算法。它通过一个函数,把任意长度的数据转换为一个长度固定的数据串

    只能加密不能解密

    # import hashlib
    # md5 = hashlib.md5()      #使用md5算法
    # md5.update(b'af1455')     #对字符串进行摘要算法
    # print(md5.hexdigest())    #打印摘要后的数据串
    使用同一个算法对同一个字符串摘要 得到的值永远不变
    #随着算法的复杂 占用的空间越大
    
    
    
    
    import hashlib
    usr = input('username')
    pwd = input('password')
    with open('user') as f:
        for line in f:
            name,passd = line.split('|')
            md5 = hashlib.md5()
            md5.update(bytes(pwd,encoding ='utf-8' ))
            nae = md5.hexdigest()
            if name == usr and passd == nae:
                print('登陆成功')
            else:print('用户名或密码错误')

    ############## hashlib.md5(bytes('salt',encoding='utf-8'))  #加盐
    #############################################################加盐使摘要算法更复杂,避免被撞库

    市面上很多使用密码登录都是摘要算法做过加密的,服务端也看不到用户的密码,所以只能重置密码,而不会告诉用户原密码

  • 相关阅读:
    生成器
    迭代器
    装饰器
    Maven工具学习(六)----Maven依赖的版本锁定与版本常量
    SpringBoot学习记录之整合JSP
    SpringBoot学习记录之入门篇
    【k8s】ep-addresses
    【k8s】ep-metadata
    【k8s】Endpoints
    【k8s】cj-suspend
  • 原文地址:https://www.cnblogs.com/mu-tang/p/14164850.html
Copyright © 2011-2022 走看看