C# - 通用密码预防实现
C# - Common Password Prevention Implementation
阅读了一些关于密码策略和强度的内容后,我想实现一个通用密码库以不允许用户select。
我没有将密码列表存储在服务器上(并且必须手动更新它们),而是考虑从 SecLists 等实时源读取它们。这可能会奏效,但仍然需要手动更新路径(如果发布了新集),或者有某种方法可以避免每次用户注册时从源中拉取。
我想看看是否有一个常用的 C# 通用密码库 可以避免,所以更新就像更新 nuget 包一样简单。这样的事情是否存在,或者使用这样的库是否会损害您的密码安全性?
但是,通过允许他人知道您不允许使用哪些密码,那么在尝试访问您的系统时就可以排除这些密码。所以我不知道如何最好地解决这个问题。我们被告知我们必须使用通用密码列表以及我们的其他安全选项。
我已经看到一些很好的 js 实现如何使用密码策略滑块解决这个问题,所以我怀疑某处有一个优雅的解决方案
TL;DR 不要这样做
互联网上有许多泄露的密码列表,您可以通过简单的检查有效地检查所有密码:
bool Match(string newPassword)
{
var passwords = File.ReadAllLines("passwords.lst");
return passwords.Any(x=> x == newPassword);
}
但是
用户是愚蠢的。您越难使用密码,他们就越有可能将密码写在贴在显示器上的 post-it 便条上。归根结底,这是他们的帐户,如果它遭到破坏,这不是你的问题(假设这并不意味着他们可以访问系统资源,这是你的问题)。
阅读了一些关于密码策略和强度的内容后,我想实现一个通用密码库以不允许用户select。
我没有将密码列表存储在服务器上(并且必须手动更新它们),而是考虑从 SecLists 等实时源读取它们。这可能会奏效,但仍然需要手动更新路径(如果发布了新集),或者有某种方法可以避免每次用户注册时从源中拉取。
我想看看是否有一个常用的 C# 通用密码库 可以避免,所以更新就像更新 nuget 包一样简单。这样的事情是否存在,或者使用这样的库是否会损害您的密码安全性?
但是,通过允许他人知道您不允许使用哪些密码,那么在尝试访问您的系统时就可以排除这些密码。所以我不知道如何最好地解决这个问题。我们被告知我们必须使用通用密码列表以及我们的其他安全选项。
我已经看到一些很好的 js 实现如何使用密码策略滑块解决这个问题,所以我怀疑某处有一个优雅的解决方案
TL;DR 不要这样做
互联网上有许多泄露的密码列表,您可以通过简单的检查有效地检查所有密码:
bool Match(string newPassword)
{
var passwords = File.ReadAllLines("passwords.lst");
return passwords.Any(x=> x == newPassword);
}
但是 用户是愚蠢的。您越难使用密码,他们就越有可能将密码写在贴在显示器上的 post-it 便条上。归根结底,这是他们的帐户,如果它遭到破坏,这不是你的问题(假设这并不意味着他们可以访问系统资源,这是你的问题)。