您的位置:首页 > Web前端 > JavaScript

javascript:评估用户输入的密码的强度

2013-11-15 14:39 363 查看
来自:http://outofmemory.cn/code-snippet/4655/pinggu-user-out-password-force

// Password strength meter
function passwordStrength(password1, username, password2) {
var shortPass = 1,
badPass = 2,
goodPass = 3,
strongPass = 4,
mismatch = 5,
symbolSize = 0,
natLog, score;

// password 1 != password 2
if ((password1 != password2) && password2.length > 0)
return mismatch
//password < 4
if (password1.length < 4)
return shortPass
//password1 == username
if (password1.toLowerCase() == username.toLowerCase())
return badPass;

if (password1.match(/[0-9]/))
symbolSize += 10;
if (password1.match(/[a-z]/))
symbolSize += 26;
if (password1.match(/[A-Z]/))
symbolSize += 26;
if (password1.match(/[^a-zA-Z0-9]/))
symbolSize += 31;

natLog = Math.log(Math.pow(symbolSize, password1.length));
score = natLog / Math.LN2;

if (score < 40)
return badPass
if (score < 56)
return goodPass

return strongPass;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: