密码验证,密码强度正则表达式

2026/1/14 23:07:26

密码验证,密码强度正则表达式

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 \\\\表示字符\\。

q \\[表示字符[。 q \\]表示字符]。

q 其他的每一个字符就表示字符本身。

该类型密码的安全性随着密码的长度增加而增加。密码长度越大,它的安全性越高。以下正则表达式能够验证长度至少为6的、只包含特殊字符的密码。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\ (73)

使用工具Regex Tester测试正则表达式(73),结果如图4.34所示。

4.4.5 密码验证(2)

4.当且仅当含数字和字母的密码验证

如果密码当且仅当包含数字和字母,那么该密码的强度是中等强度。当然,它的安全性一般。以下正则表达式能够验证当且仅当包含数字和字母的密码。

[\\da-zA-Z]*\\d+[a-zA-Z]+[\\da-zA-Z]* (74)

正则表达式(74)解释:

\\d

匹配长度至少1的、由数字组成的字符串。

[a-zA-Z]+匹配长度至少1的、由字母组成的字符串。

[\\da-zA-Z]*匹配空字符串,或者长度至少1的、由数字或字母组成的字符串。 \\d+[a-zA-Z]+保证密码既包含了数字又包含特殊字符。

使用工具Regex Tester测试正则表达式(74),结果如图所示。

5.当且仅当含数字和特殊字符的密码验证

如果密码当且仅当包含数字和特殊字符,那么该密码的强度是中等强度。当然,它的安全性一般。以下正则表达式能够验证当且仅当包含数字和特殊字符的密码。

[-\\d`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\~!@#$%^&*()_+|{}:\ (75)

正则表达式(75)解释:

字符类[-\\d`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\:\\d

表示任意数字;\\\\表示字符\\;\\[表示字符[;

\\]表示字符];其他的每一个字符就表示字符本身。该字符类可以匹配数字或者特殊字符。

\\d+匹配最小长度为1的、由数字组成的字符串。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配最小长度为1的、由特殊字符组成的字符串。 \\d+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\保证密码既包含了数字又包含特殊字符。

使用工具Regex Tester测试正则表达式(75),结果如图所示。

6.当且仅当包含字母和特殊字符的密码验证

如果密码当且仅当包含字母和特殊字符,那么该密码的强度是中等强度。当然,它的安全性一般。以下正则表达式能够验证只包含字母和特殊字符的密码。

[-a-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\a-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\ (76)

正则表达式(76)解释:

字符类[-a-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\:a-z

表示小写字母;A-Z表示大写字母;

\\\\表示字符\\;\\[表示字符[;\\]表示字符];其他的每一个字符就表示字符本身。该字符类可以匹配

字母或者特殊字符。

[a-zA-Z]+匹配最小长度为1的、由字母组成的字符串。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配最小长度为1的、由特殊字符组成的字符串。 [a-zA-Z]+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\保证密码既包含了字母又包含特殊字符。

使用工具Regex Tester测试正则表达式(76),结果如图所示。

7.当且仅当包含数字、字母和特殊字符的密码验证

如果密码当且仅当包含数字、字母和特殊字符,那么该密码的强度是高强度。当然,它的安全性相对比较好。以下正则表达式能够验证当且仅当包含数字、字母和特殊字符的密码。

[-\\da-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\ (

(\\d+[a-zA-Z]+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\数字开头 |(\\d+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\数字开头 |([a-zA-Z]+\\d+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\字母开头 |([a-zA-Z]+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\字母开头 |([-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\特殊字符开头 |([-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\特殊字符开头 )

[-\\da-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\ (77)

正则表达式(77)解释:

\\d+匹配最小长度为1的、由数字组成的字符串。 [a-zA-Z]+匹配最小长度为1的、由字母组成的字符串。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配最小长度为1的、由特殊字符组成的字符串。 \\d+[a-zA-Z]+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“数字+字母+特殊字符”类型的

字符串。

(\\d+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“数字+特殊字符+字母”类型

的字符串。

[a-zA-Z]+\\d+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“字母+数字+特殊字符”类型的

字符串。

[a-zA-Z]+[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“字母+特殊字符+数字”类型的

字符串。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“特殊字符+数字+字母”类型的

字符串。

[-`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\匹配型如“特殊字符+字母+数字”类型的

字符串。

字符类[-\\da-zA-Z`=\\\\\\[\\];',./~!@#$%^&*()_+|{}:\:\\d

表示任意数字;a-z表示小写字母;

A-Z表示大写字母;\\\\表示字符\\;\\[表示字符[;\\]表示字符];其他的每一个字符就表示字符本身。该字符类可以匹配数字、字母或者特殊字符。

使用工具Regex Tester测试正则表达式(77),结果如图所示。


密码验证,密码强度正则表达式.doc 将本文的Word文档下载到电脑
搜索更多关于: 密码验证,密码强度正则表达式 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219