适用范围:js、node以及其他语言的密码强度验证逻辑参考。
文章说明:分享密码强度验证的逻辑、实例、思路。
简单实例:
//以密码的字符长度,包含内容进行一个得分的输出
var pwd = "admin666888A@";
var num = pwd.length;
var score = 0;
//密码长度得分
if(num>=5){
score+=50;
}
//是否包含特殊字符
var ruler_c = /[`~!@^*_+?:",.\/;'[\]]/;//通过正则进行判断
if(ruler_c.test(pwd)){
//包含的情况进行加分
score+=10;
}
var ruler_lx = /^(?=.*?[a-z])/;//检查是否存在小写字母
if(ruler_lx.test(pwd)){
//包含的情况进行加分
score+=10;
}
var ruler_ld = /^(?=.*?[A-Z])/;//检查是否存在大写字母
if(ruler_ld.test(pwd)){
//包含的情况进行加分
score+=10;
}
var ruler_ls = /^(?=.*?[0-9])/;//检查是否存在数字
if(ruler_ls.test(pwd)){
//包含的情况进行加分
score+=10;
}
console.log('得分'+score);
//....此处自行进行得分和密码强度的提示逻辑书写。
逻辑分享:
1.上述的简单实例,能够达到检测密码强度的目的,但并不完美,适合小白借鉴参考。
2.检测密码强度和提示的交互的实现方法,是多种多样的可以通过封装jquery插件的形式、也可以通过封装一个js函数的形式来达到这样的目的。
思路分享:
1.先制定一个密码强度的标准,如16个字符长度的且包含数字字母大小写、以及符号等内容的为安全密码。
2.进行对密码字符串的检查,并一次进行这几项标准的信息验证,包含则加分,不包含则不加。或者只进行强、中、弱三个类型的评价。