首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >限制用户登录PBKDF2的尝试

限制用户登录PBKDF2的尝试
EN

Security用户
提问于 2014-01-13 09:45:59
回答 2查看 244关注 0票数 2

我的老板已经委托我把我们网络应用程序的加密系统从MD5改为PBKDF2,因为MD5/SHA1 1在最近几年被证明是易碎的。

我对此表示反对,并认为我们应该允许用户每天最多登录200次,任何更多的事情都会导致用户帐户的锁定。我的理由是,PBKDF2很快就会在几年内中断,我们将不得不再次更改加密系统,因此,为什么不限制用户尝试登录的次数。然而,我的老板坚持让我实现PBKDF2

以下是我的问题:

1)限制用户登录次数的理由是否合理?

2)我的论点有什么缺点吗?

我的老板是对的吗?

EN

回答 2

Security用户

发布于 2014-01-13 09:52:48

1)限制用户登录次数的理由是否合理?

不,绝对不是你描述的那样。在很短的时间内限制失败的次数是可以的,并从那里开始扩大,但是你不应该像一整天一样,在很长的一段时间内设定一个严格的限制。你凭什么告诉我,我今天第201次不能登录我的账户?

2)我的论点有什么缺点吗?

是。MD5/SHA1 1/SHA1 256/SHA1 512等在密码哈希方面存在愚蠢的缺陷。而且,PBKDF2已经被广泛使用了很多年。没有迹象表明“几年后”它会被打破。有关更多详细信息,请参阅这个答案

我的老板是对的吗?

当然是的。

票数 4
EN

Security用户

发布于 2014-01-13 15:39:41

我认为你在这里混淆的一点是在线和离线暴力攻击之间的区别。本质上,您所看到的两个控件是针对不同的攻击而设计的,应该同时应用(也就是说,它不是一个或另一个)。

你在锁定前限制用户登录的想法指的是一次网络暴力攻击。当攻击者试图通过应用程序猜测密码时,就会发生这种情况。通常,我会在锁定前推荐10个不正确的登录,理由是如果用户在10次尝试中无法猜出密码,他们就会忘记它:)。

用于存储密码的哈希算法主要防御离线暴力攻击。这些攻击发生在攻击者访问散列密码并可以尝试直接破解密码的地方(例如,不通过应用程序)。在这里,使用PBKDF2 (或bcrypt或scrypt)是正确的,因为它们是为此目的专门设计的,并且会减慢攻击者的猜测过程。

使用MD5或SHA-1的问题是,它们不是为密码存储而设计的,它们的(部分)设计为快速,这是我们在防止脱机蛮力攻击时不想要的属性。

票数 3
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/48572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档