zoukankan      html  css  js  c++  java
  • 密码安全性检查代码

    学习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  

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

  • 相关阅读:
    今天早上打算去菜市场看看是否开张
    昨天晚上雨岳阳通话后,晚上睡着肚子咕咕叫
    已经一周没有开锅了
    今天早上6:00起来,每天晚上回来6点多已经天黑
    其实值班也是一个说法
    感觉每天虽然没有做什么,但是就是觉得睡不够
    现在进入秋季,上海也是在20度左右
    mysql 下 计算 两点 经纬度 之间的距离 含具体sql语句
    java解析xml的几种方式
    myeclipse安装svn插件的多种方式
  • 原文地址:https://www.cnblogs.com/trey/p/4757345.html
Copyright © 2011-2022 走看看