是否有可能使用专用集成电路(ASIC)蛮力MD5哈希,从而将其逆转到原来的形式?我知道可能会有多个碰撞,但撇开这个不说,会不会有可能?这个想法让我很感兴趣,因为我碰巧有,这是ASIC用来生成SHA-256散列的,但是为什么不是MD5呢?提前谢谢。
发布于 2013-12-14 16:51:49
暴力攻击是徒劳的,因为有2^128 MD5散列。如果你能计算出每秒10^18 (10亿倍)哈希数,那么要找到一次碰撞还需要数十亿年的时间(除非你非常幸运)。每秒太赫什是远远不够的。2^128 /1太赫兹约为10^26秒,约为10^19年。
MD5被破坏了,但破坏并不意味着“可以使用蛮力”,只意味着“可以以某种方式攻击(可能比蛮力更复杂)”。
发布于 2021-10-01 12:14:19
这是一个很老的问题,但在与客户一起工作,并努力说服他们不能使用MD5散列密码,需要升级到更安全的东西时,这篇文章出现在讨论中。
虽然公认的答案在技术上是正确的,但不需要计算所有可能的md5散列才能破解密码,只有有系统地旋转字符串和位置才能得到实际的密码。如果我们假设8个字符的长度和大写、小写和数字的共同规则最小,那就只有218万亿的组合。
在这个答案的狭窄范围内,是的,用暴力强迫md5碰撞是完全不切实际的,但是向MD5记录抛出随机的较小的数据集并看看得到什么匹配是绝对可行的。简单地说,要计算一组包含字母、数字和特殊字符的密码(长度为5个字符)的每一个可能的MD5,以1 Mh/s计算可能需要两个小时。
我使用MacBook和前面提到的客户机的一些仓促编写的代码完成了这一任务。在解释这个问题的45分钟内,对于他们来说,这个答案是他们不需要费心的原因之一,我已经得到了他们数据库中存储的上千个可怕的不安全的密码。
长话短说,我只是不想让人们读到这个答案,并认为使用MD5加密的密码是不可能破解的。
https://stackoverflow.com/questions/20585608
复制相似问题