c# - 正则表达式密码检查器

标签 c# regex security passwords

我正在创建一些正则表达式代码,以便在客户尝试创建帐户时检查密码。目前我有两段代码在测试时似乎有效:- http://www.regexplanet.com/simple/index.html .

第一位是:

^.*(?=.{8,})(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=]).*$

这确保:

  • 密码长度为8位
  • 至少包含一个小写字母、一个大写字母、一个数字和一个特殊字符

第二部分是:

\S*(.)\1{3,}\S*

这确保:

匹配任何 4 个或更多连续的相同字符。

问题是,如何将它们结合起来?我试过无济于事,但它们似乎单独运行良好。

谢谢

最佳答案

您可能需要考虑允许密码长度至少超过 12 个字符。帮自己一个忙,帮客户一个忙,允许客户使用大于 12 个字符的任何大小的密码。任何小于 12 的东西都非常容易暴力破解。

关于你的问题,我会让其他人回答。

关于c# - 正则表达式密码检查器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8154737/

相关文章:

regex - 如何替换 Notepad++ /Visual Studio中的特定模式

python - 如何在python中从文件名的下划线后提取特定数字

javascript - Paypal IPN - 在打开 Paypal 网站之前重定向页面

javascript - 利用 JavaScript 的 eval() 方法

c# - EF 6.0 where 子句后的项目不正确

c# - 将 C# 项目设置为始终在 Release模式下编译,反之亦然

c# - 如何在 C# 中创建全局变量?

java - 正则表达式更改 eclipse 中属性的大小写

node.js - 安装(运行)国外 npm 模块有哪些风险?我们可以限制风险吗?

c# - 模棱两可的调用匹配困惑