linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘网络学院网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > 开发语言 > JavaScript >
栏目导栏
  php
  JSP
  ASP
  asp.net
  JAVA
  c/c++/c#
  perl
  JavaScript
  Basic
  Delphi
资料搜索
热门文章
·javascript 时间对象的格式化
·去掉字符串前后的空格
·javascript 事件监听机制
·javascript 事件调用顺序
·js刷新框架子页面的七种方法
·JavaScript:替换字符串
·IE下的JScript编程需注意的内存
·用javascript操作word文档
·Javascript中CTRL+回车提交表单
·JS 获取鼠标位置
·javascript判断Email地址是否有
·Javascript中Select的OnChange
·JS实现的滑动展开与折叠效果
·有分页功能的WEB打印
·Javascript实现窗口最大化的严
最新文章
·使用CSS改变表格边框样式
·为网页添加浮动广告
·判断表单中添加是否数字的JS与
·让浏览器状态栏动起来
·使用Javascript制作行间颜色间
·禁止用右键查看源代码
·网页侦测四法
·制作弹出公告窗口
·为网页添加特效
·网页中取消鼠标右键方法大全
·JavaScript 根据屏幕解析度显示
·如何实现浏览器上的右键菜单
·如何制作浮动广告
·让弹出窗口变得“体贴”一些
·JavaScript技巧:让网页自动穿上
Google
 
用Javascript评估用户输入密码的强度
[ 作者:  加入时间:2007-10-30 14:06:19  来自:Linux联盟收集整理 ]
密码已经是我们生活工作中必不可少的工具,但一个不安全的密码有又有可能会给我们造成不必要的损失。作为网站设计者,如果我们在网页中能对用户输入的密码进行安全评估,并显示出相应的提示信息,那么对用户设置一个安全的密码将有很大帮助。同时也使得网站更具人性化,更有吸引力.

  什么是一个安全的密码呢?本程序按以下的方式进行评估.

  1.如果密码少于5位,那么就认为这是一个弱密码.

  2.如果密码只由数字、小写字母、大写字母或其它特殊符号当中的一种组成,则认为这是一个弱密码.

  3.如果密码由数字、小写字母、大写字母或其它特殊符号当中的两种组成,则认为这是一个中度安全的密码.

  4.如果密码由数字、小写字母、大写字母或其它特殊符号当中的三种以上组成,则认为这是一个比较安全的密码.

  本程序将根据用户输入的密码分别显示不同的颜色表示密码的强度,具体程序如下:LvpLinux联盟
LvpLinux联盟

<script language=javascript>  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
//CharMode函数  LvpLinux联盟
//测试某个字符是属于哪一类.  LvpLinux联盟
function CharMode(iN){  LvpLinux联盟
if (iN>=48 && iN <=57) //数字  LvpLinux联盟
return 1;  LvpLinux联盟
if (iN>=65 && iN <=90) //大写字母  LvpLinux联盟
return 2;  LvpLinux联盟
if (iN>=97 && iN <=122) //小写  LvpLinux联盟
return 4;  LvpLinux联盟
else  LvpLinux联盟
return 8; //特殊字符  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
//bitTotal函数  LvpLinux联盟
//计算出当前密码当中一共有多少种模式  LvpLinux联盟
function bitTotal(num){  LvpLinux联盟
modes=0;  LvpLinux联盟
for (i=0;i<4;i++){  LvpLinux联盟
if (num & 1) modes++;  LvpLinux联盟
num>>>=1;  LvpLinux联盟
LvpLinux联盟
return modes;  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
//checkStrong函数  LvpLinux联盟
//返回密码的强度级别  LvpLinux联盟
LvpLinux联盟
function checkStrong(sPW){  LvpLinux联盟
if (sPW.length<=4)  LvpLinux联盟
return 0; //密码太短  LvpLinux联盟
Modes=0;  LvpLinux联盟
for (i=0;i<sPW.length;i++){  LvpLinux联盟
//测试每一个字符的类别并统计一共有多少种模式.  LvpLinux联盟
Modes|=CharMode(sPW.charCodeAt(i));  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
return bitTotal(Modes);  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
//pwStrength函数  LvpLinux联盟
//当用户放开键盘或密码输入框失去焦点时,根据不同的级别显示不同的颜色  LvpLinux联盟
LvpLinux联盟
function pwStrength(pwd){  LvpLinux联盟
O_color="#eeeeee";  LvpLinux联盟
L_color="#FF0000";  LvpLinux联盟
M_color="#FF9900";  LvpLinux联盟
H_color="#33CC00";  LvpLinux联盟
if (pwd==null||pwd==''){  LvpLinux联盟
Lcolor=Mcolor=Hcolor=O_color;  LvpLinux联盟
LvpLinux联盟
else{  LvpLinux联盟
S_level=checkStrong(pwd);  LvpLinux联盟
switch(S_level) {  LvpLinux联盟
case 0:  LvpLinux联盟
Lcolor=Mcolor=Hcolor=O_color;  LvpLinux联盟
case 1:  LvpLinux联盟
Lcolor=L_color;  LvpLinux联盟
Mcolor=Hcolor=O_color;  LvpLinux联盟
break;  LvpLinux联盟
case 2:  LvpLinux联盟
Lcolor=Mcolor=M_color;  LvpLinux联盟
Hcolor=O_color;  LvpLinux联盟
break;  LvpLinux联盟
default:  LvpLinux联盟
Lcolor=Mcolor=Hcolor=H_color;  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
document.getElementById("strength_L").style.background=Lcolor;  LvpLinux联盟
document.getElementById("strength_M").style.background=Mcolor;  LvpLinux联盟
document.getElementById("strength_H").style.background=Hcolor;  LvpLinux联盟
return;  LvpLinux联盟
LvpLinux联盟
LvpLinux联盟
</script>  LvpLinux联盟
LvpLinux联盟
<form name=form1 action="" >  LvpLinux联盟
输入密码:<input type=password size=10 onKeyUp=pwStrength(this.value) onBlur=pwStrength(this.value)>  LvpLinux联盟
<br>密码强度:  LvpLinux联盟
<table width="217" border="1" cellspacing="0" cellpadding="1" LvpLinux联盟
bordercolor="#cccccc" height="23" style='display:inline'>  LvpLinux联盟
<tr align="center" bgcolor="#eeeeee">  LvpLinux联盟
LvpLinux联盟
<td width="33%" id="strength_L">弱</td>  LvpLinux联盟
LvpLinux联盟
<td width="33%" id="strength_M">中</td>  LvpLinux联盟
LvpLinux联盟
<td width="33%" id="strength_H">强</td>  LvpLinux联盟
</tr>  LvpLinux联盟
</table>  LvpLinux联盟
</form> 
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·通过JAVAScript实现页面自适应  (2007-10-30 14:27:43)
 ·如何优化JavaScript脚本的性能  (2007-10-30 14:25:25)
 ·几个有用的Javascript验证脚本  (2007-10-30 14:24:47)
 ·Javascript+ASP打造无刷新新闻列表  (2007-10-30 14:23:38)
 ·如何用javascript防止双击  (2007-10-30 14:19:44)
 ·JavaScript 访问 JSF 组件的方法  (2007-10-30 14:18:21)
 ·JavaScript实现仿Windows关机效果  (2007-10-30 14:14:42)
 ·JavaScript去除空格的三种方法  (2007-10-30 14:07:32)
 ·JavaScript处理事件:单击事件onClick  (2007-10-30 14:01:38)
 ·Javascript制作声音按钮的代码  (2007-10-30 13:53:06)