转自:http://www.builder.com.cn/2007/0913/505281.shtml
密码已经是我们生活工作中必不可少的工具,但一个不安全的密码有又有可能会给我们造成不必要的损失。作为网站设计者,如果我们在网页中能对用户输入的密码进行安全评估,并显示出相应的提示信息,那么对用户设置一个安全的密码将有很大帮助。同时也使得网站更具人性化,更有吸引力。
什么是一个安全的密码呢?本程序按以下的方式进行评估。
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.getElementById("strength_L").style.background=Lcolor;
document.getElementById("strength_M").style.background=Mcolor;
document.getElementById("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实现这一功能。 首先,我们来看代码中的关键函数: 1. `CharMode` ...
对于密码强度判断,JavaScript可以实时地验证用户在输入框中输入的字符,提供即时反馈,帮助用户创建更安全的密码。 首先,我们需要获取用户输入的密码。这可以通过HTML的`<input>`元素和JavaScript的`document....
### JavaScript密码强度判断代码解析 在现代Web应用中,用户数据的安全性至关重要,而密码作为保护用户账户的第一道防线,其强度直接关系到账户的安全。本文将深入解析一段JavaScript代码,该代码用于评估用户输入...
通过JavaScript评估输入密码的强度,并用图形或文字反馈给用户。这通常基于密码长度、字符复杂度等因素。 6. **自动填充与阻止** 浏览器的自动填充功能有时可能造成安全隐患。开发者可以使用JavaScript禁用特定...
实现JavaScript密码强度测试的基本思路是设定一系列规则来评估输入的密码,并根据这些规则给出相应的分数。以下是一些常见的密码强度检查标准: 1. **长度**:通常,密码长度越长,其强度越高。建议至少8个字符,但...
总的来说,"可以不刷新页面检测用户输入的密码强度"这一功能是通过JavaScript实现实时反馈,结合前端和后端的安全策略,为用户提供了一个友好且安全的密码设置环境。这一技术的运用不仅提高了用户体验,也提升了系统...
本篇文章将深入探讨如何使用JavaScript实现简单、一般到加强型的密码强度检查。 首先,我们需要理解密码强度的基本要素。一个强大的密码通常应包含以下几点: 1. 长度:密码长度至少应为8个字符,但更长的密码通常...
标题中的知识点是使用JavaScript编写一个程序来评估用户输入的密码强度。这个功能是网络安全和用户认证的一个重要方面,因为强大的密码能有效防止未经授权的访问。描述中提到了四种不同的密码强度级别,根据密码的...
`passwdqc` 是一个用于密码强度检测和策略实施的工具,最初是用 C 语言编写的,而"passwdqc的JavaScript端口"则是将其功能移植到了 JavaScript 语言中,使得在 Web 前端也能进行密码安全性的评估。这个压缩包文件 ...
在所提供的文件内容中,通过Javascript实现了一个简单的密码强度评估系统。该系统通过几个主要的函数来评估密码强度,并根据评估结果对界面元素进行动态的样式更改,反映出密码的强度等级。 ### 关键知识点详解: ...
此外,还可以使用现有的库,如zxcvbn,这是一个强大的密码强度估计库,它可以考虑更多的因素,如常用密码、用户名和其他上下文信息,给出更准确的评估。 在实际应用中,可以结合后端验证,确保即使前端检查通过,...
标题中的“用于评估密码强度的VanillaJavaScript插件”指的是一个使用纯JavaScript编写的轻量级工具,旨在帮助用户在创建新密码时检查其安全性。这个插件通常会在用户输入密码时实时显示密码强度,根据密码的复杂度...
2. **JavaScript实现**:在JavaScript中,可以通过监听输入事件(如`oninput`)来实时检测密码强度。以下是一种可能的实现方式: - 使用正则表达式匹配各种字符类型,计算每种类型的字符数量。 - 给每个匹配的...
在 JavaScript 中,我们可以实现密码强度检查器,以根据某些标准评估密码的健壮性。 为了确定密码的强度,我们通常会考虑长度、是否存在大写和小写字母、数字和特殊字符等因素。强密码通常将这些元素组合在一起以...
根据给定文件的信息,本文将详细解析如何使用JavaScript来评估密码强度,并且通过代码示例进行解释。 ### 一、密码强度评估的概念 密码强度评估是网络安全中的一个重要环节,它通过对用户设置的密码进行分析,给出...
标题中的“用于估计用户输入密码强度的jQuery插件”指的是一个JavaScript库,它结合了jQuery框架,用于实时评估用户在密码输入字段中键入的密码的安全性。这种插件通常会根据密码的长度、复杂性(包括大写字母、小写...
标签“密码强度验证”进一步明确了这个话题的核心,即通过某种算法或规则来评估用户输入的密码是否足够强,通常包括长度、字符复杂性(如包含大小写字母、数字、特殊字符等)等因素。 在提供的压缩包文件中,我们...