写一段python检查并判断密码字符串的安全强度代码
时间: 2023-12-27 15:02:40 浏览: 97
python不相等的两个字符串的 if 条件判断为True详解
5星 · 资源好评率100%
以下是Python代码实现检查并判断密码字符串的安全强度的功能:
```python
import re
def check_password_strength(password):
# 判断密码长度是否符合要求
if len(password) < 8:
return "密码长度不足8位"
# 判断密码是否包含数字、小写字母、大写字母和特殊符号
pattern = r'^.*(?=.{8,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&+=]).*$'
if not re.match(pattern, password):
return "密码必须包含数字、小写字母、大写字母和特殊符号"
# 判断密码是否过于简单,如:123456、abcdefg等常见密码
simple_passwords = ['123456', 'password', '123456789', '12345678', '12345', '1234567', '1234567890',
'qwerty', 'abc123', '111111', 'admin', 'letmein', 'welcome', 'monkey', 'baseball',
'dragon', 'football', 'iloveyou', 'trustno1']
if password.lower() in simple_passwords:
return "密码过于简单,请重新设置"
# 判断密码是否安全
return "密码安全"
# 调用函数检查并判断密码强度
password = input("请输入密码:")
result = check_password_strength(password)
print(result)
```
在运行代码时,会要求用户输入一个密码,代码会对输入的密码进行检查并判断其安全强度。具体判断规则如下:
1. 密码长度不足8位时,认为密码不安全。
2. 密码必须包含数字、小写字母、大写字母和特殊符号。
3. 密码不能过于简单,不能是一些常见密码,如:123456、abcdefg等。
4. 如果密码符合以上要求,则认为密码安全。
根据以上规则,代码会输出相应的判断结果,例如:"密码必须包含数字、小写字母、大写字母和特殊符号"、"密码过于简单,请重新设置"或"密码安全"。
阅读全文