Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Regex 密码安全要求-排除常用单词和键盘模式_Regex_Security_Passwords - Fatal编程技术网

Regex 密码安全要求-排除常用单词和键盘模式

Regex 密码安全要求-排除常用单词和键盘模式,regex,security,passwords,Regex,Security,Passwords,我想问一下,是否有任何建议的方法来强制执行以下密码策略要求 排除密码中的常用词 排除键盘模式(如QWERTY789) 目前,我只使用正则表达式来指定密码的复杂性。实现这一点的最佳/推荐方法是什么 如果有一个要排除的单词列表,那么regex可能不是正确的选择。您需要设置一个无效单词列表,并检查输入是否包含一个排除的单词。Regex适用于“密码不得包含重复的数字,如11、22、33”、“密码不应包含3个或更多字符的重复文本,如abcabc”等如果有要排除的单词列表,则Regex可能不是正确的选择

我想问一下,是否有任何建议的方法来强制执行以下密码策略要求

  • 排除密码中的常用词
  • 排除键盘模式(如QWERTY789)

目前,我只使用正则表达式来指定密码的复杂性。实现这一点的最佳/推荐方法是什么

如果有一个要排除的单词列表,那么regex可能不是正确的选择。您需要设置一个无效单词列表,并检查输入是否包含一个排除的单词。Regex适用于“密码不得包含重复的数字,如11、22、33”、“密码不应包含3个或更多字符的重复文本,如abcabc”等

如果有要排除的单词列表,则Regex可能不是正确的选择。您需要设置一个无效单词列表,并检查输入是否包含一个排除的单词。正则表达式适用于“密码不得包含重复的数字,如11、22、33”、“密码不得包含3个或更多字符的重复文本,如abcabc”等。对于要排除的密码列表,正则表达式是一个不错的选择。Bloom过滤器用于测试元素是否为集合的成员。就你而言, 集合是要排除的密码列表,元素是给定的输入。布卢姆过滤器的优点是速度快;测试操作的复杂性为O(1)。缺点是可能出现假阳性匹配(但没有假阴性)。但是,可以配置假阳性的可能性

如果给定的输入通过了Bloom过滤器,那么用regex测试其他模式。
如果输入无法通过,只需拒绝它。

对于要排除的密码列表,这是一个不错的选择。Bloom过滤器用于测试元素是否为集合的成员。就你而言, 集合是要排除的密码列表,元素是给定的输入。布卢姆过滤器的优点是速度快;测试操作的复杂性为O(1)。缺点是可能出现假阳性匹配(但没有假阴性)。但是,可以配置假阳性的可能性

如果给定的输入通过了Bloom过滤器,那么用regex测试其他模式。 如果输入不能通过,就拒绝它。

我认为这是一个很好的方法。除了JavaScript,还有其他语言的实现。我认为这是一个很好的方法。除了JavaScript之外,还有其他语言的实现。