Security 如何强制使用强密码?
有许多技术可以在网站上强制使用强密码:Security 如何强制使用强密码?,security,passwords,Security,Passwords,有许多技术可以在网站上强制使用强密码: 请求密码通过复杂程度不同的正则表达式 自动设置密码,以便临时用户拥有强大的密码 让密码过期 等等 另一方面也有缺点,因为所有这些都让用户的生活变得不那么轻松,这意味着注册量减少 那么,你使用什么技巧?与不便相比,哪一项提供了最佳的保护? 澄清一下,我指的不是银行网站或存储信用卡的网站。更多地考虑仍然需要注册的流行(或不太流行)站点。最好的方法实际上取决于您的站点和您使用的内容。但理想的方法是在客户端提交之前,尽可能多地在客户端执行操作。使用正则表达式是
- 请求密码通过复杂程度不同的正则表达式
- 自动设置密码,以便临时用户拥有强大的密码
- 让密码过期
- 等等
澄清一下,我指的不是银行网站或存储信用卡的网站。更多地考虑仍然需要注册的流行(或不太流行)站点。最好的方法实际上取决于您的站点和您使用的内容。但理想的方法是在客户端提交之前,尽可能多地在客户端执行操作。使用正则表达式是一种好方法。如果你能让他们不必再次提交表单,那就太理想了。不要强制执行任何内容。。。如果您没有保护财务信息或其他同等重要的信息,请不要让用户选择强密码 我在一大堆需要注册论坛等的网站上都有同样的弱密码。我真的不在乎是否有人猜到了,是否可以像我一样发布消息(我也不认为有人这么做的动机)。我不能做的是记住十几个站点的不同强密码,我真的不想用另一个软件为我管理它们
最好的折衷办法是向用户显示密码强度的某种反馈(取决于它是否是字典单词、不同字符类型的数量、长度等)。让密码过期时,这种做法有两个值得注意的问题:
- 用户发现更难记住他们当前的密码,因此他们更可能做一些愚蠢的事情,比如把密码写在贴在显示器上的帖子上
- 用户不会在每次尝试时生成新的、强的、不相关的密码。大多数情况下,他们使用某种方案生成与旧密码类似的密码。因此,如果攻击者得到一个旧密码,他们仍然很容易推断出一个新密码
编辑:这并不是说我反对整个想法,只是这需要与其他因素一起考虑。我认为强制使用强密码是不可能的,但你可以做很多事情来尽可能地鼓励他们
- 对每个密码进行评分,并以分数或图形栏等形式向用户提供反馈
- 设置一个最低密码分数来清除那些糟糕的密码
- 有一个常用词的列表,这些词要么被禁止,要么被输入密码分数
此外,还有一篇有见地的文章。根据我的经验,这实际上取决于网站的类型,正如你所说的 如果您正在创建银行或金融网站,则用户通常会了解您是否拥有更安全的密码,因为他们的个人数据可能存在风险 但是,对于通常不包含大量个人信息的网站,可以使用更简单的密码。他们可能不太容易被黑客攻击,也不会得到任何有价值的东西 我还发现,大多数人似乎也经常使用一些密码。一个是复杂的,另一个是简单的。因此,要求他们使用复杂的密码通常不会阻止人们注册
我从未发现过期密码可以成功工作。正如我之前所说的,很多人已经有了一套他们经常使用的密码,所以要求他们离开这个网站可能会让他们不想回来。有一个Ajax工具PasswordStrength,它会让用户知道他们的密码是否好。我喜欢它,因为它不必禁止创建密码
我从未见过这样做,但它似乎工作得很好:密码创建页面可以有一个可扩展的列表,比如说,最多50个,迫使用户在输入密码之前向下滚动一点。这一点,再加上跳棋者的建议,将大大有助于防止粗心的选择
但是,解决防止密码重用的问题。。。毫无线索。@Rob Walker:可悲的现实是,七分之一的用户选择用户名作为密码。一旦网站上有任何风险(甚至没有金钱价值的东西),如果他们的帐户被黑客攻击,人们就会抱怨。在一个10万用户的网站上发生过这种情况:-(当应用程序需要我提供密码时,我喜欢它,并通过一些条形/刻度和简短的文本表示(即弱、一般、强、仅可由特勤局破解等)显示它的强大程度。)。鼓励使用强密码,即使对于普通用户也是如此。Upvote。@Rob Walker如果您想使用强密码,但又不想记住一百万个密码或使用密码管理软件,请使用公式生成强密码。请参阅谢谢;)如果您根本不需要强制实施密码更改策略(这样您就可以合法地