用Javascript评估用户输入密码的强度实现代码


Posted in Javascript onNovember 30, 2011

1.如果密码少于5位,那么就认为这是一个弱密码。
2.如果密码只由数字、小写字母、大写字母或其它特殊符号当中的一种组成,则认为这是一个弱密码。
3.如果密码由数字、小写字母、大写字母或其它特殊符号当中的两种组成,则认为这是一个中度安全的密码。
4.如果密码由数字、小写字母、大写字母或其它特殊符号当中的三种以上组成,则认为这是一个比较安全的密码。

<script language="javascript"> 
//CharMode函数 function CharMode(iN){ 
if (iN>=48 && iN <=57) //数字 
return 1; 
if (iN>=65 && iN <=90) //大写字母 
return 2; 
if (iN>=97 && iN <=122) //小写 
return 4; 
else 
return 8; //特殊字符 //bitTotal函数 function bitTotal(num){ 
modes=0; 
for (i=0;i<4;i++){ 
if (num & 1) modes++; 
num>>>=1; return modes; //checkStrong函数 function checkStrong(sPW){ 
if (sPW.length<=4) 
return 0; //密码太短 
Modes=0; 
for (i=0;i<sPW.length;i++){ Modes|=CharMode(sPW.charCodeAt(i)); return bitTotal(Modes); //pwStrength函数 function pwStrength(pwd){ 
O_color="#eeeeee"; 
L_color="#FF0000"; 
M_color="#FF9900"; 
H_color="#33CC00"; 
if (pwd==null||pwd==''){ 
Lcolor=Mcolor=Hcolor=O_color; else{ 
S_level=checkStrong(pwd); 
switch(S_level) { 
case 0: 
Lcolor=Mcolor=Hcolor=O_color; 
case 1: 
Lcolor=L_color; 
Mcolor=Hcolor=O_color; 
break; 
case 2: 
Lcolor=Mcolor=M_color; 
Hcolor=O_color; 
break; 
default: 
Lcolor=Mcolor=Hcolor=H_color; } 
document.getElementByIdx_x("strength_L").style.background=Lcolor; 
document.getElementByIdx_x("strength_M").style.background=Mcolor; 
document.getElementByIdx_x("strength_H").style.background=Hcolor; 
return; </script> 
<form name=form1 action="" > 
输入密码:<input type="password" size="10" onKeyUp="pwStrength(this.value)" onBlur="pwStrength(this.value)"> 
<br>密码强度: 
<table width="217" border="1" cellspacing="0" cellpadding="1" 
bordercolor="#cccccc" height="23" style='display:inline'> 
<tr align="center" bgcolor="#eeeeee"> 
<td width="33%" id="strength_L">弱</td> 
<td width="33%" id="strength_M">中</td> 
<td width="33%" id="strength_H">强</td> 
</tr> 
</table> 
</form>
Javascript 相关文章推荐
Jsonp 跨域的原理以及Jquery的解决方案
Jun 27 Javascript
JavaScript格式化日期时间的方法和自定义格式化函数示例
Apr 04 Javascript
kindeditor编辑器点中图片滚动条往上顶的bug
Jul 05 Javascript
pace.js页面加载进度条插件
Sep 29 Javascript
JS实现合并两个数组并去除重复项只留一个的方法
Dec 17 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
Apr 01 Javascript
jQuery设置Easyui校验规则(推荐)
Nov 21 Javascript
jQuery validate 验证radio实例
Mar 01 Javascript
Angular2实现自定义双向绑定属性
Mar 22 Javascript
如何选择jQuery版本 1.x? 2.x? 3.x?
Apr 01 jQuery
原生javascript制作贪吃蛇小游戏的方法分析
Feb 26 Javascript
浅析VUE防抖与节流
Nov 24 Vue.js
用Javascript评估用户输入密码的强度(Knockout版)
Nov 30 #Javascript
Ubuntu 11.10 安装Node.js的方法
Nov 30 #Javascript
JavaScript中数组的排序、乱序和搜索实现代码
Nov 30 #Javascript
js常用代码段整理
Nov 30 #Javascript
firebug的一个有趣现象介绍
Nov 30 #Javascript
兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
Nov 30 #Javascript
Javascript的getYear、getFullYear、getUTCFullYear异同分享
Nov 30 #Javascript
You might like
数据库相关问题
2006/10/09 PHP
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
2007/01/29 PHP
destoon实现公司新闻详细页添加评论功能的方法
2014/07/15 PHP
PHP中使用SimpleXML检查XML文件结构实例
2015/01/07 PHP
php导出中文内容excel文件类实例
2015/07/06 PHP
javascript背投广告代码的完善
2008/04/08 Javascript
javascript 学习笔记(onchange等)
2010/11/14 Javascript
简介JavaScript中search()方法的使用
2015/06/06 Javascript
Javascript的表单与验证-非空验证
2016/03/18 Javascript
JS创建事件的三种方法(实例代码)
2016/05/12 Javascript
详解微信小程序开发—你期待的分享功能来了,微信小程序序新增5大功能
2016/12/23 Javascript
从零学习node.js之利用express搭建简易论坛(七)
2017/02/25 Javascript
js学习总结之DOM2兼容处理重复问题的解决方法
2017/07/27 Javascript
bootstrap treeview 扩展addNode方法动态添加子节点的方法
2017/11/21 Javascript
vue-router懒加载速度缓慢问题及解决方法
2018/11/25 Javascript
vue进入页面时滚动条始终在底部代码实例
2019/03/26 Javascript
koa大型web项目中使用路由装饰器的方法示例
2019/04/02 Javascript
JavaScript实现图片放大预览效果
2020/11/02 Javascript
[02:41]DOTA2英雄基础教程 谜团
2013/12/10 DOTA
[03:49]辉夜杯现场龙骑士COSER秀情商“我喜欢芬队!”
2015/12/27 DOTA
[01:39:42]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
在Python中pandas.DataFrame重置索引名称的实例
2018/11/06 Python
python Plotly绘图工具的简单使用
2020/03/03 Python
python print 格式化输出,动态指定长度的实现
2020/04/12 Python
基于python生成英文版词云图代码实例
2020/05/16 Python
python 利用toapi库自动生成api
2020/10/19 Python
捷克购买家具网站:JENA nábytek
2020/03/19 全球购物
介绍一下Java中的static关键字
2012/05/12 面试题
教师考核评语
2014/04/28 职场文书
法人授权委托书
2014/09/16 职场文书
2015年保险公司个人工作总结
2015/05/22 职场文书
论文答辩开场白大全
2015/05/27 职场文书
2015年入党积极分子培养考察意见
2015/08/12 职场文书
《草虫的村落》教学反思
2016/02/20 职场文书
Python并发编程实例教程之线程的玩法
2021/06/20 Python
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android