离线密码破解攻击的当前速度是多少?
它肯定受到使用的哈希算法和使用的硬件的严重影响。但我更感兴趣的是,在没有僵尸网络的情况下,通过合理的价格实现了一般的顶级酒吧。
由于我需要这方面的资料作为我的论文,我会感兴趣的可引用的来源,这些信息发表。一篇科学论文将是理想的。
在问题中,黑客如何每秒获得10亿个密码?提到了每秒钟10亿次猜测,但没有源。
zxcvbn检验列出了具有多个核的快速散列的10B / second速度。但它也没有消息来源,我不太确定B代表什么。十亿将是相当多的。
发布于 2019-08-22 22:03:36
这取决于几个因素。首先,密码是如何存储的?
当前的最佳实践是使用键拉伸算法。NIST特别使用比如PBKDF2 2和气球的密钥派生算法(第13段,5.1.1.2,不将项目符号列表作为段落计算)。该社区通常列出PBKDF2、bcrypt、scrypt和Argon2,其中PHP为其password_hash()函数提供bcrypt和Argon2。
Argon2的链接是它的白皮书。在此与NIST标准之间,希望这些是可引用的文档,而Argon2白皮书还包括额外的引用。
使它们成为最佳实践的理由是,这些方法有可配置的困难,为其系统设置身份验证者的管理员应该调整所选的方法,以使蛮力猜测的代价过高。
如果对成本进行了调优以使处理器核心需要足够的工作才能占用整整一秒钟,这对例如偶尔处理身份验证的web服务器影响不大。可以合理地期望用户等待第二次访问,而其他用户将受到最小的影响,因为许多web服务器具有多个核心。
另一方面,天真的攻击者每秒钟只能猜测每个核心的一个密码,而一些密钥扩展算法专门针对那些使(昂贵的)内存更有价值的特性(Argon2、scrypt),或者使并行处理(例如多个GPU核)速度慢得多(Argon2、bcrypt)。虽然专门的攻击者通常会有更多的资源专门用于强制验证密码,但它们仍然只能猜测每秒数十个密码,而不是现代ASIC攻击哈希算法时可能进行的数百万或数十亿次猜测。
不过,如果密码只是以盐渍哈希的形式存储,那么就有一些硬件特别适合于非常类似的任务,而设计一个性能相当的专用集成电路(比特币矿工)所需的时间也非常少。由于比特币矿商所享受的规模经济,按单位计算,一个哈希猜测器可能要贵得多,但一个2400美元的单元每秒可以进行14万亿比特币的哈希猜测。
基于GPU的对哈希和通用密码加密/混淆系统的攻击,如果没有使用配置得当的密钥扩展算法,通常会根据算法的不同,每秒做出数百万到数十亿次的猜测,如Luc在评论中所链接的基准测试所示。
https://security.stackexchange.com/questions/215777
复制相似问题