security - 记录包括密码在内的身份验证尝试

标签 security authentication

我正在为应用程序编写一个全面的身份验证系统,并且正计划记录失败的身份验证尝试,以实现更好的安全性。我想检查失败的密码是否有暴力破解和字典攻击,但是我能想到的唯一方法是存储原始密码。

我对此有不同的感觉。尽管我知道失败的登录尝试会每隔一段时间被清除,但我不喜欢将原始密码存储在数据库中的想法。我知道我经常错误输入与我的真实密码非常相似的密码,或者更糟糕的是,我将为特定的登录名输入错误的密码,而该登录名实际上是我所属的另一个网站的有效密码。

但是,如果不存储一些原始密码就无法实现高级安全性,因此我正在尝试考虑最佳方法。

这是我想到的一些可能的解决方案:

  • 不要存储超过24小时的登录尝试。这并不是真正的解决方案,更多的是简单地限制密码泄露时的损害。
  • 如果用户成功通过身份验证,则清除失败的尝试。

  • 有人对此有任何意见吗?这是一个好主意吗?我应该使用双向加密吗?

    最佳答案

    用户犯错误和暴力破解/字典攻击之间有很大的区别:需求量。不要存储失败的尝试-您应该以最少的方式处理纯文本密码,这是正确的-只需查看尝试的模式即可。那应该是足够的数据。

    其他任何事情,您的“高级安全性”就开始看起来像“高级攻击媒介的可能性”。

    关于security - 记录包括密码在内的身份验证尝试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1759051/

    相关文章:

    android - PDF 文件作为 Android .apk 的一部分

    security - Symfony2 SonataAdminBundle 密码字段加密

    database - 在 Spring JPA 应用程序中使用多个数据库

    r - 如何在 headless 环境(EC2实例)中使用googlesheets包进行身份验证?

    rest - OneDrive API : Unauthenticated, 必须经过身份验证才能使用 '/drive' 语法

    authentication - `jenkins ALL=(ALL) NOPASSWD: ALL` 的含义是什么?它是否会产生安全问题?

    java - Java EE 技术中的数据访问控制

    c# - 如何保护用 .Net 编写的 API 的安全

    安全 HIPAA ePHI 加密

    python - 通过 python 访问谷歌帐户