密码验证,密码强度正则表达式
4.4.5
密码验证
http://blog.csdn.net/wlzhengzebiaodashi/archive/2008/03/24/2211800.aspx
当用户登录网站时,一般要求用户提供登录该网站的用户名称和密码。从某种意义上说,密码的复杂
程度越高,用户的信息安全性越高。因此,很多网站在注册用户信息或修改用户密码时,往往会提供一个
密码强度的说明,从而提醒用户使用高强度的密码。
目前来说,密码字符可以分为
3
种:数字、字母和特殊字符(即除数字、字母之外的字符)
。用户密码包含
上述
3
种字符种的种类越多,密码的安全性越高。用户密码只含其中一种的安全性是最低的,如
123455
、
abcdef
等。其次是含上述
2
种字符的密码,如
123abc
、
123!@#
等。密码强度最好的是:包含上述
3
种字符,
如
123QAZ!@#
。
注意:本小节中的特殊字符包括
`
、
-
、
=
、
\
、
[
、
]
、
;
、
'
、
,
、
.
、
/
、
~
、
!
、
@
、
#
、
$
、
%
、
^
、
&
、
*
、
(
、
)
、
_
、
+
、
|
、
?
、
>
、
<
、
"
、
:
、
{
和
}
字符。
1
.只包含数字的密码验证
如果密码中只包含数字,那么该密码是非常简单。当然,它的安全性也相对较差。以下正则表达式能
够验证只包含数字的密码。
\d+
(
68
)
该类型密码的安全性随着密码的长度增加而增加。密码长度越大,它的安全性越高。以下正则表达式能够
验证长度至少为
6
的、只包含数字的密码。
\d{6,}
(
69
)
2
.只包含字母的密码验证
如果密码中只包含字母,那么该密码是非常简单。当然,它的安全性也相对较差。以下正则表达式能
够验证只包含字母的密码。
[a-zA-Z]+
(
70
)
该类型密码的安全性随着密码的长度增加而增加。密码长度越大,它的安全性越高。以下正则表达式能够
验证长度至少为
6
的、只包含字母的密码。
[a-zA-Z]{6,}
(
71
)
3
.只包含特殊字符的密码验证
如果密码中只包含特殊字符,那么该密码是非常简单。当然,它的安全性也相对较差。以下正则表达
式能够验证只包含特殊字符的密码。
[-`=\\\[\];',./~!@#$%^&*()_+|{}:"<>?]+
(
72
)
正则表达式(
72
)解释:
q
\\
表示字符
\
。