密码安全性检查代码

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

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

原文地址:https://www.cnblogs.com/trey/p/4757345.html