• 密码安全性检查代码


    学习python的过程中,编写的一个检查密码安全性的小脚本

    检查的大体情况如下:

    # 低级密码要求:
    #   1. 密码由单纯的数字或字母组成
    #   2. 密码长度小于等于8位
    #
    # 中级密码要求:
    #   1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|)任意两种组合
    #   2. 密码长度不能低于8位
    #
    # 高级密码要求:
    #   1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?<>;:[]{}|)三种组合
    #   2. 密码只能由字母开头
    #   3. 密码长度不能低于16位

    具体代码:

     1 symbols = r'''`!@#$%^&*()_+-=/*{}[]|'";:/?,.<>'''
     2 chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
     3 nums = '0123456789'
     4 
     5 passwd = input('请输入需要检查的密码组合:')
     6 
     7 # 判断长度
     8 length = len(passwd)
     9 
    10 while (passwd.isspace() or length == 0) :
    11     passwd = input("您输入的密码为空(或空格),请重新输入:")
    12 
    13 if length <= 8:
    14     flag_len = 1
    15 elif 8 < length < 16:
    16     flag_len = 2
    17 else:
    18     flag_len = 3
    19 
    20 flag_con = 0
    21 
    22 # 判断是否包含特殊字符
    23 for each in passwd:
    24     if each in symbols:
    25         flag_con += 1
    26         break
    27    
    28 # 判断是否包含字母
    29 for each in passwd:
    30     if each in chars:
    31         flag_con += 1
    32         break
    33 
    34 # 判断是否包含数字
    35 for each in passwd:
    36     if each in nums:
    37         flag_con += 1
    38         break   
    39 
    40 # 打印结果
    41 while 1 :
    42     print("您的密码安全级别评定为:", end='')
    43     if flag_len == 1 or flag_con == 1 :
    44         print("")
    45     elif flag_len == 2 or flag_con == 2 :
    46         print("")
    47     else :
    48         print("")
    49         print("请继续保持")
    50         break
    51 
    52     print("请按以下方式提升您的密码安全级别:
    
    53     	1. 密码必须由数字、字母及特殊字符三种组合
    
    54     	2. 密码只能由字母开头
    
    55     	3. 密码长度不能低于16位'")
    56     break
    57 
    58  

    代码实现简单,功能可扩展。

  • 相关阅读:
    SQL计算生日所属的星座 XuZhao
    IIS 操作系统 .net FrameWork 的一些常见问题
    Python面向对象4.实例属性、实例方法
    Python面向对象6.init方法
    Python面向对象3.定义类、创建对象
    源码部署zabbix4.0监控
    IE6 Select控件挡住DIV内容解决办法
    转自网上的c#日期大全
    已更新或者删除的行值不能使该行成为唯一行(sql2005) 解决办法
    asp 多行多列加分页代码
  • 原文地址:https://www.cnblogs.com/trey/p/4757345.html
Copyright © 2020-2023  润新知