用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 相关文章推荐
javascript延时加载之defer测试
Dec 28 Javascript
JavaScript中的字符串操作详解
Nov 12 Javascript
jquery操作 iframe的方法
Dec 03 Javascript
Backbone.js中的集合详解
Jan 14 Javascript
JS+CSS模拟可以无刷新显示内容的留言板实例
Mar 03 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
Jul 20 Javascript
js事件处理程序跨浏览器解决方案
Mar 27 Javascript
JS遍历ul下的li点击弹出li的索引的实现方法
Sep 19 Javascript
基于node.js制作简单爬虫教程
Jun 29 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
Sep 29 Javascript
ES6中let 和 const 的新特性
Sep 03 Javascript
vue实现树状表格效果
Dec 29 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
玩家交还《星际争霸》原始码光盘 暴雪报以厚礼
2017/05/05 星际争霸
PHP伪静态页面函数附使用方法
2008/06/20 PHP
PHP实现生成推广海报的方法详解
2018/03/14 PHP
JS启动应用程序的一个简单例子
2008/05/11 Javascript
js中的scroll和offset 使用比较的实例与分析
2013/09/29 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
2016/10/10 Javascript
原生js实现日期计算器功能
2017/02/17 Javascript
js鼠标移动时禁止选中文字
2017/02/19 Javascript
Three.js开发实现3D地图的实践过程总结
2017/11/20 Javascript
详解js常用分割取字符串的方法
2019/05/15 Javascript
微信小程序动态显示项目倒计时
2019/06/20 Javascript
p5.js临摹动态图形的方法
2019/10/23 Javascript
详解vue实现坐标拾取器功能示例
2020/11/18 Vue.js
用Python编写一个简单的FUSE文件系统的教程
2015/04/02 Python
python实现解数独程序代码
2017/04/12 Python
Python检测网络延迟的代码
2018/05/15 Python
对Python中一维向量和一维向量转置相乘的方法详解
2019/08/26 Python
python加载自定义词典实例
2019/12/06 Python
Python操作MongoDb数据库流程详解
2020/03/05 Python
Django表单提交后实现获取相同name的不同value值
2020/05/14 Python
Tensorflow全局设置可见GPU编号操作
2020/06/30 Python
蔻驰美国官网:COACH美国
2016/08/18 全球购物
FILA斐乐中国官方商城:意大利运动品牌
2017/01/25 全球购物
Sahajan美国:阿育吠陀护肤品牌
2021/01/09 全球购物
FragranceNet中文网:北美健康美容线上零售商
2020/08/26 全球购物
公司前台接待岗位职责
2013/12/03 职场文书
行政部岗位职责范本
2014/03/13 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
2014年精神文明工作总结
2014/12/23 职场文书
优秀党务工作者先进事迹材料
2014/12/25 职场文书
开学随笔
2015/08/15 职场文书
Python合并多张图片成PDF
2021/06/09 Python
Vue鼠标滚轮滚动切换路由效果的实现方法
2021/08/04 Vue.js
MySQL的全局锁和表级锁的具体使用
2021/08/23 MySQL
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers
Python创建SQL数据库流程逐步讲解
2022/09/23 Python