AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 43399
Accepted
cmserv
cmserv
Asked: 2009-07-21 23:35:13 +0800 CST2009-07-21 23:35:13 +0800 CST 2009-07-21 23:35:13 +0800 CST

长度小于 20 个字符的密码有多安全?

  • 772

我最近收到了将密码设置为 20 个以上字符的建议。用于加密的算法是具有 256 位主密钥的 AES。比方说,针对破解加密文件的暴力攻击的 8 个字符密码有多安全?

我知道这在大多数网站上被认为是一个很好的密码大小。原因之一是他们可以在尝试 3 次左右后停止攻击。

password encryption brute-force-attacks
  • 9 9 个回答
  • 15473 Views

9 个回答

  • Voted
  1. womble
    2009-07-21T23:42:19+08:002009-07-21T23:42:19+08:00

    您可能想在Bruce Schneier 的这篇博文中指出编写该政策的人。

    这是一篇很好的文章,说明了为什么密码的强度是网络上任何人的问题中最少的。

    • 6
  2. Best Answer
    Mark Davidson
    2009-07-22T00:10:29+08:002009-07-22T00:10:29+08:00

    这是一篇有趣的文章(如果网络存档不可用,请参阅PDF 打印)。它详细说明了理论上暴力破解不同长度和符号集的密码需要多长时间。

    • 5
  3. Marko Carter
    2009-07-22T00:02:42+08:002009-07-22T00:02:42+08:00

    查看这篇文章中接受的答案。表明即使是使用所有字符的 8 个字符的密码也可能需要大约 10,000 年才能破解!

    • 4
  4. John Gardeniers
    2009-07-22T01:01:25+08:002009-07-22T01:01:25+08:00

    如果您将彩虹表的使用算作暴力破解(意见不一),那么对于 8 个字符,使用包含密码中所有字符的彩虹表,大约需要 10 秒。20 个字符的密码(相同的字符,相同的彩虹表),少于 30 秒。问题是生成表格需要很长时间。我的需要大约一个月的时间才能在 3GHz 机器上仅在晚上进行处理。另一方面,您只需要这样做一次。

    尝试记住长密码的问题很容易通过字符替换和使用短语的组合来解决。即使是像“#Fr3ddy M3rcury#”这样简单的东西,对于大多数用途来说也足够复杂,而且非常容易记住。

    • 3
  5. John Saunders
    2009-07-22T00:35:41+08:002009-07-22T00:35:41+08:00

    考虑到一个八字符的密码可能会被记住。将记下20 个字符的密码。

    然后有人可以阅读它。

    • 2
  6. Josh
    2009-07-22T04:36:30+08:002009-07-22T04:36:30+08:00

    您可能对“密码与密码短语”一文感兴趣。他们的结论是,一个 9 个字符的完全随机密码大约相当于一个 6 个单词的密码短语。但他们觉得 6 个单词的短语更容易记住。

    • 2
  7. David Pashley
    2009-07-21T23:51:22+08:002009-07-21T23:51:22+08:00

    这完全取决于您使用的字符,因为这会改变您拥有的组合数量。假设 8 个字符:

    • 字典词:

      egrep "^.{8}$" /usr/share/dict/words | wc -l
      15601
    • 小写字母:26 8或 208827064576

    • 大小写字母:52 8或 53459728531456

    • 下限、上限和数字:62 8或 218340105584896

    添加标点符号和其他符号和蛮力将需要一些时间。

    这些数字是必须尝试的总组合。显然,黑客在获得密码后不会尝试所有组合,因此除以 2 即可获得所需的平均组合数。

    更硬的哈希导致计算哈希的 CPU 时间更长,因此总时间更长。约翰的一个例子:

    基准测试:传统 DES [64/64 BS]... 完成
    许多盐:819187 c/s 真实,828901 c/s 虚拟
    只有一种盐:874717 c/s 真实,877462 c/s 虚拟
    
    基准测试:BSDI DES (x725) [64/64 BS]... 完成
    许多盐:29986 c/s 真实,30581 c/s 虚拟
    只有一种盐:29952 c/s 真实,30055 c/s 虚拟
    
    基准测试:FreeBSD MD5 [32/64 X2]... 完成
    原始:8761 c/s 真实,8796 c/s 虚拟
    
    基准测试:OpenBSD Blowfish (x32) [32/64]... 完成
    原始:354 c/s 真实,356 c/s 虚拟
    
    基准测试:Kerberos AFS DES [48/64 4K]... 完成
    短:294507 c/s 真实,295754 c/s 虚拟
    长:858582 c/s 真实,863887 c/s 虚拟
    
    基准测试:NT LM DES [64/64 BS]... 完成
    原始:6379K c/s 真实,6428K c/s 虚拟
    
    基准测试:NT MD4 [通用 1x]... 完成
    原始:7270K c/s 真实,7979K c/s 虚拟
    
    基准测试:M$ Cache Hash [Generic 1x]... 完成
    许多盐:12201K c/s 真实,12662K c/s 虚拟
    只有一种盐:4862K c/s 真实,4870K c/s 虚拟
    
    基准测试:LM C/R DES [netlm]... 完成
    许多盐:358487 c/s 真实,358487 c/s 虚拟
    只有一种盐:348363 c/s 真实,348943 c/s 虚拟
    
    基准测试:NTLMv1 C/R MD4 DES [netntlm]... 完成
    许多盐:510255 c/s 真实,512124 c/s 虚拟
    只有一种盐:488277 c/s 真实,489416 c/s 虚拟
    

    当然,这完全是学术性的,因为黑客只会打电话给你的秘书,告诉他们他们来自 IT,他们需要他们的密码来做某事,而你的强密码毫无价值。

    • 1
  8. Garrett
    2009-07-22T05:14:59+08:002009-07-22T05:14:59+08:00

    我使用重要的密码来保护

    * 重要的资产
    * 不受反锤击的东西(反复尝试后锁定)
    * 可能会受到暴力破解/基于字典/混合攻击的东西
    

    我不太关心我的 gmail 帐户,因为破解该密码的暴力尝试只会锁定该帐户(并且任何有权访问服务器的人只会用他们选择的一个替换哈希,而不是尝试破解它)。

    最好的密码是长的(>12 个字符)和加密随机的。但是,这些更难记住。因此,将多个单词与看似随机的字符组合在一起的密码短语可能是一个很好的折衷方案(可能是您最喜欢的歌词前几行的前 1 或 2 个字母)。

    • 1
  9. Olaf
    2009-07-22T00:14:48+08:002009-07-22T00:14:48+08:00

    您可以从通信客户端/服务器中获得安全性,例如,正如您所说,当您能够在 3 次尝试后阻止攻击者(当他们通过网络进行攻击时,如 Web 应用程序)。在这种情况下,几乎任何长度的密码都可以被认为是足够的。

    但是,如果内部人员使用散列短密码获取此数据库,并且能够绕过 3 次尝试的“网络上”限制,则游戏会改变。

    限制每个帐户的尝试次数的警告是,这仅适用于一个特定帐户的有针对性的尝试。您还需要使用给定(或排列的)密码保护所有帐户免受攻击 - 当您仅限制每个帐户的尝试次数时,这不会触发任何警报。鉴于当今的 NAT 和僵尸网络,您甚至不能争辩说限制每个 IP 的尝试次数是一种考虑安全性的好方法。

    其他答案中已经给出了很好的阅读资源。

    • 0

相关问题

  • 如何仅针对特定 OU 中的用户撤销更改密码权限?

  • AIX:如何在不设置 ADMCHG 标志的情况下以 root 身份更改密码?

  • 将活动目录中的密码历史记录重置为特定日期

  • 允许用户更改其 Active Directory 密码的 Web 界面

  • 通过 VPN 更改 Active Directory 密码

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve