密码强度计算策略
大学上课时,老师就提到千万不要小看登录、注册模块,设计起来也是会很复杂的。那时候编程刚入门没体会,心想登录、注册不就几个input,提交两个表单就完事了嘛。哈哈哈,现在想起来真是年轻!后来慢慢知道了表单校验、图形验证码、邮箱验证等等。
今天这个问题,同样来自于看似简单的注册模块,在注册账号设置密码时,根据输入的密码显示其安全系数。那么是怎么计算密码强度?就来一起探索下这个规则大致都是这么设计的吧!
(这是一个图片!)
首先说明,密码的强度越高,代表的是越不容易被猜测攻击给破解,而不能防止恶意程序或按键记录器窃取。
1 基于密码组合
组合规则很简单也最常见,即要求密码中至少包含4类字符中的3类,即:
- 大写字符[A-Z]
- 小写字符[a-z]
- 数字[0-9]
- 特殊字符:~!@#$%^&*_-+=`|(){}[]:;"’<>,.?/
由于之前做过一题oj,所以设计的时候最开始就想到了这个方法。题目是:牛客网——密码强度等级(这个题目好像是来自于华为OJ